NAME
icetBoundingVertices -- set bounds of geometry.
Synopsis
#include <GL/ice-t.h>
void icetBoundingVertices( GLint size,
GLenum type,
GLsizei stride,
GLsizei count,
const GLvoid * pointer );
Description
icetBoundingVertices is used to tell IceT what the bounds of the
geometry drawn by the callback registered with icetDrawFunc 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 GLshort, GLint, GLfloat, and
GLdouble, 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_VALUE
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, there is a non-exclusive
license for use of this work by or on behalf of the U.S. Government.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that this Notice and any statement
of authorship are reproduced on all copies.
See Also
icetDrawFunc(3), icetBoundingBox(3), icetDataReplicationGroup(3)
IceT Reference April 12, 2006 icetBoundingVertices(3)