This is an alternative site for discovering Elm packages.
You may be looking for the
official Elm package site
instead.

We were not able to find the expected

`elm-package.json`

file at this tag.Tag | 2.0.2 |

Committed At | 2020-02-12 00:12:35 UTC |

This package supports interop between `ianmackenzie/elm-geometry`

and `elm-explorations/linear-algebra`

.
You can:

- Convert
`elm-geometry`

`Point2d`

,`Point3d`

,`Vector2d`

,`Vector3d`

,`Direction2d`

and`Direction3d`

values to and from`linear-algebra`

`Vec2`

,`Vec3`

and`Vec4`

values - Convert
`elm-geometry`

`Frame3d`

values to the equivalent`linear-algebra`

`Mat4`

transformation matrices - Transform
`elm-geometry`

`Point3d`

and`Vector3d`

values using`linear-algebra`

`Mat4`

transformation matrices

This is important for working with WebGL, since the `elm-explorations/webgl`

package requires using `linear-algebra`

types when defining meshes and shaders.
This package may also be useful when using other packages that accept or return
`linear-algebra`

types. However, you shouldn't need this package for general
use - you should be able to do most geometric transformations you need
(rotations, translations etc.) using `elm-geometry`

itself.

```
elm install ianmackenzie/elm-geometry-linear-algebra-interop
```

Full API documentation is available.

The modules in this package are all designed to be imported using `as`

to
'merge' them with the base `elm-geometry`

modules; for example, using

```
import Point3d exposing (Point3d)
import Geometry.Interop.LinearAlgebra.Point3d as Point3d
```

will let you use functions from both modules as if they were part of one big
`Point3d`

module. For example, you could use the `toVec3`

function from this
package's `Point3d`

module with the `origin`

value from the base `Point3d`

module as if they were part of the same module:

```
Point3d.toVec3 Point3d.origin
--> Math.Vector3.vec3 0 0 0
```

Please open a new issue if you run into a bug, if any documentation is missing/incorrect/confusing, or if there's a new feature that you would find useful. For general questions about using this package, try:

- Joining the
**#geometry**channel on the Elm Slack, or sending me (**@ianmackenzie**) a message - even if you don't have any particular questions right now, it would be great to know what you're hoping to do with the package! - Posting to the Elm Discourse forums
- Or if you happen to be in the New York area, come on out to the Elm NYC meetup =)

You can also find me on Twitter (@ianemackenzie),
where I occasionally post `elm-geometry`

-related stuff like demos or new
releases. Have fun, and don't be afraid to ask for help!