Create an Array of Macros
Command - PrB_CreateArray
This command will create an array object.
The Parabuild array object provides a totally different approach to arraying objects compared to the AutoCAD/BricsCAD array commands.
The Parabuild array object should be seen as a macro copier.
Before starting this command you will need to create a macro that is ready for being arrayed.
We call this the entry macro.
That means the entry macro should :
- Define 1 or more objects
- The position of these element(s) should be influenced by a variable.
This variable should be a user-modifiable variable (we could give this variable the name StartPosition).
The initial value of the StartPosition variable is not that important and only temporary. It will be changed by the array object once we create the array object.
The array will need this variable name, because it will use this variable to position each macro copy's position
- Optionally the macro can also contain a total distance variable (we could give this variable the name TotalLength).
This would be a variable determined by Parabuild (so not modifiable by the user).
The array can use this variable to know the total distance over which macros should be copied.
All that the array object does is copy and delete the entry macros (and their dependent macros), and it uses the total length variable in the entry macro to calculate the number of macros that are needed.
It uses the start distance variable to position each individual entry macro.
When more or less entry macros are needed, the array object automatically copies or deletes entry macros (and the objects that they define), and corrects all of the entry macro's position by changing the StartPosition variable.
The array has a lot of options that will allow you to change the spacing between the entry macros, or to change the number of entry macros.
The array object has the following options :
The settings that influence the number of and position of the entry macros are indicated in blue.
The settings that allow the array to retrieve and set data in the entry macros are indicated in blue.
Basically, the Total length and Distance from start variables are what drives everything. If they are not set correctly in the array object or in the entry macro then nothing will work.
We will review all of the options of the dialog box in more detail :
- Normal distribution -
- Normal but entries use distance between -
- Entries decide distance between -
Fixed distance between entries -
Max (distance between entries) -
Adjust count to fit size -
Distance is retrieved from entry macro -
Total length (number or variable) -
Variable for distance from the start (filled in by array) -
Variable name for entry size -
Rounding for entry distances -
Destination for remainders - Where the remainder distance should be placed : before or after the entries. See below for the explanation of what a remainder is.
Distribute remainders - When enabled, the remainder distance will be distributed evenly among the distances between all the entries of the macro. Enabling this will effectively disable the above Destination for remainders option.
What are remainders? We'll explain by way of an example :
The remaining distance of this example array is calculated as follows :
TotalLength / DistanceBetween = NumberOfEntries
1000 / 300 = 3.333
The NumberOfEntries needs to be rounded to a whole number, so it becomes 3 :
Remainder = 1000-(300*3) = 100
In this example, the remainder is 100. This distance can be distributed evenly between the entries, or moved to before or after the entries.
Number of entries -
Minimum (number of entries) -
Begin distance -
End distance -
Total start offset -
Total end offset -
Add entries alternating -
Nr of entries to skip -
Hide entry-macros -
Ignore macros that are based on the first and the last entries -
Location for new entry -
Source entry for new entry -
Entry manipulations -