15 #include <vlutil/vlConfig.h>
22 class DtNetworkSegmentIterator;
76 unsigned int numPoints()
const;
86 void setDirectionality(DtDirectionality directionality);
87 DtDirectionality directionality()
const;
96 std::unique_ptr<DtNetworkEdgeTraverser> createEdgeTraverser();
97 std::unique_ptr<DtNetworkEdgeTraverser> createEdgeTraverser(DtTraversalDirection traversalDirection,
98 bool respectDirectionality);
100 std::unique_ptr<const DtNetworkEdgeTraverser> createEdgeTraverser()
const;
101 std::unique_ptr<const DtNetworkEdgeTraverser> createEdgeTraverser(DtTraversalDirection traversalDirection,
102 bool respectDirectionality)
const;
106 virtual double length()
const;
110 virtual void closestPoint(
const DtPoint& pointIn,
116 virtual double distanceToPoint(
const DtPoint& point)
const;
139 double& distanceSquared,
143 double& otherY)
const;
173 double& distanceSquared,
177 double& otherY)
const;
203 virtual DtPoint endpoint0()
const;
204 virtual DtPoint endpoint1()
const;
206 virtual bool pointInEdge(
const DtPoint& point)
const;
207 virtual bool addPoint(
const DtPoint& newPoint);
208 virtual bool addPointToStart(
const DtPoint& newPoint);
211 const DtPoint& point(
int i)
const;
221 DtPointIter pointsBegin();
222 DtPointConstIter pointsBegin()
const;
224 DtPointIter pointsEnd();
225 DtPointConstIter pointsEnd()
const;
231 DtPointReverseIter rPointsBegin();
232 DtPointConstReverseIter rPointsBegin()
const;
234 DtPointReverseIter rPointsEnd();
235 DtPointConstReverseIter rPointsEnd()
const;
248 DtSegmentIter segmentsBegin();
249 DtSegmentConstIter segmentsBegin()
const;
251 DtSegmentIter segmentsEnd();
252 DtSegmentConstIter segmentsEnd()
const;
258 DtSegmentReverseIter rSegmentsBegin();
259 DtSegmentConstReverseIter rSegmentsBegin()
const;
261 DtSegmentReverseIter rSegmentsEnd();
262 DtSegmentConstReverseIter rSegmentsEnd()
const;
272 DtPointContainer& points();
273 const DtPointContainer& points()
const;
274 DtSegmentContainer& segments();
275 const DtSegmentContainer& segments()
const;
277 virtual int sizeInBytes()
const;
280 bool testInvariant()
const;
DtSegmentContainer::iterator DtSegmentIter
Definition: networkEdge.h:39
DtPointContainer myPoints
Definition: networkEdge.h:284
Definition: networkSpecificationElement.h:32
DtNetworkEdge::DtSegmentConstReverseIter DtNetworkSegmentConstReverseIter
Definition: networkEdge.h:299
std::vector< DtPoint > DtPointContainer
Definition: networkEdge.h:32
Definition: networkEdgeTraverser.h:31
DtPointContainer::const_iterator DtPointConstIter
Definition: networkEdge.h:34
Definition: networkSegment.h:26
DtNetworkSpecificationElement & operator=(const DtNetworkSpecificationElement &orig)
DtPointContainer::reverse_iterator DtPointReverseIter
Definition: networkEdge.h:35
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
DtSegmentContainer mySegments
Definition: networkEdge.h:286
DtSegmentContainer::const_reverse_iterator DtSegmentConstReverseIter
Definition: networkEdge.h:42
#define DT_DLL_gdb
Definition: gdbDefines.h:25
double myLength
Definition: networkEdge.h:292
DtNetworkEdge::DtSegmentReverseIter DtNetworkSegmentReverseIter
Definition: networkEdge.h:298
DtSegmentContainer::const_iterator DtSegmentConstIter
Definition: networkEdge.h:40
DtDirectionality
Definition: networkEdge.h:50
Definition: networkEdge.h:52
DtNetworkEdge::DtSegmentConstIter DtNetworkSegmentConstIter
Definition: networkEdge.h:297
Definition: networkNode.h:38
DtTraversalDirection
Definition: networkEdge.h:44
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
std::list< DtNetworkSegment * > DtSegmentContainer
Definition: networkEdge.h:38
DtNetworkNode * myEndNode
Definition: networkEdge.h:290
const DtPoint & point(int i) const
Definition: networkEdge.h:301
Definition: networkEdge.h:46
DtNetworkNode * myStartNode
Definition: networkEdge.h:289
DtPointContainer::const_reverse_iterator DtPointConstReverseIter
Definition: networkEdge.h:36
Definition: networkEdge.h:28
DtVectorNetwork * myVectorNetwork
Definition: networkEdge.h:282
Contains the declaration of the DtExtent class.
DtSegmentContainer::reverse_iterator DtSegmentReverseIter
Definition: networkEdge.h:41
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
virtual DtString type()=0
DtNetworkEdge::DtSegmentIter DtNetworkSegmentIter
Definition: networkEdge.h:296
DtDirectionality myDirectionality
Definition: networkEdge.h:283
DtPointContainer::iterator DtPointIter
Definition: networkEdge.h:33
Definition: vectorNetwork.h:37