ShellKey

class HPS.ShellKey : public HPS.GeometryKey

The ShellKey class is a smart pointer to a database object. It is a handle to a shell created by SegmentKey.InsertShell.

Public Functions

void ComputeRelation (HPS.Point[] in_points, HPS.ShellRelationOptionsKit in_options, out HPS.ShellRelationResultsKit out_results)

Computes the relation of a collection of points to this shell, subject to the specified options.

Param in_points

An array of points to test against this shell.

Param in_options

The options to use when performing the relation test.

Param out_results

The results of the relation test.

void ComputeRelation (HPS.ShellKey in_points_source, HPS.ShellRelationOptionsKit in_options, out HPS.ShellRelationResultsKit out_results)

Computes the relation of a collection of points to this shell, subject to the specified options.

Param in_points_source

A shell whose points should be tested against this shell.

Param in_options

The options to use when performing the relation test.

Param out_results

The results of the relation test.

void ComputeRelation (HPS.ShellKit in_points_source, HPS.ShellRelationOptionsKit in_options, out HPS.ShellRelationResultsKit out_results)

Computes the relation of a collection of points to this shell, subject to the specified options.

Param in_points_source

A shell whose points should be tested against this shell.

Param in_options

The options to use when performing the relation test.

Param out_results

The results of the relation test.

void Consume (HPS.ShellKit in_kit)

Completely replaces all settings on this ShellKey with those set on the specified kit and resets the kit.

Param in_kit

The kit from which to get the settings to replace on this ShellKey.

override void Dispose ()
HPS.ShellKey EditFacelistByDeletion (ulong in_offset, ulong in_count)

Removes faces from the face list for this ShellKey. This will not affect the points referenced by the removed faces, however any face attributes on the removed faces will be lost.

Param in_offset

The offset into the faces for the shell at which to start removing faces. This value must be such that in_offset<face_count for deletion to succeed. This is not an offset into the raw face list, but is relative to the actual face count for the shell.

Param in_count

The number of faces to remove from the face list for the shell. This value must be such that in_offset+in_count<=face_count for the deletion to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey EditFacelistByInsertion (ulong in_offset, int[] in_facelist)

Adds faces to the face list for this ShellKey.

Param in_offset

The offset into the faces for the shell at which to insert faces. This value must be such that in_offset<face_count for insertion to succeed. This is not an offset into the raw face list, but is relative to the actual face count for the shell.

Param in_facelist

The faces (using the standard face-list encoding) to insert into the face list at the specified offset.

Return

A reference to this ShellKey.

HPS.ShellKey EditFacelistByReplacement (ulong in_offset, int[] in_facelist)

Replaces faces in the face list for this ShellKey.

Param in_offset

The offset into the faces for the shell at which to start replacing faces. This value must be such that in_offset<face_count for replacement to succeed. This is not an offset into the raw face list, but is relative to the actual face count for the shell.

Param in_facelist

The faces (using the standard face-list encoding) to use to replace those in the face list at the specified offset. The number of replacement faces must be such that in_offset+replacement_face_count<=face_count. This does not mean that the face list length must be the same, i.e., faces can use different numbers of vertices than previously, but rather is a limit on the number of faces encoded in the face list.

Return

A reference to this ShellKey.

HPS.ShellKey EditPointsByDeletion (ulong in_offset, ulong in_count)

Removes points from the point list for this ShellKey. Any existing faces which reference points which are being deleted will be removed. Additionally, any vertex settings on the deleted vertices, i.e., colors, normals, parameters, and visibilities, will be removed. The face list will also be updated to reflect the new vertex offsets caused by removing elements from the point list.

Param in_offset

The offset into the point list for the shell at which to start removing points. This value must be such that in_offset<point_count for deletion to succeed.

Param in_count

The number of points to delete from the point list for the shell. This value must be such that in_offset+in_count<=point_count for the deletion to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey EditPointsByInsertion (ulong in_offset, HPS.Point[] in_points)

Adds points to the point list for this ShellKey. No existing faces will reference these points, i.e., the face list will be updated to reference the original vertices in their new positions. Addtionally, no vertex attributes will apply to these points, i.e., the vertex attributes will only be set on those points which had them prior to the insertion.

Param in_offset

The offset into the point list for the shell at which to insert points. This value must be such that in_offset<point_count for insertion to succeed.

Param in_points

The points to insert into the point list at the specified offset.

Return

A reference to this ShellKey.

HPS.ShellKey EditPointsByReplacement (ulong in_offset, HPS.Point[] in_points)

Replaces points in the point list for this ShellKey. These points will replace those already referenced by any faces and will inherit any attributes the points being replaced had.

Param in_offset

The offset into the point list for the shell at which to start replacing points. This value must be such that in_offset<point_count for replacement to succeed.

Param in_points

The points to use to replace those in the point list at the specified offset. This size of the array must be such that in_offset+in_points.size()<=point_count for the replacement to succeed.

Return

A reference to this ShellKey.

ulong GetFaceCount ()

Retrieves the number of faces in this shell. Note that this is different than the length of the face list

Return

The number of faces in this shell.

ulong GetPointCount ()

Retrieves the number of points in this shell.

Return

The number of points in this shell.

override HPS.Type ObjectType ()

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Return

The declared type of the object in question, which may differ from the true, underlying type.

void Optimize (HPS.ShellOptimizationOptionsKit in_shell_optimization_kit)

Optimizes the shell using the parameters set in a ShellOptimizationOptionsKit

void Set (HPS.ShellKit in_kit)

Replace those settings on this ShellKey with those set on the specified kit.

Param in_kit

The kit from which to get the settings to replace on this ShellKey.

HPS.ShellKey SetEdgeIndexColorsByList (ulong[] in_vertices1, ulong[] in_vertices2, float in_index)

Sets edge material indices on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_index

The material index to set on the edges.

Return

A reference to this ShellKey.

HPS.ShellKey SetEdgeIndexColorsByList (ulong[] in_vertices1, ulong[] in_vertices2, float[] in_indices)

Sets edge material indices on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_indices

The material indices to set on the edges.

Return

A reference to this ShellKey.

HPS.ShellKey SetEdgeRGBColorsByList (ulong[] in_vertices1, ulong[] in_vertices2, HPS.RGBColor in_rgb_color)

Sets edge colors on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgb_color

The color to set on the edges.

Return

A reference to this ShellKey.

HPS.ShellKey SetEdgeRGBColorsByList (ulong[] in_vertices1, ulong[] in_vertices2, HPS.RGBColor[] in_rgb_colors)

Sets edge colors on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgb_colors

The colors to set on the edges.

Return

A reference to this ShellKey.

HPS.ShellKey SetEdgeVisibilitiesByList (ulong[] in_vertices1, ulong[] in_vertices2, bool in_visibility)

Sets edge visibilities on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_visibility

The visibility to apply to each edge specified.

Return

A reference to this ShellKey.

HPS.ShellKey SetEdgeVisibilitiesByList (ulong[] in_vertices1, ulong[] in_vertices2, bool[] in_visibilities)

Sets edge visibilities on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_visibilities

The visibilities that should be set for each edge specified.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceIndexColorsByList (ulong[] in_faces, float in_index)

Sets a single material index on a selection of arbitrary faces.

Param in_faces

The indices of the faces on which to set the color. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_index

The material index to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceIndexColorsByList (ulong[] in_faces, float[] in_indices)

Sets face material indices on a selection of arbitrary faces. If the sizes of the face index and material index arrays are different, the smaller size will be used.

Param in_faces

The indices of the faces on which to set the colors. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_indices

The material indices to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceIndexColorsByRange (ulong in_start, float[] in_indices)

Sets face material indices on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting colors. This value must be such that in_start<face_count for setting to succeed.

Param in_indices

The material indices to set on the faces for this ShellKey. The size of the array must be such that in_start+in_indices.size()<=face_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceIndexColorsByRange (ulong in_start, ulong in_count, float in_index)

Sets a single material index on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting the color. This value must be such that in_start<face_count for setting to succeed.

Param in_count

The number of faces on which to set the color. This value must be such that in_start+in_count<=face_count for the setting to succeed.

Param in_index

The material index to set on the faces for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetFacelist (int[] in_facelist)

Replace the face list on this ShellKey with the specified face list.

Param in_facelist

The face list to use to replace the one for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceNormalsByList (ulong[] in_faces, HPS.Vector in_normal)

Sets a single normal on a selection of arbitrary faces.

Param in_faces

The indices of the faces on which to set the normal. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_normal

The normal to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceNormalsByList (ulong[] in_faces, HPS.Vector[] in_normals)

Sets face normals on a selection of arbitrary faces. If the sizes of the face index and normal arrays are different, the smaller size will be used.

Param in_faces

The indices of the faces on which to set the normals. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_normals

The normals to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceNormalsByRange (ulong in_start, HPS.Vector[] in_normals)

Sets face normals on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting normals. This value must be such that in_start<face_count for setting to succeed.

Param in_normals

The normals to set on the faces for this ShellKey. The size of the array must be such that in_start+in_normals.size()<=face_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceNormalsByRange (ulong in_start, ulong in_count, HPS.Vector in_normal)

Sets a single normal on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting the normal. This value must be such that in_start<face_count for setting to succeed.

Param in_count

The number of faces on which to set the normal. This value must be such that in_start+in_count<=face_count for the setting to succeed.

Param in_normal

The normal to set on the faces for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceRGBColorsByList (ulong[] in_faces, HPS.RGBColor in_rgb_color)

Sets a single RGB color on a selection of arbitrary faces.

Param in_faces

The indices of the faces on which to set the color. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_rgb_color

The RGB color to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceRGBColorsByList (ulong[] in_faces, HPS.RGBColor[] in_rgb_colors)

Sets face RGB colors on a selection of arbitrary faces. If the sizes of the face index array and the color array different, the smaller size will be used.

Param in_faces

The indices of the faces on which to set the colors. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_rgb_colors

The RGB colors to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceRGBColorsByRange (ulong in_start, HPS.RGBColor[] in_rgb_colors)

Sets face RGB colors on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting colors. This value must be such that in_start<face_count for setting to succeed.

Param in_rgb_colors

The RGB colors to set on the faces for this ShellKey. The size of the array must be such that in_start+in_rgb_colors.size()<=face_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceRGBColorsByRange (ulong in_start, ulong in_count, HPS.RGBColor in_rgb_color)

Sets a single RGB color on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting the color. This value must be such that in_start<face_count for setting to succeed.

Param in_count

The number of faces on which to set the color. This value must be such that in_start+in_count<=face_count for the setting to succeed.

Param in_rgb_color

The RGB color to set on the faces for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceVisibilitiesByList (ulong[] in_faces, bool in_visibility)

Sets a single visibility on a selection of arbitrary faces.

Param in_faces

The indices of the faces on which to set the visibility. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_visibility

The visibility to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceVisibilitiesByList (ulong[] in_faces, bool[] in_visibilities)

Sets face visibilities on a selection of arbitrary faces. If the sizes of the face index and visibility arrays are different, the smaller size will be used.

Param in_faces

The indices of the faces on which to set the visibilities. Each index in the array must be such that in_faces[i]<face_count for setting to succeed.

Param in_visibilities

The visibilities to set on the faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceVisibilitiesByRange (ulong in_start, bool[] in_visibilities)

Sets face visibilities on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting visibilities. This value must be such that in_start<face_count for setting to succeed.

Param in_visibilities

The visibilities to set on the faces for this ShellKey. The size of the array must be such that in_start+in_visibilities.size()<=face_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetFaceVisibilitiesByRange (ulong in_start, ulong in_count, bool in_visibility)

Sets a single visibility on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start setting the visibility. This value must be such that in_start<face_count for setting to succeed.

Param in_count

The number of faces on which to set the visibility. This value must be such that in_start+in_count<=face_count for the setting to succeed.

Param in_visibility

The visibility to set on the faces for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetMaterialMapping (HPS.MaterialMappingKit in_kit)

Sets the specified material mappings on this ShellKey. Only face, back face, cut edge, cut face, edge, and vertex materials will be set on the shell. These material settings will be “global” for the shell, i.e., all types will get the material for that type. To get different materials for the same types, e.g., faces with different colors, it is necessary to use the per-vertex or per-face functions.

Param in_kit

The material mappings to set on this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetPoints (HPS.Point[] in_points)

Replace the points on this ShellKey with the specified points.

Param in_points

The points to use to replace those for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetTristrips (int[] in_tristrips)

Replace the face list on this ShellKey with the specified face list.

Param in_tristrips

The tristrips list to use to replace the one for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByList (ulong[] in_vertices, float in_index)

Sets a single material index on a selection of arbitrary vertices which apply to the specified shell component.

Param in_vertices

The indices of the vertices on which to set the color. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_index

The material index to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByList (ulong[] in_vertices, float in_index, HPS.Shell.Component in_apply_to)

Sets a single material index on a selection of arbitrary vertices which apply to the specified shell component.

Param in_vertices

The indices of the vertices on which to set the color. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_index

The material index to set on the vertices.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByList (ulong[] in_vertices, float[] in_indices)

Sets vertex material indices on a selection of arbitrary vertices which apply to the specified shell component. If the sizes of the vertex index and material index arrays are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the colors. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_indices

The material indices to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByList (ulong[] in_vertices, float[] in_indices, HPS.Shell.Component in_apply_to)

Sets vertex material indices on a selection of arbitrary vertices which apply to the specified shell component. If the sizes of the vertex index and material index arrays are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the colors. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_indices

The material indices to set on the vertices.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByRange (ulong in_start, float[] in_indices)

Sets vertex material indices on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting colors. This value must be such that in_start<point_count for setting to succeed.

Param in_indices

The material indices to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_indices.size()<=point_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByRange (ulong in_start, float[] in_indices, HPS.Shell.Component in_apply_to)

Sets vertex material indices on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting colors. This value must be such that in_start<point_count for setting to succeed.

Param in_indices

The material indices to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_indices.size()<=point_count for the setting to succeed.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByRange (ulong in_start, ulong in_count, float in_index)

Sets a single material index on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the color. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the color. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_index

The material index to set on the vertices for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexIndexColorsByRange (ulong in_start, ulong in_count, float in_index, HPS.Shell.Component in_apply_to)

Sets a single material index on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the color. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the color. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_index

The material index to set on the vertices for this ShellKey.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexNormalsByList (ulong[] in_vertices, HPS.Vector in_normal)

Sets a single normal on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to set the normal. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_normal

The normal to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexNormalsByList (ulong[] in_vertices, HPS.Vector[] in_normals)

Sets vertex normals on a selection of arbitrary vertices. If the sizes of the vertex index and normal arrays are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the normals. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_normals

The normals to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexNormalsByRange (ulong in_start, HPS.Vector[] in_normals)

Sets vertex normals on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start setting normals. This value must be such that in_start<point_count for setting to succeed.

Param in_normals

The normals to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_normals.size()<=point_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexNormalsByRange (ulong in_start, ulong in_count, HPS.Vector in_normal)

Sets a single normal on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the normal. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the normal. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_normal

The normal to set on the vertices for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexParametersByList (ulong[] in_vertices, float[] in_params)

Sets texture parameters on a selection of arbitrary vertices. If the sizes of the vertex index array and the texture parameter array (divided by the parameter width) are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the texture parameters. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_params

The texture parameters to set on the vertices for this ShellKey. The size of the array should be divisible by the parameter width, if it is not, some parameters will get ignored.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexParametersByList (ulong[] in_vertices, float[] in_params, ulong in_param_width)

Sets texture parameters on a selection of arbitrary vertices. If the sizes of the vertex index array and the texture parameter array (divided by the parameter width) are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the texture parameters. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_params

The texture parameters to set on the vertices for this ShellKey. The size of the array should be divisible by the parameter width, if it is not, some parameters will get ignored.

Param in_param_width

The number of texture parameters per vertex. Defaults to 2.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexParametersByRange (ulong in_start, float[] in_params)

Sets texture parameters on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start setting texture parameters. This value must be such that in_start<point_count for setting to succeed.

Param in_params

The texture parameters to set on the vertices for this ShellKey. The size of the array should be divisible by the parameter width, if it is not, some parameters will get ignored. The size of the array must be such that in_start+in_params.size()/in_param_width<=point_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexParametersByRange (ulong in_start, float[] in_params, ulong in_param_width)

Sets texture parameters on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start setting texture parameters. This value must be such that in_start<point_count for setting to succeed.

Param in_params

The texture parameters to set on the vertices for this ShellKey. The size of the array should be divisible by the parameter width, if it is not, some parameters will get ignored. The size of the array must be such that in_start+in_params.size()/in_param_width<=point_count for the setting to succeed.

Param in_param_width

The number of texture parameters per vertex. Defaults to 2.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByList (ulong[] in_vertices, HPS.RGBAColor in_rgba_color)

Sets a single RGBA color on a selection of arbitrary vertices which apply to the specified shell component.

Param in_vertices

The indices of the vertices on which to set the color. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgba_color

The RGBA color to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByList (ulong[] in_vertices, HPS.RGBAColor in_rgba_color, HPS.Shell.Component in_apply_to)

Sets a single RGBA color on a selection of arbitrary vertices which apply to the specified shell component.

Param in_vertices

The indices of the vertices on which to set the color. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgba_color

The RGBA color to set on the vertices.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByList (ulong[] in_vertices, HPS.RGBAColor[] in_rgba_colors)

Sets vertex RGBA colors on a selection of arbitrary vertices which apply to the specified shell component. If the sizes of the vertex index array and color array are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the colors. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgba_colors

The RGBA colors to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByList (ulong[] in_vertices, HPS.RGBAColor[] in_rgba_colors, HPS.Shell.Component in_apply_to)

Sets vertex RGBA colors on a selection of arbitrary vertices which apply to the specified shell component. If the sizes of the vertex index array and color array are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the colors. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgba_colors

The RGBA colors to set on the vertices.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByRange (ulong in_start, HPS.RGBAColor[] in_rgba_colors)

Sets vertex RGBA colors on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting colors. This value must be such that in_start<point_count for setting to succeed.

Param in_rgba_colors

The RGBA colors to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_rgba_colors.size()<=point_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByRange (ulong in_start, HPS.RGBAColor[] in_rgba_colors, HPS.Shell.Component in_apply_to)

Sets vertex RGBA colors on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting colors. This value must be such that in_start<point_count for setting to succeed.

Param in_rgba_colors

The RGBA colors to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_rgba_colors.size()<=point_count for the setting to succeed.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByRange (ulong in_start, ulong in_count, HPS.RGBAColor in_rgba_color)

Sets a single RGBA color on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the color. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the color. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_rgba_color

The RGBA color to set on the vertices for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBAColorsByRange (ulong in_start, ulong in_count, HPS.RGBAColor in_rgba_color, HPS.Shell.Component in_apply_to)

Sets a single RGBA color on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the color. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the color. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_rgba_color

The RGBA color to set on the vertices for this ShellKey.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByList (ulong[] in_vertices, HPS.RGBColor in_rgb_color)

Sets a single RGB color on a selection of arbitrary vertices which apply to the specified shell component.

Param in_vertices

The indices of the vertices on which to set the color. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgb_color

The RGB color to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByList (ulong[] in_vertices, HPS.RGBColor in_rgb_color, HPS.Shell.Component in_apply_to)

Sets a single RGB color on a selection of arbitrary vertices which apply to the specified shell component.

Param in_vertices

The indices of the vertices on which to set the color. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgb_color

The RGB color to set on the vertices.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByList (ulong[] in_vertices, HPS.RGBColor[] in_rgb_colors)

Sets vertex RGB colors on a selection of arbitrary vertices which apply to the specified shell component. If the sizes of the vertex index array and the color array different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the colors. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgb_colors

The RGB colors to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByList (ulong[] in_vertices, HPS.RGBColor[] in_rgb_colors, HPS.Shell.Component in_apply_to)

Sets vertex RGB colors on a selection of arbitrary vertices which apply to the specified shell component. If the sizes of the vertex index array and the color array different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the colors. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_rgb_colors

The RGB colors to set on the vertices.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByRange (ulong in_start, HPS.RGBColor[] in_rgb_colors)

Sets vertex RGB colors on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting colors. This value must be such that in_start<point_count for setting to succeed.

Param in_rgb_colors

The RGB colors to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_rgb_colors.size()<=point_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByRange (ulong in_start, HPS.RGBColor[] in_rgb_colors, HPS.Shell.Component in_apply_to)

Sets vertex RGB colors on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting colors. This value must be such that in_start<point_count for setting to succeed.

Param in_rgb_colors

The RGB colors to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_rgb_colors.size()<=point_count for the setting to succeed.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByRange (ulong in_start, ulong in_count, HPS.RGBColor in_rgb_color)

Sets a single RGB color on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the color. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the color. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_rgb_color

The RGB color to set on the vertices for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexRGBColorsByRange (ulong in_start, ulong in_count, HPS.RGBColor in_rgb_color, HPS.Shell.Component in_apply_to)

Sets a single RGB color on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the color. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the color. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_rgb_color

The RGB color to set on the vertices for this ShellKey.

Param in_apply_to

The shell component the colors should apply to. Defaults to Shell.Component.Faces.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexVisibilitiesByList (ulong[] in_vertices, bool in_visibility)

Sets a single visibility on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to set the visibility. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_visibility

The visibility to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexVisibilitiesByList (ulong[] in_vertices, bool[] in_visibilities)

Sets vertex visibilities on a selection of arbitrary vertices. If the sizes of the vertex index and visibility arrays are different, the smaller size will be used.

Param in_vertices

The indices of the vertices on which to set the visibilities. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_visibilities

The visibilities to set on the vertices.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexVisibilitiesByRange (ulong in_start, bool[] in_visibilities)

Sets vertex visibilities on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start setting visibilities. This value must be such that in_start<point_count for setting to succeed.

Param in_visibilities

The visibilities to set on the vertices for this ShellKey. The size of the array must be such that in_start+in_visibilities.size()<=point_count for the setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey SetVertexVisibilitiesByRange (ulong in_start, ulong in_count, bool in_visibility)

Sets a single visibility on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start setting the visibility. This value must be such that in_start<point_count for setting to succeed.

Param in_count

The number of vertices on which to set the visibility. This value must be such that in_start+in_count<=point_count for the setting to succeed.

Param in_visibility

The visibility to set on the vertices for this ShellKey.

Return

A reference to this ShellKey.

ShellKey ()

The default constructor creates an uninitialized ShellKey object. The Type() function will return Type.None.

ShellKey (HPS.Key in_that)

This constructor creates an ShellKey object that shares the underlying smart-pointer of the source Key. The copy will only be successful if the source key is really an upcast of a shell key. Otherwise the copy will fail and the resulting ShellKey will be invalid.

ShellKey (HPS.ShellKey in_that)

The copy constructor creates a ShellKey object that shares the underlying smart-pointer of the source ShellKey.

Param in_that

The source ShellKey to copy.

void Show (out HPS.ShellKit out_kit)

Copy the contents of this ShellKey into the specified kit.

Param out_kit

The kit to populate with the contents of this ShellKey.

bool ShowEdgeColors (out ulong[] out_vertices1, out ulong[] out_vertices2, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out float[] out_indices)

Sets edge colors on a selection of arbitrary edges.

Param out_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed.

Param out_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed.

Param out_types

The types of edge colors for each edge.

Param out_rgb_colors

The colors that have been set on each edge. A given element of this array is valid only if the equivalent element of out_types is RGBColor.

Param out_indices

The colors that have been set on each edge. A given element of this array is valid only if the equivalent element of out_types is MaterialIndex.

Return

A reference to this ShellKey.

bool ShowEdgeColorsByList (ulong[] in_vertices1, ulong[] in_vertices2, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out float[] out_indices)

Sets edge colors on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param out_types

The types of edge colors for each edge.

Param out_rgb_colors

The colors that have been set on each edge. A given element of this array is valid only if the equivalent element of out_types is Material.Type.RGBColor.

Param out_indices

The colors that have been set on each edge. A given element of this array is valid only if the equivalent element of out_types is Material.Type.MaterialIndex.

Return

A reference to this ShellKey.

bool ShowEdgeVisibilitiesByList (ulong[] in_vertices1, ulong[] in_vertices2, out bool[] out_validities, out bool[] out_visibilities)

Shows all the edge visibilities on this ShellKey.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being shown. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being shown. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param out_validities

The validities of the visibilities for each edge. If an edge has a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The edge visibilities for each edge. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any vertex had a vertex visibility set, false otherwise.

bool ShowFaceColors (out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out float[] out_indices)

Shows the face colors on ShellKey.

Param out_types

The types of face colors for each face. If a face does not have a face color set, the entry in this array will be Material.Type.None.

Param out_rgb_colors

The RGB colors for each face. out_rgb_colors[i] is only valid if out_types[i] is Material.Type.RGBColor.

Param out_indices

The material indices for each face. The out_indices[i] is only valid if out_types[i] is Material.Type.MaterialIndex.

Return

true if any face had a face color set, false otherwise.

bool ShowFaceColorsByList (ulong[] in_faces, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out float[] out_indices)

Shows the face colors on a selection of arbitrary faces. The order of the values in the ouput arrays is the same as the input face index array, i.e., the values of out_types[i], out_rgb_colors[i], and out_indices[i], correspond to the face at index in_faces[i].

Param in_faces

The indices of the faces on which to show the colors. Each index in the array must be such that in_faces[i]<face_count for showing to succeed.

Param out_types

The types of face colors for each face at the specified index. If a face at a specified index does not have a face color set, the entry in this array will be Material.Type.None.

Param out_rgb_colors

The RGB colors for each face at the specified index. out_rgb_colors[i] is only valid if out_types[i] is Material.Type.RGBColor.

Param out_indices

The material indices for each face at the specified index. The out_indices[i] is only valid if out_types[i] is Material.Type.MaterialIndex.

Return

true if any specified face had a face color set, false otherwise.

bool ShowFaceColorsByRange (ulong in_start, ulong in_count, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out float[] out_indices)

Shows the face colors on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start showing colors. This value must be such that in_start<face_count for showing to succeed.

Param in_count

The number of colors to show. This value must be such that in_start+in_count<=face_count for the showing to succeed.

Param out_types

The types of face colors for each face in the specified range. If a face in the specified range does not have a face color set, the entry in this array will be Material.Type.None.

Param out_rgb_colors

The RGB colors for each face in the specified range. out_rgb_colors[i] is only valid if out_types[i] is Material.Type.RGBColor.

Param out_indices

The material indices for each face in the specified range. The out_indices[i] is only valid if out_types[i] is Material.Type.MaterialIndex.

Return

true if any face in the specified range had a face color set, false otherwise.

bool ShowFacelist (out int[] out_facelist)

Show the face list for this ShellKey.

Param out_facelist

The face list for this ShellKey.

Return

true if face list was set, false otherwise.

bool ShowFaceNormals (out bool[] out_validities, out HPS.Vector[] out_normals)

Shows all the face normals for this ShellKey.

Param out_validities

The validities of the normals for each face. If a face had a normal set on it, the entry in this array will be true, otherwise it will be false.

Param out_normals

The face normals for each face. out_normals[i] is only valid if out_validities[i] is true.

Return

true if any face had a face normal set, false otherwise.

bool ShowFaceNormalsByList (ulong[] in_faces, out bool[] out_validities, out HPS.Vector[] out_normals)

Shows the face normals on a selection of arbitrary faces. The order of the values in the output arrays is the same as the input face index array, i.e., the values of out_validities[i] and out_normals[i] correspond to the face at index in_faces[i].

Param in_faces

The indices of the faces on which to show the normals. Each index in the array must be such that in_faces[i]<face_count for showing to succeed.

Param out_validities

The validities of the normals for each face at the specified index. If a face at a specified index had a normal set on it, the entry in this array will be true, otherwise it will be false.

Param out_normals

The face normals for each face at the specified index. out_normals[i] is only valid if out_validities[i] is true.

Return

true if any specified face had a face normal set, false otherwise.

bool ShowFaceNormalsByRange (ulong in_start, ulong in_count, out bool[] out_validities, out HPS.Vector[] out_normals)

Shows the face normals on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start showing normals. This value must be such that in_start<face_count for showing to succeed.

Param in_count

The number of normals to show. This value must be such that in_start+in_count<=face_count for the showing to succeed.

Param out_validities

The validities of the normals for each face in the specified range. If a face in the specified range had a normal set on it, the entry in this array will be true, otherwise it will be false.

Param out_normals

The face normals for each face in the specified range. out_normals[i] is only valid if out_validities[i] is true.

Return

true if any face in the specified range had a face normal set, false otherwise.

bool ShowFaceVisibilities (out bool[] out_validities, out bool[] out_visibilities)

Shows all the face visibilities on this ShellKey.

Param out_validities

The validities of the visibilities for each face. If a face had a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The face visibilities for each face. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any face had a face visibility set, false otherwise.

bool ShowFaceVisibilitiesByList (ulong[] in_faces, out bool[] out_validities, out bool[] out_visibilities)

Shows the face visibilities on a selection of arbitrary faces. The order of the values in the output arrays is the same as the input face index array, i.e., the values of out_validities[i] and out_visibilities[i] correspond to the face at index in_faces[i].

Param in_faces

The indices of the faces on which to show the normals. Each index in the array must be such that in_faces[i]<face_count for showing to succeed.

Param out_validities

The validities of the normals for each face at the specified index. If a face at a specified index had a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The face visibilities for each face at the specified index. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any specified face had a face visibility set, false otherwise.

bool ShowFaceVisibilitiesByRange (ulong in_start, ulong in_count, out bool[] out_validities, out bool[] out_visibilities)

Shows the face visibilities on a range of faces starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start showing visibilities. This value must be such that in_start<face_count for showing to succeed.

Param in_count

The number of visibilities to show. This value must be such that in_start+in_count<=face_count for the showing to succeed.

Param out_validities

The validities of the visibilities for each face in the specified range. If a face in the specified range had a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The face visibilities for each face in the specified range. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any face in the specified range had a face visibility set, false otherwise.

bool ShowMaterialMapping (out HPS.MaterialMappingKit out_kit)

Shows the material mappings set on this ShellKey. These are the “global” material settings, not the per-vertex and per-face material settings.

Param out_kit

The material mappings set on this ShellKey.

Return

true if material mappings were set, false otherwise.

bool ShowNetFaceNormalsByList (ulong[] in_faces, out HPS.Vector[] out_normals)

Shows the effective face normals on a selection of arbitrary faces. If a normal for a given face is unspecified, this will retrieve the effective normal. The order of the values in the output arrays is the same as the input face index array, i.e., the values of out_validities[i] and out_normals[i] correspond to the face at index in_faces[i].

Param in_faces

The indices of the faces on which to show the normals. Each index in the array must be such that in_faces[i]<face_count for showing to succeed.

Param out_normals

The face normals for each face at the specified index.

Return

true if no errors were encountered, false otherwise.

bool ShowNetFaceNormalsByRange (ulong in_start, ulong in_count, out HPS.Vector[] out_normals)

Shows the effective face normals on a range of faces starting at the specified offset. If a normal for a given face is unspecified, this will retrieve the effective normal.

Param in_start

The offset into the faces for this ShellKey at which to start showing normals. This value must be such that in_start<face_count for showing to succeed.

Param in_count

The number of normals to show. This value must be such that in_start+in_count<=face_count for the showing to succeed.

Param out_normals

The face normals for each face in the specified range.

Return

true if no errors were encountered, false otherwise.

bool ShowNetVertexNormals (out HPS.Vector[] out_normals)

Shows the all net vertex normals on this ShellKey.

Param out_normals

The vertex normals for each vertex.

Return

true if no errors were encountered, false otherwise.

bool ShowNetVertexNormals (out HPS.Vector[] out_normals, HPS.Drawing.Handedness in_polygon_handedness)

Shows the all net vertex normals on this ShellKey.

Param out_normals

The vertex normals for each vertex.

Param in_polygon_handedness

The polygon handedness to assume when returning normals. Defaults to None. Specifying no handedness when requesting net normals, will return the normals using the handedness used internally by Visualize for this particular shell. When specifying a handedness, only normals which were implicitly calculated by Visualize will be flipped to conform to the requested handedness. User specified normals will be left untouched.

Return

true if no errors were encountered, false otherwise.

bool ShowNetVertexNormalsByRange (ulong in_start, ulong in_count, out HPS.Vector[] out_normals)

Shows the net vertex normals on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start showing normals. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of normals to show. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param out_normals

The vertex normals for each vertex in the specified range.

Return

true if no errors were encountered, false otherwise.

bool ShowNetVertexNormalsByRange (ulong in_start, ulong in_count, out HPS.Vector[] out_normals, HPS.Drawing.Handedness in_polygon_handedness)

Shows the net vertex normals on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start showing normals. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of normals to show. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param out_normals

The vertex normals for each vertex in the specified range.

Param in_polygon_handedness

The polygon handedness to assume when returning normals. Defaults to None. Specifying no handedness when requesting net normals, will return the normals using the handedness used internally by Visualize for this particular shell. When specifying a handedness, only normals which were implicitly calculated by Visualize will be flipped to conform to the requested handedness. User specified normals will be left untouched.

Return

true if no errors were encountered, false otherwise.

bool ShowPoints (out HPS.Point[] out_points)

Show the points for this ShellKey.

Param out_points

The points for this ShellKey.

Return

true if points were set, false otherwise.

bool ShowPointsByList (ulong[] in_indices, out HPS.Point[] out_points)

Show a subset of the points for this ShellKey by list.

Param in_indices

The list of point indices to show.

Param out_points

The requested points for this ShellKey.

Return

true if all requested points were set, false otherwise.

bool ShowPointsByRange (ulong in_start_index, ulong in_count, out HPS.Point[] out_points)

Show a subset of the points for this ShellKey by range.

Param in_start_index

The first point to show.

Param in_count

The number of points to show.

Param out_points

The requested points for this ShellKey.

Return

true if all requested points were set, false otherwise.

bool ShowTristrips (out int[] out_tristrips)

Show the tristrips list for this ShellKey. A tristrip is defined internally as three points which form a triangle, followed by another point for each additional triangle in the strip. The points that make up a shell may be divided into multiple tristrips. For example, if a shell contains two tristrips - one with 3 triangles and one with 4 - this function will return the data in the following format: [5, a, b, c, d, e, 6, f, g, h, i, j, k] where the numbers indicate how many of the subsequent array entries make up the current tristrip, and the letters are indices into the shell’s array of points.

Param out_tristrips

The tristrip list for this ShellKey.

Return

true if tristrips list was set, false otherwise.

bool ShowTristrips (out int[] out_tristrips, out int[] out_face_indices)

Show the tristrips list for this ShellKey. A tristrip is defined internally as three points which form a triangle, followed by another point for each additional triangle in the strip. The points that make up a shell may be divided into multiple tristrips. For example, if a shell contains two tristrips - one with 3 triangles and one with 4 - this function will return the data in the following format: [5, a, b, c, d, e, 6, f, g, h, i, j, k] where the numbers indicate how many of the subsequent array entries make up the current tristrip, and the letters are indices into the shell’s array of points. The out_face_indices contains one entry for each triangle in out_tristrips. Each entry indicates which face the corresponding triangle in out_tristrips belongs to.

Param out_tristrips

The tristrip list for this ShellKey.

Param out_face_indices

The corresponding face indices for each triangle in the tristrip list.

Return

true if tristrips list was set, false otherwise.

bool ShowVertexColors (HPS.Shell.Component in_apply_to, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out HPS.RGBAColor[] out_rgba_colors, out float[] out_indices)

Shows all the vertex colors on the specified shell component.

Param in_apply_to

The shell component the colors should apply to.

Param out_types

The types of vertex colors for each vertex. If a vertex does not have a vertex color set for the specified shell component, the entry in this array will be Material.Type.None.

Param out_rgb_colors

The RGB colors for each vertex. out_rgb_colors[i] is only valid if out_types[i] is Material.Type.RGBColor.

Param out_rgba_colors

The RGBA colors for each vertex. out_rgba_colors[i] is only valid if out_types[i] is Material.Type.RGBAColor.

Param out_indices

The material indices for each vertex. The out_indices[i] is only valid if out_types[i] is Material.Type.MaterialIndex.

Return

true if any vertex colors were shown, false otherwise.

bool ShowVertexColorsByList (ulong[] in_vertices, HPS.Shell.Component in_apply_to, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out HPS.RGBAColor[] out_rgba_colors, out float[] out_indices)

Shows the vertex colors on a selection of arbitrary vertices which apply to the specified shell component. The order of the values in the ouput arrays is the same as the input vertex index array, i.e., the values of out_types[i], out_rgb_colors[i], out_rgba_colors[i], and out_indices[i], correspond to the vertex at index in_vertices[i].

Param in_vertices

The indices of the vertices on which to show the colors. Each index in the array must be such that in_vertices[i]<point_count for showing to succeed.

Param in_apply_to

The shell component the colors should apply to.

Param out_types

The types of vertex colors for each vertex at the specified index. If a vertex at a specified index does not have a vertex color set for the specified component, the entry in this array will be Material.Type.None.

Param out_rgb_colors

The RGB colors for each vertex at the specified index. out_rgb_colors[i] is only valid if out_types[i] is Material.Type.RGBColor.

Param out_rgba_colors

The RGBA colors for each vertex at the specified index. out_rgba_colors[i] is only valid if out_types[i] is Material.Type.RGBAColor.

Param out_indices

The material indices for each vertex at the specified index. The out_indices[i] is only valid if out_types[i] is Material.Type.MaterialIndex.

Return

true if any specified vertex had a vertex color on the specified component set, false otherwise.

bool ShowVertexColorsByRange (ulong in_start, ulong in_count, HPS.Shell.Component in_apply_to, out HPS.Material.Type[] out_types, out HPS.RGBColor[] out_rgb_colors, out HPS.RGBAColor[] out_rgba_colors, out float[] out_indices)

Shows the vertex colors on a range of vertices starting at the specified offset which apply to the specified shell component.

Param in_start

The offset into the vertices for this ShellKey at which to start showing colors. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of colors to show. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param in_apply_to

The shell component the colors should apply to.

Param out_types

The types of vertex colors for each vertex in the specified range. If a vertex in the specified range does not have a vertex color set for the specified shell component, the entry in this array will be Material.Type.None.

Param out_rgb_colors

The RGB colors for each vertex in the specified range. out_rgb_colors[i] is only valid if out_types[i] is Material.Type.RGBColor.

Param out_rgba_colors

The RGBA colors for each vertex in the specified range. out_rgba_colors[i] is only valid if out_types[i] is Material.Type.RGBAColor.

Param out_indices

The material indices for each vertex in the specified range. The out_indices[i] is only valid if out_types[i] is Material.Type.MaterialIndex.

Return

true if any vertex in the specified range had a vertex color on the specified component set, false otherwise.

bool ShowVertexNormals (out bool[] out_validities, out HPS.Vector[] out_normals)

Shows all the vertex normals on this ShellKey.

Param out_validities

The validities of the normals for each vertex. If a vertex had a normal set on it, the entry in this array will be true, otherwise it will be false.

Param out_normals

The vertex normals for each vertex. out_normals[i] is only valid if out_validities[i] is true.

Return

true if any vertex normals were shown, false otherwise.

bool ShowVertexNormalsByList (ulong[] in_vertices, out bool[] out_validities, out HPS.Vector[] out_normals)

Shows the vertex normals on a selection of arbitrary vertices. The order of the values in the output arrays is the same as the input vertex index array, i.e., the values of out_validities[i] and out_normals[i] correspond to the vertex at index in_vertices[i].

Param in_vertices

The indices of the vertices on which to show the normals. Each index in the array must be such that in_vertices[i]<point_count for showing to succeed.

Param out_validities

The validities of the normals for each vertex at the specified index. If a vertex at a specified index had a normal set on it, the entry in this array will be true, otherwise it will be false.

Param out_normals

The vertex normals for each vertex at the specified index. out_normals[i] is only valid if out_validities[i] is true.

Return

true if any specified vertex had a vertex normal set, false otherwise.

bool ShowVertexNormalsByRange (ulong in_start, ulong in_count, out bool[] out_validities, out HPS.Vector[] out_normals)

Shows the vertex normals on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start showing normals. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of normals to show. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param out_validities

The validities of the normals for each vertex in the specified range. If a vertex in the specified range had a normal set on it, the entry in this array will be true, otherwise it will be false.

Param out_normals

The vertex normals for each vertex in the specified range. out_normals[i] is only valid if out_validities[i] is true.

Return

true if any vertex in the specified range had a vertex normal set, false otherwise.

bool ShowVertexParameters (out bool[] out_validities, out float[] out_params)

Shows the texture parameters for all of the vertices on this ShellKey. For this particular show function, the parameter width is returned implicitly and could be determined by out_params.size()/in_count.

Param out_validities

The validities of the texture parameters for each vertex. If a vertex had a texture parameter set on it, the entry in this array will be true, otherwise it will be false.

Param out_params

The texture parameters for each vertex. (out_params[i],…,out_params[i+param_width-1]) are only valid if out_validities[i] is true.

Return

true if any vertex had a texture parameter set, false otherwise.

bool ShowVertexParameters (out bool[] out_validities, out float[] out_params, out ulong out_param_width)

Shows the texture parameters for all of the vertices on this ShellKey.

Param out_validities

The validities of the texture parameters for each vertex. If a vertex had a texture parameter set on it, the entry in this array will be true, otherwise it will be false.

Param out_params

The texture parameters for each vertex. (out_params[i],…,out_params[i+param_width-1]) are only valid if out_validities[i] is true.

Param out_param_width

The number of texture parameters per vertex.

Return

true if any vertex had a texture parameter set, false otherwise.

bool ShowVertexParametersByList (ulong[] in_vertices, out bool[] out_validities, out float[] out_params)

Shows the texture parameters on a selection of arbitrary vertices. For this particular show function, the parameter width is returned implicitly and could be determined by out_params.size()/in_vertices.size(). The order of the output arrays is the same as the input vertex index array, i.e., out_validities[i] and (out_params[i],…,out_params[i+param_width-1]) correspond to the vertex at index in_vertices[i].

Param in_vertices

The indices of the vertices on which to show the texture parameters. Each index in the array must be such that in_vertices[i]<point_count for showing to succeed.

Param out_validities

The validities of the texture parameters for each vertex at the specified index. If a vertex at a specified index had a texture parameter set on it, the entry in this array will be true, otherwise it will be false.

Param out_params

The texture parameters for each vertex at the specified index. (out_params[i],…,out_params[i+param_width-1]) are only valid if out_validities[i] is true.

Return

true if any specified vertex had a texture parameter set, false otherwise.

bool ShowVertexParametersByList (ulong[] in_vertices, out bool[] out_validities, out float[] out_params, out ulong out_param_width)

Shows the texture parameters on a selection of arbitrary vertices. The order of the output arrays is the same as the input vertex index array, i.e., out_validities[i] and (out_params[i],…,out_params[i+param_width-1]) correspond to the vertex at index in_vertices[i].

Param in_vertices

The indices of the vertices on which to show the texture parameters. Each index in the array must be such that in_vertices[i]<point_count for showing to succeed.

Param out_validities

The validities of the texture parameters for each vertex at the specified index. If a vertex at a specified index had a texture parameter set on it, the entry in this array will be true, otherwise it will be false.

Param out_params

The texture parameters for each vertex at the specified index. (out_params[i],…,out_params[i+param_width-1]) are only valid if out_validities[i] is true.

Param out_param_width

The number of texture parameters per vertex.

Return

true if any specified vertex had a texture parameter set, false otherwise.

bool ShowVertexParametersByRange (ulong in_start, ulong in_count, out bool[] out_validities, out float[] out_params)

Shows the texture parameters on a range of vertices starting at the specified offset. For this particular show function, the parameter width is returned implicitly and could be determined by out_params.size()/in_count.

Param in_start

The offset into the vertices for this ShellKey at which to start showing texture parameters. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of vertices for which to show the texture parameters. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param out_validities

The validities of the texture parameters for each vertex in the specified range. If a vertex in the specified range had a texture parameter set on it, the entry in this array will be true, otherwise it will be false.

Param out_params

The texture parameters for each vertex in the specified range. (out_params[i],…,out_params[i+param_width-1]) are only valid if out_validities[i] is true.

Return

true if any vertex in the specified range had a texture parameter set, false otherwise.

bool ShowVertexParametersByRange (ulong in_start, ulong in_count, out bool[] out_validities, out float[] out_params, out ulong out_param_width)

Shows the texture parameters on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start showing texture parameters. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of vertices for which to show the texture parameters. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param out_validities

The validities of the texture parameters for each vertex in the specified range. If a vertex in the specified range had a texture parameter set on it, the entry in this array will be true, otherwise it will be false.

Param out_params

The texture parameters for each vertex in the specified range. (out_params[i],…,out_params[i+param_width-1]) are only valid if out_validities[i] is true.

Param out_param_width

The number of texture parameters per vertex.

Return

true if any vertex in the specified range had a texture parameter set, false otherwise.

bool ShowVertexVisibilities (out bool[] out_validities, out bool[] out_visibilities)

Shows all the vertex visibilities on this ShellKey.

Param out_validities

The validities of the visibilities for each vertex. If a vertex had a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The vertex visibilities for each vertex. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any vertex had a vertex visibility set, false otherwise.

bool ShowVertexVisibilitiesByList (ulong[] in_vertices, out bool[] out_validities, out bool[] out_visibilities)

Shows the vertex visibilities on a selection of arbitrary vertices. The order of the values in the output arrays is the same as the input vertex index array, i.e., the values of out_validities[i] and out_visibilities[i] correspond to the vertex at index in_vertices[i].

Param in_vertices

The indices of the vertices on which to show the normals. Each index in the array must be such that in_vertices[i]<point_count for showing to succeed.

Param out_validities

The validities of the normals for each vertex at the specified index. If a vertex at a specified index had a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The vertex visibilities for each vertex at the specified index. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any specified vertex had a vertex visibility set, false otherwise.

bool ShowVertexVisibilitiesByRange (ulong in_start, ulong in_count, out bool[] out_validities, out bool[] out_visibilities)

Shows the vertex visibilities on a range of vertices starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start showing visibilities. This value must be such that in_start<point_count for showing to succeed.

Param in_count

The number of visibilities to show. This value must be such that in_start+in_count<=point_count for the showing to succeed.

Param out_validities

The validities of the visibilities for each vertex in the specified range. If a vertex in the specified range had a visibility set on it, the entry in this array will be true, otherwise it will be false.

Param out_visibilities

The vertex visibilities for each vertex in the specified range. out_visibilities[i] is only valid if out_validities[i] is true.

Return

true if any vertex in the specified range had a vertex visibility set, false otherwise.

HPS.ShellKey UnsetEdgeColors ()

Unsets edge colors on all edges.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetEdgeColorsByList (ulong[] in_vertices1, ulong[] in_vertices2)

Unsets edge colors on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being changed. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetEdgeEverything ()

Removes all edge settings (edge colors and edge visibilities) from this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetEdgeVisibilities ()

Removes all edge visibility settings.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetEdgeVisibilitiesByList (ulong[] in_vertices1, ulong[] in_vertices2)

Unsets edge visibilities on a selection of arbitrary edges.

Param in_vertices1

The vertex indices that correspond to the start position of each edge for which the visibilities are being unset. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Param in_vertices2

The vertex indices that correspond to the end position of each edge for which the visibilities are being unset. Each index in the array must be such that in_vertices[i]<point_count for setting to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetEverything ()

Removes all settings from this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceColors ()

Removes all face colors (RGB colors or material indices).

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceColorsByList (ulong[] in_faces)
HPS.ShellKey UnsetFaceColorsByRange (ulong in_start, ulong in_count)

Removes the specified range of face colors (RGB colors or material indices) starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start removing colors. This value must be such that in_start<face_count for removal to succeed.

Param in_count

The number of face colors to remove for this ShellKey. This value must be such that in_start+in_count<=face_count for the removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceEverything ()

Removes all face settings (face colors, face normals, and face visibilities) from this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFacelist ()

Removes the face list for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceNormals ()

Removes all face normals.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceNormalsByList (ulong[] in_vertices)

Removes the face normals on a selection of arbitrary faces.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceNormalsByRange (ulong in_start, ulong in_count)

Removes the specified range of face normals starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start removing normals. This value must be such that in_start<face_count for removal to succeed.

Param in_count

The number of face normals to remove for this ShellKey. This value must be such that in_start+in_count<=face_count for the removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceVisibilities ()

Removes all face visibilities.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetFaceVisibilitiesByList (ulong[] in_faces)
HPS.ShellKey UnsetFaceVisibilitiesByRange (ulong in_start, ulong in_count)

Removes the specified range of face visibilities starting at the specified offset.

Param in_start

The offset into the faces for this ShellKey at which to start removing visibilities. This value must be such that in_start<face_count for removal to succeed.

Param in_count

The number of face visibilities to remove for this ShellKey. This value must be such that in_start+in_count<=face_count for the removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetMaterialMapping ()

Removes all material mappings on this ShellKey. This removes the “global” material settings and does not affect per-vertex or per-face materials.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetPoints ()

Removes the points for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetTristrips ()

Removes the tristrips list for this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexColors ()

Removes all vertex colors (RGB colors, RGBA colors, or material indices) for all shell components.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexColors (HPS.Shell.Component in_apply_to)

Removes all vertex colors (RGB colors, RGBA colors, or material indices) for the specified shell component.

Param in_apply_to

The shell component for which to remove the colors.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexColorsByList (ulong[] in_vertices)

Removes the vertex colors (RGB colors, RGBA colors, or material indices) for all shell components on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to remove the colors. Each index in the array must be such that in_vertices[i]<point_count for removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexColorsByList (ulong[] in_vertices, HPS.Shell.Component in_apply_to)

Removes the vertex colors (RGB colors, RGBA colors, or material indices) for the specified shell component on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to remove the colors. Each index in the array must be such that in_vertices[i]<point_count for removal to succeed.

Param in_apply_to

The shell component for which to remove the colors.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexColorsByRange (ulong in_start, ulong in_count)

Removes the specified range of vertex colors (RGB colors, RGBA colors, or material indices) for all shell components starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start removing colors. This value must be such that in_start<point_count for removal to succeed.

Param in_count

The number of vertex colors to remove for this ShellKey. This value must be such that in_start+in_count<=point_count for the removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexColorsByRange (ulong in_start, ulong in_count, HPS.Shell.Component in_apply_to)

Removes the specified range of vertex colors (RGB colors, RGBA colors, or material indices) for the specified shell component starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start removing colors. This value must be such that in_start<point_count for removal to succeed.

Param in_count

The number of vertex colors to remove for this ShellKey. This value must be such that in_start+in_count<=point_count for the removal to succeed.

Param in_apply_to

The shell component for which to remove the colors.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexEverything ()

Removes all vertex settings (vertex colors, vertex normals, texture parameters, and vertex visibilities) from this ShellKey.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexNormals ()

Removes all vertex normals.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexNormalsByList (ulong[] in_vertices)

Removes the vertex normals on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to remove the normals. Each index in the array must be such that in_vertices[i]<point_count for removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexNormalsByRange (ulong in_start, ulong in_count)

Removes the specified range of vertex normals starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start removing normals. This value must be such that in_start<point_count for removal to succeed.

Param in_count

The number of vertex normals to remove for this ShellKey. This value must be such that in_start+in_count<=point_count for the removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexParameters ()

Removes all texture parameters.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexParametersByList (ulong[] in_vertices)

Removes the texture parameters on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to remove the texture parameters. Each index in the array must be such that in_vertices[i]<point_count for removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexParametersByRange (ulong in_start, ulong in_count)

Removes the specified range of texture parameters starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start removing texture parameters. This value must be such that in_start<point_count for removal to succeed.

Param in_count

The number of texture parameters to remove for this ShellKey. This value must be such that in_start+in_count<=point_count for the removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexVisibilities ()

Removes all vertex visibilities.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexVisibilitiesByList (ulong[] in_vertices)

Removes the vertex visibilities on a selection of arbitrary vertices.

Param in_vertices

The indices of the vertices on which to remove the visibilities. Each index in the array must be such that in_vertices[i]<point_count for removal to succeed.

Return

A reference to this ShellKey.

HPS.ShellKey UnsetVertexVisibilitiesByRange (ulong in_start, ulong in_count)

Removes the specified range of vertex visibilities starting at the specified offset.

Param in_start

The offset into the vertices for this ShellKey at which to start removing visibilities. This value must be such that in_start<point_count for removal to succeed.

Param in_count

The number of vertex visibilities to remove for this ShellKey. This value must be such that in_start+in_count<=point_count for the removal to succeed.

Return

A reference to this ShellKey.