private void Recalculate() { if (path != null) { if (path.IsClosed) { Solid sld = Make3D.MakeHelicalSolid(plane.Project(axis.Location), plane.Project(axis.Direction), plane, path, turns, handed); if (sld != null) { ActiveObject = sld; } } else { Solid sld = Make3D.MakeHelicalSolid(plane.Project(axis.Location), plane, path, turns, handed); if (sld != null) { ActiveObject = sld; } } } else if (shape != null) { Solid sld = Make3D.MakeHelicalSolid(plane.Project(axis.Location), plane.Project(axis.Direction), plane, shape.SimpleShapes[0].Outline.AsPath(), turns, handed); if (sld != null) { ActiveObject = sld; } } }