class DVpolygons: public DVpoints_2D_with_normals

A class which describes a list of polygons.

Inheritance:


Public Methods

[more] DVpolygons()
Constructors. This one makes a default list of polygons (empty)
[more] DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2 )
Three nodes given--creates one triangle.
[more] DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2 )
Three nodes given and 3 normals given--creates one triangle.
[more] DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray_2D<float> &n )
Three nodes given and an array of 3 normals given--creates one triangle.
[more] DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3 )
Four nodes given--creates one quadrilateral.
[more] DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2, LCVMarray<float> &n3 )
Four nodes given and 4 normals given--creates one quadrilateral.
[more] DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray_2D<float> &n )
Four nodes given and an array of 4 normals given--creates one quadrilateral.
[more] DVpolygons(LCVMarray_2D<float> &v)
Array of nodes given--v[i] is a vertex.
[more] DVpolygons(LCVMarray_2D<float> &v, LCVMarray_2D<float> &n)
Array of nodes given and array of normals given--v[i] is a vertex.
[more] DVpolygons(LCVMarray_3D<float> &v)
2_D array of nodes given--v[i] is a polygon.
[more] DVpolygons(LCVMarray_3D<float> &v, LCVMarray_3D<float> &n)
2_D array of nodes given and 2_D array of normals as well.
[more]virtual ~DVpolygons()
Destructor
[more]DVpolygons& set_data()
[more]DVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2 )
Three nodes given--creates one triangle.
[more]DVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2 )
Three nodes given and 3 normals given--creates one triangle.
[more]DVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray_2D<float> &n )
Three nodes given and an array of 3 normals given--creates one triangle.
[more]DVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3 )
Four nodes given--creates one quadrilateral.
[more]DVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2, LCVMarray<float> &n3 )
Four nodes given and 4 normals given--creates one quadrilateral.
[more]DVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray_2D<float> &n )
Four nodes given and an array of 4 normals given--creates one quadrilateral.
[more]DVpolygons& set_data(LCVMarray_2D<float> &v)
Array of nodes given--v[i] is a vertex.
[more]DVpolygons& set_data( LCVMarray_2D<float> &v, LCVMarray_2D<float> &n )
Array of nodes given and array of normals given--v[i] is a vertex.
[more]DVpolygons& set_data(LCVMarray_3D<float> &v)
2_D array of nodes given--v[i] is a polygon.
[more]DVpolygons& set_data( LCVMarray_3D<float> &v, LCVMarray_3D<float> &n )
2_D array of nodes given and 2_D array of normals as well.
[more]virtual void draw(LCVMstack<DVproperty*>&)
Virtual draw routine
[more] DVpolygons(const DVpolygons &data)
Copy constructor
[more]const DVpolygons& operator=(const DVpolygons &data)
Assignment operator
[more]virtual void print(ostream&)
A virtual print function
[more] DVpolygons(FileOption a_file_op)
Methods concerning the scene file format
[more]virtual int ReadMyProp()
Methods concerning the scene file format

Protected Methods

[more]virtual DVobject* copy()
A routine that returns a pointer to a copy of the object created with new.


Inherited from DVpoints_2D_with_normals:

Public Methods

oint operator==(const DVpoints_2D_with_normals &data)
oint operator!=(const DVpoints_2D_with_normals &data)
oint user_supplied_normals()

Protected Fields

oLCVMarray_3D<float> normals
oint user_supplied_normals_flag

Protected Methods

ovoid set_nodes()
ovoid set_nodes(LCVMarray_3D<float> &v)
ovoid set_normals()
ovoid set_normals(LCVMarray_3D<float> &n)
ovoid set_user_supplied_normals()
ovoid set_compute_normals()


Inherited from DVpoints_2D:

Public Methods

ovoid get_used_coordinates(LCVMarray_3D<float>&, const int select=0)
ovoid get_used_coordinates(LCVMarray_3D<float>&, DVscale &, const int select=0)
ovoid get_used_colors(LCVMarray_2D<float>&, const int select=0)
ovoid ReadDVProps()

Protected Fields

oLCVMarray_3D<float> points


Inherited from DVobject:

Public Methods

oDVobject& set_translate(LCVMarray<float> &data)
oDVobject& set_translate(const float x, const float y, const float z)
oDVobject& add_translate(LCVMarray<float> &data)
oDVobject& add_translate(const float x, const float y, const float z)
oDVobject& set_rotate(LCVMarray<float> &data, const float angle, const char type='d')
oDVobject& set_rotate( const float x, const float y, const float z, const float angle, const char type='d' )
oDVobject& add_rotate(LCVMarray<float> &data, const float angle, const char type='d')
oDVobject& add_rotate( const float x, const float y, const float z, const float angle, const char type='d' )
ovoid get_translation(LCVMarray<float>&)
ovoid get_rotation(LCVMarray<float>&, float&)
ovoid set_OpenGL_lighting_properties(DVlight_properties_property_item_array &lights)
ovoid set_OpenGL_material_properties(DVmaterial_properties_property_item &material, DVcolor &color)
ovoid set_OpenGL_color(DVcolor &color)
ovirtual DVobject& copy_child(DVobject &child)
ovirtual DVobject& delete_current_child()
ofriend ostream& operator<<(ostream &, DVobject &)
oint ReadProp()
ovoid ReadDVrotate()
ovoid ReadDVtranslation()
ovoid ReadSimpleProps()

Public

o
o

Protected Fields

oclass DVcontainerbase LCVMarray<float> translation
oLCVMarray<float> rotation_axis
ofloat rotation_angle
oLCVMarray<float> rotation_quaterions

Protected Methods

ovoid axis_to_quat(LCVMarray<float> axis, float angle, LCVMarray<float> &quat)
ovoid quat_to_axis(LCVMarray<float> quat, LCVMarray<float> &axis, float &angle)
ovoid add_quat(LCVMarray<float> a, LCVMarray<float> b, LCVMarray<float> &c)


Inherited from DVselect_property:

Public Fields

oDVcolor_select_property_item_array color
oDVpositive_float_select_property_item_array width
oDVcomplexity_int_select_property_item geometry_complexity
oDVcomplexity_int_select_property_item light_complexity
oDVscale_select_property_item scale
oDVcolor_by_data_select_property_item_array color_by_data
oDVrich_light_properties_select_property_item_array lights
oDVrich_material_properties_select_property_item_array material

Public Methods

ovoid extract_properties(DVproperty&)
ovoid default_lighting()
ovoid ReadDVColor()
ovoid ReadDVlightComp()
ovoid ReadDVgeomComp()
ovoid ReadDVscale()
ovoid ReadDVwidth()
ovoid ReadColorMap()


Inherited from DVpick_components:

Public Methods

ovoid set_x_plot_coordinate(const int i, const int select=0)
ovoid set_y_plot_coordinate(const int j, const int select=0)
ovoid set_z_plot_coordinate(const int k, const int select=0)
ovoid set_plot_coordinate(const int i, const int coord, const int select=0)
ovoid set_xyz_plot_coordinates(const int i, const int j, const int k, const int select=0)
ovoid set_xyz_plot_coordinates(LCVMarray<int> &i, const int select=0)
ovoid set_xyz_plot_coordinates(LCVMarray_2D<int> &i)
ovoid set_color_coordinate(const int i, const int select=0)
ovoid set_color_coordinates(LCVMarray<int> &i)
oint check_color_coordinates(int select = 0)
oint ReadPickCompProp()
ovoid ReadCoords()
ovoid ReadColorCoord()

Protected Fields

oint num_elts
oLCVMarray_2D<int> use_xyz
oLCVMarray<int> use_color

Protected Methods

ovoid default_use_coords()
ovoid default_use_colors()
ovoid check_use_coords()
ovoid check_use_colors()


Documentation

A class which describes a list of polygons. Polygons can have 3 or more vertices. They must (it is up to the user to make sure) be convex. They must (it is up to the user to make sure) be planar. If any one of the above two properties are not satisfied, then "things could go wrong".
o DVpolygons()
Constructors. This one makes a default list of polygons (empty)

o DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2 )
Three nodes given--creates one triangle. Each LCVMarray v_i must have the same size.

o DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2 )
Three nodes given and 3 normals given--creates one triangle. Each LCVMarray v_i must have the same size and each LCVMarray n_i must have size 3. (Usually n_i is a unit vector.).

o DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray_2D<float> &n )
Three nodes given and an array of 3 normals given--creates one triangle. Each LCVMarray v_i must have the same size and n must be 3x3. n[i] is the normal for vertex i. (Usually n[i] is a unit vector.)

o DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3 )
Four nodes given--creates one quadrilateral. Each LCVMarray must have the same size.

o DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2, LCVMarray<float> &n3 )
Four nodes given and 4 normals given--creates one quadrilateral. each LCVMarray v_i must have the same size and each LCVMarray n_i must have size 3. (Usually n_i is a unit vector.)

o DVpolygons( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray_2D<float> &n )
Four nodes given and an array of 4 normals given--creates one quadrilateral. each LCVMarray v_i must have the same size and n must be 4x3. n[i] is the normal for vertex i. (Usually n[i] is a unit vector.)

o DVpolygons(LCVMarray_2D<float> &v)
Array of nodes given--v[i] is a vertex. v must be rectangular. v[i] must have size at least 3.

o DVpolygons(LCVMarray_2D<float> &v, LCVMarray_2D<float> &n)
Array of nodes given and array of normals given--v[i] is a vertex. v must be rectangular. The (leading) size of v must be the same as the (leading) size of n. n[i] must have size 3. v[i] must have size at least 3.

o DVpolygons(LCVMarray_3D<float> &v)
2_D array of nodes given--v[i] is a polygon. v[i][j] is a vertex. Each vertex must have the same length. Each polygon must have at least three vertices.

o DVpolygons(LCVMarray_3D<float> &v, LCVMarray_3D<float> &n)
2_D array of nodes given and 2_D array of normals as well. v[i] is a polygon. v[i][j] is a vertex. Each vertex must have the same length. Each polygon must have at least three vertices. There must be a normal for each vertex. Each normal must have 3 components. (Usually the normals are unit vectors.)

ovirtual ~DVpolygons()
Destructor

oDVpolygons& set_data()

oDVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2 )
Three nodes given--creates one triangle. Each LCVMarray v_i must have the same size.

oDVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2 )
Three nodes given and 3 normals given--creates one triangle. Each LCVMarray v_i must have the same size and each LCVMarray n_i must have size 3. (Usually n_i is a unit vector.).

oDVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray_2D<float> &n )
Three nodes given and an array of 3 normals given--creates one triangle. Each LCVMarray v_i must have the same size and n must be 3x3. n[i] is the normal for vertex i. (Usually n[i] is a unit vector.)

oDVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3 )
Four nodes given--creates one quadrilateral. Each LCVMarray must have the same size.

oDVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray<float> &n0, LCVMarray<float> &n1, LCVMarray<float> &n2, LCVMarray<float> &n3 )
Four nodes given and 4 normals given--creates one quadrilateral. each LCVMarray v_i must have the same size and each LCVMarray n_i must have size 3. (Usually n_i is a unit vector.)

oDVpolygons& set_data( LCVMarray<float> &v0, LCVMarray<float> &v1, LCVMarray<float> &v2, LCVMarray<float> &v3, LCVMarray_2D<float> &n )
Four nodes given and an array of 4 normals given--creates one quadrilateral. each LCVMarray v_i must have the same size and n must be 4x3. n[i] is the normal for vertex i. (Usually n[i] is a unit vector.)

oDVpolygons& set_data(LCVMarray_2D<float> &v)
Array of nodes given--v[i] is a vertex. v must be rectangular. v[i] must have size at least 3.

oDVpolygons& set_data( LCVMarray_2D<float> &v, LCVMarray_2D<float> &n )
Array of nodes given and array of normals given--v[i] is a vertex. v must be rectangular. The (leading) size of v must be the same as the (leading) size of n. n[i] must have size 3. v[i] must have size at least 3.

oDVpolygons& set_data(LCVMarray_3D<float> &v)
2_D array of nodes given--v[i] is a polygon. v[i][j] is a vertex. Each vertex must have the same length. Each polygon must have at least three vertices.

oDVpolygons& set_data( LCVMarray_3D<float> &v, LCVMarray_3D<float> &n )
2_D array of nodes given and 2_D array of normals as well. v[i] is a polygon. v[i][j] is a vertex. Each vertex must have the same length. Each polygon must have at least three vertices. There must be a normal for each vertex. Each normal must have 3 components. (Usually the normals are unit vectors.)

ovirtual void draw(LCVMstack<DVproperty*>&)
Virtual draw routine

o DVpolygons(const DVpolygons &data)
Copy constructor

oconst DVpolygons& operator=(const DVpolygons &data)
Assignment operator

ovirtual void print(ostream&)
A virtual print function

o DVpolygons(FileOption a_file_op)
Methods concerning the scene file format

ovirtual int ReadMyProp()
Methods concerning the scene file format

ovirtual DVobject* copy()
A routine that returns a pointer to a copy of the object created with new.


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.