xmsstamper
1.0
|
Implementaion of XmBreaklines. More...
Public Member Functions | |
virtual bool | CreateBreaklines (XmStamperIo &a_io, cs3dPtIdx &a_ptIdx, VecInt &a_blTypes) override |
Creates breaklines. More... | |
virtual const VecInt & | GetOuterPolygon () override |
Returns the outer polygon of the stamp operation. More... | |
bool | BreaklinesIntersect (const VecInt2d &a_bl, const VecPt3d &a_pts) override |
Check if any breakline segments intersect. More... | |
void | CreateOuterPolygonBreakline (cs3dPtIdx &a_ptIdx, VecInt &a_leftCsEndPts, VecInt &a_rightCsEndPts, VecInt &a_firstXsPts, VecInt &a_lastXsPts, XmStamperIo &a_io) |
creates a breakline representing the outer polygon of the stamp More... | |
void | GetEndCapEndPoints (cs3dPtIdx &a_ptIdx, VecInt &a_firstEndCapEndPts, VecInt &a_lastEndCapEndPts, XmStamperIo &a_io) |
creates a breakline representing the outer polygon of the stamp More... | |
Public Attributes | |
VecInt | m_outerPoly |
BSHP< RtreeBox > | m_rtree |
spatial index to check intersections of breaklines | |
BSHP< XmSlopedAbutmentUtil > | m_slopedAbutment |
utility class for Sloped Abutment End Caps | |
BSHP< XmGuideBankUtil > | m_guideBank |
utility class for Guidebank End Caps | |
Additional Inherited Members | |
Public Types inherited from xms::XmBreaklines | |
enum | { BL_CENTERLINE = 0, BL_XSECT, BL_SHOULDER, BL_END } |
enumeration to identify types of breaklines | |
Static Public Member Functions inherited from xms::XmBreaklines | |
static BSHP< XmBreaklines > | New () |
Creates a XmStampInterpCrossSection class. More... | |
Implementaion of XmBreaklines.
Creates breaklines for the stamp operation.
Definition at line 53 of file XmBreaklines.cpp.
|
override |
Check if any breakline segments intersect.
[in] | a_bl | Breaklines (indexes to the points) |
[in] | a_pts | The point locations created in the stamp operation |
Definition at line 277 of file XmBreaklines.cpp.
References gmLinesIntersect(), m_rtree, xms::Pt3< T >::x, and xms::Pt3< T >::y.
|
overridevirtual |
Creates breaklines.
[in,out] | a_io | XmamperIo class |
[in] | a_ptIdx | The indexes of the points in the TIN created by stamping |
[out] | a_blTypes | The type of breakline (centerline, shoulder, xsect) |
Definition at line 112 of file XmBreaklines.cpp.
References CreateOuterPolygonBreakline(), xms::cs3dPtIdx::m_centerLine, xms::XmStamperIo::m_cs, m_guideBank, xms::csPtIdx::m_left, xms::XmStamperIo::m_outBreakLines, xms::csPtIdx::m_right, m_slopedAbutment, and xms::cs3dPtIdx::m_xsPts.
void xms::XmBreaklinesImpl::CreateOuterPolygonBreakline | ( | cs3dPtIdx & | a_ptIdx, |
VecInt & | a_leftCsEndPts, | ||
VecInt & | a_rightCsEndPts, | ||
VecInt & | a_firstXsPts, | ||
VecInt & | a_lastXsPts, | ||
XmStamperIo & | a_io | ||
) |
creates a breakline representing the outer polygon of the stamp
[in] | a_ptIdx | The indexes of the points in the TIN |
[in] | a_leftCsEndPts | Left side breakline of the stamp |
[in] | a_rightCsEndPts | Right side breakline of the stamp |
[in] | a_firstXsPts | Breakline of the first cross section |
[in] | a_lastXsPts | Breakline of the last cross section |
[in,out] | a_io | StamperIo class |
Definition at line 220 of file XmBreaklines.cpp.
References GetEndCapEndPoints(), and m_outerPoly.
Referenced by CreateBreaklines().
void xms::XmBreaklinesImpl::GetEndCapEndPoints | ( | cs3dPtIdx & | a_ptIdx, |
VecInt & | a_firstEndCapEndPts, | ||
VecInt & | a_lastEndCapEndPts, | ||
XmStamperIo & | a_io | ||
) |
creates a breakline representing the outer polygon of the stamp
[in] | a_ptIdx | The indexes of the points in the TIN |
[out] | a_firstEndCapEndPts | first end cap ending points |
[out] | a_lastEndCapEndPts | last end cap ending points |
[in,out] | a_io | StamperIo class |
Definition at line 256 of file XmBreaklines.cpp.
References xms::XmStamperIo::m_firstEndCap, m_guideBank, m_slopedAbutment, and xms::XmStamperEndCap::m_type.
Referenced by CreateOuterPolygonBreakline().
|
inlineoverridevirtual |
Returns the outer polygon of the stamp operation.
Definition at line 64 of file XmBreaklines.cpp.
References m_outerPoly.
VecInt xms::XmBreaklinesImpl::m_outerPoly |
outer polygon of the stamp operation
Definition at line 78 of file XmBreaklines.cpp.
Referenced by CreateOuterPolygonBreakline(), and GetOuterPolygon().