modified API so that unfolding object now holds the post transform / inverse transform needed to put all geometry back to starting location as unfold now occurs at the origin.  This seems to work fine for label and tab generation and is only a constant amount of work, should be okay speed wise.

I would like to streamline entire api so that user interaction is with unfolding object only, it will hold all starting and end geo, and necessary transforms to move from one to the other, when querying the unfold object for labels, or tabs, the appropriate transforms will be used by looking up the ID in a dictionary that can be constructed when merging unfolds together.  This will help from spreading transformation logic everywhere, just did this to packing code so that surfaces are requested through the unfoldedsurfaces property, now they come out in the correct positions.

There is still an issue with input geometry that is scaled.!

need to check that memory is not being left around in an undefined state with all the transforming

next steps need to get Merge operation working again, this fails because there is only 1 field for post transform, but there might be many post transforms when merging many unfolds that were translated or scaled differently.
this commit should be modified before merging to master - branch needs a lot of work  - flux

after some trial and error can keep a constant scale for label geometry by using desired label scale and the scale factor of postTransform, but I'm not sure this is actually a good way to go, might be better to just let the scale be modified by the unfolding, as this will make explicit what is happening to the user, end up with relative scaled labels which should work better in most cases...
add comment