60 lines
2.1 KiB
JavaScript
60 lines
2.1 KiB
JavaScript
defineSuite([
|
|
'Scene/createTangentSpaceDebugPrimitive',
|
|
'Core/Cartesian3',
|
|
'Core/EllipsoidGeometry',
|
|
'Core/Matrix4',
|
|
'Core/PrimitiveType',
|
|
'Core/VertexFormat'
|
|
], function(
|
|
createTangentSpaceDebugPrimitive,
|
|
Cartesian3,
|
|
EllipsoidGeometry,
|
|
Matrix4,
|
|
PrimitiveType,
|
|
VertexFormat) {
|
|
'use strict';
|
|
|
|
it('computes all attributes', function() {
|
|
var geometry = new EllipsoidGeometry({
|
|
vertexFormat : VertexFormat.ALL,
|
|
radii : new Cartesian3(500000.0, 500000.0, 1000000.0)
|
|
});
|
|
var modelMatrix = Matrix4.multiplyByTranslation(Matrix4.IDENTITY, new Cartesian3(0.0, 0.0, 11000000.0), new Matrix4());
|
|
|
|
var primitive = createTangentSpaceDebugPrimitive({
|
|
geometry : geometry,
|
|
modelMatrix : modelMatrix,
|
|
length : 1000.0
|
|
});
|
|
|
|
expect(primitive.geometryInstances).toBeDefined();
|
|
expect(primitive.appearance).toBeDefined();
|
|
expect(primitive.asynchronous).toBe(false);
|
|
|
|
var instances = primitive.geometryInstances;
|
|
expect(instances.length).toEqual(3);
|
|
|
|
expect(instances[0].modelMatrix).toEqual(modelMatrix);
|
|
expect(instances[1].modelMatrix).toEqual(modelMatrix);
|
|
expect(instances[2].modelMatrix).toEqual(modelMatrix);
|
|
|
|
expect(instances[0].attributes).toBeDefined();
|
|
expect(instances[0].attributes.color).toBeDefined();
|
|
expect(instances[1].attributes).toBeDefined();
|
|
expect(instances[1].attributes.color).toBeDefined();
|
|
expect(instances[2].attributes).toBeDefined();
|
|
expect(instances[2].attributes.color).toBeDefined();
|
|
|
|
expect(instances[0].geometry.primitiveType).toEqual(PrimitiveType.LINES);
|
|
expect(instances[1].geometry.primitiveType).toEqual(PrimitiveType.LINES);
|
|
expect(instances[2].geometry.primitiveType).toEqual(PrimitiveType.LINES);
|
|
});
|
|
|
|
it('throws without geometry', function() {
|
|
expect(function() {
|
|
createTangentSpaceDebugPrimitive();
|
|
}).toThrowDeveloperError();
|
|
});
|
|
|
|
});
|