|
| void | initSlicerAndFaceIndex (const Body *pBody, FaceSpatialIndex< TSpatialFaceData > &faceSpatialIndex, double eps=OdGeTol().equalVector()) |
| |
| void | slice (const OdGePlane &cutPlane, const FaceSpatialIndex< TSpatialFaceData > &faceSpatial, Profile2D *pResultIncludingBoundary, Profile2D *pResultExcludingCoincidingBoundary=0, Profile2D *pResultExcludingOppositeBoundary=0, Profile2D *pResultExcludingBoundary=0, FaceConstPtrArray *pCoincidingFaces=0, FaceConstPtrArray *pOppositeFaces=0, bool bUseReverseEdgeAtMerge=false, OdArray< const Edge * > *sourceEdges=0) |
| |
| | SlicerBaseImpl () |
| |
| void | collect_segments (const Face *pFace) |
| |
| void | reserveBuffers (size_t nFaces) |
| |
| const OdGeTol & | tolerance () const |
| |
| void | setTolerance (const OdGeTol &tol) |
| |
| void | set_cut_plane (const OdGePlane &cutPlane) |
| |
| void | build_results (Profile2D *pResInclBndry, Profile2D *pResExclCoBndry, Profile2D *pResExclOpBndry, Profile2D *pResExclBndry, FaceConstPtrArray *pCoincidingFaces, FaceConstPtrArray *pOppositeFaces, bool bUseReverseEdgeAtMerge, OdArray< const Edge * > *sourceEdges=0) |
| |
| void | AddEdgeToGraph (const OdGePoint3d &ptStart, const OdGePoint3d &ptEnd, const Edge *tag=0) |
| |
| OdUInt32 | EdgesCount () const |
| |
| OdUInt32 | NodesCount () const |
| |
| OdUInt32 | GetEdgeStartNodeIdx (OdUInt32 aEdgeIdx) const |
| |
| OdUInt32 | GetEdgeEndNodeIdx (OdUInt32 aEdgeIdx) const |
| |
| bool | IsEdgeProcessed (OdUInt32 aEdgeIdx) const |
| |
| void | SetEdgeProcessed (OdUInt32 aEdgeIdx) |
| |
| void | ResetEdgeProcessed (OdUInt32 aEdgeIdx) |
| |
| const SliceNode & | GetEdgeStartNode (OdUInt32 aEdgeIdx) const |
| |
| const SliceNode & | GetEdgeEndNode (OdUInt32 aEdgeIdx) const |
| |
| SliceNode & | GetEdgeStartNode (OdUInt32 aEdgeIdx) |
| |
| SliceNode & | GetEdgeEndNode (OdUInt32 aEdgeIdx) |
| |
| const OdGePoint3d & | GetEdgeStartPoint (OdUInt32 aEdgeIdx) const |
| |
| const OdGePoint3d & | GetEdgeEndPoint (OdUInt32 aEdgeIdx) const |
| |
| const SliceNode & | GetNode (OdUInt32 aNodeIdx) const |
| |
| SliceNode & | GetNode (OdUInt32 aNodeIdx) |
| |
| const SliceEdge & | GetEdge (OdUInt32 aEdgeIdx) const |
| |
| SliceEdge & | GetEdge (OdUInt32 aEdgeIdx) |
| |
| const OdGePoint3d & | GetNodePosition (OdUInt32 aNodeIdx) const |
| |
| bool | IsEdgesConcatenated (OdUInt32 iPreviousEdge, OdUInt32 iNextEdge) const |
| |
| void | AddEdge (const OdGeLineSeg3d &lSeg, const OdGePlane &pSegPlane, const OdGePlane &pCutPlane) |
| |
| void | AddEdge (const OdGePoint3d &ptSProjected, const OdGePoint3d &ptEProjected, const OdGePoint3d &ptSOriginal, const OdGePoint3d &ptEOriginal, const OdGePlane &pSegPlane, const OdGePlane &pCutPlane) |
| |
| void | AddEdge (const OdGePoint3d &ptS, const OdGePoint3d &ptE, const OdGePlane &pSegPlane, const OdGePlane &pCutPlane, const Edge *tag=0, const OdGeTol tol=FMGeGbl::gTol) |
| |
| OdUInt32 | AddNode (const OdGePoint3d &pt, const OdGeTol tol=FMGeGbl::gTol) |
| |
| void | BuildLinks () |
| |
| void | RemoveCrossLinks () |
| |
| void | RemoveOppositeEdges () |
| |
| void | MergeDuplicatedEdges (bool bUseReverseEdgeAtMerge) |
| |
| void | ResetEdgesProcessedFlag () |
| |
| void | Clear () |
| |
| void | ReserveBuffers (size_t nFaces) |
| |
|
| enum | IntersResult { kParallelPlanes
, kIntersectingPlanes
, kCoincidingPlanes
} |
| |
| enum | VertexHalfPlaneSign { ePositive
, eNegative
, eOnIntersectionLine
} |
| |
| typedef OdArray< Intersection, OdMemoryAllocator< Intersection > > | IntersectionArray |
| |
| typedef cycled_list< VertexInPlanePosition > | VtxInPlanePosCycledList |
| |
| void | ClearFaceIntersectionsData () |
| |
| const OdGePlane & | current_face_plane () const |
| |
| const OdGePlane & | cut_plane () const |
| |
| IntersResult | IntersectCutPlaneToCurrentFacePlane (double tol) |
| |
| IntersResult | IntersectCutPlaneToFacePlane (const Face *f) const |
| |
| void | MergeSegmentsAndAddToEdgeGraph () |
| |
| void | initPointExtraction () |
| |
| bool | extractSegment (const OdGePoint3d *&pStart, const OdGePoint3d *&pEnd, bool &bInside) |
| |
| void | ExtractSegmentsByIntersections () |
| |
| SlicerBaseImpl::Intersection * | FindNextDifferentIntersection (SlicerBaseImpl::Intersection *pIntBase) |
| |
| SlicerBaseImpl::Intersection * | FindIntersectionEnterInside () |
| |
| bool | IntersectionsCoincident (const SlicerBaseImpl::Intersection *pInt1, const SlicerBaseImpl::Intersection *pInt2) |
| |
| void | exclude_faces (Profile2D &excludedProfile, FaceConstPtrArray &excludeFaces, OdArray< const Edge * > *pSourceEdges=NULL) |
| |
| void | exclude_opposite_faces (Profile2D &excludedProfile, FaceConstPtrArray &excludeFaces, OdArray< const Edge * > *pSourceEdges=NULL) |
| |
| void | FindIntersectionSegmentsWithCutPlane () |
| |
| void | ClassifyLoopVertices (Edge *pFirstLoopEdge) |
| |
| SlicerBaseImpl::VertexHalfPlaneSign | ClassifyPointAboutIntersectionLine (const OdGePoint3d &ptToClassify) |
| |
| void | CollectSegmentsOnIntersectionLine () |
| |
| void | CollectIntersections () |
| |
| void | MergePairedIntersections () |
| |
| bool | ExtractSegmentFromVertex (VtxInPlanePosCycledList::iterator &itBase) |
| |
| VtxInPlanePosCycledList::iterator | FindOnSegmentStartVertex (VtxInPlanePosCycledList::iterator &itBase) |
| |
| VtxInPlanePosCycledList::iterator | FindOnSegmentEndVertex (VtxInPlanePosCycledList::iterator &itBase) |
| |
| bool | VertexOnIntersectionLine (const VtxInPlanePosCycledList::iterator &itVtx) const |
| |
| const OdGePoint3d & | VertexPoint (const VtxInPlanePosCycledList::iterator &itVtx) const |
| |
| bool | IsIntersectionOnVertex (VtxInPlanePosCycledList::iterator &itVtx) |
| |
| bool | IsIntersectionOnEdge (VtxInPlanePosCycledList::iterator &itVtx) |
| |
| void | AddIntersectionFromVertex (const VertexInPlanePosition &vtxData) |
| |
| void | AddIntersectionFromEdge (const VertexInPlanePosition &vtxData) |
| |
| void | AddIntersection (const OdGePoint3d &ptIntersection, const Edge *pEdge, int bOnIntersectionSeg=0) |
| |
| void | CollectEdgeForEdgeGraph (const OdGePoint3d &ptStart, const OdGePoint3d &ptEnd, const Edge *tag=0) |
| |
| void | AddFaceEdgesAsSegmentsToEdgeGraph () |
| |
| void | ReserveBuffersIfEmpty () |
| |
| bool | LeaveOrder (const OdGePoint3d &ptS, const OdGePoint3d &ptE, const OdGeVector3d &vFaceNormal, const OdGeVector3d &vCutNormal) |
| |
| const Face * | m_pCurrentFace |
| |
| const OdGePlane * | m_pCutPlane |
| |
| OdGeVector3d | m_cutPlane_normal |
| |
| OdGeTol | m_tol |
| |
| OdGeLine3d | m_intersectionLine |
| |
| FaceConstPtrArray | m_coinciding |
| |
| FaceConstPtrArray | m_opposite |
| |
| VtxInPlanePosCycledList | m_classifiedVertices |
| |
| IntersectionArray | m_intersections |
| |
| OdGeLineSeg3d | m_edgeSeg |
| |
| SegmentMerger | m_segmentsMerger |
| |
| Intersection * | m_pCurIntPt |
| |
| Intersection * | m_pEndIntPt |
| |
| Intersection * | m_pCur |
| |
| double | m_eq |
| |
| OdArray< SliceEdge, OdMemoryAllocator< SliceEdge > > | aEdges |
| |
| OdArray< SliceNode > | aNodes |
| |
template<class TSpatialFaceData = SpatialFaceData>
class FacetModeler::Slicer< TSpatialFaceData >
Definition at line 187 of file FMSliceEngine.h.