Degrees of Freedom
The restrictions that the rules impose on a 3D-model can be seen as removing degrees of freedom of the 3D-Model.
A degree of freedom is the way an element can move in 3D.
Each rule puts restrictions on the 3D-Model. The one rule imposes more restrictions than the other. Also the type of geometry plays a role: two planes that are coincident on each other will put more geometric restrictions than two lines that are coincident. A plane means in that respect more than one line, and a line more than one point. You must therefore use as many planes as possible, because then you have to produce fewer rules and you will reach your expected result more rapidly and intuitively.
An intelligent 3D-Model should ideally be seen as having absolutely no degrees of freedom. It is possible to use a 3D Model with degrees of freedom, but this can end in unexpected results.
Imagine yourself the following scenario as an example:
You put a plane of a plate on a plane of a profile. The thickness of the plate was not defined (degree of freedom!).
When you would move the profile, the plate must move too. While calculating your macro Parabuild has a problem: does the plate have to become thicker in the distance that was moved, or will the plate be moved entirely and preserve the same thickness? In this case Parabuild will preserve the thickness. Parabuild will always try to preserve the original form of the plate, but it is not a perfect solution: Parabuild sometimes has to “gamble”, or sometimes will not be able to find a solution. To receive results that are always correct you should therefore always add rules until your 3D-model has 0 degrees of freedom.
Another example of too many degrees of freedom can be found in the Calculate all Macros topic.