PCI Variable Types

There are a number of different variable types available, named according to the following conventions:

 

String

String variables contain alphanumeric text and must be preceded by an ‘$’ to identify them. Typically these would be used for text creation, filenames or user identification in an EdgeCAM command. String variables may be up to 80 characters in length.

Digitised

These are preceded by an ‘@’ and refer to a digitised position. These positions are 3D and therefore have an X, Y and Z component. The X, Y and Z components of the digitised variable @ORIGIN can be referred to as X@ORIGIN, Y@ORIGIN and Z@ORIGIN respectively.

Numeric

These have no prefix and can contain any floating point or integer value.

System

These are set up by EdgeCAM and are prefixed by ‘&’. A typical example would be &NEXTENT, which defines the next available entity number in the database. A full definition of all system variables is included in the reference section of this specification.

Read only

These are preceded by a ‘#’ character and can only be written-to once. They always have a numeric value. All subsequent writes using different values generate an error.

These are typically used to add clarity to a macro and are used to identify so called ‘magic numbers’. For instance, the number that indicates a user has selected a free digitise position is defined as #FREEDIG. This and a number of other read only variables are created by the system when initialising a command save or executing a PCI macro.