Classes
contrib/gel/vtol/vtol_edge.h File Reference

Represents the basic 1D topological entity. More...

#include <vcl_iosfwd.h>
#include <vcl_vector.h>
#include <vtol/vtol_topology_object.h>
#include <vtol/vtol_zero_chain.h>
#include <vtol/vtol_one_chain.h>
#include <vtol/vtol_vertex.h>

Go to the source code of this file.

Classes

class  vtol_edge
 topological edge. More...

Detailed Description

Represents the basic 1D topological entity.

The vtol_edge class is used to represent a topological edge. For convenience in working with linear edges, pointers to the two endpoint vertices are maintained. The direction of an edge is the vector from v1_ to v2_. A 1-chain is the superior of the edge in the topological hierarchy, and a 0-chain is the inferior of the edge in the topological hierarchy. In rare cases, an edge will be used to represent a ray. In this case, only v1_ will be valid and v2_ will be NULL.

    Modifications:
     JLM December 1995, Added timeStamp (Touch) to
         operations which affect bounds.
     JLM December 1995 Added method for ComputeBoundingBox
         (Need to decide proper policy for curved edges
         and possibly inconsistent linear edge geometry)
  
     Samer Abdallah - 21/06/1996
      Robotics Research Group, Oxford
      Changed the constructor vtol_edge(vtol_edge &) to vtol_edge(const vtol_edge &)
  
     JLM September 1996 - Added default curve argument to two vertex
       constructors.  This addition is necessary because it is not
       always the case that one wants to construct an ImplicitLine from
       two vertices.  The curve might be a DigitalCurve, for example.
       On the other hand in grouping or similar applications, the
       curve endpoints can be different from the topological connections.
       So, it is necessary to pass in the vertices as well as the curve.
  
     02-26-97 - Peter Vanroose - Added implementation for virtual Transform()
     May 2000, PTU - ported to vxl
     Dec. 2002,  Peter Vanroose -interface change: vtol objects -> smart pointers
      9 Jan.2003, Peter Vanroose - added pure virtual "copy_geometry()"
     27 Sep.2004, Peter Vanroose -is_endpoint() now accepts smart pointer argument
   

Definition in file vtol_edge.h.