Ian Mackenzie

Results 148 comments of Ian Mackenzie

Yes, and I now use `elm-units-prefixed` at work because we have both `elm-units` and `elm-visualization` in our codebase. It's worked pretty well, although I needed to add `Quantity.unsafe` and `Quantity.unwrap`...

Thanks! And yes, `elm publish` etc. work fine with 0.19.0 so that's a good workaround for now.

Possibly useful for axis-box intersections: https://twitter.com/Peter_shirley/status/1053481303834746880?s=19 Good explanation: https://tavianator.com/fast-branchless-raybounding-box-intersections/

Ray-triangle intersections: https://en.wikipedia.org/wiki/M%C3%B6ller%E2%80%93Trumbore_intersection_algorithm

Another ray-triangle intersection algorithm (PDF): http://www.graphics.cornell.edu/pubs/1997/MT97.pdf (thanks @w0rm!)

There's an interesting question of what happens if the same vertex is added twice and then removed once - should it exist in the result or not? May be better...

Looks like a good test case for normal mapping: https://cc0textures.com/view?id=Wood027

Could get fancy and have phantom type parameters to tag transformations as non-scaling or non-shearing, to support transforming directions or circles etc. Perhaps: ```elm module Transformation2d identity : Transformation units...

Perhaps have the function called `apply` instead of `transformBy`? So you could write code like ```elm let transformation = Rotation.around axis angle in List.map (Point3d.apply transformation) points ``` Less likely...

Thanks @helgee! I think there are lots of useful applications of a generic `Transformation3d` type, but as long as you're not applying a scale factor then you should be able...