Navigation
API > API/Runtime > API/Runtime/CADKernel > API/Runtime/CADKernel/Topo
Inheritance Hierarchy
- FHaveStates
- FEntity
- FTopologicalEntity
- FTopologicalLoop
References
| Module | CADKernel |
| Header | /Engine/Source/Runtime/Datasmith/CADKernel/Base/Public/Topo/TopologicalLoop.h |
| Include | #include "Topo/TopologicalLoop.h" |
Syntax
class FTopologicalLoop : public UE::CADKernel::FTopologicalEntity
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bIsExternal | ||
| FSurfacicBoundary | Boundary | ||
| TArray< FOrientedEdge > | Edges | ||
| FTopologicalFace * | Face |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FTopologicalLoop
(
const TArray< TSharedPtr< FTopologicalEdge > >& Edges, |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| void | |||
| void | ComputeBoundaryProperties
(
const TArray< int32 >& StartSideIndex, |
||
| void | |||
| const int32 | EdgeCount () |
||
| void | EnsureLogicalClosing
(
const double GeometricTolerance |
||
| void | FindBreaks
(
TArray< TSharedPtr< FTopologicalVertex > >& Ruptures, |
||
| void | FindSurfaceCorners
(
TArray< TSharedPtr< FTopologicalVertex > >& OutCorners, |
||
| void | Get2DSampling
(
TArray< FPoint2D >& LoopSampling |
||
| bool | Get2DSamplingWithoutDegeneratedEdges
(
TArray< FPoint2D >& LoopSampling |
The idea is to remove degenerated edges of the loop i.e. where the surface is degenerated | |
| void | GetActiveEdges
(
TArray< TSharedPtr< FTopologicalEdge > >& OutEdges |
Add active Edge that has not marker 1 in the edge array. Marker 1 has to be reset at the end. | |
| EOrientation | GetDirection
(
TSharedPtr< FTopologicalEdge >& Edge, |
||
| EOrientation | GetDirection
(
int32 Index |
||
| const TSharedPtr< FTopologicalEdge > & | |||
| int32 | GetEdgeIndex
(
const FTopologicalEdge& Edge |
||
| TArray< FOrientedEdge > & | GetEdges () |
||
| const TArray< FOrientedEdge > & | GetEdges () |
||
| FTopologicalFace * | GetFace () |
||
| const FOrientedEdge * | GetOrientedEdge
(
const FTopologicalEdge* InEdge |
||
| bool | IsExternal () |
||
| bool | IsInside
(
const FTopologicalLoop& Other |
||
| double | Length () |
||
| TSharedPtr< FTopologicalLoop > | Make
(
const TArray< TSharedPtr< FTopologicalEdge > >& EdgeList, |
||
| bool | Orient () |
To check loop orientation, we check the orientation of the extremity points i.e. "o" points below o | |
| void | |||
| void | RemoveEdge
(
TSharedPtr< FTopologicalEdge >& Edge |
||
| void | ReplaceEdge
(
TSharedPtr< FTopologicalEdge >& OldEdge, |
||
| void | ReplaceEdge
(
TSharedPtr< FTopologicalEdge >& Edge, |
||
| void | ReplaceEdges
(
TArray< FOrientedEdge >& Candidates, |
||
| void | SetExternal () |
||
| void | SetInternal () |
||
| void | SplitEdge
(
FTopologicalEdge& Edge, |
The Edge is split in two edges : Edge + NewEdge | |
| void |
Overridden from FEntity
| Type | Name | Description | |
|---|---|---|---|
| void | Empty () |
||
| EEntity | |||
| void | |||
| void | Serialize
(
FCADKernelArchive& Ar |
Serialization of a FEntity. | |
| void | SpawnIdent
(
FDatabase& Database |