Returns the location of the specified vertex of a referenced object.
PROCEDURE Get2DPt(
obj : HANDLE;
index : INTEGER;
VAR locX,locY : REAL);def vs.Get2DPt(obj, index):
return loc| Name | Type | Description |
|---|---|---|
| obj | HANDLE | Handle to object. |
| index | INTEGER | Index of vertex to be queried (range of 1 to n) |
| loc | REAL | Coordinates of 2D vertex location. |
(_c_, 2007.05.27): Used with bounding box objects without vertexes (groups...), the routine doesn't throw error and always returns the coordinates of the center, independently of the passed vertex index.
(RGM Feb 2006): This will generally return the center of an object. Use GetSymLoc if you want eg. the 'point' of a Point PIO.
PROCEDURE Example;
VAR
p : VECTOR;
BEGIN
IF FSActLayer = NIL THEN
AlrtDialog( 'Select a polygon or a polyline' )
ELSE BEGIN { here you might want to check if it's a valid object type }
Get2DPt( FSActLayer, 2, p.x, p.y ); { stores in p the coordinates of vtx 2 }
Locus( p.x, p.y );
END;
END;
Run(Example);if vs.FSActLayer() == None:
vs.AlrtDialog( 'Select a polygon or a polyline' )
else:
p = vs.Get2DPt( vs.FSActLayer(), 2 ) # stores in p the coordinates of vtx 2
vs.Locus( p[0], p[1] )TextOrigin(xC,yC);
CreateText(concat(pprfx,itemTag));
hText := lnewobj;
SetFPat(lnewobj,0);
Get2DPt(hLeaderLine,2,pX,pY);
result := SetTextAdorner(hText,hBubble,pX,pY);
result := SetTextAdorner(hText,hLeaderLine,pX,pY);
{Locus(pX,pY);}
IF pDrawSecondBubble THEN BEGIN
BEGIN
Get2DPt( tempH, 1, vec1.x, vec1.y );
Get2DPt( tempH, 2, vec2.x, vec2.y );
BEGIN
Get2DPt( pluginInstanceHandle, 1, gOffsetX, gOffsetY );
gOffsetX := gOffsetX + gOrigin[1];
gOffsetY := gOffsetY + gOrigin[2];import vs
# Returns the location of the specified vertex of a referenced object.
obj = vs.FSActLayer() # handle to the first selected object on the active layer
index = 1
result = vs.Get2DPt(obj, index)VS Functions:
Availability: from VectorWorks 8.5