Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | Friends
vtol_chain Class Reference

Base class of vtol_two_chain and vtol_one_chain (representation of holes). More...

#include <vtol_chain.h>

Inheritance diagram for vtol_chain:
Inheritance graph
[legend]

List of all members.

Public Types

enum  vsol_spatial_object_2d_type

Public Member Functions

 vtol_chain ()
 Default constructor.
virtual ~vtol_chain ()
 Destructor.
virtual const chain_listchain_inferiors () const
 Return a pointer to the inferiors (no copy).
virtual const chain_listchain_superiors () const
 Return a copy of the chain_superiors list.
virtual const vtol_chaincast_to_chain () const
 Return `this' if `this' is a chain, 0 otherwise.
virtual vtol_chaincast_to_chain ()
 Return `this' if `this' is a chain, 0 otherwise.
virtual bool valid_chain_type (vtol_chain_sptr chain_inf_sup) const =0
 Is `chain_inf_sup' type valid for `this' ?.
virtual bool is_chain_inferior (vtol_chain_sptr chain_inferior) const
 Is `inferior' already an inferior of `this' ?.
virtual bool is_chain_superior (vtol_chain const *chain_superior) const
 Is `superior' already a superior of `this' ?.
int num_chain_superiors () const
 Return the number of superiors.
int num_chain_inferiors () const
 Return the number of inferiors.
bool contains_sub_chains () const
 Does `this' contain some sub chains ?.
bool is_sub_chain () const
 Is `this' a sub chain ?.
void link_chain_inferior (vtol_chain_sptr chain_inferior)
 Link `this' with an inferior `chain_inferior'.
void unlink_chain_inferior (vtol_chain_sptr chain_inferior)
 Unlink `this' with the chain_inferior `chain_inferior'.
void unlink_all_chain_inferiors ()
 Unlink `this' with all its chain inferiors.
void unlink ()
 Unlink `this' of the network.
bool is_cycle () const
 Is `this' a connected chain ?.
const vcl_vector< signed char > * directions () const
 Return the directions.
vcl_vector< signed char > * directions ()
 Return the directions.
int dir (int i) const
 Return the direction `i'.
void set_cycle (bool new_is_cycle)
 Set if `this' is a connected chain.
virtual void clear ()
 Reset the chain.
virtual vcl_string is_a () const
 Return a platform independent string identifying the class.
virtual bool is_class (const vcl_string &cls) const
 Return true if the argument matches the string identifying the class or any parent class.
virtual vtol_topology_objectcast_to_topology_object ()
virtual const
vtol_topology_object
cast_to_topology_object () const
virtual const vtol_vertexcast_to_vertex () const
 Return `this' if `this' is a vertex, 0 otherwise.
virtual vtol_vertexcast_to_vertex ()
 Return `this' if `this' is a vertex, 0 otherwise.
virtual const vtol_zero_chaincast_to_zero_chain () const
 Return `this' if `this' is a zero_chain, 0 otherwise.
virtual vtol_zero_chaincast_to_zero_chain ()
 Return `this' if `this' is a zero_chain, 0 otherwise.
virtual const vtol_edgecast_to_edge () const
 Return `this' if `this' is an edge, 0 otherwise.
virtual vtol_edgecast_to_edge ()
 Return `this' if `this' is an edge, 0 otherwise.
virtual const vtol_one_chaincast_to_one_chain () const
 Return `this' if `this' is a one_chain, 0 otherwise.
virtual vtol_one_chaincast_to_one_chain ()
 Return `this' if `this' is a one_chain, 0 otherwise.
virtual const vtol_facecast_to_face () const
 Return `this' if `this' is a face, 0 otherwise.
virtual vtol_facecast_to_face ()
 Return `this' if `this' is a face, 0 otherwise.
virtual const vtol_two_chaincast_to_two_chain () const
 Return `this' if `this' is a two_chain, 0 otherwise.
virtual vtol_two_chaincast_to_two_chain ()
 Return `this' if `this' is a two_chain, 0 otherwise.
virtual const vtol_blockcast_to_block () const
 Return `this' if `this' is a block, 0 otherwise.
virtual vtol_blockcast_to_block ()
 Return `this' if `this' is a block, 0 otherwise.
virtual bool valid_inferior_type (vtol_topology_object const *inf) const =0
 Is `inferior' type valid for `this' ?.
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_listinferiors ()
 Return the inferiors list.
const topology_listinferiors () 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 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.
virtual void print (vcl_ostream &strm=vcl_cout) const
 print and describe the objects.
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 describe (vcl_ostream &strm=vcl_cout, int blanking=0) const
virtual void compute_bounding_box () const
 compute the bounding box from the set of vertices.
virtual vcl_vector
< vtol_vertex * > * 
compute_vertices ()
 compute lists of vertices.
virtual vcl_vector
< vtol_zero_chain * > * 
compute_zero_chains ()
 compute lists of zero chains.
virtual vcl_vector< vtol_edge * > * compute_edges ()
 compute lists of edges.
virtual vcl_vector
< vtol_one_chain * > * 
compute_one_chains ()
 compute lists of one chains.
virtual vcl_vector< vtol_face * > * compute_faces ()
 compute lists of faces.
virtual vcl_vector
< vtol_two_chain * > * 
compute_two_chains ()
 compute lists of two chains.
virtual vcl_vector< vtol_block * > * compute_blocks ()
 compute lists of blocks.
const char * get_name () const
void un_protect ()
virtual vsol_spatial_object_2dclone () const =0
short version () const
virtual void b_write (vsl_b_ostream &os) const
virtual void b_read (vsl_b_istream &is)
virtual bool operator== (vsol_spatial_object_2d const &obj) const
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_2dcast_to_spatial_object ()
virtual vsol_spatial_object_2d
const * 
cast_to_spatial_object () const
virtual vsol_spatial_object_2dcast_to_vsol_spatial_object ()
virtual vsol_spatial_object_2d
const * 
cast_to_vsol_spatial_object () const
virtual vsol_point_2dcast_to_point ()
virtual vsol_point_2d const * cast_to_point () const
virtual vsol_curve_2dcast_to_curve ()
virtual vsol_curve_2d const * cast_to_curve () const
virtual vsol_region_2dcast_to_region ()
virtual vsol_region_2d const * cast_to_region () const
virtual vsol_group_2dcast_to_group ()
virtual vsol_group_2d const * cast_to_group () 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)
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

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

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

chain_list chain_inferiors_
 array of the inferiors.
vcl_list< vtol_chain * > chain_superiors_
 array of the superiors.
bool is_cycle_
vcl_vector< signed char > directions_
vcl_list< vtol_topology_object * > superiors_
topology_list inferiors_
unsigned int tag_
int id_
unsigned long timestamp_

Static Protected Attributes

static int tagcount_

Friends

friend vcl_ostream & operator<< (vcl_ostream &, vsol_spatial_object_2d const &)
friend vcl_ostream & operator<< (vcl_ostream &, vsol_spatial_object_2d const *)

Detailed Description

Base class of vtol_two_chain and vtol_one_chain (representation of holes).

ALL THE DERIVED AND NONE ABSTRACT CLASSES OF THIS CLASS MUST CALL unlink_all_chain_inferiors() IN THEIR DESTRUCTOR unlink_all_chain_inferiors() CANT BE CALLED DIRECTLY IN THIS CLASS, OTHERWISE BAD VERSIONS OF METHODS SHOULD BE CALLED (C++ IS STUPID !)

Definition at line 29 of file vtol_chain.h.


Member Enumeration Documentation

Enumerator:
TOPOLOGY_NO_TYPE 
VERTEX 
ZEROCHAIN 
EDGE 
ONECHAIN 
FACE 
TRIFACE 
INTENSITYFACE 
INTENSITYFACE3D 
DDBINTENSITYFACE 
TWOCHAIN 
TRIMESHTWOCHAIN 
BLOCK 
NUM_TOPOLOGYOBJECT_TYPES 

Definition at line 132 of file vtol_topology_object.h.


Constructor & Destructor Documentation

vtol_chain::vtol_chain ( void  )

Default constructor.

Definition at line 15 of file vtol_chain.cxx.

vtol_chain::~vtol_chain ( ) [virtual]

Destructor.

Definition at line 22 of file vtol_chain.cxx.


Member Function Documentation

void vtol_topology_object::blocks ( block_list list) const [inherited]

Get list of blocks.

get list of blocks.

Definition at line 264 of file vtol_topology_object.cxx.

virtual const vtol_block* vtol_topology_object::cast_to_block ( ) const [inline, virtual, inherited]

Return `this' if `this' is a block, 0 otherwise.

Reimplemented in vtol_block.

Definition at line 236 of file vtol_topology_object.h.

virtual vtol_block* vtol_topology_object::cast_to_block ( ) [inline, virtual, inherited]

Return `this' if `this' is a block, 0 otherwise.

Reimplemented in vtol_block.

Definition at line 240 of file vtol_topology_object.h.

virtual const vtol_chain* vtol_chain::cast_to_chain ( ) const [inline, virtual]

Return `this' if `this' is a chain, 0 otherwise.

Reimplemented from vtol_topology_object.

Definition at line 79 of file vtol_chain.h.

virtual vtol_chain* vtol_chain::cast_to_chain ( ) [inline, virtual]

Return `this' if `this' is a chain, 0 otherwise.

Reimplemented from vtol_topology_object.

Definition at line 83 of file vtol_chain.h.

virtual const vtol_edge* vtol_topology_object::cast_to_edge ( ) const [inline, virtual, inherited]

Return `this' if `this' is an edge, 0 otherwise.

Reimplemented in vtol_edge.

Definition at line 196 of file vtol_topology_object.h.

virtual vtol_edge* vtol_topology_object::cast_to_edge ( ) [inline, virtual, inherited]

Return `this' if `this' is an edge, 0 otherwise.

Reimplemented in vtol_edge.

Definition at line 200 of file vtol_topology_object.h.

virtual const vtol_face* vtol_topology_object::cast_to_face ( ) const [inline, virtual, inherited]

Return `this' if `this' is a face, 0 otherwise.

Reimplemented in vtol_face.

Definition at line 220 of file vtol_topology_object.h.

virtual vtol_face* vtol_topology_object::cast_to_face ( ) [inline, virtual, inherited]

Return `this' if `this' is a face, 0 otherwise.

Reimplemented in vtol_face.

Definition at line 224 of file vtol_topology_object.h.

virtual const vtol_one_chain* vtol_topology_object::cast_to_one_chain ( ) const [inline, virtual, inherited]

Return `this' if `this' is a one_chain, 0 otherwise.

Reimplemented in vtol_one_chain.

Definition at line 212 of file vtol_topology_object.h.

virtual vtol_one_chain* vtol_topology_object::cast_to_one_chain ( ) [inline, virtual, inherited]

Return `this' if `this' is a one_chain, 0 otherwise.

Reimplemented in vtol_one_chain.

Definition at line 216 of file vtol_topology_object.h.

virtual vtol_topology_object* vtol_topology_object::cast_to_topology_object ( ) [inline, virtual, inherited]

Reimplemented from vsol_spatial_object_2d.

Definition at line 175 of file vtol_topology_object.h.

virtual const vtol_topology_object* vtol_topology_object::cast_to_topology_object ( ) const [inline, virtual, inherited]

Reimplemented from vsol_spatial_object_2d.

Definition at line 176 of file vtol_topology_object.h.

virtual const vtol_two_chain* vtol_topology_object::cast_to_two_chain ( ) const [inline, virtual, inherited]

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.

virtual vtol_two_chain* vtol_topology_object::cast_to_two_chain ( ) [inline, virtual, inherited]

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.

virtual const vtol_vertex* vtol_topology_object::cast_to_vertex ( ) const [inline, virtual, inherited]

Return `this' if `this' is a vertex, 0 otherwise.

Reimplemented in vtol_vertex.

Definition at line 180 of file vtol_topology_object.h.

virtual vtol_vertex* vtol_topology_object::cast_to_vertex ( ) [inline, virtual, inherited]

Return `this' if `this' is a vertex, 0 otherwise.

Reimplemented in vtol_vertex.

Definition at line 184 of file vtol_topology_object.h.

virtual const vtol_zero_chain* vtol_topology_object::cast_to_zero_chain ( ) const [inline, virtual, inherited]

Return `this' if `this' is a zero_chain, 0 otherwise.

Reimplemented in vtol_zero_chain.

Definition at line 188 of file vtol_topology_object.h.

virtual vtol_zero_chain* vtol_topology_object::cast_to_zero_chain ( ) [inline, virtual, inherited]

Return `this' if `this' is a zero_chain, 0 otherwise.

Reimplemented in vtol_zero_chain.

Definition at line 192 of file vtol_topology_object.h.

const chain_list * vtol_chain::chain_inferiors ( void  ) const [virtual]

Return a pointer to the inferiors (no copy).

Definition at line 33 of file vtol_chain.cxx.

const chain_list * vtol_chain::chain_superiors ( void  ) const [virtual]

Return a copy of the chain_superiors list.

The return value must be deleted by the caller

The return value must be deleted by the caller

Deprecated.

Definition at line 44 of file vtol_chain.cxx.

void vtol_chain::clear ( void  ) [virtual]

Reset the chain.

Definition at line 161 of file vtol_chain.cxx.

vcl_vector< vtol_block * > * vtol_topology_object::compute_blocks ( void  ) [virtual, inherited]

compute lists of blocks.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 380 of file vtol_topology_object.cxx.

void vtol_topology_object::compute_bounding_box ( void  ) const [virtual, inherited]

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_face, vtol_vertex_2d, vtol_one_chain, and vtol_edge_2d.

Definition at line 389 of file vtol_topology_object.cxx.

vcl_vector< vtol_edge * > * vtol_topology_object::compute_edges ( void  ) [virtual, inherited]

compute lists of edges.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 346 of file vtol_topology_object.cxx.

vcl_vector< vtol_face * > * vtol_topology_object::compute_faces ( void  ) [virtual, inherited]

compute lists of faces.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 363 of file vtol_topology_object.cxx.

vcl_vector< vtol_one_chain * > * vtol_topology_object::compute_one_chains ( void  ) [virtual, inherited]

compute lists of one chains.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 355 of file vtol_topology_object.cxx.

vcl_vector< vtol_two_chain * > * vtol_topology_object::compute_two_chains ( void  ) [virtual, inherited]

compute lists of two chains.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 372 of file vtol_topology_object.cxx.

vcl_vector< vtol_vertex * > * vtol_topology_object::compute_vertices ( void  ) [virtual, inherited]

compute lists of vertices.

Compute lists of vertices.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 327 of file vtol_topology_object.cxx.

vcl_vector< vtol_zero_chain * > * vtol_topology_object::compute_zero_chains ( void  ) [virtual, inherited]

compute lists of zero chains.

Compute lists of zero chains.

Warning:
should not be used by clients

Reimplemented in vtol_one_chain, vtol_two_chain, vtol_edge, vtol_zero_chain, vtol_vertex, vtol_face, and vtol_block.

Definition at line 337 of file vtol_topology_object.cxx.

bool vtol_chain::contains_sub_chains ( ) const [inline]

Does `this' contain some sub chains ?.

Definition at line 111 of file vtol_chain.h.

void vtol_topology_object::describe ( vcl_ostream &  strm = vcl_cout,
int  blanking = 0 
) const [virtual, inherited]
void vtol_topology_object::describe_inferiors ( vcl_ostream &  strm = vcl_cout,
int  blanking = 0 
) const [inherited]

Definition at line 277 of file vtol_topology_object.cxx.

void vtol_topology_object::describe_superiors ( vcl_ostream &  strm = vcl_cout,
int  blanking = 0 
) const [inherited]

Definition at line 294 of file vtol_topology_object.cxx.

int vtol_chain::dir ( int  i) const [inline]

Return the direction `i'.

Definition at line 155 of file vtol_chain.h.

const vcl_vector<signed char>* vtol_chain::directions ( ) const [inline]

Return the directions.

Definition at line 147 of file vtol_chain.h.

vcl_vector<signed char>* vtol_chain::directions ( ) [inline]

Return the directions.

Definition at line 151 of file vtol_chain.h.

void vtol_topology_object::edges ( edge_list list) const [inherited]

Get list of edges.

get list of edges.

Definition at line 200 of file vtol_topology_object.cxx.

void vtol_topology_object::faces ( face_list list) const [inherited]

Get list of faces.

get list of faces.

Definition at line 232 of file vtol_topology_object.cxx.

topology_list* vtol_topology_object::inferiors ( ) [inline, inherited]

Return the inferiors list.

Definition at line 280 of file vtol_topology_object.h.

const topology_list* vtol_topology_object::inferiors ( ) const [inline, inherited]

Definition at line 281 of file vtol_topology_object.h.

virtual vcl_string vtol_chain::is_a ( ) const [inline, virtual]

Return a platform independent string identifying the class.

Implements vsol_spatial_object_2d.

Reimplemented in vtol_one_chain, and vtol_two_chain.

Definition at line 167 of file vtol_chain.h.

bool vtol_chain::is_chain_inferior ( vtol_chain_sptr  chain_inferior) const [virtual]

Is `inferior' already an inferior of `this' ?.

Definition at line 61 of file vtol_chain.cxx.

bool vtol_chain::is_chain_superior ( vtol_chain const *  chain_superior) const [virtual]

Is `superior' already a superior of `this' ?.

Definition at line 75 of file vtol_chain.cxx.

virtual bool vtol_chain::is_class ( const vcl_string &  cls) const [inline, virtual]

Return true if the argument matches the string identifying the class or any parent class.

Reimplemented in vtol_one_chain, and vtol_two_chain.

Definition at line 170 of file vtol_chain.h.

bool vtol_chain::is_cycle ( void  ) const

Is `this' a connected chain ?.

Definition at line 154 of file vtol_chain.cxx.

bool vtol_topology_object::is_inferior ( vtol_topology_object_sptr  inferior) const [inherited]

Is `inferior' already an inferior of `this' ?.

Definition at line 51 of file vtol_topology_object.cxx.

bool vtol_chain::is_sub_chain ( ) const [inline]

Is `this' a sub chain ?.

Definition at line 115 of file vtol_chain.h.

bool vtol_topology_object::is_superior ( vtol_topology_object *const &  superior) const [inherited]

Is `superior' already a superior of `this' ?.

Definition at line 64 of file vtol_topology_object.cxx.

void vtol_chain::link_chain_inferior ( vtol_chain_sptr  chain_inferior)

Link `this' with an inferior `chain_inferior'.

REQUIRE: valid_chain_type(chain_inferior) and !is_chain_inferior(chain_inferior)

Require: valid_chain_type(chain_inferior) and !is_chain_inferior(chain_inferior)

Reimplemented in vtol_one_chain, and vtol_two_chain.

Definition at line 94 of file vtol_chain.cxx.

void vtol_topology_object::link_inferior ( vtol_topology_object_sptr  inferior) [inherited]

Link `this' with an inferior `inferior'.

REQUIRE: valid_inferior_type(inferior) and !is_inferior(inferior)

Require: valid_inferior_type(inferior) and !is_inferior(inferior)

Reimplemented in vtol_edge, vtol_two_chain, vtol_one_chain, vtol_face, and vtol_block.

Definition at line 98 of file vtol_topology_object.cxx.

int vtol_chain::num_chain_inferiors ( ) const [inline]

Return the number of inferiors.

Definition at line 107 of file vtol_chain.h.

int vtol_chain::num_chain_superiors ( ) const [inline]

Return the number of superiors.

Definition at line 103 of file vtol_chain.h.

int vtol_topology_object::numinf ( ) const [inline, inherited]

Number of inferiors.

Definition at line 265 of file vtol_topology_object.h.

int vtol_topology_object::numsup ( ) const [inline, inherited]

Number of superiors.

Definition at line 269 of file vtol_topology_object.h.

void vtol_topology_object::one_chains ( one_chain_list list) const [inherited]

Get list of one chains.

get list of one chains.

Definition at line 216 of file vtol_topology_object.cxx.

void vtol_topology_object::print ( vcl_ostream &  strm = vcl_cout) const [virtual, inherited]

print and describe the objects.

print the object.

Reimplemented from vsol_spatial_object_2d.

Reimplemented in vtol_two_chain, vtol_edge, vtol_one_chain, vtol_face, vtol_block, vtol_vertex_2d, vtol_edge_2d, vtol_zero_chain, vtol_face_2d, and vtol_vertex.

Definition at line 270 of file vtol_topology_object.cxx.

void vtol_chain::set_cycle ( bool  new_is_cycle) [inline]

Set if `this' is a connected chain.

Definition at line 159 of file vtol_chain.h.

virtual vsol_spatial_object_2d_type vtol_topology_object::spatial_type ( void  ) const [inline, virtual, inherited]

Return the spatial type.

Implements vsol_spatial_object_2d.

Definition at line 285 of file vtol_topology_object.h.

const vcl_list<vtol_topology_object*>* vtol_topology_object::superiors_list ( ) const [inline, inherited]

Definition at line 276 of file vtol_topology_object.h.

void vtol_topology_object::two_chains ( two_chain_list list) const [inherited]

Get list of two chains.

get list of two chains.

Definition at line 248 of file vtol_topology_object.cxx.

void vtol_chain::unlink ( void  )

Unlink `this' of the network.

Reimplemented from vtol_topology_object.

Definition at line 144 of file vtol_chain.cxx.

void vtol_chain::unlink_all_chain_inferiors ( void  )

Unlink `this' with all its chain inferiors.

Definition at line 136 of file vtol_chain.cxx.

void vtol_topology_object::unlink_all_inferiors ( void  ) [inherited]

Unlink `this' from all its inferiors.

Definition at line 143 of file vtol_topology_object.cxx.

void vtol_chain::unlink_chain_inferior ( vtol_chain_sptr  chain_inferior)

Unlink `this' with the chain_inferior `chain_inferior'.

REQUIRE: valid_chain_type(chain_inferior) and is_chain_inferior(chain_inferior)

Require: valid_chain_type(chain_inferior) and is_chain_inferior(chain_inferior)

Reimplemented in vtol_one_chain, and vtol_two_chain.

Definition at line 110 of file vtol_chain.cxx.

void vtol_topology_object::unlink_inferior ( vtol_topology_object_sptr  inferior) [inherited]

Unlink `this' from the inferior `inferior'.

Unlink `this' with the inferior `inferior'.

REQUIRE: valid_inferior_type(inferior) and is_inferior(inferior)

Require: valid_inferior_type(inferior) and is_inferior(inferior)

Reimplemented in vtol_edge, vtol_two_chain, vtol_one_chain, vtol_face, and vtol_block.

Definition at line 118 of file vtol_topology_object.cxx.

virtual bool vtol_chain::valid_chain_type ( vtol_chain_sptr  chain_inf_sup) const [pure virtual]

Is `chain_inf_sup' type valid for `this' ?.

Implemented in vtol_two_chain, and vtol_one_chain.

virtual bool vtol_topology_object::valid_inferior_type ( vtol_topology_object const *  inf) const [pure virtual, inherited]

Is `inferior' type valid for `this' ?.

Implemented in vtol_edge, vtol_two_chain, vtol_one_chain, vtol_zero_chain, vtol_face, vtol_block, and vtol_vertex.

bool vtol_topology_object::valid_superior_type ( vtol_topology_object const *  sup) const [inline, inherited]

Is `superior' type valid for `this' ?.

Definition at line 252 of file vtol_topology_object.h.

void vtol_topology_object::vertices ( vertex_list list) const [inherited]

Get list of vertices.

get list of vertices.

Definition at line 170 of file vtol_topology_object.cxx.

void vtol_topology_object::zero_chains ( zero_chain_list list) const [inherited]

Get list of zero chains.

get list of zero chains.

Definition at line 184 of file vtol_topology_object.cxx.


Member Data Documentation

array of the inferiors.

Definition at line 38 of file vtol_chain.h.

vcl_list<vtol_chain*> vtol_chain::chain_superiors_ [protected]

array of the superiors.

Definition at line 42 of file vtol_chain.h.

vcl_vector<signed char> vtol_chain::directions_ [protected]

Definition at line 45 of file vtol_chain.h.

Definition at line 130 of file vtol_topology_object.h.

bool vtol_chain::is_cycle_ [protected]

Definition at line 44 of file vtol_chain.h.

vcl_list<vtol_topology_object*> vtol_topology_object::superiors_ [protected, inherited]

Definition at line 125 of file vtol_topology_object.h.


The documentation for this class was generated from the following files: