|elm-version||0.18.0 <= v < 0.19.0|
|Committed At||2017-09-22 17:23:10 UTC|
Frame3dvalues to the equivalent
You shouldn't need this package for general use - you should be able to do most geometric transformation you need (rotations, translations etc.) using OpenSolid itself. However, this package may be useful for other transformations such as shear or non-uniform scaling.
Note that the
Float3 types defined by
elm-webgl-math are simply
type aliases for tuples of floats, e.g.
type alias Float3 = ( Float, Float, Float )
Since those are exactly the same types used by functions like
Vector2d.components, conversion to and from
opensolid/geometry point/vector/direction types is trivial; for example, use
Point3d.coordinates to get a
Float3 from a
Point3d and use
Point3d.fromCoordinates to convert a
Float3 back to a
elm package install opensolid/webgl-math-interop
Full API documentation is available.
The modules in this package are all designed to be imported using
'merge' them with the base OpenSolid modules; for example, using
import OpenSolid.Point3d as Point3d exposing (Point3d) import OpenSolid.Interop.WebGLMath.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
transformBy function from
Point3d module with the
origin value from the base
module as if they were part of the same module:
Point3d.transformBy transformationMatrix Point3d.origin
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:
You can also find me on Twitter (@ianemackenzie), where I occasionally post OpenSolid-related stuff like demos or new releases. Have fun, and don't be afraid to ask for help!