Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/Generators
Inheritance Hierarchy
- FMeshShapeGenerator
- FSweepGeneratorBase
- FGeneralizedCylinderGenerator
References
| Module | GeometryCore |
| Header | /Engine/Source/Runtime/GeometryCore/Public/Generators/SweepGenerator.h |
| Include | #include "Generators/SweepGenerator.h" |
Syntax
class FGeneralizedCylinderGenerator : public UE::Geometry::FSweepGeneratorBase
Remarks
Sweep a 2D Profile Polygon along a 3D Path.
TODO:
- a custom variant for toruses specifically (would be faster)
- Mitering cross sections support?
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bCapped | ||
| bool | bLoop | ||
| bool | bUVScaleRelativeWorld | When true, the generator attempts to scale UV's in a way that preserves scaling across different mesh results, aiming for 1.0 in UV space to be equal to UnitUVInWorldCoordinates in world space. | |
| ECapType | CapType | ||
| FPolygon2d | CrossSection | ||
| TArray< float > | CrossSectionTexCoord | -If FSweepGeneratorBase::bProfileCurveIsClosed == true and CrossSectionTexCoord.Num() >= CrossSection.VertexCount() + 1 then the first CrossSection.VertexCount() + 1 values will be used as U coordinates. | |
| double | EndScale | ||
| FFrame3d | InitialFrame | ||
| TArray< FVector3d > | Path | ||
| TArray< FFrame3d > | PathFrames | If PathFrames.Num == Path.Num, then PathFrames[k] is used for each step instead of the propagated InitialFrame. | |
| TArray< FVector2d > | PathScales | If PathScales.Num == Path.Num, then PathScales[k] is applied to the CrossSection at each step (this is combined with StartScale/EndScale, but ignored if bLoop=true) | |
| TArray< float > | PathTexCoord | -If bLoop == true and PathTexCoord.Num() >= Path.Num() + 1 then the first Path.Num() + 1 values will be used as V coordinates. | |
| double | StartScale | 2D uniform scale of the CrossSection, interpolated along the Path (via arc length) from StartScale to EndScale | |
| float | UnitUVInWorldCoordinates | Only relevant if bUVScaleRelativeWorld is true (see that description) |
Overridden from FMeshShapeGenerator
| Type | Name | Description | |
|---|---|---|---|
| FMeshShapeGenerator & | Generate () |
Generate the mesh |