Shape.Vertices Property (Publisher)
Returns the coordinates of the specified freeform drawing's vertices (and control points for Bézier curves) as a series of coordinate pairs. Read-only Variant.
Syntax
expression .Vertices
expression A variable that represents a Shape object.
Remarks
You can use the array returned by this property as an argument to the AddCurve or AddPolyline methods.
The following table shows how the Vertices property associates the values in the array vertArray() with the coordinates of a triangle's vertices.
vertArray element |
Contains |
---|---|
vertArray(1, 1) |
The horizontal distance from the first vertex to the left side of the page. |
vertArray(1, 2) |
The vertical distance from the first vertex to the top of the page. |
vertArray(2, 1) |
The horizontal distance from the second vertex to the left side of the page. |
vertArray(2, 2) |
The vertical distance from the second vertex to the top of the page. |
vertArray(3, 1) |
The horizontal distance from the third vertex to the left side of the page. |
vertArray(3, 2) |
The vertical distance from the third vertex to the top of the page. |
Example
This example assigns the vertex coordinates for shape one in the active publication to the array variable vertArray() and displays the coordinates for the first vertex.
Dim vertArray As Variant
Dim sngX1 As Single
Dim sngY1 As Single
With ActiveDocument.Pages(1).Shapes(1)
vertArray = .Vertices
sngX1 = vertArray(1, 1)
sngY1 = vertArray(1, 2)
MsgBox "First vertex coordinates: " & sngX1 & ", " & sngY1
End With
This example creates a curve that has the same geometric description as shape one in the active publication. Shape one must contain 3n+1 vertices for this example to work, where n is an integer greater than or equal to 1.
With ActiveDocument.Pages(1).Shapes
.AddCurve SafeArrayOfPoints:=.Item(1).Vertices
End With