Getting morphed geometry out of a SpaceMorph... (python/RhinoCommon)

First time experimenting with morphs here in RhinoCommon. If I have the following:

fsm=Rhino.Geometry.Morphs.FlowSpaceMorph(from_crv, to_crv, rev_1, rev_2, no_str)
fsm.Tolerance=tol
rc=fsm.Morph(obj)

and I feed it the appropriate input arguments/objects, rc returns True, so something has happened, but I don’t know how to access the resulting morphed geometry… There’s nothing like fsm.Geometry. Or am I going about this in the wrong way?

Thx, --Mitch

Hi Mitch,

Your obj geometry has been transformed (morphed) in place.
So the resulting morphed geometry is obj itself.

AHA !!! That’s easy! I was expecting to have to get the result out of fsm as a new object…

Just going to need to remember to always work on a copy of the original geometry if I want to keep it.

Thanks, --Mitch

Continuing on this project - I don’t see any arguments that correspond to Rhino Flow’s “Rigid” option… So I suppose that that we need to concoct ourselves… I don’t know how Rhino actually does it, I could imagine morphing the objects bounding box center point for the translation part, but I don’t know how to orient the object spatially otherwise - how is the plane to plane transform calculated?

Thx, --Mitch

Hi Mitch,
Interesting Quest.

What happens if you feed the morph a Rhino.Geometry.Plane as obj?
e.g. the curve frame closest to the rigid object’s bbox center.

-Willem