#include <RuntimeMeshSlicer.h>
|
static void | SliceRuntimeMesh (URuntimeMesh *InRuntimeMesh, FVector PlanePosition, FVector PlaneNormal, URuntimeMesh *OutOtherHalf, ERuntimeMeshSlicerCapOption CapOption, UMaterialInterface *CapMaterial) |
|
static void | SliceRuntimeMeshComponent (URuntimeMeshComponent *InRuntimeMesh, FVector PlanePosition, FVector PlaneNormal, bool bCreateOtherHalf, URuntimeMeshComponent *&OutOtherHalf, ERuntimeMeshSlicerCapOption CapOption, UMaterialInterface *CapMaterial) |
|
|
static int32 | CapMeshSlice (const FRuntimeMeshDataPtr &InRuntimeMesh, const FRuntimeMeshDataPtr &OutOtherHalf, TArray< FUtilEdge3D > &ClipEdges, const FPlane &SlicePlane, FVector PlaneNormal, ERuntimeMeshSlicerCapOption CapOption) |
|
static int32 | CompareBoxPlane (const FBox &InBox, const FPlane &InPlane) |
|
static FRuntimeMeshAccessorVertex | InterpolateVert (const FRuntimeMeshAccessorVertex &V0, const FRuntimeMeshAccessorVertex &V1, float Alpha) |
|
static void | SliceConvexElem (const FKConvexElem &InConvex, const FPlane &SlicePlane, TArray< FVector > &OutConvexVerts) |
|
static void | SliceRuntimeMeshConvexCollision (URuntimeMesh *InRuntimeMesh, URuntimeMesh *OutOtherHalf, FVector PlanePosition, FVector PlaneNormal) |
|
static void | SliceRuntimeMeshSection (const FRuntimeMeshDataPtr &InRuntimeMesh, const FRuntimeMeshDataPtr &OutOtherHalf, int32 SectionIndex, const FPlane &SlicePlane, TArray< FUtilEdge3D > &ClipEdges) |
|
static void | Transform2DPolygonTo3D (const FUtilPoly2D &InPoly, const FMatrix &InMatrix, TSharedPtr< FRuntimeMeshAccessor > OutMesh) |
|
static bool | TriangulatePoly (TSharedPtr< FRuntimeMeshAccessor > Mesh, int32 VertBase, const FVector &PolyNormal) |
|
Definition at line 31 of file RuntimeMeshSlicer.h.
int32 URuntimeMeshSlicer::CompareBoxPlane |
( |
const FBox & |
InBox, |
|
|
const FPlane & |
InPlane |
|
) |
| |
|
staticprivate |
Utility to test what side of a plane the box is on. Returns 1 if on positive side of plane Returns -1 if on negative side of plane Returns 0 if intersecting plane
Definition at line 12 of file RuntimeMeshSlicer.cpp.
Take two RuntimeMeshAccesorVertex's and interpolate all their values
Definition at line 26 of file RuntimeMeshSlicer.cpp.
void URuntimeMeshSlicer::SliceConvexElem |
( |
const FKConvexElem & |
InConvex, |
|
|
const FPlane & |
SlicePlane, |
|
|
TArray< FVector > & |
OutConvexVerts |
|
) |
| |
|
staticprivate |
void URuntimeMeshSlicer::SliceRuntimeMeshComponent |
( |
URuntimeMeshComponent * |
InRuntimeMesh, |
|
|
FVector |
PlanePosition, |
|
|
FVector |
PlaneNormal, |
|
|
bool |
bCreateOtherHalf, |
|
|
URuntimeMeshComponent *& |
OutOtherHalf, |
|
|
ERuntimeMeshSlicerCapOption |
CapOption, |
|
|
UMaterialInterface * |
CapMaterial |
|
) |
| |
|
static |
void URuntimeMeshSlicer::SliceRuntimeMeshConvexCollision |
( |
URuntimeMesh * |
InRuntimeMesh, |
|
|
URuntimeMesh * |
OutOtherHalf, |
|
|
FVector |
PlanePosition, |
|
|
FVector |
PlaneNormal |
|
) |
| |
|
staticprivate |
void URuntimeMeshSlicer::SliceRuntimeMeshSection |
( |
const FRuntimeMeshDataPtr & |
InRuntimeMesh, |
|
|
const FRuntimeMeshDataPtr & |
OutOtherHalf, |
|
|
int32 |
SectionIndex, |
|
|
const FPlane & |
SlicePlane, |
|
|
TArray< FUtilEdge3D > & |
ClipEdges |
|
) |
| |
|
staticprivate |
void URuntimeMeshSlicer::Transform2DPolygonTo3D |
( |
const FUtilPoly2D & |
InPoly, |
|
|
const FMatrix & |
InMatrix, |
|
|
TSharedPtr< FRuntimeMeshAccessor > |
OutMesh |
|
) |
| |
|
staticprivate |
bool URuntimeMeshSlicer::TriangulatePoly |
( |
TSharedPtr< FRuntimeMeshAccessor > |
Mesh, |
|
|
int32 |
VertBase, |
|
|
const FVector & |
PolyNormal |
|
) |
| |
|
staticprivate |
The documentation for this class was generated from the following files: