NAME¶
icetBoundingVertices -- set bounds of geometry.
Synopsis¶
#include <IceT.h>
void icetBoundingVertices( |
IceTInt |
size, |
|
IceTEnum |
type, |
|
IceTSizeType |
stride, |
|
IceTSizeType |
count, |
|
const IceTVoid * |
pointer ); |
Description¶
icetBoundingVertices is used to tell
IceT what the bounds of the
geometry drawn by the callback registered with
icetDrawCallback or
icetGLDrawCallback are. The bounds are assumed to be the convex hull of
the vertices given. The user should take care to make sure that the drawn
geometry actually does fit within the convex hull, or the data may be culled
in unexpected ways.
IceT runs most efficiently when the bounds given
are tight (match the actual volume of the data well) and when the number of
vertices given is minimal.
The
size parameter specifies the number of coordinates given for each
vertex. Coordinates are given in X-Y-Z-W order. Any Y or Z coordinate not
given (because
size is less than 3) is assumed to be 0.0, and any W
coordinate not given (because
size is less than 4) is assumed to be
1.0.
The
type parameter specifies in what data type the coordinates are given.
Valid
types are
ICET_SHORT,
ICET_INT,
ICET_FLOAT,
and
ICET_DOUBLE, which correspond to types IceTShort, IceTInt,
IceTFloat, and IceTDouble, respectively.
The
stride parameter specifies the offset between consecutive vertices in
bytes. If
stride is 0, the array is assumed to be tightly packed.
The
count parameter specifies the number of vertices to set.
The
pointer parameter is an array of vertices with the first vertex
starting at the first byte.
If data replication is being used, each process in a data replication group
should register the same bounding vertices that encompass the entire geometry.
By default there is no data replication, so unless you call
icetDataReplicationGroup, all process can have their own bounds.
Errors¶
- ICET_INVALID_ENUM
-
Raised if type is not one of ICET_SHORT, ICET_INT,
ICET_FLOAT, or ICET_DOUBLE.
Warnings¶
None.
Bugs¶
None known.
Copyright¶
Copyright (C)2003 Sandia Corporation
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S.
Government retains certain rights in this software.
This source code is released under the New BSD License.
See Also¶
icetBoundingBox(3),
icetDataReplicationGroup(3),
icetDrawCallback(3),
icetGLDrawCallback(3)