I would like to create an Origin at the midpoint of each Edge included in a Group. How can I do that with SpaceClaim Scripting?
You can use the following Script:
GroupSelection = Selection.CreateByGroups("GroupName") for edge in GroupSelection.Items: originPoint = Point.Create(edge.EvalMid().Point.X, edge.EvalMid().Point.Y, edge.EvalMid().Point.Z) x_Direction = Direction.DirX y_Direction = Direction.DirY origin = DatumOriginCreator.Create(originPoint, x_Direction, y_Direction, None)
FYI you could also use the curve evaluation (Edge.EvalMid()) to get the curve direction and set that as one of the CS directions instead of always at the global.