Navigation
API > API/Runtime > API/Runtime/CADKernel > API/Runtime/CADKernel/Geo > API/Runtime/CADKernel/Geo/Curves
Inheritance Hierarchy
- FHaveStates
- FEntity
- FEntityGeom
- FCurve
- FSurfacicCurve
- FRestrictionCurve
References
| Module | CADKernel |
| Header | /Engine/Source/Runtime/Datasmith/CADKernel/Base/Public/Geo/Curves/RestrictionCurve.h |
| Include | #include "Geo/Curves/RestrictionCurve.h" |
Syntax
class FRestrictionCurve : public UE::CADKernel::FSurfacicCurve
Remarks
A restriction curve is the curve carrying an edge
It's defined by
- A surfacic curve defined by a 2D curve (
- A linear approximation of the surfacic curve (
Variables
| Type | Name | Description | |
|---|---|---|---|
| double | MinLinearTolerance | ||
| FSurfacicPolyline | Polyline |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FRestrictionCurve
(
TSharedRef< FSurface > InCarrierSurface, |
Functions
| Type | Name | Description | |
|---|---|---|---|
| FPoint2D | Approximate2DPoint
(
double InCoordinate |
Fast computation of the point in the parametric space of the carrier surface. | |
| void | Approximate2DPoints
(
const TArray< double >& InCoordinates, |
Fast computation of the point in the parametric space of the carrier surface. | |
| FPoint | Approximate3DPoint
(
double InCoordinate |
Fast computation of the point in the parametric space of the carrier surface. | |
| void | Approximate3DPoints
(
const TArray< double >& InCoordinates, |
Fast computation of the 3D point of the curve. | |
| double | ApproximateLength
(
const FLinearBoundary& InBoundary |
||
| void | ApproximatePolyline
(
FSurfacicPolyline& OutPolyline |
Approximation of surfacic polyline (points 2d, 3d, normals, tangents) defined by its coordinates compute with carrier surface polyline | |
| void | CheckIfDegenerated
(
const FLinearBoundary& InBoundary, |
A check is done to verify that: | |
| void | ComputeIntersectionsWithIsos
(
const FLinearBoundary& InBoundary, |
||
| const TSharedRef< FCurve > | Get2DCurve () |
||
| double | GetCoordinateOfProjectedPoint
(
const FLinearBoundary& InBoundary, |
||
| void | GetDiscretizationPoints
(
const FLinearBoundary& InBoundary, |
Get the sub polyline bounded by the input InBoundary in the orientation of the input InOrientation and append it to the output OutPoints | |
| void | GetDiscretizationPoints
(
const FLinearBoundary& InBoundary, |
Get the sub polyline bounded by the input InBoundary in the orientation of the input InOrientation and append it to the output OutPoints | |
| void | GetExtremities
(
const FLinearBoundary& InBoundary, |
||
| FPoint2D | GetExtremityTolerances
(
const FLinearBoundary& InBoundary |
||
| double | |||
| const FSurfacicPolyline & | GetPolyline () |
||
| int32 | |||
| FPoint2D | GetTangent2DAt
(
double InCoordinate |
||
| FPoint | GetTangentAt
(
double InCoordinate |
||
| double | GetToleranceAt
(
const double InCoordinate |
||
| bool | |||
| void | |||
| void | ProjectPoints
(
const FLinearBoundary& InBoundary, |
||
| void | ProjectTwinCurvePoints
(
const FLinearBoundary& InBoundary, |
Project a set of points of a twin curve on the 3D polyline and return the coordinate of the projected point | |
| void | Sample
(
const FLinearBoundary& InBoundary, |
Samples the sub curve limited by the boundary respecting the input Desired segment length |
Overridden from FCurve
| Type | Name | Description | |
|---|---|---|---|
| void | Linear deformation of the curve along the axis [Start point, End point] so that the nearest extremity is at the desired position and the other is not modified | ||
| ECurve | GetCurveType () |
||
| void | Must not be call |
Overridden from FEntityGeom
| Type | Name | Description | |
|---|---|---|---|
| TSharedPtr< FEntityGeom > | ApplyMatrix
(
const FMatrixH& InMatrix |
Overridden from FEntity
| Type | Name | Description | |
|---|---|---|---|
| void | Serialize
(
FCADKernelArchive& Ar |
TODO static TSharedPtr |