oxiproj-transformations 0.1.2

Datum transformations and coordinate conversions for OxiProj.
Documentation
# oxiproj-transformations

Datum transformations and coordinate conversions for OxiProj.

Part of the [OxiProj](https://github.com/cool-japan/oxiproj) workspace — a 100% Pure-Rust port of PROJ 9.8.0.

## Features

- **Helmert (7-/14-parameter)** similarity transformations between datums
- **Molodensky / abridged Molodensky** horizontal datum shifts
- **Grid-based NTv2/GTX horizontal and vertical shifts** via `oxiproj-grids` integration
- **Geocentric ↔ geographic** conversions and **unit conversions** (degree ↔ radian, metre ↔ foot, etc.)
- **Vertical transformations**: geoid height models, vertical offset and slope
- Mirrors the `oxiproj-projections` build/param pattern: `TransParamLookup`, `TransParams`, `TransBuild`

## Usage

```rust
// Transformations are normally invoked through oxiproj-engine or the oxiproj facade.
// Direct dispatch example:
use oxiproj_engine::{create, Context};

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let ctx = Context::default();
    // 3-parameter geocentric translation from ED50 to WGS84.
    let pj = create(
        &ctx,
        "+proj=helmert +x=-84.0 +y=-97.0 +z=-117.0 +ellps=intl",
    )?;
    let r = pj.forward(3_900_000.0, 900_000.0, 100_000.0, f64::INFINITY)?;
    println!("({:.2}, {:.2}, {:.2})", r.x, r.y, r.z);
    Ok(())
}
```

## License

Apache-2.0. Copyright 2026 COOLJAPAN OU (Team Kitasan).