#include <vtol_zero_chain.h>
Inheritance diagram for vtol_zero_chain:

Definition at line 38 of file vtol_zero_chain.h.
Public Types | |
| enum | vsol_spatial_object_2d_type |
Public Member Functions | |
| vtol_zero_chain () | |
| Default constructor. Empty zero-chain. | |
| vtol_zero_chain (vtol_vertex_sptr const &v1, vtol_vertex_sptr const &v2) | |
| Constructor from two vertices (to make edge creation easier). | |
| vtol_zero_chain (vtol_vertex_2d_sptr const &v1, vtol_vertex_2d_sptr const &v2) | |
| vtol_zero_chain (const vertex_list &new_vertices) | |
| Constructor from an array of vertices. | |
| vtol_zero_chain (vtol_zero_chain_sptr const &other) | |
| Pseudo copy constructor. Deep copy. | |
| virtual | ~vtol_zero_chain () |
| Destructor. | |
| virtual vsol_spatial_object_2d * | clone () const |
| Clone `this': creation of a new object and initialization. | |
| virtual vcl_string | is_a () const |
| Return a platform independent string identifying the class. | |
| virtual bool | is_class (vcl_string const &cls) const |
| Return true if the argument matches the string identifying the class or any parent class. | |
| virtual vtol_vertex_sptr | v0 () const |
| Return the first vertex of `this'. If it does not exist, return 0. | |
| virtual const vtol_zero_chain * | cast_to_zero_chain () const |
| Return `this' if `this' is a zero_chain, 0 otherwise. | |
| virtual vtol_zero_chain * | cast_to_zero_chain () |
| Return `this' if `this' is a zero_chain, 0 otherwise. | |
| void | link_inferior (vtol_vertex_sptr inf) |
| void | unlink_inferior (vtol_vertex_sptr inf) |
| void | link_inferior (vtol_vertex_2d_sptr inf) |
| void | unlink_inferior (vtol_vertex_2d_sptr inf) |
| virtual bool | valid_inferior_type (vtol_topology_object const *inferior) const |
| Is `inferior' type valid for `this' ?. | |
| bool | valid_inferior_type (vtol_vertex_sptr const &) const |
| bool | valid_superior_type (vtol_edge_sptr const &) const |
| bool | valid_superior_type (vtol_edge_2d_sptr const &) const |
| int | length () const |
| Return the length of the zero-chain. | |
| virtual bool | operator== (const vtol_zero_chain &other) const |
| Is `this' equal to `other' ?. | |
| bool | operator!= (const vtol_zero_chain &other) const |
| bool | operator== (const vsol_spatial_object_2d &obj) const |
| spatial object equality. | |
| virtual void | print (vcl_ostream &strm=vcl_cout) const |
| print the object. | |
| virtual void | describe (vcl_ostream &strm=vcl_cout, int blanking=0) const |
| virtual vtol_topology_object * | cast_to_topology_object () |
| virtual const vtol_topology_object * | cast_to_topology_object () const |
| virtual const vtol_vertex * | cast_to_vertex () const |
| Return `this' if `this' is a vertex, 0 otherwise. | |
| virtual vtol_vertex * | cast_to_vertex () |
| Return `this' if `this' is a vertex, 0 otherwise. | |
| virtual const vtol_edge * | cast_to_edge () const |
| Return `this' if `this' is an edge, 0 otherwise. | |
| virtual vtol_edge * | cast_to_edge () |
| Return `this' if `this' is an edge, 0 otherwise. | |
| virtual const vtol_chain * | cast_to_chain () const |
| Return `this' if `this' is a chain, 0 otherwise. | |
| virtual vtol_chain * | cast_to_chain () |
| Return `this' if `this' is a chain, 0 otherwise. | |
| virtual const vtol_one_chain * | cast_to_one_chain () const |
| Return `this' if `this' is an one_chain, 0 otherwise. | |
| virtual vtol_one_chain * | cast_to_one_chain () |
| Return `this' if `this' is an one_chain, 0 otherwise. | |
| virtual const vtol_face * | cast_to_face () const |
| Return `this' if `this' is a face, 0 otherwise. | |
| virtual vtol_face * | cast_to_face () |
| Return `this' if `this' is a face, 0 otherwise. | |
| virtual const vtol_two_chain * | cast_to_two_chain () const |
| Return `this' if `this' is a two_chain, 0 otherwise. | |
| virtual vtol_two_chain * | cast_to_two_chain () |
| Return `this' if `this' is a two_chain, 0 otherwise. | |
| virtual const vtol_block * | cast_to_block () const |
| Return `this' if `this' is a block, 0 otherwise. | |
| virtual vtol_block * | cast_to_block () |
| Return `this' if `this' is a block, 0 otherwise. | |
| bool | valid_superior_type (vtol_topology_object const *sup) const |
| Is `superior' type valid for `this' ?. | |
| bool | is_inferior (vtol_topology_object_sptr inferior) const |
| Is `inferior' already an inferior of `this' ?. | |
| bool | is_superior (vtol_topology_object *const &superior) const |
| Is `superior' already a superior of `this' ?. | |
| int | numinf () const |
| Number of inferiors. | |
| int | numsup () const |
| Number of superiors. | |
| const vcl_list< vtol_topology_object * > * | superiors_list () const |
| topology_list * | inferiors () |
| Return the inferiors list. | |
| const topology_list * | inferiors () const |
| virtual vsol_spatial_object_2d_type | spatial_type () const |
| Return the spatial type. | |
| void | link_inferior (vtol_topology_object_sptr inferior) |
| Link `this' with an inferior `inferior'. | |
| void | unlink_inferior (vtol_topology_object_sptr inferior) |
| Unlink `this' from the inferior `inferior'. | |
| void | unlink_all_inferiors () |
| Unlink `this' from all its inferiors. | |
| void | unlink () |
| Unlink `this' of the network. | |
| void | vertices (vertex_list &list) const |
| Get list of vertices. | |
| void | zero_chains (zero_chain_list &list) const |
| Get list of zero chains. | |
| void | edges (edge_list &list) const |
| Get list of edges. | |
| void | one_chains (one_chain_list &list) const |
| Get list of one chains. | |
| void | faces (face_list &list) const |
| Get list of faces. | |
| void | two_chains (two_chain_list &list) const |
| Get list of two chains. | |
| void | blocks (block_list &list) const |
| Get list of blocks. | |
| void | describe_inferiors (vcl_ostream &strm=vcl_cout, int blanking=0) const |
| void | describe_superiors (vcl_ostream &strm=vcl_cout, int blanking=0) const |
| virtual void | compute_bounding_box () const |
| compute the bounding box from the set of vertices. | |
| const char * | get_name () const |
| void | un_protect () |
| short | version () const |
| virtual void | b_write (vsl_b_ostream &os) const |
| virtual void | b_read (vsl_b_istream &is) |
| bool | operator!= (vsol_spatial_object_2d const &obj) |
| vsol_box_2d_sptr | get_bounding_box () const |
| double | get_min_x () const |
| double | get_max_x () const |
| double | get_min_y () const |
| double | get_max_y () const |
| virtual vsol_spatial_object_2d * | cast_to_spatial_object () |
| virtual vsol_spatial_object_2d const * | cast_to_spatial_object () const |
| virtual vsol_spatial_object_2d * | cast_to_vsol_spatial_object () |
| virtual vsol_spatial_object_2d const * | cast_to_vsol_spatial_object () const |
| virtual vsol_point_2d * | cast_to_point () |
| virtual vsol_point_2d const * | cast_to_point () const |
| virtual vsol_curve_2d * | cast_to_curve () |
| virtual vsol_curve_2d const * | cast_to_curve () const |
| virtual vsol_region_2d * | cast_to_region () |
| virtual vsol_region_2d const * | cast_to_region () const |
| virtual vsol_group_2d * | cast_to_group () |
| virtual vsol_group_2d const * | cast_to_group () const |
| void | touch () |
| unsigned long | get_time_stamp () const |
| bool | older (vul_timestamp const &t) const |
| bool | older (vul_timestamp const *t) const |
| void | ref () |
| void | unref () |
| int | get_references () const |
| bool | is_referenced () const |
| int | get_id () const |
| void | set_id (int i) |
| void | set_user_flag (unsigned int flag) |
| bool | get_user_flag (unsigned int flag) |
| void | unset_user_flag (unsigned int flag) |
| void | set_tagged_union_flag () |
| bool | get_tagged_union_flag () |
| void | unset_tagged_union_flag () |
| int | get_tag_id () |
| void | set_tag_id (int id) |
Public Attributes | |
| SPATIAL_NO_TYPE | |
| TOPOLOGYOBJECT | |
| POINT | |
| CURVE | |
| REGION | |
| SPATIALGROUP | |
| VOLUME | |
| NUM_SPATIALOBJECT_TYPES | |
Static Public Attributes | |
| static const char * | SpatialTypes [] |
| static const float | eps |
Protected Types | |
| enum | vtol_topology_object_type { TOPOLOGY_NO_TYPE = 0, VERTEX, ZEROCHAIN, EDGE, ONECHAIN, FACE, TRIFACE, INTENSITYFACE, INTENSITYFACE3D, DDBINTENSITYFACE, TWOCHAIN, TRIMESHTWOCHAIN, BLOCK, NUM_TOPOLOGYOBJECT_TYPES } |
Protected Member Functions | |
| virtual vcl_vector< vtol_vertex * > * | compute_vertices () |
| get list of vertices. | |
| virtual vcl_vector< vtol_edge * > * | compute_edges () |
| get list of edges. | |
| virtual vcl_vector< vtol_zero_chain * > * | compute_zero_chains () |
| get list of zero chains. | |
| virtual vcl_vector< vtol_one_chain * > * | compute_one_chains () |
| get list of one chains. | |
| virtual vcl_vector< vtol_face * > * | compute_faces () |
| get list of faces. | |
| virtual vcl_vector< vtol_two_chain * > * | compute_two_chains () |
| get list of two chain. | |
| virtual vcl_vector< vtol_block * > * | compute_blocks () |
| get list of blocks. | |
| void | not_applicable (vcl_string const &message) const |
| void | empty_bounding_box () const |
| void | set_bounding_box (vsol_box_2d_sptr const &box) const |
| void | set_bounding_box (double x, double y) const |
| void | add_to_bounding_box (double x, double y) const |
| void | add_to_bounding_box (vsol_box_2d_sptr const &box) const |
| void | grow_minmax_bounds (vsol_box_2d_sptr const &b) const |
| void | check_update_bounding_box () const |
Protected Attributes | |
| vcl_list< vtol_topology_object * > | superiors_ |
| topology_list | inferiors_ |
| unsigned long | timestamp_ |
| unsigned int | tag_ |
| int | id_ |
Static Protected Attributes | |
| static int | tagcount_ |
Private Member Functions | |
| vtol_zero_chain (vtol_vertex &v1, vtol_vertex &v2) | |
| vtol_zero_chain (const vtol_zero_chain &other) | |
| Copy constructor. Copy the vertices and the links. Deprecated. | |
| virtual vtol_topology_object_type | topology_type () const |
| Return the topology type. | |
Friends | |
| friend vcl_ostream & | operator<< (vcl_ostream &, vsol_spatial_object_2d const &) |
| friend vcl_ostream & | operator<< (vcl_ostream &, vsol_spatial_object_2d const *) |
|
|
Definition at line 132 of file vtol_topology_object.h. |
|
|
Default constructor. Empty zero-chain.
Definition at line 47 of file vtol_zero_chain.h. |
|
||||||||||||
|
Constructor from two vertices (to make edge creation easier). REQUIRE: v1!=v2 Definition at line 39 of file vtol_zero_chain.cxx. |
|
||||||||||||
|
Definition at line 50 of file vtol_zero_chain.cxx. |
|
||||||||||||
|
|
|
|
Constructor from an array of vertices. REQUIRE: new_vertices.size()>0 Definition at line 62 of file vtol_zero_chain.cxx. |
|
|
Pseudo copy constructor. Deep copy.
Definition at line 73 of file vtol_zero_chain.cxx. |
|
|
Copy constructor. Copy the vertices and the links. Deprecated.
|
|
|
Destructor.
Definition at line 83 of file vtol_zero_chain.cxx. |
|
|
Get list of blocks.
Definition at line 264 of file vtol_topology_object.cxx. |
|
|
Return `this' if `this' is a block, 0 otherwise.
Reimplemented in vtol_block. Definition at line 240 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a block, 0 otherwise.
Reimplemented in vtol_block. Definition at line 236 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a chain, 0 otherwise.
Reimplemented in vtol_chain. Definition at line 208 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a chain, 0 otherwise.
Reimplemented in vtol_chain. Definition at line 204 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is an edge, 0 otherwise.
Reimplemented in vtol_edge. Definition at line 200 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is an edge, 0 otherwise.
Reimplemented in vtol_edge. Definition at line 196 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a face, 0 otherwise.
Reimplemented in vtol_face. Definition at line 224 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a face, 0 otherwise.
Reimplemented in vtol_face. Definition at line 220 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is an one_chain, 0 otherwise.
Reimplemented in vtol_one_chain. Definition at line 216 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is an one_chain, 0 otherwise.
Reimplemented in vtol_one_chain. Definition at line 212 of file vtol_topology_object.h. |
|
|
Reimplemented from vsol_spatial_object_2d. Definition at line 176 of file vtol_topology_object.h. |
|
|
Reimplemented from vsol_spatial_object_2d. Definition at line 175 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a two_chain, 0 otherwise.
Reimplemented in vtol_two_chain. Definition at line 232 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a two_chain, 0 otherwise.
Reimplemented in vtol_two_chain. Definition at line 228 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a vertex, 0 otherwise.
Reimplemented in vtol_vertex. Definition at line 184 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a vertex, 0 otherwise.
Reimplemented in vtol_vertex. Definition at line 180 of file vtol_topology_object.h. |
|
|
Return `this' if `this' is a zero_chain, 0 otherwise.
Reimplemented from vtol_topology_object. Definition at line 109 of file vtol_zero_chain.h. |
|
|
Return `this' if `this' is a zero_chain, 0 otherwise.
Reimplemented from vtol_topology_object. Definition at line 105 of file vtol_zero_chain.h. |
|
|
Clone `this': creation of a new object and initialization. See Prototype pattern Implements vsol_spatial_object_2d. Definition at line 91 of file vtol_zero_chain.cxx. |
|
|
get list of blocks.
Reimplemented from vtol_topology_object. Definition at line 146 of file vtol_zero_chain.cxx. |
|
|
compute the bounding box from the set of vertices. A generic method that applies to all topology_object(s) Reimplemented from vsol_spatial_object_2d. Reimplemented in vtol_edge_2d, vtol_face, vtol_one_chain, and vtol_vertex_2d. Definition at line 389 of file vtol_topology_object.cxx. |
|
|
get list of edges.
Reimplemented from vtol_topology_object. Definition at line 119 of file vtol_zero_chain.cxx. |
|
|
get list of faces.
Reimplemented from vtol_topology_object. Definition at line 133 of file vtol_zero_chain.cxx. |
|
|
get list of one chains.
Reimplemented from vtol_topology_object. Definition at line 126 of file vtol_zero_chain.cxx. |
|
|
get list of two chain.
Reimplemented from vtol_topology_object. Definition at line 140 of file vtol_zero_chain.cxx. |
|
|
get list of vertices.
Reimplemented from vtol_topology_object. Definition at line 107 of file vtol_zero_chain.cxx. |
|
|
get list of zero chains.
Reimplemented from vtol_topology_object. Definition at line 113 of file vtol_zero_chain.cxx. |
|
||||||||||||
|
Reimplemented from vtol_topology_object. Definition at line 193 of file vtol_zero_chain.cxx. |
|
||||||||||||
|
Definition at line 277 of file vtol_topology_object.cxx. |
|
||||||||||||
|
Definition at line 294 of file vtol_topology_object.cxx. |
|
|
Get list of edges.
Definition at line 200 of file vtol_topology_object.cxx. |
|
|
Get list of faces.
Definition at line 232 of file vtol_topology_object.cxx. |
|
|
Definition at line 281 of file vtol_topology_object.h. |
|
|
Return the inferiors list.
Definition at line 280 of file vtol_topology_object.h. |
|
|
Return a platform independent string identifying the class.
Implements vsol_spatial_object_2d. Definition at line 85 of file vtol_zero_chain.h. |
|
|
Return true if the argument matches the string identifying the class or any parent class.
Definition at line 88 of file vtol_zero_chain.h. |
|
|
Is `inferior' already an inferior of `this' ?.
Definition at line 51 of file vtol_topology_object.cxx. |
|
|
Is `superior' already a superior of `this' ?.
Definition at line 64 of file vtol_topology_object.cxx. |
|