Move mesh clone function to the mesh class.
This commit is contained in:
parent
6f8893befc
commit
2969050880
@ -74,7 +74,7 @@ OV.ExporterModel = class
|
||||
}
|
||||
|
||||
let mesh = meshInstance.GetMesh ();
|
||||
let transformed = OV.CloneMesh (mesh);
|
||||
let transformed = mesh.Clone ();
|
||||
if (!transformation.IsIdentity ()) {
|
||||
OV.TransformMesh (transformed, transformation);
|
||||
}
|
||||
|
||||
@ -133,4 +133,38 @@ OV.Mesh = class extends OV.ModelObject3D
|
||||
onTriangleVertices (v0, v1, v2);
|
||||
}
|
||||
}
|
||||
|
||||
Clone ()
|
||||
{
|
||||
let cloned = new OV.Mesh ();
|
||||
|
||||
cloned.SetName (this.GetName ());
|
||||
|
||||
for (let i = 0; i < this.VertexCount (); i++) {
|
||||
let vertex = this.GetVertex (i);
|
||||
cloned.AddVertex (vertex.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < this.VertexColorCount (); i++) {
|
||||
let color = this.GetVertexColor (i);
|
||||
cloned.AddVertexColor (color.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < this.NormalCount (); i++) {
|
||||
let normal = this.GetNormal (i);
|
||||
cloned.AddNormal (normal.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < this.TextureUVCount (); i++) {
|
||||
let uv = this.GetTextureUV (i);
|
||||
cloned.AddTextureUV (uv.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < this.TriangleCount (); i++) {
|
||||
let triangle = this.GetTriangle (i);
|
||||
cloned.AddTriangle (triangle.Clone ());
|
||||
}
|
||||
|
||||
return cloned;
|
||||
}
|
||||
};
|
||||
|
||||
@ -113,7 +113,7 @@ OV.MeshInstance = class extends OV.ModelObject3D
|
||||
GetTransformedMesh ()
|
||||
{
|
||||
let transformation = this.node.GetWorldTransformation ();
|
||||
let transformed = OV.CloneMesh (this.mesh);
|
||||
let transformed = this.mesh.Clone ();
|
||||
OV.TransformMesh (transformed, transformation);
|
||||
return transformed;
|
||||
}
|
||||
|
||||
@ -58,37 +58,3 @@ OV.FlipMeshTrianglesOrientation = function (mesh)
|
||||
triangle.v2 = tmp;
|
||||
}
|
||||
};
|
||||
|
||||
OV.CloneMesh = function (mesh)
|
||||
{
|
||||
let cloned = new OV.Mesh ();
|
||||
|
||||
cloned.SetName (mesh.GetName ());
|
||||
|
||||
for (let i = 0; i < mesh.VertexCount (); i++) {
|
||||
let vertex = mesh.GetVertex (i);
|
||||
cloned.AddVertex (vertex.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < mesh.VertexColorCount (); i++) {
|
||||
let color = mesh.GetVertexColor (i);
|
||||
cloned.AddVertexColor (color.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < mesh.NormalCount (); i++) {
|
||||
let normal = mesh.GetNormal (i);
|
||||
cloned.AddNormal (normal.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < mesh.TextureUVCount (); i++) {
|
||||
let uv = mesh.GetTextureUV (i);
|
||||
cloned.AddTextureUV (uv.Clone ());
|
||||
}
|
||||
|
||||
for (let i = 0; i < mesh.TriangleCount (); i++) {
|
||||
let triangle = mesh.GetTriangle (i);
|
||||
cloned.AddTriangle (triangle.Clone ());
|
||||
}
|
||||
|
||||
return cloned;
|
||||
};
|
||||
|
||||
Loading…
Reference in New Issue
Block a user