213 lines
4.4 KiB
JavaScript
213 lines
4.4 KiB
JavaScript
var assert = require ('assert');
|
|
var testFiles = require ('../utils/testfiles.js');
|
|
var testUtils = require ('../utils/testutils.js');
|
|
|
|
describe ('Ply Importer', function() {
|
|
it ('single_triangle.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('single_triangle.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObject (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
triangles : [
|
|
{
|
|
vertices : [0, 0, 0, 1, 0, 0, 1, 1, 0],
|
|
normals : [0, 0, 1, 0, 0, 1, 0, 0, 1],
|
|
uvs : [],
|
|
mat : 0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('two_triangles.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('two_triangles.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObject (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
triangles : [
|
|
{
|
|
vertices : [0, 0, 0, 1, 0, 0, 1, 1, 0],
|
|
normals : [0, 0, 1, 0, 0, 1, 0, 0, 1],
|
|
uvs : [],
|
|
mat : 0
|
|
},
|
|
{
|
|
vertices : [0, 0, 1, 1, 0, 1, 1, 1, 1],
|
|
normals : [0, 0, 1, 0, 0, 1, 0, 0, 1],
|
|
uvs : [],
|
|
mat : 0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('single_rectangle.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('single_rectangle.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObject (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
triangles : [
|
|
{
|
|
vertices : [0, 0, 0, 1, 0, 0, 1, 1, 0],
|
|
normals : [0, 0, 1, 0, 0, 1, 0, 0, 1],
|
|
uvs : [],
|
|
mat : 0
|
|
},
|
|
{
|
|
vertices : [0, 0, 0, 1, 1, 0, 0, 1, 0],
|
|
normals : [0, 0, 1, 0, 0, 1, 0, 0, 1],
|
|
uvs : [],
|
|
mat : 0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('single_triangle_with_comments.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('single_triangle_with_comments.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObject (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
triangles : [
|
|
{
|
|
vertices : [0, 0, 0, 1, 0, 0, 1, 1, 0],
|
|
normals : [0, 0, 1, 0, 0, 1, 0, 0, 1],
|
|
uvs : [],
|
|
mat : 0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('cube.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('cube.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObjectSimple (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
vertexCount : 8,
|
|
normalCount : 12,
|
|
uvCount : 0,
|
|
triangleCount : 12,
|
|
boundingBox : {
|
|
min : [0, 0, 0],
|
|
max : [1, 1, 1]
|
|
}
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('cube_meshlab_ascii.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('cube_meshlab_ascii.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObjectSimple (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
vertexCount : 8,
|
|
normalCount : 12,
|
|
uvCount : 0,
|
|
triangleCount : 12,
|
|
boundingBox : {
|
|
min : [0, 0, 0],
|
|
max : [1, 1, 1]
|
|
}
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('cube_meshlab_binary.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('cube_meshlab_binary.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObjectSimple (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
vertexCount : 8,
|
|
normalCount : 12,
|
|
uvCount : 0,
|
|
triangleCount : 12,
|
|
boundingBox : {
|
|
min : [0, 0, 0],
|
|
max : [1, 1, 1]
|
|
}
|
|
}
|
|
]
|
|
});
|
|
});
|
|
|
|
it ('cube_rgb_binary.ply', function () {
|
|
var model = testFiles.ImportPlyFile ('cube_rgb_binary.ply');
|
|
assert (OV.CheckModel (model));
|
|
assert.deepStrictEqual (testUtils.ModelToObjectSimple (model), {
|
|
name : '',
|
|
materials : [
|
|
{ name : '#cc0000ff' },
|
|
{ name : '#00cc00ff' },
|
|
{ name : '#0000ccff' },
|
|
{ name : '#cccccc7f' }
|
|
],
|
|
meshes : [
|
|
{
|
|
name : '',
|
|
vertexCount : 8,
|
|
normalCount : 12,
|
|
uvCount : 0,
|
|
triangleCount : 12,
|
|
boundingBox : {
|
|
min : [0, 0, 0],
|
|
max : [1, 1, 1]
|
|
}
|
|
}
|
|
]
|
|
});
|
|
});
|
|
});
|