Show_Shell

Functions

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_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_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_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 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_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_Shell_Tristrip_Count (HC_KEY key, int *tristrip_count)
 Returns the tristrip count for a shell after it has been prepared for rendering. More...
 

Detailed Description

Function Documentation

◆ DShow_Shell()

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.

Parameters
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.

DETAILS

No additional details. See Show_Shell().

◆ Show_Partial_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.

Parameters
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.

DETAILS

No additional details. See Show_Shell()

◆ Show_Partial_Shell_Size()

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().

Parameters
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.

DETAILS

No additional details. See Show_Shell()

◆ 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.

Parameters
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.

DETAILS

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() .

NOTES

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.

RESTRICTIONS

See also
Insert_Shell, Insert_Shell_By_Tristrips, Get_Selection, Open_Geometry, Open_LOD, Begin_Contents_Search, Compute_Coordinates, Open_Geometry, Generate_Shell_From_Geometry

◆ Show_Shell_Face_Count()

void Show_Shell_Face_Count ( HC_KEY  key,
int *  face_count 
)

Returns the number of faces in the shell in constant time.

Parameters
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.

DETAILS

No additional details. See Show_Shell()

◆ Show_Shell_Size()

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

Parameters
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.

DETAILS

No additional details. See Show_Shell()

◆ Show_Shell_Tristrip_Count()

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.

Parameters
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.

DETAILS

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.