/*******************************************/ public IGH_GeometricGoo Morph(SpaceMorph xmorph) { if (m_RhinoGeometry == null) { return(null); } else if (m_RhinoGeometry is Point3d) { Point3d morphed = xmorph.MorphPoint((Rhino.Geometry.Point3d)m_RhinoGeometry); return(new GH_IBHoMGeometry { Value = morphed.FromRhino() }); } else { GeometryBase geometry = ((GeometryBase)m_RhinoGeometry).Duplicate(); xmorph.Morph(geometry); return(new GH_IBHoMGeometry { Value = geometry?.IFromRhino() }); } }