GetPrimaryUnitInfo Units 
VectorWorks8.0

VectorScript Declaration:

PROCEDURE   GetPrimaryUnitInfo
( VAR  style :INTEGER;
  VAR  prec :LONGINT;
  VAR  dimPrec :LONGINT;
  VAR  format :INTEGER;
  VAR  angPrec :INTEGER;
  VAR  showMark :BOOLEAN;
  VAR  dispFrac :BOOLEAN
) ;

Python:

def  vs.GetPrimaryUnitInfo():
   return (style, prec, dimPrec, format, angPrec, showMark, dispFrac)

Description:

Procedure GetPrimaryUnitInfo returns the primary units settings for the active document.

Parameters:

style Returns active primary units style.
prec Returns display precision.
dimPrec Returns dimension precision.
format Returns decimal formatting.
angPrec Returns angular precision.
showMark Returns unit mark display setting.
dispFrac Returns fractional display setting.

Example:

PROCEDURE Example;
VAR
	style              :INTEGER;
	prec, dimPrec      :LONGINT;
	format, angPrec    :INTEGER;
	showMark, dispFrac :BOOLEAN;
	major, minor, maintenance, platform :INTEGER;
BEGIN
	GetVersion(major, minor, maintenance, platform);
	GetPrimaryUnitInfo(style, prec, dimPrec, format, angPrec, showMark, dispFrac);

	CASE major of
		8: Case style of
			0: AlrtDialog('Custom');
			1: AlrtDialog('Old Style Feet/Inches');
			2: AlrtDialog('Millimeter');
			3: AlrtDialog('Centimeter');
			4: AlrtDialog('Inches');
			5: AlrtDialog('Meters');
			6: AlrtDialog('Feet/Inches');
			7: AlrtDialog('Feet');
		END;

		9..11: Case style of
			0: AlrtDialog('Custom');
			1: AlrtDialog('Feet/Inches');
			2: AlrtDialog('Feet');
			3: AlrtDialog('Inches');
			4: AlrtDialog('Millimeters');
			5: AlrtDialog('Centimeters');
			6: AlrtDialog('Meters');
		END;

		12: Case style of
			1: AlrtDialog('Feet and Inches');
			2: AlrtDialog('Inches');
			3: AlrtDialog('Feet');
			4: AlrtDialog('Yards');
			5: AlrtDialog('Miles');
			6: AlrtDialog('Microns');
			7: AlrtDialog('Millimeters');
			8: AlrtDialog('Centimeters');
			9: AlrtDialog('Meters');
			10: AlrtDialog('Kilometers');
			11: AlrtDialog('Degrees');
		END;

	END;
END; 
RUN(Example);

See Also:

GetRoundingBase  



  GetRoundingBase Units 
VectorWorks10.0

VectorScript Declaration:

PROCEDURE   GetRoundingBase
( VAR  display :INTEGER;
  VAR  primary :INTEGER;
  VAR  secondary :INTEGER
) ;

Python:

def  vs.GetRoundingBase():
   return (display, primary, secondary)

Description:

Gets the rounding base (1, 2.5, or 5) for the display, primary units, and secondary units.

Parameters:

display Rounding base for the display units
primary Rounding base for the primary units
secondary Rounding base for the secondary units

Example:

FUNCTION DisplayAccuracy :REAL;
VAR
	dec_prec  :REAL;
	frac_prec :REAL;
	display   :INTEGER; 
	primary   :INTEGER; 
	secondary :INTEGER;
BEGIN
	GetRoundingBase(display, primary, secondary);
	dec_prec := 1 / (10 ^ GetPrefLongInt(169));
	IF display = 1 THEN dec_prec := dec_prec * 2.5 ELSE
	IF display = 2 THEN dec_prec := dec_prec * 5;
	frac_prec := 1 / (2 ^ GetPrefLongInt(171));
	IF NOT  GetPref(168) THEN DisplayAccuracy := dec_prec
	ELSE IF GetPref(175) THEN DisplayAccuracy := Min(dec_prec, frac_prec)
	ELSE DisplayAccuracy := frac_prec;
END;



  GetSecondaryUnitInfo Units 
VectorWorks8.0

VectorScript Declaration:

PROCEDURE   GetSecondaryUnitInfo
( VAR  style :INTEGER;
  VAR  dimPrec :LONGINT;
  VAR  format :INTEGER;
  VAR  showMark :BOOLEAN;
  VAR  dispFrac :BOOLEAN
) ;

Python:

def  vs.GetSecondaryUnitInfo():
   return (style, dimPrec, format, showMark, dispFrac)

Description:

Procedure GetSecondaryUnitInfo sets the secondary unit parameters for the active document.

Parameters:

style Returns active secondary units style.
dimPrec Returns dimension precision.
format Returns decimal formatting.
showMark Returns unit mark display setting.
dispFrac Returns fractional display setting.



  GetUnits Units 
MiniCAD

VectorScript Declaration:

PROCEDURE   GetUnits
( VAR  fraction :LONGINT;
  VAR  display :LONGINT;
  VAR  format :INTEGER;
  VAR  upi :REAL;
  VAR  name :STRING;
  VAR  squareName :STRING
) ;

Python:

def  vs.GetUnits():
   return (fraction, display, format, upi, name, squareName)

Description:

Procedure GetUnits returns the current units settings of the document.

Table - Units Formats

Units Format Constant
Decimal 0
Fractional 1
Decimal Ft/Inches 2
Fractional Ft/Inches 3


More extensive Units information is available using the GetPref routines with the selectors shown in the tables of the VectorScript Appendix.

Parameters:

fraction Approximate WorldCoords per drawing unit. Use GetPrefReal(150) instead.
display Returns display accuracy.
format Returns units format setting.
upi Returns units per inch value.
name Returns unit mark.
squareName Returns square unit mark.

Example:

PROCEDURE Example;
VAR 
	fraction   :LONGINT; 
	display    :LONGINT; 
	format     :INTEGER; 
	upi        :REAL; 
	name       :STRING;
	squareName :STRING;
BEGIN
	GetUnits(fraction, display, format, upi, name, squareName);
	Message(fraction, ' ', display, ' ', format, ' ', upi, ' ', name, ' ', squareName);
END;
RUN(Example);



  PrimaryUnits Units 
MiniCAD7.0

VectorScript Declaration:

PROCEDURE   PrimaryUnits
(   style :INTEGER;
    prec :LONGINT;
    dimPrec :LONGINT;
    format :INTEGER;
    angPrec :INTEGER;
    showMark :BOOLEAN;
    dispFrac :BOOLEAN
) ;

Python:

def  vs.PrimaryUnits(style, prec, dimPrec, format, angPrec, showMark, dispFrac):
   return None

Description:

Procedure PrimaryUnits specifies the primary units settings for the active document. The primary units setting is used by the document for all measurement entry and display values in the document.

Table - Standard Unit Settings

Units Setting Constant
Custom 0
Feet/Inches 1
Inches 2
Feet 3
Yards 4
Miles 5
Microns 6
Millimeters 7
Centimeters 8
Meters 9
Kilometers 10


Table - Units Formats

Units Format Constant
Decimal 0
Fractional 1
Decimal Ft/Inches 2
Fractional Ft/Inches 3

Parameters:

style Active primary unit style for document.
prec Display precision.
dimPrec Dimension precision.
format Decimal formatting.
angPrec Angular precision.
showMark Unit mark display setting.
dispFrac Fractional display setting.

Example:

PROCEDURE Example;
VAR
	style :INTEGER;
	prec, dimPrec :LONGINT;
	format, angPrec :INTEGER;
	showMark, dispFrac :BOOLEAN;
	outStr :STRING;
BEGIN
	outStr := '';
	GetPrimaryUnitInfo(style, prec, dimPrec, format, angPrec, showMark, dispFrac);
	FOR style := 0 to 16 DO BEGIN
		PrimaryUnits(style, prec, dimPrec, format, angPrec, showMark, dispFrac);
		outStr := Concat(outStr, Chr(13), style, ': ', GetPrefReal(152));
	END;
	AlrtDialog(outStr);
END;
RUN(Example);



  SecondaryUnits Units 
MiniCAD7.0

VectorScript Declaration:

PROCEDURE   SecondaryUnits
(   style :INTEGER;
    dimPrec :LONGINT;
    format :INTEGER;
    showMark :BOOLEAN;
    dispFrac :BOOLEAN
) ;

Python:

def  vs.SecondaryUnits(style, dimPrec, format, showMark, dispFrac):
   return None

Description:

Procedure SecondaryUnits sets the secondary unit parameters for the active document. The secondary units setting is used primarily for display of alternate dimensions in
when a dual dimension standard is active.

Table - Standard Unit Settings

Units Setting Constant
Custom 0
Feet/Inches 1
Inches 2
Feet 3
Yards 4
Miles 5
Microns 6
Millimeters 7
Centimeters 8
Meters 9
Kilometers 10


Table - Units Formats

Units Format Constant
Decimal 0
Fractional 1
Decimal Ft/Inches 2
Fractional Ft/Inches 3

Parameters:

style Active secondary unit style for document.
dimPrec Dimension precision.
format Decimal formatting.
showMark Unit mark display setting.
dispFrac Fractional display setting.

Example:

SecondaryUnits(1,6,2,TRUE,TRUE); 

{ Sets the secondary units to feet/inches with a dimension precision of 1/64, }
{ unit mark displayed, and fractional display of units values enabled.        }



  Units Units 
MiniCAD

VectorScript Declaration:

PROCEDURE   Units
( i:INTEGER ) ;

Python:

def  vs.Units(i):
   return None

Description:

Procedure Units specifies a standard units setting for the active document.

Table - Standard Unit Settings

Units Setting Constant
Custom 0
Feet/Inches 1
Inches 2
Feet 3
Yards 4
Miles 5
Microns 6
Millimeters 7
Centimeters 8
Meters 9
Kilometers 10

Parameters:

i Standard units setting index value.