ShapeNodes Collection



A collection of all the ShapeNode objects in the specified freeform. Each ShapeNode object represents either a node between segments in a freeform or a control point for a curved segment of a freeform. You can create a freeform manually or by using the BuildFreeform and ConvertToShape methods.
Using the ShapeNodes Collection
Use the Nodes property to return a ShapeNodes collection. The following example deletes node four in shape three on the active document. For this example to work, shape three must be a freeform with at least four nodes.
Sub DeleteShapeNode()
ActiveDocument.Pages(1).Shapes(3).Nodes.Delete Index:=4
End Sub
Use the Insert method to create a new node and add it to the ShapeNodes collection. The following example adds a smooth node with a curved segment after node four in shape three on the active document. For this example to work, shape three must e a freeform with at least four nodes.
Sub AddCurvedSmoothSegment()
ActiveDocument.Pages(1).Shapes(3).Nodes.Insert _
Index:=4, SegmentType:=msoSegmentCurve, _
EditingType:=msoEditingSmooth, X1:=210, Y1:=100
End Sub
Use Nodes(index), where index is the node index number, to return a single ShapeNode object. If node one in shape three on the active document is a corner point, the following example makes it a smooth point. For this example to work, shape three must be a freeform.
Sub SetPointType()
With ActiveDocument.Pages(1).Shapes(3)
If .Nodes(1).EditingType = msoEditingCorner Then
.Nodes.SetEditingType Index:=1, EditingType:=msoEditingSmooth
End If
End With
End Sub