Itasca C++ Interface
ihalfedge.h
1 #pragma once
8 namespace itasca {
9  class IThing;
10 }
11 
12 namespace itascaxd {
13  using namespace itasca;
14 
15  class IHalfVertex;
16  class IHalfFacet;
17 
23  class IHalfEdge {
24  public:
26  inline static const TType type_ = 0x4c906744;
27 
29  virtual IThing * getIThing()=0;
31  virtual const IThing * getIThing() const=0;
32 
34  virtual IHalfVertex * getOrigin()=0;
36  virtual const IHalfVertex * getOrigin() const=0;
38  virtual IHalfVertex * getEnd()=0;
40  virtual const IHalfVertex * getEnd() const=0;
41 
43  virtual IHalfFacet * getPair()=0;
45  virtual const IHalfFacet * getPair() const=0;
46 
47  };
48 }// namespace pfc
49 // EoF
50 
Base class for items that will be stored in containers.
Definition: ithing.h:30
Interface for an edge used in the faceted wall logic. This is the interface for an edge used in the f...
Definition: ihalfedge.h:23
virtual IHalfVertex * getEnd()=0
Return the IHalfVertex corresponding with the end of the edge.
virtual IThing * getIThing()=0
Return an IThing interface for this object.
virtual IHalfVertex * getOrigin()=0
Return the IHalfVertex corresponding with the edge origin.
virtual IHalfFacet * getPair()=0
Return a pointer to the IHalfFacet that shares this edge.
virtual const IHalfFacet * getPair() const =0
Return a pointer to the IHalfFacet that shares this edge.
virtual const IHalfVertex * getOrigin() const =0
Return the const IHalfVertex corresponding with the edge origin.
virtual const IThing * getIThing() const =0
Return a const IThing interface for this object.
virtual const IHalfVertex * getEnd() const =0
Return the const IHalfVertex corresponding with the end of the edge.
Interface for a facet used in the faceted wall logic. This is the interface for a triangular facet as...
Definition: ihalffacet.h:37
Interface for a vertex used in the faceted wall logic. This is the interface for a vertex used in the...
Definition: ihalfvertex.h:27
uint32 TType
class type indicator
Definition: basedef.h:46
namespace Itasca
Definition: basememory.cpp:10
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4