Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | Friends
vtol_vertex_2d Class Reference

#include <vtol_vertex_2d.h>

Inheritance diagram for vtol_vertex_2d:
Inheritance graph
[legend]

List of all members.

Public Types

enum  vsol_spatial_object_2d_type

Public Member Functions

 vtol_vertex_2d ()
 Default constructor.
 vtol_vertex_2d (vsol_point_2d &new_point)
 Constructor from a point (the point is copied, not stored).
 vtol_vertex_2d (const vnl_double_2 &v)
 Constructor from a vector.
 vtol_vertex_2d (double new_x, double new_y)
 Constructor from abscissa `new_x' and ordinate `new_y' of the point.
 vtol_vertex_2d (vtol_vertex_2d_sptr const &other)
 Pseudo copy constructor. Deep copy.
virtual ~vtol_vertex_2d ()
 Destructor.
virtual vsol_spatial_object_2dclone () 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 (const vcl_string &cls) const
 Return true if the argument matches the string identifying the class or any parent class.
vsol_point_2d_sptr point () const
 Return the point.
virtual void set_point (vsol_point_2d_sptr const &new_point)
 Set the point (the point is not copied).
virtual double x () const
 Return the abscissa of the point.
virtual double y () const
 Return the ordinate of the point.
virtual void set_x (const double new_x)
 Set the abscissa of the point with `new_x'.
virtual void set_y (const double new_y)
 Set the ordinate of the point with `new_y'.
virtual bool operator== (const vtol_vertex_2d &other) const
 Is `this' has the same coordinates for its point than `other' ?.
bool operator!= (const vtol_vertex_2d &other) const
virtual bool operator== (const vtol_vertex &other) const
 Does `this' have the same coordinates for its point than `other' ?.
bool operator== (const vsol_spatial_object_2d &obj) const
 spatial object equality.
virtual vtol_vertex_2doperator= (const vtol_vertex_2d &other)
 Assignment of `this' with `other' (copy the point not the links).
vtol_vertex_2doperator= (const vtol_vertex &other)
 Assignment of `this' with `other' (copy the point not the links).
virtual const vtol_vertex_2dcast_to_vertex_2d () const
 Return `this' if `this' is a vertex, 0 otherwise.
virtual vtol_vertex_2dcast_to_vertex_2d ()
 Return `this' if `this' is a vertex, 0 otherwise.
virtual vtol_edge_sptr new_edge (vtol_vertex_sptr const &other)
 Create a line edge from `this' and `other' only if this edge does not exist.
vtol_edge_sptr new_edge (vtol_vertex_2d_sptr const &v)
 Create a line edge from `this' and `other' only if this edge does not exist.
double distance_from (const vnl_double_2 &)
 Returns the squared distance from the vertex and the vector location, v.
double euclidean_distance (vtol_vertex_2d &v)
 This method returns the distance, not the squared distance, from this vertex and another vertex.
void print (vcl_ostream &strm=vcl_cout) const
 This method outputs a simple text representation of the vertex including its address in memory.
void describe (vcl_ostream &strm=vcl_cout, int blanking=0) const
 This method outputs a detailed description of the vertex including the inferiors and superiors.
virtual void compute_bounding_box () const
 compute the bounding box from the set of vertices.
virtual void copy_geometry (const vtol_vertex &other)
 copy the geometry.
virtual bool compare_geometry (const vtol_vertex &other) const
 compare the geometry.
virtual void explore_vertex (vertex_list &)
 create a list of all connected vertices.
bool operator!= (const vtol_vertex &other) const
bool operator!= (vsol_spatial_object_2d const &obj)
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 bool valid_inferior_type (vtol_topology_object const *) const
 Is `inferior' type valid for `this' ?.
bool valid_superior_type (vtol_zero_chain_sptr const &) const
bool valid_superior_type (vtol_topology_object const *sup) const
 Is `superior' type valid for `this' ?.
virtual bool is_connected (vtol_vertex_sptr const &v2) const
 Is `this' connected with `v2' ?.
bool is_endpoint (vtol_edge_sptr const &) const
 check to see if the vertex is part of the edge.
virtual vtol_topology_objectcast_to_topology_object ()
virtual const
vtol_topology_object
cast_to_topology_object () const
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_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 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.
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 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
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)
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

virtual vcl_vector
< vtol_vertex * > * 
compute_vertices ()
 Returns a list of Vertices which only contains a pointer to itself.
virtual vcl_vector< vtol_edge * > * compute_edges ()
 Returns a list of Edges which contain the vertex.
virtual vcl_vector
< vtol_zero_chain * > * 
compute_zero_chains ()
 Returns a list of ZeroChains that contain the vertex. This is the vertex superiors list.
virtual vcl_vector
< vtol_one_chain * > * 
compute_one_chains ()
 Returns a list of OneChains which contain the vertex.
virtual vcl_vector< vtol_face * > * compute_faces ()
 Returns a list of Faces which contain the vertex.
virtual vcl_vector
< vtol_two_chain * > * 
compute_two_chains ()
 Returns a list of TwoChains which contain the vertex.
virtual vcl_vector< vtol_block * > * compute_blocks ()
 Returns a list of Blocks which contain the vertex.
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

vsol_point_2d_sptr point_
vcl_list< vtol_topology_object * > superiors_
topology_list inferiors_
unsigned int tag_
int id_
unsigned long timestamp_

Static Protected Attributes

static int tagcount_

Private Member Functions

 vtol_vertex_2d (const vtol_vertex_2d &other)
 Copy constructor. Copy the point but not the links. Deprecated.

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

Definition at line 33 of file vtol_vertex_2d.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_vertex_2d::vtol_vertex_2d ( )

Default constructor.

Definition at line 18 of file vtol_vertex_2d.cxx.

vtol_vertex_2d::vtol_vertex_2d ( vsol_point_2d new_point) [explicit]

Constructor from a point (the point is copied, not stored).

Constructor from a point (the point is copied).

REQUIRE: new_point!=0

Definition at line 25 of file vtol_vertex_2d.cxx.

vtol_vertex_2d::vtol_vertex_2d ( const vnl_double_2 &  v) [explicit]

Constructor from a vector.

Definition at line 33 of file vtol_vertex_2d.cxx.

vtol_vertex_2d::vtol_vertex_2d ( double  new_x,
double  new_y 
)

Constructor from abscissa `new_x' and ordinate `new_y' of the point.

Definition at line 40 of file vtol_vertex_2d.cxx.

vtol_vertex_2d::vtol_vertex_2d ( vtol_vertex_2d_sptr const &  other) [explicit]

Pseudo copy constructor. Deep copy.

Definition at line 48 of file vtol_vertex_2d.cxx.

vtol_vertex_2d::vtol_vertex_2d ( const vtol_vertex_2d other) [private]

Copy constructor. Copy the point but not the links. Deprecated.

virtual vtol_vertex_2d::~vtol_vertex_2d ( ) [inline, virtual]

Destructor.

Definition at line 77 of file vtol_vertex_2d.h.


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_topology_object::cast_to_chain ( ) const [inline, virtual, inherited]

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

Reimplemented in vtol_chain.

Definition at line 204 of file vtol_topology_object.h.

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

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

Reimplemented in vtol_chain.

Definition at line 208 of file vtol_topology_object.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_vertex::cast_to_vertex ( ) const [inline, virtual, inherited]

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

Reimplemented from vtol_topology_object.

Definition at line 76 of file vtol_vertex.h.

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

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

Reimplemented from vtol_topology_object.

Definition at line 80 of file vtol_vertex.h.

virtual const vtol_vertex_2d* vtol_vertex_2d::cast_to_vertex_2d ( ) const [inline, virtual]

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

Reimplemented from vtol_vertex.

Definition at line 141 of file vtol_vertex_2d.h.

virtual vtol_vertex_2d* vtol_vertex_2d::cast_to_vertex_2d ( ) [inline, virtual]

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

Reimplemented from vtol_vertex.

Definition at line 145 of file vtol_vertex_2d.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.

vsol_spatial_object_2d * vtol_vertex_2d::clone ( void  ) const [virtual]

Clone `this': creation of a new object and initialization.

See Prototype pattern

Implements vsol_spatial_object_2d.

Definition at line 56 of file vtol_vertex_2d.cxx.

bool vtol_vertex_2d::compare_geometry ( const vtol_vertex other) const [virtual]

compare the geometry.

Implements vtol_vertex.

Definition at line 267 of file vtol_vertex_2d.cxx.

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

Returns a list of Blocks which contain the vertex.

Reimplemented from vtol_topology_object.

Definition at line 69 of file vtol_vertex.cxx.

void vtol_vertex_2d::compute_bounding_box ( void  ) const [virtual]

compute the bounding box from the set of vertices.

A generic method that applies to all topology_object(s)

Reimplemented from vtol_topology_object.

Definition at line 272 of file vtol_vertex_2d.cxx.

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

Returns a list of Edges which contain the vertex.

Reimplemented from vtol_topology_object.

Definition at line 45 of file vtol_vertex.cxx.

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

Returns a list of Faces which contain the vertex.

Reimplemented from vtol_topology_object.

Definition at line 57 of file vtol_vertex.cxx.

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

Returns a list of OneChains which contain the vertex.

Reimplemented from vtol_topology_object.

Definition at line 51 of file vtol_vertex.cxx.

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

Returns a list of TwoChains which contain the vertex.

Reimplemented from vtol_topology_object.

Definition at line 63 of file vtol_vertex.cxx.

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

Returns a list of Vertices which only contains a pointer to itself.

Reimplemented from vtol_topology_object.

Definition at line 32 of file vtol_vertex.cxx.

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

Returns a list of ZeroChains that contain the vertex. This is the vertex superiors list.

Reimplemented from vtol_topology_object.

Definition at line 38 of file vtol_vertex.cxx.

void vtol_vertex_2d::copy_geometry ( const vtol_vertex other) [virtual]

copy the geometry.

Implements vtol_vertex.

Definition at line 257 of file vtol_vertex_2d.cxx.

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

This method outputs a detailed description of the vertex including the inferiors and superiors.

Reimplemented from vtol_vertex.

Definition at line 131 of file vtol_vertex_2d.cxx.

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.

double vtol_vertex_2d::distance_from ( const vnl_double_2 &  v)

Returns the squared distance from the vertex and the vector location, v.

Definition at line 189 of file vtol_vertex_2d.cxx.

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.

double vtol_vertex_2d::euclidean_distance ( vtol_vertex_2d v)

This method returns the distance, not the squared distance, from this vertex and another vertex.

Definition at line 196 of file vtol_vertex_2d.cxx.

void vtol_vertex::explore_vertex ( vertex_list verts) [virtual, inherited]

create a list of all connected vertices.

Determine which other vertices share edges with this.

Add any of these which are not in the list to it, and recursively call explore_vertex on them. The method is intended to recover all of the vertices in a single topological structure which is composed of connected edges.

Definition at line 168 of file vtol_vertex.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_vertex_2d::is_a ( ) const [inline, virtual]

Return a platform independent string identifying the class.

Reimplemented from vtol_vertex.

Definition at line 85 of file vtol_vertex_2d.h.

virtual bool vtol_vertex_2d::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 from vtol_vertex.

Definition at line 88 of file vtol_vertex_2d.h.

bool vtol_vertex::is_connected ( vtol_vertex_sptr const &  v2) const [virtual, inherited]

Is `this' connected with `v2' ?.

ie has a superior of `this' `v2' as inferior ?

Definition at line 105 of file vtol_vertex.cxx.

bool vtol_vertex::is_endpoint ( vtol_edge_sptr const &  e) const [inherited]

check to see if the vertex is part of the edge.

This method returns true if edg is on the superior list of the vertex.

Definition at line 116 of file vtol_vertex.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_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_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.

vtol_edge_sptr vtol_vertex_2d::new_edge ( vtol_vertex_sptr const &  other) [virtual]

Create a line edge from `this' and `other' only if this edge does not exist.

Otherwise it just returns the existing edge REQUIRE: other!=*this

Implements vtol_vertex.

Definition at line 183 of file vtol_vertex_2d.cxx.

vtol_edge_sptr vtol_vertex_2d::new_edge ( vtol_vertex_2d_sptr const &  other)

Create a line edge from `this' and `other' only if this edge does not exist.

Otherwise it just returns the existing edge. Require: *other!=*this

Definition at line 150 of file vtol_vertex_2d.cxx.

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.

bool vtol_vertex::operator!= ( const vtol_vertex other) const [inline, inherited]

Definition at line 63 of file vtol_vertex.h.

bool vtol_vertex_2d::operator!= ( const vtol_vertex_2d other) const [inline]

Definition at line 126 of file vtol_vertex_2d.h.

vtol_vertex_2d & vtol_vertex_2d::operator= ( const vtol_vertex_2d other) [virtual]

Assignment of `this' with `other' (copy the point not the links).

Definition at line 204 of file vtol_vertex_2d.cxx.

vtol_vertex_2d & vtol_vertex_2d::operator= ( const vtol_vertex other) [virtual]

Assignment of `this' with `other' (copy the point not the links).

Reimplemented from vtol_vertex.

Definition at line 215 of file vtol_vertex_2d.cxx.

bool vtol_vertex_2d::operator== ( const vtol_vertex_2d other) const [virtual]

Is `this' has the same coordinates for its point than `other' ?.

Does `this' have the same coordinates for its point than `other' ?.

Definition at line 246 of file vtol_vertex_2d.cxx.

bool vtol_vertex_2d::operator== ( const vtol_vertex other) const [virtual]

Does `this' have the same coordinates for its point than `other' ?.

Reimplemented from vtol_vertex.

Definition at line 239 of file vtol_vertex_2d.cxx.

bool vtol_vertex_2d::operator== ( const vsol_spatial_object_2d obj) const [virtual]

spatial object equality.

Reimplemented from vtol_vertex.

Definition at line 229 of file vtol_vertex_2d.cxx.

vsol_point_2d_sptr vtol_vertex_2d::point ( ) const

Return the point.

Definition at line 67 of file vtol_vertex_2d.cxx.

void vtol_vertex_2d::print ( vcl_ostream &  strm = vcl_cout) const [virtual]

This method outputs a simple text representation of the vertex including its address in memory.

Reimplemented from vtol_vertex.

Definition at line 123 of file vtol_vertex_2d.cxx.

void vtol_vertex_2d::set_point ( vsol_point_2d_sptr const &  new_point) [virtual]

Set the point (the point is not copied).

REQUIRE: new_point!=0

Require: new_point!=0

Definition at line 75 of file vtol_vertex_2d.cxx.

void vtol_vertex_2d::set_x ( const double  new_x) [virtual]

Set the abscissa of the point with `new_x'.

Definition at line 96 of file vtol_vertex_2d.cxx.

void vtol_vertex_2d::set_y ( const double  new_y) [virtual]

Set the ordinate of the point with `new_y'.

Definition at line 108 of file vtol_vertex_2d.cxx.

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_topology_object::unlink ( void  ) [inherited]

Unlink `this' of the network.

Reimplemented in vtol_chain.

Definition at line 152 of file vtol_topology_object.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_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_vertex::valid_inferior_type ( vtol_topology_object const *  ) const [inline, virtual, inherited]

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

Implements vtol_topology_object.

Definition at line 96 of file vtol_vertex.h.

bool vtol_vertex::valid_superior_type ( vtol_zero_chain_sptr const &  ) const [inline, inherited]

Definition at line 98 of file vtol_vertex.h.

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.

double vtol_vertex_2d::x ( void  ) const [virtual]

Return the abscissa of the point.

Definition at line 82 of file vtol_vertex_2d.cxx.

double vtol_vertex_2d::y ( void  ) const [virtual]

Return the ordinate of the point.

Definition at line 89 of file vtol_vertex_2d.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

Definition at line 130 of file vtol_topology_object.h.

Definition at line 43 of file vtol_vertex_2d.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: