This class is derived from HT_Point_Set which provides the storage for vertex locations. Reference HT_Point_Set for descriptions about how to add or access vertex location data.
HT_Point_Set, HT_Tristrip,HT_Vertex_Set_Data,HT_Renderer::draw_3D_tristrip, HT_Line_Strip, HT_Marker_Strip, HT_Point
connectivity
connectivity_length
vertex_colors
vertex_homogeneous
vertex_normals
vertex_parameters
HT_Vertex_Set
~HT_Vertex_Set
HT_Vertex_Set_Data::set_vertex_parameters
Purpose
void set_connectivity (int count, int const * connect, HT_Boolean copy)
int const * connectivity (void)
void set_connectivity (void * dummy)
The first method sets the connectivity array. If copy is HK_True, then allocation is made to copy the information, in the array connect, into the object. If copy is HK_False, then no allocation is made. Instead, the object refers directly to the information in the connect array.
The second method returns a pointer to the connectivity
information for this object.
Purpose
int connectivity_length (void)
Purpose
HT_Vertex_Set ()
HT_Vertex_Set(int count, HT_Point const * points)
HT_Vertex_Set(int count, HT_Point const * points, HT_Boolean copy)
Purpose
HT_Vertex_Set (void)
Purpose
void set_vertex_colors (HT_RGB const * colors, HT_Boolean copy)
HT_RGB const * vertex_colors () const
The first method sets the vertex colors in this object. If copy is HK_True, then allocation is made to copy the colors, in the array colors, into the object. If copy is FALSE, then no allocation is made. Instead, the object refers directly to the colors in the colors array.
The second method returns a pointer to the vertex color
array for this object.
Purpose
void set_vertex_homogeneous (float const *w, HT_Boolean copy = HK_False)
float const *vertex_homogeneous () const
The first method sets the vertex perspective corrections in this object. If copy is HK_True, then allocation is made to copy the perspective corrections (in the array perspective correction) into the object. If copy is HK_False, then no allocation is made. Instead, the object refers directly to the perspective correction in the w array.
The second method returns a pointer to the vertex perspective
correction array for this object.
Purpose
void set_vertex_normals ( HT_Vector const *normals, HT_Boolean copy = HK_False)
HT_Vector const *vertex_normals () const
The first method sets the vertex normals in this object. If copy is HK_True, then allocation is made to copy the normals, in the array normals, into the object. If copy is HK_False, then no allocation is made. Instead, the object refers directly to the normals in the normals array.
The second method returns a pointer to the vertex normal
array for this object.
Purpose
void set_vertex_parameters (HT_Parameter const *parameters, int width = 1, HT_Boolean copy = HK_False) alter
HT_Parameter const *vertex_parameters () const
The first method sets the vertex texture parameters in this object. If copy is HK_True, then allocation is made to copy the texture parameters, in the array parameters, into the object. If copy is HK_False, then no allocation is made. Instead, the object refers directly to the texture parameters in the parameters array.
The interface now allows for "n" triplets of texture vertex parameter data to be associated with each vertex of tristrips. This is first seen is in the set_vertex_parameters() member function of HT_Tristrip. For more information see HT_Vertex_Set::set_vertex_parameters following.
The second method returns a pointer to the vertex texture parameter array for this object.
Purpose
void set_vertex_parameters (HT_Parameter const *parameters, int width, HT_Boolean copy) alter;
This is first seen in the set_vertex_parameters() member function of HT_Tristrip.
For example, if the tristrip has 100 points and the parameter width is specified as 3, the array of parameters should be 300 long, the first 3 associated with the first vertex, the next 3 with the second, and so forth.
The exact same change is made on HT_Linestrip and HT_MarkerStrip.
Additionally, this new information must be passed on through
to all of the functions that may make use of it. In all cases it
is an optional int function argument, also defaulting to 1, that is added
immediately after the HT_Parameter * param argument. Following
is a list of these functions:
HT_Renderer: // both float-point and int-point versions draw_2d_textured_polytriangle() draw_dc_textured_polytriangle() draw_2d_textured_polyline() draw_dc_textured_polyline() draw_2d_textured_polymarker() draw_dc_textured_polymarker()
HT_Material/HT_Shader: shade()
HT_Texture: value()
HT_Shape_Engine: // both float-point and int-point versions draw_2d_polytriangle() draw_2d_polyline() draw_2d_polymarker()