|
| | FGrid (FTopologicalFace &InFace, FModelMesh &InShellMesh) |
| |
| virtual | ~FGrid ()=default |
| |
| void | DefineCuttingParameters () |
| |
| void | DefineCuttingParameters (EIso Iso, FCuttingGrid &Neighbors) |
| |
| bool | GeneratePointCloud () |
| |
| void | ProcessPointCloud () |
| |
| constexpr const int32 | GetCuttingCount (EIso Iso) const |
| |
| const int32 | GetTotalCuttingCount () const |
| |
| const double | GetTolerance (EIso Iso) const |
| |
| const bool | IsNodeInsideAndMeshable (int32 Index) const |
| |
| const bool | IsNodeInsideButTooCloseToLoop (int32 Index) const |
| |
| const bool | IsNodeFarFromFace (int32 Index) const |
| |
| const bool | IsNodeOutsideFace (int32 Index) const |
| |
| const bool | IsNodeInsideAndCloseToLoop (int32 Index) const |
| |
| const bool | IsNodeOusideFaceButClose (int32 Index) const |
| |
| void | SetNodeInside (int32 Index) |
| |
| const int32 | InnerNodesCount () const |
| |
| const bool | IsNodeCloseToLoop (int32 Index) const |
| |
| const bool | IsNodeTooCloseToLoop (int32 Index) const |
| |
| void | SetCloseToLoop (int32 Index) |
| |
| void | SetTooCloseToLoop (int32 Index) |
| |
| void | ResetInsideLoop (int32 Index) |
| |
| void | SetInner2DPoint (EGridSpace Space, int32 Index, const FVector2d &NewCoordinate) |
| |
| const FVector3f & | GetPointNormal (int32 IndexU, int32 IndexV) const |
| |
| const FVector3f & | GetPointNormal (int32 Index) const |
| |
| const TArray< double > & | GetCuttingCoordinatesAlongIso (EIso Iso) const |
| |
| const FCoordinateGrid & | GetCuttingCoordinates () const |
| |
| TArray< FVector3f > & | GetNormals () |
| |
| const TArray< TArray< int32 > > & | GetNodeIdsOfFaceLoops () const |
| |
| const FVector2d & | GetLoop2DPoint (EGridSpace Space, int32 LoopIndex, int32 Index) const |
| |
| void | SetLoop2DPoint (EGridSpace Space, int32 LoopIndex, int32 Index, const FVector2d &NewCoordinate) |
| |
| const FVector & | GetLoop3DPoint (int32 LoopIndex, int32 Index) const |
| |
| const int32 | GetLoopCount () const |
| |
| const TArray< TArray< FVector2d > > & | GetLoops2D (EGridSpace Space) const |
| |
| TArray< TArray< FVector > > & | GetLoops3D () |
| |
| const TArray< TArray< FVector > > & | GetLoops3D () const |
| |
| const TArray< TArray< FVector3f > > & | GetLoopNormals () const |
| |
| void | UVIndexFromGlobalIndex (int32 GLobalIndex, int32 &OutIndexU, int32 &OutIndexV) const |
| |
| double | GetMinElementSize () const |
| |
| | FGridBase (FTopologicalFace &InFace) |
| |
| virtual | ~FGridBase () |
| |
| void | TransformPoints (EGridSpace DestinationSpace, const TArray< FVector2d > &InPointsToScale, TArray< FVector2d > &OutScaledPoints) const |
| |
| bool | ScaleGrid () |
| |
| double | GetTolerance () const |
| |
| const FVector2d & | GetInner2DPoint (EGridSpace Space, int32 Index) const |
| |
| const FVector2d & | GetInner2DPoint (EGridSpace Space, int32 IndexU, int32 IndexV) const |
| |
| const FVector & | GetInner3DPoint (int32 Index) const |
| |
| constexpr const TArray< double > & | GetUniformCuttingCoordinatesAlongIso (EIso Iso) const |
| |
| const FCoordinateGrid & | GetUniformCuttingCoordinates () const |
| |
| TArray< FVector > & | GetInner3DPoints () |
| |
| const TArray< FVector > & | GetInner3DPoints () const |
| |
| const TArray< FVector2d > & | GetInner2DPoints (EGridSpace Space) const |
| |
| const FTopologicalFace & | GetFace () const |
| |
| FTopologicalFace & | GetFace () |
| |
| int32 | GobalIndex (int32 IndexU, int32 IndexV) const |
| |
| | FHaveStates () |
| |
| void | Serialize (FCADKernelArchive &Ar) |
| |
| void | ResetElementStatus () |
| |
| bool | HasMarker1 () const |
| |
| bool | HasMarker2 () const |
| |
| bool | HasMarker1And2 () const |
| |
| bool | HasMarker1Or2 () const |
| |
| void | SetMarker1 () const |
| |
| void | SetMarker2 () const |
| |
| void | ResetMarker1 () const |
| |
| void | ResetMarker2 () const |
| |
| void | ResetMarkers () const |
| |
| bool | IsDeleted () const |
| |
| void | SetDeletedMarker () const |
| |
| void | ResetDeleted () const |
| |
| virtual bool | IsDeletedOrDegenerated () const |
| |
| virtual bool | IsDegenerated () const |
| |
| virtual void | SetAsDegenerated () const |
| |
| virtual void | ResetDegenerated () const |
| |
| void | SetWaitingMarker () const |
| |
| void | ResetWaitingMarker () const |
| |
| virtual bool | IsWaiting () const |
| |
| void | SetProcessedMarker () const |
| |
| void | ResetProcessedMarker () const |
| |
| virtual bool | IsProcessed () const |
| |
| virtual bool | IsProcessedDeletedOrDegenerated () const |
| |
| void | SetToProcessMarker () const |
| |
| void | ResetToProcessMarker () const |
| |
| virtual bool | IsToProcess () const |
| |
| virtual bool | IsNotToProcess () const |
| |
| virtual bool | IsNotToOrAlreadyProcess () const |
| |
| void UE::CADKernel::FGrid::FindPointsCloseToLoop |
( |
| ) |
|
|
protected |
Define if an inner node is close to a loop i.e. if the loop cross the cell [[IndexU - 1, IndexU], [IndexV - 1, IndexV]], each corner node of the cell is close to the loop
This algorithm is inspired of Bresenham's line algorithm The loop is traversed segment by segment For each segment, according to the slop of the segment, each cell intersecting the segment is selected (FindIntersectionsCaseSlope_) i.e. each corner node of the cell is flagged IsCloseToLoop (SetCellCloseToLoop)
- See also
- SlopeUtils
-
IsNodeCloseToLoop
-
ProcessPointCloud (called in ProcessPointClound)