Structural Informatics Group (SIG) logo
Home | Projects | Demos | Downloads | Publications | Local Info | About Us | New site
Go to the first, previous, next, last section, table of contents.

XG.3D-INSERT-FACET

source files: [xc]shp.[ch]

SYNTAX

(XG.3D-INSERT-FACET
  :THING <thing>
[ :TRANSFORM <xtfm> ]
[ :X0 <num> ] [ :Y0 <num> ] [ :Z0 <num> ]
[ :X1 <num> ] [ :Y1 <num> ] [ :Z1 <num> ]
[ :X2 <num> ] [ :Y2 <num> ] [ :Z2 <num> ]
[ :X3 <num> ] [ :Y3 <num> ] [ :Z3 <num> ]
)

DESCRIPTION

The <thing> must be a 'thing' in the :DRAW <camera> sense, a disembodied propertylist containing a :POINT-RELATION, and also a :FACET-RELATION if more than a single point is supplied. Both must be rank-1.

This call inserts a single X-Y-Z point in :POINT-RELATION if only :X0/:Y0/:Z0 is provided.

If :X1/:Y1/:Z1 is also provided, both points will be inserted in the :POINT-RELATION, and a line segment (:FACET-0/:FACET-1) will be inserted in the facet relation.

If :X2/:Y2/:Z2 is also provided, all three points will be inserted in the :POINT-RELATION, and instead of a line segment, a triangle (:FACET-0/:FACET-1/:FACET-2) will be inserted in the facet relation.

If :X3/:Y3/:Z3 is also provided, all four points will be inserted in the :POINT-RELATION, and instead of a triangle, a rectangle (:FACET-0/:FACET-1/:FACET-2/:FACET-3) will be inserted in the facet relation.

In the latter two cases, if the facet relaction contains facet normals (:POINT-NORMAL-X/Y/Z), a normal for the facet will also be computed and stored in the relation, based on the the cross-product of :FACET-0/1/2.

If :TRANSFORM is supplied, it must be an instance of CLASS-MATRIX44, and will be used to transform :[X|Y|Z][0|1|2|3] before they are stored. This isn't implemented yet. Bug Jeff.


Go to the first, previous, next, last section, table of contents.