Creating and editing arbn primitives
An arbn primitive is an arbitrary complex polyhedron bounded by N three-dimensional planes.
Such solids are constructed by specifying N sets of plane coefficients and distances, which collectively define the space outside of the solid. The coefficients define a vector whose normal is a plane parallel to the face of the solid. The surface of the solid is at the specified distance along this vector.
The distances may be negative and are used when a face lies on the opposite side of the origin as the tip of its vector. An example is if the left side of a box lies on the positive X axis. In this case, because the left side is being defined, the vector points left (coefficients -1 0 0), but since the point is on the positive X axis its distance is opposite its vector and therefore negative.
Handled by: make in create Arguments Number of planes
xyz direction vector and distance for each plane
Example in arbn.s arbn 8 1 0 1 1 -1 0 0 1 0 1 0 1 0 -1 0 1 0 0 1 1 0 0 -1 1 0.5 0.5 0.5 1 -0.5 -0.5 -0.5 1
Example with negative distance in arbn2.s arbn 6 1 0 0 100 -1 0 0 -10 0 1 0 200 0 -1 0 -10 0 0 -1 0 0 0 1 1.5
…is equivalent to…
in rpp.s rpp 10 100 10 200 0 1.5