Sub Test() Dim s As Shape, s2 As Shape Dim sp As SubPath Dim crv As Curve, crv2 As Curve Dim seg As Segment, seg2 As Segment Dim x As Double, y As Double Set crv = CreateCurve(ActiveDocument) ActiveDocument.ReferencePoint = cdrBottomLeft Set sp = crv.CreateSubPath(1, 1) sp.AppendLineSegment 1, 1 sp.AppendCurveSegment 3, 3 sp.AppendCurveSegment 5, 1 sp.AppendCurveSegment 6, 4 sp.Nodes(2).Type = cdrSmoothNode sp.Nodes(3).Type = cdrSmoothNode Set s = ActiveLayer.CreateCurve(crv) Set seg = ActiveShape.Curve.Segments(2) seg.GetStartingControlPointPosition x, y Set seg2 = ActiveShape.Curve.Segments(ActiveShape.Curve.Segments.Count) seg2.SetStartingControlPointPosition x, yEnd Sub