Navigation
API > API/Runtime > API/Runtime/CADKernel > API/Runtime/CADKernel/Geo > API/Runtime/CADKernel/Geo/Surfaces
Inheritance Hierarchy
- FHaveStates
- FEntity
- FEntityGeom
- FSurface
References
| Module | CADKernel |
| Header | /Engine/Source/Runtime/Datasmith/CADKernel/Base/Public/Geo/Surfaces/Surface.h |
| Include | #include "Geo/Surfaces/Surface.h" |
Syntax
class FSurface : public UE::CADKernel::FEntityGeom
Variables
| Type | Name | Description | |
|---|---|---|---|
| FSurfacicBoundary | Boundary | ||
| TCache< FSurfacicTolerance > | MinToleranceIso | Tolerance along Iso U/V is very costly to compute and not accurate. | |
| double | Tolerance3D |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FSurface () |
|||
FSurface
(
double InToleranceGeometric |
|||
FSurface
(
double InToleranceGeometric, |
|||
FSurface
(
double InToleranceGeometric, |
Destructors
| Type | Name | Description | |
|---|---|---|---|
~FSurface () |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| double | ComputeScaleAlongAxis
(
const FPoint& InAxis, |
This function return the scale of the input Axis. | |
| TSharedPtr< FSurface > | Deserialize
(
FCADKernelArchive& Archive |
Specific method for surface family to instantiate the correct derived class of FCurve | |
| void | EvaluateGrid
(
FGrid& Grid |
||
| FVector | EvaluateNormal
(
const FPoint2D& InPoint2D |
||
| void | EvaluateNormals
(
const TArray< FPoint2D >& Points2D, |
||
| void | EvaluatePoint
(
const FPoint2D& InSurfacicCoordinate, |
||
| void | EvaluatePointAndNormal
(
const FPoint2D& InPoint2D, |
||
| void | EvaluatePointGrid
(
const FCoordinateGrid& Coordinates, |
||
| void | EvaluatePointGridInCylindricalSpace
(
const FCoordinateGrid& Coordinates, |
||
| FPoint2D | EvaluatePointInCylindricalSpace
(
const FPoint2D& InSurfacicCoordinate |
X = Rho cos(Alpha) Y = Rho sin(Alpha) Z = Z | |
| void | EvaluatePoints
(
const TArray< FPoint2D >& InSurfacicCoordinates, |
||
| void | EvaluatePoints
(
const TArray< FCurvePoint2D >& InSurfacicCoordinates, |
||
| void | EvaluatePoints
(
const TArray< FCurvePoint2D >& InSurfacicCoordinates, |
||
| void | EvaluatePoints
(
const TArray< FCurvePoint2D >& Points2D, |
||
| void | EvaluatePoints
(
FSurfacicPolyline& Polyline |
||
| void | ExtendBoundaryTo
(
const FSurfacicBoundary MaxLimit |
||
| double | |||
| const FSurfacicBoundary & | GetBoundary () |
||
| double | GetIsoTolerance
(
EIso Iso |
Return the minimum tolerance in the parametric space of the surface along the specified axis With Tolerance3D = FSysteme.GeometricalTolerance | |
| const FSurfacicTolerance & | Tolerance along Iso U/V is very costly to compute and not accurate. | ||
| ESurface | |||
| void | IsSurfaceClosed
(
bool& bOutClosedAlongU, |
A surface is closed along an iso axis if it's connected to itself e.g. the edge carried by the iso curve U = UMin is linked to the edge carried by the iso curve U = UMax A complete sphere, torus are example of surface closed along U and V A cylinder with circle section or a cone are example of surface closed along an iso | |
| void | LinesNotDerivables
(
const FSurfacicBoundary& Bounds, |
||
| void | LinesNotDerivables
(
int32 InDerivativeOrder, |
||
| TSharedPtr< FSurface > | MakeBezierSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakeConeSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakeCylinderSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakeNurbsSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakeNurbsSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakePlaneSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakeSphericalSurface
(
const double InToleranceGeometric, |
||
| TSharedPtr< FSurface > | MakeTorusSurface
(
const double InToleranceGeometric, |
||
| void | Presample
(
const FSurfacicBoundary& InBoundaries, |
Generate a pre-sampling of the surface saved in OutCoordinates. | |
| void | PresampleIsoCircle
(
const FSurfacicBoundary& InBoundaries, |
||
| void | Sample
(
const FSurfacicBoundary& Bounds, |
Divide the parametric space in the desired number of regular subdivisions and compute the associated PointGrid | |
| void | Sample
(
const FSurfacicBoundary& Boundary, |
Divide the parametric space in the desired number of regular subdivisions and compute the associated CoordinateGrid | |
| void | TrimBoundaryTo
(
const FSurfacicBoundary NewLimit |
||
| void | ValidateUVPoints
(
TArray< FPoint2D >& UVPoints |
Overridden from FEntityGeom
| Type | Name | Description | |
|---|---|---|---|
| TSharedPtr< FEntityGeom > | ApplyMatrix
(
const FMatrixH& InMatrix |
Overridden from FEntity
| Type | Name | Description | |
|---|---|---|---|
| EEntity | |||
| void | Serialize
(
FCADKernelArchive& Ar |
Serialization of a FEntity. |