Functions | |
void | Show_Shell (HC_KEY key, int *pcount, HC_POINT *points, int *flist_length, int *face_list) |
Returns the previous definition of a shell, as referenced by a key. More... | |
void | DShow_Shell (HC_KEY key, int *pcount, HC_DPOINT *points, int *flist_length, int *face_list) |
Similar to Show_Shell(), but returns double-precision values. More... | |
void | Show_Shell_Size (HC_KEY key, int *pcount, int *flist_length) |
Finds the size of a given shell. This is useful in determining the size of the data structures that must hold points and face_list More... | |
void | Show_Partial_Shell_Size (HC_KEY key, int foffset, int fcnt, int *flist_length) |
Finds the size of a portion of a shell. This is useful in determining the size of the data structure that must hold the points and face_list arrays in Show_Partial_Shell(). More... | |
void | Show_Partial_Shell (HC_KEY key, int voffset, int vcnt, HC_POINT *points, int foffset, int fcnt, int *flist_length, int *face_list) |
Returns a portion of the previous definition of a shell, as referenced by a key. More... | |
void | Show_Shell_Face_Count (HC_KEY key, int *face_count) |
Returns the number of faces in the shell in constant time. More... | |
void | Show_Shell_Tristrip_Count (HC_KEY key, int *tristrip_count) |
Returns the tristrip count for a shell after it has been prepared for rendering. More... | |
void DShow_Shell | ( | HC_KEY | key, |
int * | pcount, | ||
HC_DPOINT * | points, | ||
int * | flist_length, | ||
int * | face_list | ||
) |
Similar to Show_Shell(), but returns double-precision values.
key | - Unique numeric identifier pointing to a shell in the database. |
pcount | - Number of valid points in points. Returned to caller. Passed by reference always. |
points | - Vector of x-y-z triplets for the coordinates of the vertices to be used to build the shell. (A simple N x 3 array may also be used.) Returned to caller. Passed by reference always. |
flist_length | - Total number of integers in face_list. Returned to caller. Passed by reference always. |
face_list | - Encoded description of how to connect the points to build the faces of the shell. Returned to caller. Passed by reference always. |
No additional details. See Show_Shell().
void Show_Partial_Shell | ( | HC_KEY | key, |
int | voffset, | ||
int | vcnt, | ||
HC_POINT * | points, | ||
int | foffset, | ||
int | fcnt, | ||
int * | flist_length, | ||
int * | face_list | ||
) |
Returns a portion of the previous definition of a shell, as referenced by a key.
key | - Unique numeric identifier pointing to a shell in the database. |
voffset | - Index of the first vertex to be returned in the points list previously defined by Insert_Shell() . |
vcnt | - Number of vertices to return to user in the points data structure. |
points | - Vector of x-y-z triplets for the coordinates of the vertices to be used to build the shell. (A simple N x 3 array may also be used.) Returned to caller. Passed by reference always. |
foffset | - Index of the first face to be returned in the faces list previously defined by Insert_Shell. |
fcnt | - Number of faces to return to user in the face_list data structure. |
flist_length | - Total number of integers in face_list. Returned to caller. Passed by reference always. |
face_list | - Encoded description of how to connect the points to build the faces of the shell. Returned to caller. Passed by reference always. |
No additional details. See Show_Shell()
void Show_Partial_Shell_Size | ( | HC_KEY | key, |
int | foffset, | ||
int | fcnt, | ||
int * | flist_length | ||
) |
Finds the size of a portion of a shell. This is useful in determining the size of the data structure that must hold the points and face_list arrays in Show_Partial_Shell().
key | - Unique numeric identifier pointing to a shell in the database. |
foffset | - Index of the first face to be returned in the faces list previously defined by Insert_Shell. |
fcnt | - Number of faces to return to user in the face_list data structure. |
flist_length | - Total number of integers in face_list. Returned to caller. Passed by reference always. |
No additional details. See Show_Shell()
void Show_Shell | ( | HC_KEY | key, |
int * | pcount, | ||
HC_POINT * | points, | ||
int * | flist_length, | ||
int * | face_list | ||
) |
Returns the previous definition of a shell, as referenced by a key.
key | - Unique numeric identifier pointing to a shell in the database. |
pcount | - Number of valid points in points. Returned to caller. Passed by reference always. |
points | - Vector of x-y-z triplets for the coordinates of the vertices to be used to build the shell. (A simple N x 3 array may also be used.) Returned to caller. Passed by reference always. |
flist_length | - Total number of integers in face_list. Returned to caller. Passed by reference always. |
face_list | - Encoded description of how to connect the points to build the faces of the shell. Returned to caller. Passed by reference always. |
Show_Shell() reads back the x-y-z's currently stored in a shell. This is useful if your program is not storing its own copy of the shell data. The key for the shell might come from Show_Selection_Element() or Find_Contents() , or it might have been saved by your program when the shell was created.
Use Show_Shell_Size() to determine how large the points and face_list arrays are going to be, before you actually call Show_Shell() .
Similar to Show_Shell() , Show_Partial_Shell() is used to read back the x-y-z's currently stored in a a shell. However, the user can limit the part of the shell to examine, so that less memory (and time) is required for the operation.
Use Show_Partial_Shell_Size() to determine the minimum size of the points and face_list arrays, before you actually call Show_Partial_Shell() .
Under normal circumstances, Show_Shell (and its variants) assume that the key refers to a shell. If the currently open item is an LOD (see Open_LOD() ), then the key is ignored, and the show routine retrieves whatever contents were inserted into the LOD. If the currently open item is a NURBS surface, then the show functions retrieve information about the tessellated representation of the NURBS surface. For such purposes, if the tessellated representation was a mesh, it will be converted into a shell. If it had never been generated (no Update_Display had ever happened), it will be constructed with default attributes.
If the key provided is for a PolyCylinder, Sphere or Cylinder, the tesselation values used are those values set in the primitive's owning segment. Any tesselation settings that would normally be inherited at draw time will not be applied. Shells computed from PolyCylinders, Spheres or Cylinders will have left-handed faces.
void Show_Shell_Face_Count | ( | HC_KEY | key, |
int * | face_count | ||
) |
Returns the number of faces in the shell in constant time.
key | - Unique numeric identifier pointing to a shell in the database. |
face_count | - Number of faces in the shell. Returned to caller. Passed by reference always. |
No additional details. See Show_Shell()
void Show_Shell_Size | ( | HC_KEY | key, |
int * | pcount, | ||
int * | flist_length | ||
) |
Finds the size of a given shell. This is useful in determining the size of the data structures that must hold points and face_list
key | - Unique numeric identifier pointing to a shell in the database. |
pcount | - Number of valid points in points. Returned to caller. Passed by reference always. |
flist_length | - Total number of integers in face_list. Returned to caller. Passed by reference always. |
No additional details. See Show_Shell()
void Show_Shell_Tristrip_Count | ( | HC_KEY | key, |
int * | tristrip_count | ||
) |
Returns the tristrip count for a shell after it has been prepared for rendering.
key | - Unique numeric identifier pointing to a shell in the database. |
tristrip_count | - Number of tristrips calculated for this shell after it is prepared for rendering. |
When HOOPS/3dGS prepares a shell for rendering, it first creates tristrips for qualifying geometry (except for geometry that was already inserted in tristrip form). The Show_Shell_Tristrip_Count interface allows users to query the number of tristrips that 3dGS created for a specific shell.