Skip to content

Latest commit

 

History

History
80 lines (70 loc) · 2.08 KB

File metadata and controls

80 lines (70 loc) · 2.08 KB

GetOrigin

Description

Procedure GetOrigin returns the current origin location relative to the center of the page.

PROCEDURE GetOrigin(
				VAR x : REAL;
				VAR y : REAL);
def vs.GetOrigin():
    return (x, y)

Parameters

Name Type Description
x REAL Returns X coordinate of origin.
y REAL Returns Y coordinate of origin.

Remarks

_c_, 2015.05.31: This routine behaves differently across years and usage method:

  • until VW 2009: ** used in Commands: returned the User origin shift in current units ** used in Objects: returned {0, 0}
  • from VW 2010: ** used in Commands: returns the User origin shift in current units ** used in Objects: returns the User origin shift in millimeters Below an example of reading the user origin shift from within a plug-in object. Save the code below as point Plug-in with Reset On Move and Rotation:
PROCEDURE HereAmI;
VAR
	pioHandle, pioRecHandle, wallHandle : HANDLE;
	pioName : STRING;
	o, s : VECTOR;

BEGIN
     IF GetCustomObjectInfo(pioName, pioHandle, pioRecHandle, wallHandle) THEN BEGIN
          GetOrigin(o.x, o.y); { on VW 2009 and before this will always be zero when used from within a plug-in object. }
          GetSymLoc(pioH, s.x, s.y);
          Locus(0, 0);
          CreateText(Concat(
               'GetOrigin: ', o, Chr(13), 
               'GetSymLoc: ', s	
          ));
     END;
END;
Run (HereAmI);

Objects inside Symbols use the reverse of the User Origin. I added a table of the values related to VectorScript origin in the article [http://www.vectorlab.info/index.php?title=Absolute_Origin#Available_routines:Link Absolute Origin], by Gerard Jonker, on VectorLab.

Examples

VectorScript

PROCEDURE Example;
VAR
originPt : VECTOR;
BEGIN
GetOrigin(originPt.x, originPt.y);
Message(originPt);
END;
RUN(Example);

Python

def Example():
	originPtX, originPtY = vs.GetOrigin()
	vs.Message(originPtX, originPtY);
Example()

Version

Availability: from All Versions

Category