className: FModelMesh

description: No constructors are accessible with public or protected access.

code: class FModelMesh : public [UE::CADKernel::FEntityGeom](API\Runtime\CADKernel\CADKernel\Core\FEntityGeom)


className: FReserveContainerFunc

module: CADKernel

code: typedef [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< void(int32)> FReserveContainerFunc


description: Use Marker 3 flag to count edge once Edge Marker 3 has to be reset after.

code: void GetEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & OutSideAEdges, [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & OutSideBEdges ) const


code: const [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) & GetFirstSide() const


code: double GetMaxSideLength() const


code: const [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) & GetSecondSide() const


code: const [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) & GetSide ( [ESide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\UE__CADKernel__ESide) Side ) const


code: [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) & GetSide ( [ESide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\UE__CADKernel__ESide) Side )


description: Use Marker 1 and 2 flags they have to be reset after.

code: void CheckEdgesZoneSide()


code: void SetCategory ( [EThinZone2DType](API\Runtime\CADKernel\CADKernel\Mesh\Structure\UE__CADKernel__EThinZone2DType) InType )


description: For each edge of the zone, set Marker1 flag if edge is in first zone, and Marker2 if edge is in second zone

code: void SetEdgesZoneSide()


code: static void SetPeakEdgesMarker ( const [TArray](API\Runtime\Core\Containers\TArray)< const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & )


description: FThinZone2D::FThinZoneSides are maded with a copy of TArrayinto TArrayto break the link with TFactoryof FThinZone2DFinder SoFThinZone2Dcan be transfered into theFTopologicalFace

code: FThinZone2D ( const [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) * > & InFirstSideSegments, const [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) * > & InSecondSideSegments )


code: class FThinZone2D : public [UE::CADKernel::FHaveStates](API\Runtime\CADKernel\CADKernel\Core\FHaveStates)


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & GetEdges() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & GetEdges()


description: Use Marker1 flag to selected edges once Edge Marker1 has to be reset after.

code: void GetEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & OutEdges ) const


code: void GetExistingMeshNodes ( const [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) & Face, [FModelMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FModelMesh) & MeshModel, [FReserveContainerFunc](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FReserveContainerFunc) & Reserve, [FAddMeshNodeFunc](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FAddMeshNodeFunc) & AddMeshNode, const bool bWithTolerance ) const


code: const [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) & GetFirst() const


code: const [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) & GetLast() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) > & GetSegments() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) > & GetSegments()


code: void SetEdgesZoneSide ( [ESide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\UE__CADKernel__ESide) Side )


code: FThinZoneSide ( [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) * InFrontSide, const [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeSegment](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeSegment) * > & InSegments )


className: FThinZoneSide

code: class FThinZoneSide : public [UE::CADKernel::FHaveStates](API\Runtime\CADKernel\CADKernel\Core\FHaveStates)


code: FVertexMesh ( [FModelMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FModelMesh) & Model, [FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity) & TopologicalEntity )


className: FVertexMesh

code: class FVertexMesh : public [UE::CADKernel::FMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FMesh)


description: this will eventually be reconciled with what the Geometry team is using.

code: namespace UE { namespace CADKernel { enum EThinZone2DType { Undefined = 0, Global, PeakStart, PeakEnd, Butterfly, BetweenLoops, TooSmall, } } }


code: namespace UE { namespace CADKernel { enum ESide { First = 0, Second, None, } } }


description: 3 parametric spaces are defined : -EGridSpaceDefault2Dthe natural parametric space of the carrier surface i.e. for a Bezier surface the boundary of the space is [[0, 1], [0, 1]] and for a spherical surface [[0, 2Pi], [-Pi / 2, Pi / 2]] -EGridSpace::UniformScaled.The average curvilinear length of the iso curves is calculated in each axis.The parametric space is then scaled in each axis such that the average curvilinear length between two points P(A, V) and P(B, V) = B - A.For a spherical surface [[0, 2Pi.R / 2], [-Pi.R / 2, Pi.R / 2]] with R the radius of the sphere -EGridSpace::Scaled.The UnifomeScaled space is rescaled in its most disturbe axis e.g. if V is the most disturbe axis, whatever V, length of[P(A, V), P(B, V)] = (B - A). This parametric space is closed to a good flattening of the surface.

code: namespace UE { namespace CADKernel { enum EGridSpace { Default2D = 0, Scaled = 1, UniformScaled = 2, EndGridSpace, } } }


code: namespace UE { namespace CADKernel { enum ECoordinateType { VertexCoordinate, ImposedCoordinate, IsoUCoordinate, IsoVCoordinate, IsoUVCoordinate, OtherCoordinate, } } }


code: namespace UE { namespace CADKernel { enum EMeshingState { NotMeshed = 0, PartiallyMeshed, FullyMeshed, } } }


code: namespace UE { namespace CADKernel { namespace GridSpace { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::GridSpace::ToString ( [EGridSpace](API\Runtime\CADKernel\CADKernel\Mesh\UE__CADKernel__EGridSpace) Space ) } } }


className: FAddCuttingPointFunc

code: typedef [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< void(const double, const [ECoordinateType](API\Runtime\CADKernel\CADKernel\Mesh\UE__CADKernel__ECoordinateType), const [FPairOfIndex](API\Runtime\CADKernel\CADKernel\Core\FPairOfIndex), const double)> FAddCuttingPointFunc


description: BBox Length is the sum of the length of the 3 sides

code: double Length()


code: void Update ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & Point, const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) InPoint2D )


code: void Update ( const [FPolylineBBox](API\Runtime\CADKernel\CADKernel\Geo\Sampling\FPolylineBBox) & PolylineBBox, const [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) IsoType, double IsoCoordinate )


code: void UpdateNormal ( const [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) & Face )


description: Return false if the process failed

code: bool CheckOrientation ( bool bHasWrongOrientation )


className: FBBoxWithNormal

code: struct FBBoxWithNormal

Max

type: FPoint


code: virtual void CompleteMetaData()


code: virtual int32 FaceCount() const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: virtual void GetFaces ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > & Faces )


code: void AddShell ( [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FShell](API\Runtime\CADKernel\CADKernel\Topo\FShell) > Shell )


code: const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FShell](API\Runtime\CADKernel\CADKernel\Topo\FShell) > > & GetShells() const


description: Each face of model is set by its orientation. This allow to make oriented mesh and to keep the face orientation in topological function. Marker2 of propagate face is set. It must be reset after the process

code: virtual void PropagateBodyOrientation()


code: virtual void Remove ( const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * ShellToRemove )


code: virtual void ResetMarkersRecursively() const


description: Serialization of aFEntity. Each class derived fromFEntityhas to override this method (and call the direct base class override method first) E.g. class FEntityXXX : public FEntityXX { virtual voidSerialize(FCADKernelArchive& Ar)override { FEntityXX::Serialize(Ar); ... } }

code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


className: FBody

code: class FBody : public [UE::CADKernel::FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity)


code: constexpr [TArray](API\Runtime\Core\Containers\TArray)< [FCuttingPoint](API\Runtime\CADKernel\CADKernel\Topo\FCuttingPoint) > & operator[] ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso )


code: constexpr const [TArray](API\Runtime\Core\Containers\TArray)< [FCuttingPoint](API\Runtime\CADKernel\CADKernel\Topo\FCuttingPoint) > & operator[] ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


className: FCuttingGrid

code: struct FCuttingGrid

Coordinates

type: TArray<FCuttin...


code: FCuttingPoint ( double InCoordinate, [ECoordinateType](API\Runtime\CADKernel\CADKernel\Mesh\UE__CADKernel__ECoordinateType) InType )


code: FCuttingPoint ( double InCoordinate, [ECoordinateType](API\Runtime\CADKernel\CADKernel\Mesh\UE__CADKernel__ECoordinateType) InType, [FPairOfIndex](API\Runtime\CADKernel\CADKernel\Core\FPairOfIndex) InOppositNodeIndices, double DeltaU )


code: FCuttingPoint ( double InCoordinate, [ECoordinateType](API\Runtime\CADKernel\CADKernel\Mesh\UE__CADKernel__ECoordinateType) InType, int32 InOppositeNodeId, double DeltaU )


description: Finalize has not been done on each Property.

code: void Add ( [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) & Property )


className: FCuttingPoint

description: Cutting point used for meshing purpose

code: struct FCuttingPoint

Coordinate

type: double

description: Coordinate of the edge's mesh nodes

OppositNodeIndices

type: FPairOfIndex

Type

type: ECoordinateType


code: void Add ( double InSlope, double InLength )


description: Finalize has been done on each Property.

code: void Add2 ( [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) & Property )


code: struct FEdge2DProperties

bIsMesh

type: bool

IsoType

type: EIso


code: void SetMainBody ( [TMap](API\Runtime\Core\Containers\TMap)< [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) *, int32 > & BodyToFaceCount )


code: void SetMainColor ( [TMap](API\Runtime\Core\Containers\TMap)< uint32, int32 > & ColorToFaceCount )


code: void SetMainMaterial ( [TMap](API\Runtime\Core\Containers\TMap)< uint32, int32 > & MaterialToFaceCount )


code: void SetMainName ( [TMap](API\Runtime\Core\Containers\TMap)< [FString](API\Runtime\Core\Containers\FString), int32 > & NameToFaceCount )


code: void SetMainShell ( [TMap](API\Runtime\Core\Containers\TMap)< [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) *, int32 > & ShellToFaceCount )


className: FFaceSubset

code: struct FFaceSubset

Faces

type: TArray<FTopolo...

MainBody

type: FTopologicalSha...

MainName

type: FString


code: FImposedCuttingPoint ( const double InCoordinate, const int32 NodeIndex1, const double InDeltaU )


className: FImposedCuttingPoint

description: Cutting point used for thin zone purpose

code: struct FImposedCuttingPoint

Coordinate

type: const double

description: Coordinate of the edge's mesh nodes

OppositNodeIndex

type: const int32


code: void Add ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FBody](API\Runtime\CADKernel\CADKernel\Topo\FBody) > & InBody )


code: void AddEntity ( [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity) > InEntity )


code: void Append ( [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FBody](API\Runtime\CADKernel\CADKernel\Topo\FBody) >> & InNewBody )


description: Check topology of each body

code: void CheckTopology()


code: virtual void CompleteMetaData()


description: Copy the body and face arrays of other model

code: void Copy ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FModel](API\Runtime\CADKernel\CADKernel\Topo\FModel) > & OtherModel )


code: bool Contains ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity) > InEntity )


code: void Copy ( const [FModel](API\Runtime\CADKernel\CADKernel\Topo\FModel) & OtherModel )


code: virtual int32 FaceCount() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FBody](API\Runtime\CADKernel\CADKernel\Topo\FBody) > > & GetBodies() const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: virtual void GetFaces ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > & OutFaces )


description: Copy the body and face arrays of other model Empty other model arrays

code: void Merge ( [FModel](API\Runtime\CADKernel\CADKernel\Topo\FModel) & OtherModel )


code: virtual void PropagateBodyOrientation()


code: virtual void Remove ( const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * InBody )


code: virtual void ResetMarkersRecursively() const


code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


className: FModel

code: class FModel : public [UE::CADKernel::FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity)

Bodies

type: TArray<TShared...


code: bool operator== ( const [FOrientedEdge](API\Runtime\CADKernel\CADKernel\Topo\FOrientedEdge) & Edge ) const


code: FOrientedEdge ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & InEntity, [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) InDirection )


code: FOrientedFace ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) > & InEntity, [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) InOrientation )


code: void Add ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > & Faces )


className: FOrientedFace

code: class FOrientedFace : public [UE::CADKernel::TOrientedEntity< FTopologicalFace >](API\Runtime\CADKernel\CADKernel\Core\TOrientedEntity)


code: void Add ( [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) > InTopologicalFace, [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) InOrientation )


code: void CheckTopology ( [TArray](API\Runtime\Core\Containers\TArray)< [FFaceSubset](API\Runtime\CADKernel\CADKernel\Topo\FFaceSubset) > & Subshells )


code: virtual void CompleteMetaData()


className: FOrientedEdge

code: class FOrientedEdge : public [UE::CADKernel::TOrientedEntity< FTopologicalEdge >](API\Runtime\CADKernel\CADKernel\Core\TOrientedEntity)


code: virtual int32 FaceCount() const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedFace](API\Runtime\CADKernel\CADKernel\Topo\FOrientedFace) > & GetFaces() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedFace](API\Runtime\CADKernel\CADKernel\Topo\FOrientedFace) > & GetFaces()


code: virtual void GetFaces ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > & OutFaces )


description: true if the shell has at least one border edge

code: bool IsOpenShell()


code: virtual void Merge ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FShell](API\Runtime\CADKernel\CADKernel\Topo\FShell) > & Shell )


description: Orient each connected sub-shell: each connected face will have the same orientation Each connected subset of faces will be oriented:

code: int32 Orient()


code: virtual void PropagateBodyOrientation()


code: virtual void Remove ( const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * )


code: void RemoveDeletedOrDegeneratedFaces()


code: void ReplaceFaces ( [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedFace](API\Runtime\CADKernel\CADKernel\Topo\FOrientedFace) > & NewFaces )


code: virtual void ResetMarkersRecursively() const


code: void UnlinkFromOther ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) * > & OutVerticesToLink )


description: Update eachFOrientedFace::Directionaccording toFOrientedFace::Entity->IsBackOriented() flag

code: virtual void UpdateShellOrientation()


className: FShell

description: No constructors are accessible with public or protected access.

code: class FShell : public [UE::CADKernel::FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity)


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: void AddThinZone ( [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) * InThinZoneSide, const [FLinearBoundary](API\Runtime\CADKernel\CADKernel\Math\FLinearBoundary) & InThinZoneBounds )


code: void AddImposedCuttingPointU ( const double ImposedCuttingPointU, const int32 OppositeNodeIndex, const double DeltaU )


code: void AddTwinsCuttingPoint ( const double Coord, const double DeltaU )


description: Approximation of 2D point defined by its coordinate compute with carrier surface 2D polyline

code: [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) Approximate2DPoint ( const double InCoordinate ) const


description: Approximation of 3D points compute with carrier surface 3D polyline

code: void ApproximatePoints ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InCoordinates, [TArray](API\Runtime\Core\Containers\TArray)< [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) > & OutPoints ) const


description: Approximation of 2D points defined by its coordinates compute with carrier surface 2D polyline

code: void Approximate2DPoints ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InCoordinates, [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) > & OutPoints ) const


description: Approximation of surfacic polyline (points 2d, 3d, normals, tangents) defined by its coordinates compute with carrier surface polyline

code: void ApproximatePolyline ( [FSurfacicPolyline](API\Runtime\CADKernel\CADKernel\Geo\Sampling\FSurfacicPolyline) & Polyline ) const


description: Checks if the carrier curve is degenerated i.e. the 2d length of the curve is nearly zero If the 3d length is nearly zero, the edge is flag as degenerated

code: bool CheckIfDegenerated() const


description: Generate a sampling of the curve. This sampling is used by apply meshing criteria function to defined the optimal mesh of the edge. This sampling is saved in CrossingPointUsTArray.

code: void ComputeCrossingPointCoordinates()


description: Compute the edge 2D properties i.e. the mean and standard deviation of the slop of the edge in the parametric space of the carrier surface

code: void ComputeEdge2DProperties ( [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) & SlopeCharacteristics )


code: void ComputeIntersectionsWithIsos ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InIsoCoordinates, const [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) InTypeIso, const [FSurfacicTolerance](API\Runtime\CADKernel\CADKernel\Math\FSurfacicTolerance) & ToleranceIso, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutIntersection ) const


description: Remove the edge and the extremity vertices of the linked entity vs UnlinkTwinEntities delete only the edge link

code: void Disjoin()


description: Merge successive edges of a face in a single edge. Edges must not be topological linked to other faces i.e. edges must be border edges The merged edges are deletedTSharedPtr()if failed

code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > CreateEdgeByMergingEdges ( const double SmallEdgeTolerance, [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedEdge](API\Runtime\CADKernel\CADKernel\Topo\FOrientedEdge) > & Edges, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & StartVertex, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & EndVertex )


code: int32 EvaluateCuttingPointNum()


description: Exact evaluation of point on the 3D curve According to derivativeOrder Gradient of the point (DerivativeOrder = 1) and Laplacian (DerivativeOrder = 1) can also be return

code: void EvaluatePoint ( double InCoordinate, int32 Derivative, [FCurvePoint](API\Runtime\CADKernel\CADKernel\Geo\FCurvePoint) & Point ) const


description: Exact evaluation of points on the 3D curve According to derivativeOrder Gradient of the point (DerivativeOrder = 1) and Laplacian (DerivativeOrder = 1) can also be return

code: void EvaluatePoints ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InCoordinates, int32 DerivativeOrder, [TArray](API\Runtime\Core\Containers\TArray)< [FCurvePoint](API\Runtime\CADKernel\CADKernel\Geo\FCurvePoint) > & OutPoints ) const


description: Extend the Edge to the NewVertex. NewVertex become the new extremity of the edge. The old vertex is unconnected of the edge.

code: bool ExtendTo ( bool bStartExtremity, const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & NewExtremityCoordinate, [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & NewVertex )


code: void GenerateMeshElements ( [FModelMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FModelMesh) & MeshModel )


code: const [FLinearBoundary](API\Runtime\CADKernel\CADKernel\Math\FLinearBoundary) & GetBoundary() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCrossingPointUs() const


code: [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCrossingPointUs()


code: [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FRestrictionCurve](API\Runtime\CADKernel\CADKernel\Geo\Curves\FRestrictionCurve) > GetCurve() const


code: [TArray](API\Runtime\Core\Containers\TArray)< double > GetCuttingPointCoordinates() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FCuttingPoint](API\Runtime\CADKernel\CADKernel\Topo\FCuttingPoint) > & GetCuttingPoints()


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FCuttingPoint](API\Runtime\CADKernel\CADKernel\Topo\FCuttingPoint) > & GetCuttingPoints() const


code: double GetDeltaUFor ( double Coordinate, int32 & Index ) const


code: [TArray](API\Runtime\Core\Containers\TArray)< double > & GetDeltaUMaxs()


code: const [TArray](API\Runtime\Core\Containers\TArray)< double > & GetDeltaUMaxs() const


code: [TArray](API\Runtime\Core\Containers\TArray)< double > & GetDeltaUMins()


description: Get the discretization points of the edge and add them to the outpointsTArray

code: template<class PointType> void GetDiscretization2DPoints ( [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) Orientation, [TArray](API\Runtime\Core\Containers\TArray)< PointType > & OutPoints ) const


description: the 3d coordinate of the end vertex (the barycenter of the twin vertices)


description: the 3d coordinate of the end vertex (prefer GetEndBarycenter)


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetEndVertex() const


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetEndVertex ( [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) Forward ) const


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetEndVertex ( bool Forward ) const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: void GetExtremities ( [FSurfacicCurveExtremities](API\Runtime\CADKernel\CADKernel\Geo\FSurfacicCurveExtremities) & Extremities ) const


description: the carrier topological face

code: [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * GetFace() const


code: [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * GetFirstTwinEdge() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FImposedCuttingPoint](API\Runtime\CADKernel\CADKernel\Topo\FImposedCuttingPoint) > & GetImposedCuttingPoints() const


code: [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > GetLinkActiveEdge() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > GetLinkedFaces() const


description: the containing boundary

code: const [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) * GetLoop() const


description: the containing boundary


code: const [FEdgeMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeMesh) * GetMesh() const


code: [FEdgeMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FEdgeMesh) & GetOrCreateMesh ( [FModelMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FModelMesh) & MeshModel )


code: [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetOtherVertex ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & Vertex )


code: [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) * GetOtherVertex ( [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & Vertex )


code: const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) * GetOtherVertex ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & Vertex ) const


code: const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetOtherVertex ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & Vertex ) const


description: Compute the lengths of each pre-elements of the edge i.e the elements based of the cutting points of the edges.

code: [TArray](API\Runtime\Core\Containers\TArray)< double > GetPreElementLengths() const


code: const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * GetPreMeshedTwin() const


description: the 3d coordinate of the start vertex (the barycenter of the twin vertices)


description: the 3d coordinate of the start vertex (prefer GetStartBarycenter)


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetStartVertex ( [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) Forward ) const


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetStartVertex() const


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > GetStartVertex ( bool Forward ) const


code: [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) GetTangent2DAt ( const double InCoordinate ) const


code: [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) GetTangent2DAt ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & InVertex )


description: Return the tangent at the input vertex

code: [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) GetTangentAt ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & InVertex )


code: [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) GetTangentAt ( const double InCoordinate ) const


code: void GetTangentsAtExtremities ( [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & StartTangent, [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & EndTangent, bool bForward ) const


code: void GetTangentsAtExtremities ( [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & StartTangent, [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & EndTangent, [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) Orientation ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FLinearBoundary](API\Runtime\CADKernel\CADKernel\Math\FLinearBoundary) > & GetThinZoneBounds() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FThinZoneSide](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZoneSide) * > & GetThinZoneSides() const


code: double GetTolerance2DAt ( double Coordinate ) const


code: [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * GetTwinEdge() const


description: true if they have the same length +/- 5 % or +/- EdgeLengthTolerance

code: bool HasSameLengthAs ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge, double EdgeLengthTolerance ) const


description: true if the edge is adjacent to only one surface (its carrier surface)

code: bool IsBorder() const


description: true if the edge is self connected at its extremities

code: bool IsClosed() const


code: bool IsConnectedTo ( const [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * Face ) const


description: Important note: A Degenerated Edge is used to close 2D boundary in case of degenerated surface to ensureCADKernel a closed boundary Specific process is done for the mesh of this kind of surface

code: virtual bool IsDegenerated() const


description: It can be linked to the edge if :

code: bool IsLinkableTo ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge, double EdgeLengthTolerance ) const


description: true if the twin edge is in the same direction as this

code: bool IsSameDirection ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge ) const


description: true if it is ~tangent with the edge at their extremities i.e Cos(tangents) > cos(30 deg)

code: bool IsTangentAtExtremitiesWith ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge ) const


description: true if the edge is adjacent to only two surfaces

code: bool IsSurfacic() const


description:
An edge is a thin peak means that this edge is a small edge at the extremity of a peak thin zone So this edge must not be meshed (except at its extremities)                     ThinSide 0
      #-------------------------------------#
     /
    /  <- Thin peak edge
   /
  #-----------------------------------------#
                    ThinSide 1

code: bool IsThinPeak() const


description: Link with the other edge. No check is performed except check if degenerated ot deleted. If checks are needed, use LinkIfCoincident

code: void Link ( [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & OtherEdge )


description: Link two edges. Two edges can be linked if :

code: void LinkIfCoincident ( [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & OtherEdge, double EdgeLengthTolerance, double SquareJoiningTolerance )


code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > Make ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FRestrictionCurve](API\Runtime\CADKernel\CADKernel\Geo\Curves\FRestrictionCurve) > & InCurve )


code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > Make ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FRestrictionCurve](API\Runtime\CADKernel\CADKernel\Geo\Curves\FRestrictionCurve) > & InCurve, const [FLinearBoundary](API\Runtime\CADKernel\CADKernel\Math\FLinearBoundary) & InBoundary )


code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > Make ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FRestrictionCurve](API\Runtime\CADKernel\CADKernel\Geo\Curves\FRestrictionCurve) > & InCurve, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & InVertex1, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & InVertex2 )


code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > Make ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FRestrictionCurve](API\Runtime\CADKernel\CADKernel\Geo\Curves\FRestrictionCurve) > & InCurve, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & InVertex1, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & InVertex2, const [FLinearBoundary](API\Runtime\CADKernel\CADKernel\Math\FLinearBoundary) & InBoundary )


description: Build an edge to connect two vertices carried by a 2d segment

code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > Make ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FSurface](API\Runtime\CADKernel\CADKernel\Geo\Surfaces\FSurface) > & InSurface, const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & InCoordinateVertex1, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & InVertex1, const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & InCoordinateVertex2, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & InVertex2 )


code: void Offset2D ( const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & OffsetDirection )


description: Project Point (2D or 3D) on the polyline (2D or 3D) and return the coordinate of the projected point

code: template<class PointType> double ProjectPoint ( const PointType & InPointToProject, PointType & OutProjectedPoint ) const


description: Project a set of points on the 3D polyline and return the coordinate of the projected point

code: void ProjectPoints ( const [TArray](API\Runtime\Core\Containers\TArray)< [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) > & InPointsToProject, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutProjectedPointCoords, [TArray](API\Runtime\Core\Containers\TArray)< [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) > & OutProjectedPoints ) const


description: Project a set of points of a twin edge on the 3D polyline and return the coordinate of the projected point

code: void ProjectTwinEdgePoints ( const [TArray](API\Runtime\Core\Containers\TArray)< [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) > & InPointsToProject, bool bSameOrientation, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutProjectedPointCoords ) const


description: Compute 2D points of the edge coincident the points of the twin edge defined by their coordinates

code: void ProjectTwinEdgePointsOn2DCurve ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & InTwinEdge, const [TArray](API\Runtime\Core\Containers\TArray)< double > & InTwinEdgePointCoords, [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) > & OutPoints2D )


description: If the mesh of the edge is not built, Empty the CuttingPoints This allows to recompute a new discretization of the mesh based among other things on a new imposed cutting points (mesh of thin zone process)

code: void RemovePreMesh()


code: virtual void ResetMarkersRecursively() const


description: After the process: OldVertex is no more connected to this edge but stay connected to its other linked edges If OldVertex is isolated (not connected to any edge), OldVertex is deleted otherwise OldVertex is linked to NewVertex

code: void ReplaceEdgeVertex ( bool bIsStartVertex, [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > & NewVertex )


code: virtual void ResetThinPeakMarker() const


code: virtual void ResetVirtuallyMeshedMarker() const


description: Samples the curve with segments of a desired length

code: void Sample ( const double DesiredSegmentLength, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutCoordinates ) const


description: To check the build edge before returning it or returnTSharedPtr()if the edge is not valid

code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > ReturnIfValid ( [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & InEdge, bool bCheckVertices )


description: Serialization of aFEntity. Each class derived fromFEntityhas to override this method (and call the direct base class override method first) E.g. class FEntityXXX : public FEntityXX { virtual voidSerialize(FCADKernelArchive& Ar)override { FEntityXX::Serialize(Ar); ... } }

code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: void SetEndVertex ( const double NewCoordinate )


code: void SetEndVertex ( const double NewCoordinate, const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & NewPoint3D )


code: void SetStartVertex ( const double NewCoordinate )


code: void SetStartVertex ( const double NewCoordinate, const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & NewPoint3D )


code: virtual void SetThinPeakMarker() const


code: virtual void SetVirtuallyMeshedMarker() const


description: For thin zone purpose.

code: void SortImposedCuttingPoints()


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


description: Split the edge at input coordinate. The initial edge will be used for the first edge, the second edge will be return.

code: [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) * SplitAt ( double SplittingCoordinate, const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & NewVertexCoordinate, bool bKeepStartVertexConnectivity, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & OutNewEdge )


code: void TransferCuttingPointFromMeshedEdge ( bool bOnlyWithOppositeNode, [FAddCuttingPointFunc](API\Runtime\CADKernel\CADKernel\Topo\FAddCuttingPointFunc) AddCuttingPoint )


code: double TransformActiveEdgeCoordinateToLocalCoordinate ( const double ActiveEdgeCoordinate ) const


code: void TransformActiveEdgeCoordinatesToLocalCoordinates ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InActiveEdgeCoordinate, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutLocalCoordinate ) const


code: double TransformLocalCoordinateToActiveEdgeCoordinate ( const double LocalCoordinate ) const


code: void TransformLocalCoordinatesToActiveEdgeCoordinates ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InLocalCoordinate, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutActiveEdgeCoordinate ) const


code: double TransformTwinEdgeCoordinateToLocalCoordinate ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & TwinEdge, const double InTwinCoordinate ) const


code: void TransformTwinEdgeCoordinatesToLocalCoordinates ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & TwinEdge, const [TArray](API\Runtime\Core\Containers\TArray)< double > & InActiveEdgeCoordinate, [TArray](API\Runtime\Core\Containers\TArray)< double > & OutLocalCoordinate ) const


description: Remove the edge and the extremity vertices of the linked entity vs UnlinkTwinEntities delete only the edge link

code: void Unlink()


className: FTopologicalEdge

description: No constructors are accessible with public or protected access.

code: class FTopologicalEdge : public [UE::CADKernel::TLinkable< FTopologicalEdge, FEdgeLink >](API\Runtime\CADKernel\CADKernel\Topo\TLinkable)

Boundary

type: FLinearBoundary

description: The edge is oriented in the curve orientation i.e. StartCoordinate < EndCoordinate

CrossingPointDeltaUMaxs

type: TArray< double ...

description: Max delta U at the crossing points to respect meshing criteria

CrossingPointDeltaUMins

description: Min delta U at the crossing points to respect meshing criteria

CrossingPointUs

description: Temporary discretization of the edge used to compute the mesh of the edge

Curve

type: TSharedPtr<FRe...

CuttingPointUs

description: Final U coordinates of the edge's mesh nodes

EndVertex

type: TSharedPtr<FTo...

ImposedCuttingPointUs

type: TArray<FImpose...

description: U coordinates of the edge's mesh nodes for thin zone purpose

Loop

type: FTopologicalLoo...

description: To avoid huge tolerance in case of degenerated edge, the max tol is defined as Length3D / 10.

Mesh

type: TSharedPtr<FEd...

ThinZoneBounds

type: TArray<FLinear...

ThinZoneSides

type: TArray<FThinZo...


code: const bool IsApplyCriteria() const


description: An edge is premesh if the cutting points of the mesh have been defined but the mesh is not build This is used during thin zone meshing i.e. due to the process, an edge can be premeshed but not finalized

code: bool IsPreMeshed() const


code: virtual void ResetApplyCriteria()


code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: virtual void SetApplyCriteriaMarker() const


code: virtual void SetPreMeshedMarker()


className: FTopologicalEntity

code: class FTopologicalEntity : public [UE::CADKernel::FEntity](API\Runtime\CADKernel\CADKernel\Core\FEntity)

CtKioId

type: FIdent


code: void AddLoop ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) > & Loop )


description: Trimmed the face with curves i.e. Edges will be build from the cures to make boundaries.

code: void AddLoops ( const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FCurve](API\Runtime\CADKernel\CADKernel\Geo\Curves\FCurve) >> & Restrictions )


description: Trimmed the face with an outer boundary (first boundary of the array) and inners boundaries

code: void AddLoops ( const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) >> & Loops, int32 & DoubtfulLoopOrientationCount )


code: void AddMeshedLength ( double Length )


description: Compute CrossingPointDeltaMins and CrossingPointDeltaMaxs respecting the meshing criteria

code: void ApplyCriteria ( const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FCriterion](API\Runtime\CADKernel\CADKernel\Mesh\Criteria\FCriterion) >> & Criteria, const FCriteriaGrid & Grid )


description: Trimmed the face with its natural limit curves (Iso UMin, ...). This function is called to trim untrimmed topological face. This function should not be called if the topological face already has a loop.

code: void ApplyNaturalLoops()


description: Trimmed the face with the boundary limit curves (Iso UMin, ...). This function is called to trim untrimmed topological face. This function should not be called if the topological face already has a loop.

code: void ApplyNaturalLoops ( const [FSurfacicBoundary](API\Runtime\CADKernel\CADKernel\Math\FSurfacicBoundary) & Boundaries )


code: virtual void CompleteMetaData()


description: Compute the bounds of the topological surface according to the Loops

code: void ComputeBoundary() const


description:
Generate a pre-sampling of the surface saved in CrossingCoordinate. This sampling is light enough to allow a fast computation of the grid, precise enough to compute accurately meshing criteria
false if the face is considered as degenerate and so removed

code: bool ComputeCriteriaGridSampling()


code: void ComputeSurfaceSideProperties()


description: Defines if the surface is either EQuadType::QUAD, either EQuadType::TRIANGULAR or EQuadType::OTHER

code: void DefineSurfaceType()


description: Disconnects the face of its neighbors i.e. remove topological edge and vertex link with its neighbors

code: void Disjoin ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > * NewBorderEdges )


description: Delete only nonmanifold edge link

code: void DeleteNonmanifoldLink()


description: Count the edges.

code: void EdgeCount ( int32 & EdgeCount ) const


code: void EvaluateGrid ( FGrid & Grid ) const


code: void EvaluatePointGrid ( const [FCoordinateGrid](API\Runtime\CADKernel\CADKernel\Geo\FCoordinateGrid) & Coordinates, FSurfacicSampling & OutPoints, bool bComputeNormals ) const


code: virtual int32 FaceCount() const


code: const [FSurfacicBoundary](API\Runtime\CADKernel\CADKernel\Math\FSurfacicBoundary) & GetBoundary() const


description: Get a sampling of each loop of the face

code: const void Get2DLoopSampling ( [TArray](API\Runtime\Core\Containers\TArray)< [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) >> & OutLoopSamplings ) const


description: Add active Edge that has not marker 1 in the edge array. Marker 1 has to be reset at the end.

code: void GetActiveEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) >> & OutEdges ) const


code: [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FSurface](API\Runtime\CADKernel\CADKernel\Geo\Surfaces\FSurface) > GetCarrierSurface() const


code: const [FCoordinateGrid](API\Runtime\CADKernel\CADKernel\Geo\FCoordinateGrid) & GetCrossingPointCoordinates() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCrossingPointCoordinates ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


code: [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCrossingPointCoordinates ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso )


code: const [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCrossingPointDeltaMaxs ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCrossingPointDeltaMins ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


code: const [FIsoCurvature](API\Runtime\CADKernel\CADKernel\Math\FIsoCurvature) & GetCurvature ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


code: const [FSurfaceCurvature](API\Runtime\CADKernel\CADKernel\Math\FSurfaceCurvature) & GetCurvatures() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCuttingCoordinatesAlongIso ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


code: [TArray](API\Runtime\Core\Containers\TArray)< double > & GetCuttingCoordinatesAlongIso ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso )


code: const [FCoordinateGrid](API\Runtime\CADKernel\CADKernel\Geo\FCoordinateGrid) & GetCuttingPointCoordinates() const


description: Finds the boundary containing the twin edge of Edge

code: void GetEdgeIndex ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge, int32 & OutBoundaryIndex, int32 & OutEdgeIndex ) const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


description: the minimal size of the mesh elements according to meshing criteria


code: const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) > GetExternalLoop() const


code: virtual void GetFaces ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > & OutFaces )


code: double GetIsoTolerance ( [EIso](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EIso) Iso ) const


code: const [FSurfacicTolerance](API\Runtime\CADKernel\CADKernel\Math\FSurfacicTolerance) & GetIsoTolerances() const


description: the twin edge of linked edge belonging this topological face

code: const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * GetLinkedEdge ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & LinkedEdge ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) > > & GetLoops() const


code: [FFaceMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FFaceMesh) * GetMesh() const


code: [FFaceMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FFaceMesh) & GetOrCreateMesh ( [FModelMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FModelMesh) & ModelMesh )


code: const [EQuadType](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__EQuadType) GetQuadType() const


code: int32 GetSideIndex ( [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge ) const


code: int32 GetSideIndex ( int32 EdgeIndex ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) > & GetSideProperties() const


code: [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) & GetSideProperty ( int32 Index )


code: const [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) & GetSideProperty ( int32 Index ) const


code: int32 GetStartEdgeIndexOfSide ( int32 Index ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & GetStartSideIndices() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FThinZone2D](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZone2D) > & GetThinZones() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FThinZone2D](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZone2D) > & GetThinZones()


description: Checks if the face and the other face have the same boundaries i.e. each non degenerated edge is linked to an edge of the other face

code: bool HasSameBoundariesAs ( const [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * OtherFace ) const


code: const bool HasTesselation() const


description: Has at least one border edge

code: bool IsABorderFace() const


description: One adjacent face shares the same loops

code: bool IsADuplicatedFace() const


description: All its edges are non manifold

code: bool IsAFullyNonManifoldFace() const


description: Has at least one non manifold edge

code: bool IsANonManifoldFace() const


code: const int32 & MeshedSideNum() const


code: void MoveThinZones ( [TArray](API\Runtime\Core\Containers\TArray)< [FThinZone2D](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FThinZone2D) > & InThinZones )


description: Each face of model is set by its orientation. This allow to make oriented mesh and to keep the face orientation in topological function. Marker2 of propagate face is set. It must be reset after the process

code: virtual void PropagateBodyOrientation()


description: Delete a face i.e. disjoin the face to all its linked elements before setting it as deleted

code: void Remove ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > * NewBorderEdges )


code: virtual void Remove ( const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * )


code: void RemoveLoop ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) > & Loop )


code: virtual void ResetMarkersRecursively() const


description: Serialization of aFEntity. Each class derived fromFEntityhas to override this method (and call the direct base class override method first) E.g. class FEntityXXX : public FEntityXX { virtual voidSerialize(FCADKernelArchive& Ar)override { FEntityXX::Serialize(Ar); ... } }

code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: void SetEstimatedMinimalElementLength ( double Value )


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


description: Update the bounding box with an approximation of the surface based of n iso curves

code: void UpdateBBox ( int32 IsoCount, const double ApproximationFactor, [FBBoxWithNormal](API\Runtime\CADKernel\CADKernel\Topo\FBBoxWithNormal) & BBox )


description: Build a non-trimmed trimmed surface This constructor has to be completed with one of the three "AddBoundaries" methods to be finalized.

code: FTopologicalFace ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FSurface](API\Runtime\CADKernel\CADKernel\Geo\Surfaces\FSurface) > & InCarrierSurface )


className: FTopologicalFace

code: class FTopologicalFace : public [UE::CADKernel::FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity)

Boundary

type: TCache<FSurfac...

CarrierSurface

type: TSharedPtr<FSu...

CrossingCoordinates

type: FCoordinateGrid

description: Temporary discretization of the surface used to compute the mesh of the edge

CrossingPointDeltaMaxs

description: Max delta U at the crossing u coordinate to respect meshing criteria

CrossingPointDeltaMins

description: Min delta U at the crossing u coordinate to respect meshing criteria

EstimatedMinimalElementLength

type: double

Mesh

type: TSharedPtr<FFa...

MeshCuttingCoordinates

description: Final U&V coordinates of the surface's mesh grid


code: void CheckLoopWithTwoEdgesOrientation()


code: void ComputeBoundaryProperties ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & StartSideIndex, [TArray](API\Runtime\Core\Containers\TArray)< [FEdge2DProperties](API\Runtime\CADKernel\CADKernel\Topo\FEdge2DProperties) > & OutSideProperties ) const


code: void EnsureLogicalClosing ( const double GeometricTolerance )


code: void FindBreaks ( [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) >> & Ruptures, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutStartSideIndex, [TArray](API\Runtime\Core\Containers\TArray)< double > & RuptureValues ) const


code: void FindSurfaceCorners ( [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) >> & OutCorners, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutStartSideIndex ) const


code: void Get2DSampling ( [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) > & LoopSampling ) const


description: The idea is to remove degenerated edges of the loop i.e. where the surface is degenerated

code: bool Get2DSamplingWithoutDegeneratedEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) > & LoopSampling ) const


code: void GetActiveEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) >> & OutEdges ) const


code: [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) GetDirection ( int32 Index ) const


code: [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) GetDirection ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & Edge, bool bAllowLinkedEdge ) const


code: const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & GetEdge ( int32 Index ) const


code: int32 GetEdgeIndex ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedEdge](API\Runtime\CADKernel\CADKernel\Topo\FOrientedEdge) > & GetEdges() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedEdge](API\Runtime\CADKernel\CADKernel\Topo\FOrientedEdge) > & GetEdges()


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: const [FOrientedEdge](API\Runtime\CADKernel\CADKernel\Topo\FOrientedEdge) * GetOrientedEdge ( const [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * InEdge ) const


code: [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * GetFace() const


code: bool IsInside ( const [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) & Other ) const


code: static [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalLoop](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalLoop) > Make ( const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) >> & EdgeList, const [TArray](API\Runtime\Core\Containers\TArray)< [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) > & EdgeDirections, const bool bIsExternalLoop, const double GeometricTolerance )


description:
If the slop is still closed to 0 or 8, the point is "UndefinedOrientation" This case was found in the shape of char '1'
false if the orientation is doubtful

code: bool Orient()


code: void RemoveEdge ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & Edge )


code: void ReplaceEdge ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & OldEdge, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & NewEdge )


code: void ReplaceEdge ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & Edge, [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) >> & NewEdges )


code: void ReplaceEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [FOrientedEdge](API\Runtime\CADKernel\CADKernel\Topo\FOrientedEdge) > & Candidates, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > & NewEdge )


code: virtual void ResetMarkersRecursively() const


code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


description: The Edge is split in two edges : Edge + NewEdge

code: void SplitEdge ( [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) > NewEdge, bool bNewEdgeIsFirst )


code: void SwapOrientation()


code: FTopologicalLoop ( const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) >> & Edges, const [TArray](API\Runtime\Core\Containers\TArray)< [EOrientation](API\Runtime\CADKernel\CADKernel\Geo\UE__CADKernel__EOrientation) > & EdgeDirections, const bool bIsEternalLoop )


className: FTopologicalLoop

code: class FTopologicalLoop : public [UE::CADKernel::FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity)

bIsExternal

type: bool

Boundary

type: FSurfacicBounda...

Edges

type: TArray<FOrient...

Face

type: FTopologicalFac...


code: void CompleteMetaDataWithHostMetaData()


code: void ExtractMetaData ( [TMap](API\Runtime\Core\Containers\TMap)< [FString](API\Runtime\Core\Containers\FString), [FString](API\Runtime\Core\Containers\FString) > & OutMetaData ) const


code: void GetFaces ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * > & OutFaces )


code: const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * GetHost() const


code: const [FMetadataDictionary](API\Runtime\CADKernel\CADKernel\Core\FMetadataDictionary) & GetMetaDataDictionary() const


code: void PropagateBodyOrientation()


code: void Remove ( const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * )


description: Mandatory: The host must have remove this from his array

code: void ResetHost()


code: void SetColorId ( const uint32 & InColorId )


code: void SetDisplayData ( const [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) & DisplayData )


code: void SetDisplayData ( const uint32 & InColorId, const uint32 & InMaterialId )


code: void SetHost ( [FTopologicalShapeEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalShapeEntity) * Body )


code: void SetHostId ( const int32 InHostId )


code: void SetLayer ( const int32 InLayerId )


code: void SetMaterialId ( const uint32 & InMaterialId )


code: void SetName ( const [FString](API\Runtime\Core\Containers\FString) & InName )


code: void SetPatchId ( int32 InPatchId )


code: virtual ~FTopologicalShapeEntity()


className: FTopologicalShapeEntity

code: class FTopologicalShapeEntity : public [UE::CADKernel::FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity)


code: void AddConnectedEdge ( [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge )


code: const int32 ConnectedEdgeCount()


code: double Distance ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & OtherVertex ) const


description: the 3d coordinate of the barycenter of the twin vertices

code: const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & GetBarycenter() const


code: void GetConnectedEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & OutConnectedEdges ) const


code: void GetConnectedEdges ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & OtherVertex, [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & Edges ) const


description: the 3d coordinates of the vertex (prefereGetBarycenter())

code: const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & GetCoordinates() const


description: Mandatory: to browse all the connected edges, you have to browse the connected edges of all the twin vertices for (TWeakPtrTwinVertex : Vertex->GetTwinsEntities()) { for (TWeakPtrConnectedEdge : TwinVertex.Pin()->GetDirectConnectedEdges()) { ... } }

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) * > & GetDirectConnectedEdges() const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: const [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) * GetFace() const


code: [FVertexMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FVertexMesh) & GetOrCreateMesh ( [FModelMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FModelMesh) & MeshModel )


code: const [FVertexMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FVertexMesh) * GetMesh() const


code: void Link ( [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & InEntity )


code: static [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) > Make ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & InCoordinate )


code: void RemoveConnectedEdge ( [FTopologicalEdge](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEdge) & Edge )


code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: void SetCoordinates ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & NewCoordinates )


code: virtual void SpawnIdent ( [FDatabase](API\Runtime\CADKernel\CADKernel\Core\FDatabase) & Database )


code: double SquareDistance ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & OtherVertex ) const


code: double SquareDistance ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & Point ) const


code: double SquareDistanceBetweenBarycenters ( const [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & OtherVertex ) const


code: void UnlinkTo ( [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & Entity )


code: FTopologicalVertex ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & InCoordinates )


className: FTopologicalVertex

code: class FTopologicalVertex : public [UE::CADKernel::TLinkable< FTopologicalVertex, FVertexLink >](API\Runtime\CADKernel\CADKernel\Topo\TLinkable)

ConnectedEdges

type: TArray<FTopolo...

Coordinates

type: FPoint

Mesh

type: TSharedPtr<FVe...


description: Mandatory: UnlinkNonManifoldVertex has to be call after

code: void DeleteNonmanifoldLink()


code: void SetTolerance ( const [FTopomakerOptions](API\Runtime\CADKernel\CADKernel\Topo\FTopomakerOptions) Options )


description: Split into connected shell and put each shell into the appropriate body

code: void SplitIntoConnectedShells()


description: Mandatory: UnlinkNonManifoldVertex has to be call before

code: void UnlinkFromOther()


description: Unlink Non-Manifold Vertex i.e. Vertex belong to tow or more shell

code: void UnlinkNonManifoldVertex()


code: FTopomaker ( [FSession](API\Runtime\CADKernel\CADKernel\Core\FSession) & InSession, const [FTopomakerOptions](API\Runtime\CADKernel\CADKernel\Topo\FTopomakerOptions) & InOptions )


code: FTopomaker ( [FSession](API\Runtime\CADKernel\CADKernel\Core\FSession) & InSession, const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FShell](API\Runtime\CADKernel\CADKernel\Topo\FShell) >> & Shells, const [FTopomakerOptions](API\Runtime\CADKernel\CADKernel\Topo\FTopomakerOptions) & InOptions )


code: FTopomaker ( [FSession](API\Runtime\CADKernel\CADKernel\Core\FSession) & InSession, const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) >> & Faces, const [FTopomakerOptions](API\Runtime\CADKernel\CADKernel\Topo\FTopomakerOptions) & InOptions )


code: FTopomakerOptions ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) InSewOptions, double InTolerance, double InForceJoinFactor )


className: FTopomaker

code: class FTopomaker

Faces

type: TArray<TShared...

Session

type: FSession&

Shells

type: TArray<FShell...


className: FTopomakerOptions

code: struct FTopomakerOptions

SewOptions

type: ESewOption


description: true if the Twin entity count link is modified

code: virtual bool CleanLink()


code: const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & GetBarycenter() const


description: For (EntityType* Entity : TwinsEntities) { Entity->ResetTopologicalLink(); } TwinsEntities.Empty();

code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


description: Serialization of aFEntity. Each class derived fromFEntityhas to override this method (and call the direct base class override method first) E.g. class FEntityXXX : public FEntityXX { virtual voidSerialize(FCADKernelArchive& Ar)override { FEntityXX::Serialize(Ar); ... } }

code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: void SetBarycenter ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & Point )


code: FVertexLink ( [FTopologicalVertex](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalVertex) & Entity )


className: FVertexLink

description: TTopologicalLinkoverload dedicated to FVertex to manage the barycenter of twin vertices

code: class FVertexLink : public [UE::CADKernel::TTopologicalLink< FTopologicalVertex >](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink)


code: virtual [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< LinkType > GetLink() const


code: virtual [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< LinkType > GetLink()


code: const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< const EntityType > GetLinkActiveEntity() const


code: [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< EntityType > GetLinkActiveEntity()


code: const [TArray](API\Runtime\Core\Containers\TArray)< EntityType * > & GetTwinEntities() const


code: int32 GetTwinEntityCount() const


code: bool IsLinkedTo ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< EntityType > & Entity ) const


code: bool IsLinkedTo ( const EntityType & Entity ) const


code: void MakeLink ( EntityType & Twin )


code: virtual void ResetMarkersRecursively() const


code: virtual void SetThinZoneMarker()


code: void SetTopologicalLink ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< LinkType > Link )


description: Unlink all twin entities

code: void UnlinkTwinEntities()


className: TLinkable

code: template<typename EntityType, typename LinkType> class TLinkable : public [UE::CADKernel::FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity)

TopologicalLink

type: TSharedPtr< Lin...


code: void ActivateEntity ( const [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) & NewActiveEntity )


code: template<typename ArrayType> void AddEntities ( const ArrayType & Entities )


code: void AddEntity ( [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) * Entity )


code: void AddEntity ( [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) & Entity )


code: template<typename LinkableType> void AddEntity ( const LinkableType * Entity )


code: virtual bool CleanLink()


code: const [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) * GetActiveEntity() const


code: virtual [EEntity](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EEntity) GetEntityType() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) * > & GetTwinEntities() const


code: void RemoveEntity ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) > & Entity )


code: void RemoveEntity ( [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) & Entity )


code: virtual void Serialize ( [FCADKernelArchive](API\Runtime\CADKernel\CADKernel\Core\FCADKernelArchive) & Ar )


code: TTopologicalLink ( [EntityType](API\Runtime\CADKernel\CADKernel\Topo\TTopologicalLink\EntityType) & Entity )


className: TTopologicalLink

code: template<typename EntityType> class TTopologicalLink : public [UE::CADKernel::FTopologicalEntity](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalEntity)

ActiveEntity

type: EntityType*...

EntityType

type: friend

TwinEntities

type: TArray<EntityT...


description: this will eventually be reconciled with what the Geometry team is using.

code: namespace UE { namespace CADKernel { enum EQuadType { Unset = 0, Quadrangular, Triangular, Other, } } }


code: namespace UE { namespace CADKernel { enum ESewOption { None = 0x00u, ForceJoining = 0x01u, RemoveThinFaces = 0x02u, RemoveDuplicatedFaces = 0x04u, All = 0x07u, } } }


code: namespace UE { namespace CADKernel { enum EStatut { Interior = 0, Exterior, Border, } } }


code: namespace UE { namespace CADKernel { template<typename FCuttingPointType> void UE::CADKernel::GetCuttingPointCoordinates ( const [TArray](API\Runtime\Core\Containers\TArray)< FCuttingPointType > & CuttingPoints, [TArray](API\Runtime\Core\Containers\TArray)< double > & CuttingPointCoordinates ) } }


code: namespace UE { namespace CADKernel { [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) & UE::CADKernel::operator|= ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) & Lhs, [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Rhs ) } }


code: namespace UE { namespace CADKernel { [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) & UE::CADKernel::operator&= ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) & Lhs, [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Rhs ) } }


code: namespace UE { namespace CADKernel { [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) & UE::CADKernel::operator^= ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) & Lhs, [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Rhs ) } }


code: namespace UE { namespace CADKernel { constexpr [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) UE::CADKernel::operator| ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Lhs, [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Rhs ) } }


code: namespace UE { namespace CADKernel { constexpr [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) UE::CADKernel::operator& ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Lhs, [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Rhs ) } }


code: namespace UE { namespace CADKernel { constexpr [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) UE::CADKernel::operator^ ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Lhs, [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) Rhs ) } }


code: namespace UE { namespace CADKernel { constexpr bool UE::CADKernel::operator! ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) E ) } }


code: namespace UE { namespace CADKernel { constexpr [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) UE::CADKernel::operator~ ( [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) E ) } }


code: namespace UE { namespace CADKernel { namespace SewOption { static [ESewOption](API\Runtime\CADKernel\CADKernel\Topo\UE__CADKernel__ESewOption) UE::CADKernel::SewOption::GetFromOptions ( bool bGStitchingForceSew, bool bGStitchingRemoveThinFaces, bool bGStitchingRemoveDuplicatedFaces ) } } }


code: F3DDebugSegment ( FIdent Ident )


code: F3DDebugSession ( [FString](API\Runtime\Core\Containers\FString) Name, const [TArray](API\Runtime\Core\Containers\TArray)< FIdent > & Idents )


code: F3DDebugSession ( bool bInDisplay, [FString](API\Runtime\Core\Containers\FString) Name, const [TArray](API\Runtime\Core\Containers\TArray)< FIdent > & Idents )


code: virtual void Print ( const TCHAR * Texte, [EVerboseLevel](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EVerboseLevel) VerboseLevel )


code: static void Deindent ( int32 InNumberOfIndent )


code: template<typename FmtType, typename... Types> static void Error ( const FmtType & Text, Types... Args )


code: static void FillReportFile ( const TCHAR * Header, [FDuration](API\Runtime\CADKernel\CADKernel\Core\FDuration) Duration )


code: static void FillReportFile ( const TCHAR * Header, double Count )


code: static void FillReportFile ( const TCHAR * Header, int32 Count )


code: template<typename FmtType, typename... Types> static void FillReportFile ( const FmtType Header, const FmtType Text, Types... Args )


code: static void Indent ( int32 InNumberOfIndent )


className: OldPercent

code: static int32 OldPercent = -1;


className: NumberOfIndentation

code: static int32 NumberOfIndentation = 0;


code: template<typename FmtType, typename... Types> static void Warning ( const FmtType & Text, Types... Args )


code: template<typename FmtType, typename... Types> static void Printf ( [EVerboseLevel](API\Runtime\CADKernel\CADKernel\Core\UE__CADKernel__EVerboseLevel) Level, const FmtType & Text, Types... Args )


code: void AddUnderlying ( [FProgress](API\Runtime\CADKernel\CADKernel\UI\FProgress) * Progress )


code: const [FString](API\Runtime\Core\Containers\FString) & GetName()


code: [FProgress](API\Runtime\CADKernel\CADKernel\UI\FProgress) * GetParent() const


description: Increase the advancement of of one step

code: void Increase ( int32 StepSize )


code: void UnderlyingFinished ( [FProgress](API\Runtime\CADKernel\CADKernel\UI\FProgress) * Progress )


code: FProgress ( const [FString](API\Runtime\Core\Containers\FString) & StepName )


code: FProgress ( int32 InStepCount, const [FString](API\Runtime\Core\Containers\FString) & InStepName )


code: virtual void ActivateProgressBar ( bool bActive )


code: [FProgress](API\Runtime\CADKernel\CADKernel\UI\FProgress) * GetCurrentProgress() const


description: a string describing the current step hierarchy

code: virtual [FString](API\Runtime\Core\Containers\FString) GetCurrentStep() const


code: [FProgress](API\Runtime\CADKernel\CADKernel\UI\FProgress) * GetRoot() const


code: virtual void SetCurrentProgress ( [FProgress](API\Runtime\CADKernel\CADKernel\UI\FProgress) * InProgress )


description: Update the progress bar

code: virtual void Update()


className: FProgressManager

code: class FProgressManager

CurrentProgress

type: FProgress*


code: virtual void Close3DDebugSegment()


code: virtual void Close3DDebugSession()


code: virtual void DrawElement ( int32 Dimension, [TArray](API\Runtime\Core\Containers\TArray)< [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) InProperty )


code: virtual void DrawMesh ( FIdent MeshId )


code: virtual void DrawPoint ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) InProperty )


code: virtual void DrawPoint ( const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) InProperty )


code: virtual void DrawPoint ( const [FPointH](API\Runtime\CADKernel\CADKernel\Math\FPointH) & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) InProperty )


code: virtual void DrawPolyline ( const [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) InProperty )


code: virtual void DrawPolyline ( const [TArray](API\Runtime\Core\Containers\TArray)< [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) InProperty )


code: virtual void NewDB ( const TCHAR * InName )


code: virtual void Open3DDebugSegment ( FIdent Ident )


code: virtual void Open3DDebugSession ( const TCHAR * SessionName, const [TArray](API\Runtime\Core\Containers\TArray)< FIdent > & Ids )


code: namespace UE { namespace CADKernel { void UE::CADKernel::Close3DDebugSession ( bool bIsDisplayed ) } }


code: namespace UE { namespace CADKernel { void UE::CADKernel::Display2DWithScale ( const [FSurface](API\Runtime\CADKernel\CADKernel\Geo\Surfaces\FSurface) & CarrierSurface ) } }


className: FVisu

code: class FVisu

SessionNum

description: Number of graphic session opened


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplayPoint ( const TPoint & Point, FIdent Ident ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplayOrientedPolyline ( const [TArray](API\Runtime\Core\Containers\TArray)< TPoint > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplayPoint ( const TPoint & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplayPoint ( const TPoint & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property, FIdent Ident ) } }


code: namespace UE { namespace CADKernel { static void UE::CADKernel::DisplayPoint2DWithScale ( const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { static void UE::CADKernel::DisplayPoint2DWithScale ( const [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) & Point, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property, FIdent Ident ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplayPoints ( [FString](API\Runtime\Core\Containers\FString) Message, const [TArray](API\Runtime\Core\Containers\TArray)< TPoint > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property, bool bDisplay ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplayPolyline ( const [TArray](API\Runtime\Core\Containers\TArray)< TPoint > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { static void UE::CADKernel::DisplayPolylineWithScale ( const [TArray](API\Runtime\Core\Containers\TArray)< [FPoint2D](API\Runtime\CADKernel\CADKernel\Math\FPoint2D) > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplaySegment ( const TPoint & Point1, const TPoint & Point2, FIdent Ident, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property, bool bWithOrientation ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DisplaySegmentWithScale ( const TPoint & Point1, const TPoint & Point2, FIdent Ident, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property, bool bWithOrientation ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::Draw ( const [TArray](API\Runtime\Core\Containers\TArray)< TPoint > & Points, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { void UE::CADKernel::Draw2DWithScale ( const [FTopologicalFace](API\Runtime\CADKernel\CADKernel\Topo\FTopologicalFace) & Face ) } }


code: namespace UE { namespace CADKernel { void UE::CADKernel::DrawMesh ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FMesh](API\Runtime\CADKernel\CADKernel\Mesh\Structure\FMesh) > & mesh ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DrawPoint ( const TPoint & InPoint, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DrawSegment ( const TPoint & Point1, const TPoint & Point2, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { template<typename TPoint> void UE::CADKernel::DrawSegmentOrientation ( const TPoint & Point1, const TPoint & Point2, [EVisuProperty](API\Runtime\CADKernel\CADKernel\UI\UE__CADKernel__EVisuProperty) Property ) } }


code: namespace UE { namespace CADKernel { enum EVisuProperty { BBox = 0, Point, Point, Element, Curve, Curve, Iso, ControlLine, EdgeMesh, NodeMesh, BorderEdge, NonManifoldEdge, BorderTopo, ControlPoint, YellowPoint, YellowCurve, BluePoint, BlueCurve, RedPoint, RedCurve, PurplePoint, PurpleCurve, GreenPoint, GreenCurve, PinkPoint, PinkCurve, OrangePoint, OrangeCurve, Last, } } }


code: namespace UE { namespace CADKernel { void UE::CADKernel::Open3DDebugSession ( [FString](API\Runtime\Core\Containers\FString) name, const [TArray](API\Runtime\Core\Containers\TArray)< FIdent > & idList ) } }


code: namespace UE { namespace CADKernel { void UE::CADKernel::Open3DDebugSession ( bool bIsDisplayed, [FString](API\Runtime\Core\Containers\FString) name, const [TArray](API\Runtime\Core\Containers\TArray)< FIdent > & idList ) } }


code: namespace UE { namespace CADKernel { void UE::CADKernel::Wait ( bool bMakeWait ) } }


code: virtual int32 Find ( const double InCoordinate )


code: FDichotomyFinder ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InPolylineCoordinates )


code: FDichotomyFinder ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InPolylineCoordinates, int32 InStartLowerBound, int32 InStartUpperBound )


className: FDichotomyFinder

code: class FDichotomyFinder : public [UE::CADKernel::FIndexOfCoordinateFinder](API\Runtime\CADKernel\CADKernel\Utils\FIndexOfCoordinateFinder)


code: int32 Find ( const double InCoordinate )


code: FIndexOfCoordinateFinder ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InPolylineCoordinates )


className: FIndexOfCoordinateFinder

description: so a dichotomy algorithm is used. This class is dedicated for a unique or mess up set of input coordinates

code: class FIndexOfCoordinateFinder

Coordinates

type: constTArray< d...


code: FLinearFinder ( const [TArray](API\Runtime\Core\Containers\TArray)< double > & InPolylineCoordinates, int32 & InOutIndex )


className: FLinearFinder

code: class FLinearFinder : public [UE::CADKernel::FIndexOfCoordinateFinder](API\Runtime\CADKernel\CADKernel\Utils\FIndexOfCoordinateFinder)


code: void operator+= ( const ObjectType & NewValue )


code: void operator= ( const ObjectType & NewValue )


code: const ObjectType & operator*() const


code: void Set ( const ObjectType & NewValue )


code: template<typename... InArgTypes> void Set ( InArgTypes &&... Args )


className: TCache::operator ObjectType &

code: operator ObjectType &()


code: template<typename... InArgTypes> TCache ( InArgTypes &&... Args )


className: TCache

code: template<class ObjectType> class TCache

bReady

type: bool

Value

type: ObjectType


code: namespace UE { namespace CADKernel { namespace Utils { void UE::CADKernel::Utils::Explode ( const [FString](API\Runtime\Core\Containers\FString) & FullString, const TCHAR * Separator, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & StringArray ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::EscapeBackSlashes ( const [FString](API\Runtime\Core\Containers\FString) & InputString ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { void UE::CADKernel::Utils::RemoveUnwantedChar ( [FString](API\Runtime\Core\Containers\FString) & String, const TCHAR UnwantedChar ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::ToFString ( const char * Text ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::ToFString ( const double & Value ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::ToFString ( const int32 & Value ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::ToFString ( const uint32 & Value ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::ToFString ( const bool & Value ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { [FString](API\Runtime\Core\Containers\FString) UE::CADKernel::Utils::ToFString ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & p ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { std::string UE::CADKernel::Utils::ToString ( const TCHAR * WideString ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { template<typename ValueType> std::string UE::CADKernel::Utils::ToString ( const ValueType & v ) } } }


code: namespace UE { namespace CADKernel { namespace Utils { std::string UE::CADKernel::Utils::ToString ( const [FPoint](API\Runtime\CADKernel\CADKernel\Math\FPoint) & p ) } } }


description: the context as a bool.

module: Cbor

code: bool AsBool() const


description: the context header additional value.

code: ECborCode AdditionalValue() const


description: the context as the container code the break context is associated with.

code: ECborCode AsBreak() const


description: the context as a raw byte array.

code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< const uint8 > AsByteArray() const


description: the context as a C string.

code: const char * AsCString() const


description: the context as a double.

code: double AsDouble() const


description: the context as a float.

code: float AsFloat() const


description: the context as an int.

code: int64 AsInt() const


description: the context as a container length. Map container returns their length as twice their number of pairs.

code: uint64 AsLength() const


description: the context as a string.


description: the context as an unsigned int.

code: uint64 AsUInt() const


description: true if this context represent a break code.

code: bool IsBreak() const


description: true if this context represents a container. (indefinite string are containers.)

code: bool IsContainer() const


description: true if this is a dummy context.

code: bool IsDummy()


description: true if this context represents an error code.

code: bool IsError() const


description: true if this context represents an indefinite container.

code: bool IsIndefiniteContainer() const


description: true if this context represents an finite container.

code: bool IsFiniteContainer() const


description: true if this context represents a string type.

code: bool IsString() const


description: the context header major type.

code: ECborCode MajorType() const


description: Reset the context to a dummy state.

code: void Reset()


description: the context header raw code.

code: ECborCode RawCode() const


code: FCborContext &40; ECborCode Code &41;


className: FCborContext

description: Class that represent a cbor context which consists of a header and value pair

code: struct FCborContext

DoubleValue

type: double

FloatValue

type: float


description: Get the additional value part of the cbor header.

code: ECborCode AdditionalValue() const


description: Get the major type part of the cbor header.


description: Get the cbor header as a uint8

code: uint8 Raw() const


description: Get the cbor header raw code.


description: Set a cbor code for the header.

code: void Set ( ECborCode Code )


description: Set a cbor code as a uint8.

code: void Set ( uint8 Code )


className: FCborHeader

description: Class that represent a cbor header

code: class FCborHeader


description: the archive we are writing to.

code: const [FArchive](API\Runtime\Core\Serialization\FArchive) * GetArchive() const


description: Write a container start code.

code: void WriteContainerStart ( ECborCode ContainerType, int64 NbItem )


description: Write a container break code, need a indefinite container context.

code: void WriteContainerEnd()


description: Write a value.

code: void WriteNull()


code: void WriteValue ( const [FString](API\Runtime\Core\Containers\FString) & Value )


code: void WriteValue ( const char * CString, uint64 Length )


code: void WriteValue ( const uint8 * Bytes, uint64 Length )


description: CBOR standard endianness is big endian. For interoperability with external tools, the standard endianness should be used. For internal usage, the platform endianness is faster.

code: FCborWriter ( [FArchive](API\Runtime\Core\Serialization\FArchive) * InStream, ECborEndianness InWriterEndianness )


description: Set the archive to read or write the data according to the selected endianness.

code: ScopedCborArchiveEndianness ( [FArchive](API\Runtime\Core\Serialization\FArchive) & InArchive, ECborEndianness Endianness )


className: ScopedCborArchiveEndianness

description: Ensure an archive is swapping the bytes according to which endianness was requested to read or write the CBOR.  The official CBOR endianness is 'big endian', but Unreal uses boths for backward compability reasons.

code: class ScopedCborArchiveEndianness


module: Chaos

code: [AABBTreeExpensiveStatistics](API\Runtime\Chaos\Chaos\AABBTreeExpensiveStatistics) & MergeStatistics ( const [AABBTreeExpensiveStatistics](API\Runtime\Chaos\Chaos\AABBTreeExpensiveStatistics) & Rhs )


code: [AABBTreeStatistics](API\Runtime\Chaos\Chaos\AABBTreeStatistics) & MergeStatistics ( const [AABBTreeStatistics](API\Runtime\Chaos\Chaos\AABBTreeStatistics) & Rhs )


className: AABBTreeExpensiveStatistics

code: struct AABBTreeExpensiveStatistics


className: AABBTreeStatistics

code: struct AABBTreeStatistics


className: CComplexBVHLeaf

code: struct CComplexBVHLeaf


code: template<typename T> auto Requires ( typename T::TPayloadType )


description: This is only available for types that are guaranteed to be serializable. This is done by having a factory that returns unique pointers for example.

code: namespace Chaos { template<typename T> [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< T::AlwaysSerializable, [TSerializablePtr](API\Runtime\Chaos\Chaos\TSerializablePtr)< T > >::Type & Chaos::AsAlwaysSerializable ( T *& Ptr ) }


code: namespace Chaos { template<typename T> [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< T::AlwaysSerializable, [TArray](API\Runtime\Core\Containers\TArray)< [TSerializablePtr](API\Runtime\Chaos\Chaos\TSerializablePtr)< T > > >::Type & Chaos::AsAlwaysSerializableArray ( [TArray](API\Runtime\Core\Containers\TArray)< T * > & Ptrs ) }


code: namespace Chaos { template<typename TBase, typename TDerived> static [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< TDerived > Chaos::AsUniqueSpatialAcceleration ( [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< TBase > && Base ) }


code: namespace Chaos { virtual const [TAABB](API\Runtime\Chaos\Chaos\TAABB)< T, 3 > Chaos::BoundingBox() const }


code: namespace Chaos { template<typename TDerived, typename TBase> static [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< TDerived > Chaos::AsUniqueSpatialAccelerationChecked ( [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< TBase > && Base ) }