Move material and triangle to a separate file.
This commit is contained in:
parent
55072f6d6d
commit
5184fe9346
@ -24,7 +24,8 @@
|
||||
<script type="text/javascript" src="../source/io/textwriter.js"></script>
|
||||
<script type="text/javascript" src="../source/io/bufferutils.js"></script>
|
||||
<script type="text/javascript" src="../source/io/fileutils.js"></script>
|
||||
<script type="text/javascript" src="../source/model/modelentities.js"></script>
|
||||
<script type="text/javascript" src="../source/model/material.js"></script>
|
||||
<script type="text/javascript" src="../source/model/triangle.js"></script>
|
||||
<script type="text/javascript" src="../source/model/element.js"></script>
|
||||
<script type="text/javascript" src="../source/model/mesh.js"></script>
|
||||
<script type="text/javascript" src="../source/model/meshbuffer.js"></script>
|
||||
|
||||
@ -25,7 +25,8 @@
|
||||
<script type="text/javascript" src="../source/io/textwriter.js"></script>
|
||||
<script type="text/javascript" src="../source/io/bufferutils.js"></script>
|
||||
<script type="text/javascript" src="../source/io/fileutils.js"></script>
|
||||
<script type="text/javascript" src="../source/model/modelentities.js"></script>
|
||||
<script type="text/javascript" src="../source/model/material.js"></script>
|
||||
<script type="text/javascript" src="../source/model/triangle.js"></script>
|
||||
<script type="text/javascript" src="../source/model/element.js"></script>
|
||||
<script type="text/javascript" src="../source/model/mesh.js"></script>
|
||||
<script type="text/javascript" src="../source/model/meshbuffer.js"></script>
|
||||
|
||||
@ -24,7 +24,8 @@
|
||||
<script type="text/javascript" src="../source/io/textwriter.js"></script>
|
||||
<script type="text/javascript" src="../source/io/bufferutils.js"></script>
|
||||
<script type="text/javascript" src="../source/io/fileutils.js"></script>
|
||||
<script type="text/javascript" src="../source/model/modelentities.js"></script>
|
||||
<script type="text/javascript" src="../source/model/material.js"></script>
|
||||
<script type="text/javascript" src="../source/model/triangle.js"></script>
|
||||
<script type="text/javascript" src="../source/model/element.js"></script>
|
||||
<script type="text/javascript" src="../source/model/mesh.js"></script>
|
||||
<script type="text/javascript" src="../source/model/meshbuffer.js"></script>
|
||||
|
||||
@ -24,7 +24,8 @@
|
||||
<script type="text/javascript" src="../source/io/textwriter.js"></script>
|
||||
<script type="text/javascript" src="../source/io/bufferutils.js"></script>
|
||||
<script type="text/javascript" src="../source/io/fileutils.js"></script>
|
||||
<script type="text/javascript" src="../source/model/modelentities.js"></script>
|
||||
<script type="text/javascript" src="../source/model/material.js"></script>
|
||||
<script type="text/javascript" src="../source/model/triangle.js"></script>
|
||||
<script type="text/javascript" src="../source/model/element.js"></script>
|
||||
<script type="text/javascript" src="../source/model/mesh.js"></script>
|
||||
<script type="text/javascript" src="../source/model/meshbuffer.js"></script>
|
||||
|
||||
@ -1,21 +1,3 @@
|
||||
OV.SRGBToLinear = function (component)
|
||||
{
|
||||
if (component < 0.04045) {
|
||||
return component * 0.0773993808;
|
||||
} else {
|
||||
return Math.pow (component * 0.9478672986 + 0.0521327014, 2.4);
|
||||
}
|
||||
};
|
||||
|
||||
OV.LinearToSRGB = function (component)
|
||||
{
|
||||
if (component < 0.0031308) {
|
||||
return component * 12.92;
|
||||
} else {
|
||||
return 1.055 * (Math.pow (component, 0.41666)) - 0.055;
|
||||
}
|
||||
};
|
||||
|
||||
OV.Color = class
|
||||
{
|
||||
constructor (r, g, b)
|
||||
@ -162,85 +144,21 @@ OV.Material = class
|
||||
}
|
||||
};
|
||||
|
||||
OV.Triangle = class
|
||||
OV.SRGBToLinear = function (component)
|
||||
{
|
||||
constructor (v0, v1, v2)
|
||||
{
|
||||
this.v0 = v0;
|
||||
this.v1 = v1;
|
||||
this.v2 = v2;
|
||||
|
||||
this.n0 = null;
|
||||
this.n1 = null;
|
||||
this.n2 = null;
|
||||
|
||||
this.u0 = null;
|
||||
this.u1 = null;
|
||||
this.u2 = null;
|
||||
|
||||
this.mat = null;
|
||||
this.curve = null;
|
||||
if (component < 0.04045) {
|
||||
return component * 0.0773993808;
|
||||
} else {
|
||||
return Math.pow (component * 0.9478672986 + 0.0521327014, 2.4);
|
||||
}
|
||||
};
|
||||
|
||||
HasVertices ()
|
||||
{
|
||||
return this.v0 !== null && this.v1 !== null && this.v2 !== null;
|
||||
}
|
||||
|
||||
HasNormals ()
|
||||
{
|
||||
return this.n0 !== null && this.n1 !== null && this.n2 !== null;
|
||||
}
|
||||
|
||||
HasTextureUVs ()
|
||||
{
|
||||
return this.u0 !== null && this.u1 !== null && this.u2 !== null;
|
||||
}
|
||||
|
||||
SetVertices (v0, v1, v2)
|
||||
{
|
||||
this.v0 = v0;
|
||||
this.v1 = v1;
|
||||
this.v2 = v2;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetNormals (n0, n1, n2)
|
||||
{
|
||||
this.n0 = n0;
|
||||
this.n1 = n1;
|
||||
this.n2 = n2;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetTextureUVs (u0, u1, u2)
|
||||
{
|
||||
this.u0 = u0;
|
||||
this.u1 = u1;
|
||||
this.u2 = u2;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetMaterial (mat)
|
||||
{
|
||||
this.mat = mat;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetCurve (curve)
|
||||
{
|
||||
this.curve = curve;
|
||||
return this;
|
||||
}
|
||||
|
||||
Clone ()
|
||||
{
|
||||
let cloned = new OV.Triangle (this.v0, this.v1, this.v2);
|
||||
cloned.SetNormals (this.n0, this.n1, this.n2);
|
||||
cloned.SetTextureUVs (this.u0, this.u1, this.u2);
|
||||
cloned.SetMaterial (this.mat);
|
||||
cloned.SetCurve (this.curve);
|
||||
return cloned;
|
||||
OV.LinearToSRGB = function (component)
|
||||
{
|
||||
if (component < 0.0031308) {
|
||||
return component * 12.92;
|
||||
} else {
|
||||
return 1.055 * (Math.pow (component, 0.41666)) - 0.055;
|
||||
}
|
||||
};
|
||||
|
||||
81
source/model/triangle.js
Normal file
81
source/model/triangle.js
Normal file
@ -0,0 +1,81 @@
|
||||
OV.Triangle = class
|
||||
{
|
||||
constructor (v0, v1, v2)
|
||||
{
|
||||
this.v0 = v0;
|
||||
this.v1 = v1;
|
||||
this.v2 = v2;
|
||||
|
||||
this.n0 = null;
|
||||
this.n1 = null;
|
||||
this.n2 = null;
|
||||
|
||||
this.u0 = null;
|
||||
this.u1 = null;
|
||||
this.u2 = null;
|
||||
|
||||
this.mat = null;
|
||||
this.curve = null;
|
||||
}
|
||||
|
||||
HasVertices ()
|
||||
{
|
||||
return this.v0 !== null && this.v1 !== null && this.v2 !== null;
|
||||
}
|
||||
|
||||
HasNormals ()
|
||||
{
|
||||
return this.n0 !== null && this.n1 !== null && this.n2 !== null;
|
||||
}
|
||||
|
||||
HasTextureUVs ()
|
||||
{
|
||||
return this.u0 !== null && this.u1 !== null && this.u2 !== null;
|
||||
}
|
||||
|
||||
SetVertices (v0, v1, v2)
|
||||
{
|
||||
this.v0 = v0;
|
||||
this.v1 = v1;
|
||||
this.v2 = v2;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetNormals (n0, n1, n2)
|
||||
{
|
||||
this.n0 = n0;
|
||||
this.n1 = n1;
|
||||
this.n2 = n2;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetTextureUVs (u0, u1, u2)
|
||||
{
|
||||
this.u0 = u0;
|
||||
this.u1 = u1;
|
||||
this.u2 = u2;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetMaterial (mat)
|
||||
{
|
||||
this.mat = mat;
|
||||
return this;
|
||||
}
|
||||
|
||||
SetCurve (curve)
|
||||
{
|
||||
this.curve = curve;
|
||||
return this;
|
||||
}
|
||||
|
||||
Clone ()
|
||||
{
|
||||
let cloned = new OV.Triangle (this.v0, this.v1, this.v2);
|
||||
cloned.SetNormals (this.n0, this.n1, this.n2);
|
||||
cloned.SetTextureUVs (this.u0, this.u1, this.u2);
|
||||
cloned.SetMaterial (this.mat);
|
||||
cloned.SetCurve (this.curve);
|
||||
return cloned;
|
||||
}
|
||||
};
|
||||
@ -20,7 +20,8 @@
|
||||
"source/io/textwriter.js",
|
||||
"source/io/bufferutils.js",
|
||||
"source/io/fileutils.js",
|
||||
"source/model/modelentities.js",
|
||||
"source/model/material.js",
|
||||
"source/model/triangle.js",
|
||||
"source/model/element.js",
|
||||
"source/model/mesh.js",
|
||||
"source/model/meshbuffer.js",
|
||||
|
||||
@ -33,7 +33,8 @@
|
||||
<script type="text/javascript" src="../source/io/textwriter.js"></script>
|
||||
<script type="text/javascript" src="../source/io/bufferutils.js"></script>
|
||||
<script type="text/javascript" src="../source/io/fileutils.js"></script>
|
||||
<script type="text/javascript" src="../source/model/modelentities.js"></script>
|
||||
<script type="text/javascript" src="../source/model/material.js"></script>
|
||||
<script type="text/javascript" src="../source/model/triangle.js"></script>
|
||||
<script type="text/javascript" src="../source/model/element.js"></script>
|
||||
<script type="text/javascript" src="../source/model/mesh.js"></script>
|
||||
<script type="text/javascript" src="../source/model/meshbuffer.js"></script>
|
||||
|
||||
@ -33,7 +33,8 @@
|
||||
<script type="text/javascript" src="../source/io/textwriter.js"></script>
|
||||
<script type="text/javascript" src="../source/io/bufferutils.js"></script>
|
||||
<script type="text/javascript" src="../source/io/fileutils.js"></script>
|
||||
<script type="text/javascript" src="../source/model/modelentities.js"></script>
|
||||
<script type="text/javascript" src="../source/model/material.js"></script>
|
||||
<script type="text/javascript" src="../source/model/triangle.js"></script>
|
||||
<script type="text/javascript" src="../source/model/element.js"></script>
|
||||
<script type="text/javascript" src="../source/model/mesh.js"></script>
|
||||
<script type="text/javascript" src="../source/model/meshbuffer.js"></script>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user