30 template<
class TriangleMeshType>
33 int NumVertices =
Mesh.MaxVertexID();
36 if (
Mesh.IsVertex(vid))
38 Mesh.SetVertex(vid, Mesh.GetVertex(vid) + Translation);
46 template<
class TriangleMeshType>
49 int NumVertices =
Mesh.MaxVertexID();
52 if (
Mesh.IsVertex(vid))
54 FVector3d Position = Mesh.GetVertex(vid);
55 Mesh.SetVertex(vid, Frame.ToFramePoint(Position));
59 if (
Mesh.HasNormals())
66 FVector3f Normal = Mesh.GetNormal(elemid);
67 Mesh.SetNormal(elemid, (FVector3f)Frame.ToFrameVector((FVector3d)Normal));
76 template<
class TriangleMeshType>
79 int NumVertices =
Mesh.MaxVertexID();
82 if (
Mesh.IsVertex(vid))
84 FVector3d Position = Mesh.GetVertex(vid);
85 Mesh.SetVertex(vid, Frame.FromFramePoint(Position));
89 if (
Mesh.HasNormals())
96 FVector3f Normal = Mesh.GetNormal(elemid);
97 Mesh.SetNormal(elemid, (FVector3f)Frame.FromFrameVector((FVector3d)Normal));
108 template<
class TriangleMeshType>
111 int NumVertices =
Mesh.MaxVertexID();
114 if (
Mesh.IsVertex(vid))
116 FVector3d Position = Mesh.GetVertex(vid);
117 Position = Transform.TransformPosition(Position);
118 Mesh.SetVertex(vid, Position);
122 if (
Mesh.HasNormals())
129 FVector3f Normal = Mesh.GetNormal(elemid);
130 Mesh.SetNormal(elemid, (FVector3f)Transform.TransformNormal((FVector3d)Normal));
141 template<
class TriangleMeshType>
144 int NumVertices =
Mesh.MaxVertexID();
147 if (
Mesh.IsVertex(vid))
149 FVector3d Position = Mesh.GetVertex(vid);
150 Position = Transform.InverseTransformPosition(Position);
151 Mesh.SetVertex(vid, Position);
155 if (
Mesh.HasNormals())
162 FVector3f Normal = Mesh.GetNormal(elemid);
163 Mesh.SetNormal(elemid, (FVector3f)Transform.InverseTransformNormal((FVector3d)Normal));
174 template<
class TriangleMeshType>
179 int NumVertices =
Mesh.MaxVertexID();
182 if (
Mesh.IsVertex(vid))
184 FVector3d Position = Mesh.GetVertex(vid);
185 Position = PositionTransform(Position);
186 Mesh.SetVertex(vid, Position);
190 if (
Mesh.HasNormals())
197 FVector3f Normal = Mesh.GetNormal(elemid);
198 Normal = NormalTransform(Normal);
199 Mesh.SetNormal(elemid, UE::Geometry::Normalized(Normal));
void ParallelFor(int32 Num, TFunctionRef< void(int32)> Body, bool bForceSingleThread, bool bPumpRenderingThread=false)
Definition ParallelFor.h:481
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::Math::TVector< float > FVector3f
Definition MathFwd.h:73
UE::Math::TVector< double > FVector3d
Definition MathFwd.h:60
Definition AssetRegistryState.h:50
Definition ParametricSurfaceData.h:18
TFrame3< double > FFrame3d
Definition FrameTypes.h:478