78 lines
2.3 KiB
JavaScript
78 lines
2.3 KiB
JavaScript
|
|
defineSuite([
|
||
|
|
'Scene/PolylineMaterialAppearance',
|
||
|
|
'Core/Cartesian3',
|
||
|
|
'Core/GeometryInstance',
|
||
|
|
'Core/PolylineGeometry',
|
||
|
|
'Scene/Appearance',
|
||
|
|
'Scene/Material',
|
||
|
|
'Scene/Primitive',
|
||
|
|
'Specs/createScene'
|
||
|
|
], function(
|
||
|
|
PolylineMaterialAppearance,
|
||
|
|
Cartesian3,
|
||
|
|
GeometryInstance,
|
||
|
|
PolylineGeometry,
|
||
|
|
Appearance,
|
||
|
|
Material,
|
||
|
|
Primitive,
|
||
|
|
createScene) {
|
||
|
|
'use strict';
|
||
|
|
|
||
|
|
var scene;
|
||
|
|
var primitive;
|
||
|
|
|
||
|
|
beforeAll(function() {
|
||
|
|
scene = createScene();
|
||
|
|
scene.primitives.destroyPrimitives = false;
|
||
|
|
});
|
||
|
|
|
||
|
|
afterAll(function() {
|
||
|
|
scene.destroyForSpecs();
|
||
|
|
});
|
||
|
|
|
||
|
|
afterEach(function() {
|
||
|
|
scene.primitives.removeAll();
|
||
|
|
primitive = primitive && !primitive.isDestroyed() && primitive.destroy();
|
||
|
|
});
|
||
|
|
|
||
|
|
it('constructor', function() {
|
||
|
|
var a = new PolylineMaterialAppearance();
|
||
|
|
|
||
|
|
expect(a.material).toBeDefined();
|
||
|
|
expect(a.material.type).toEqual(Material.ColorType);
|
||
|
|
expect(a.vertexShaderSource).toBeDefined();
|
||
|
|
expect(a.fragmentShaderSource).toBeDefined();
|
||
|
|
expect(a.renderState).toEqual(Appearance.getDefaultRenderState(true, false));
|
||
|
|
expect(a.vertexFormat).toEqual(PolylineMaterialAppearance.VERTEX_FORMAT);
|
||
|
|
expect(a.translucent).toEqual(true);
|
||
|
|
expect(a.closed).toEqual(false);
|
||
|
|
});
|
||
|
|
|
||
|
|
it('renders', function() {
|
||
|
|
primitive = new Primitive({
|
||
|
|
geometryInstances : new GeometryInstance({
|
||
|
|
geometry : new PolylineGeometry({
|
||
|
|
positions : [
|
||
|
|
new Cartesian3(0.0, -10000000, 0.0),
|
||
|
|
new Cartesian3(0.0, 1000000.0, 0.0)
|
||
|
|
],
|
||
|
|
width : 10.0,
|
||
|
|
vertexFormat : PolylineMaterialAppearance.VERTEX_FORMAT,
|
||
|
|
followSurface: false
|
||
|
|
})
|
||
|
|
}),
|
||
|
|
appearance : new PolylineMaterialAppearance({
|
||
|
|
material : Material.fromType(Material.PolylineOutlineType),
|
||
|
|
translucent : false
|
||
|
|
}),
|
||
|
|
asynchronous : false
|
||
|
|
});
|
||
|
|
|
||
|
|
expect(scene).toRender([0, 0, 0, 255]);
|
||
|
|
|
||
|
|
scene.primitives.add(primitive);
|
||
|
|
expect(scene).notToRender([0, 0, 0, 255]);
|
||
|
|
});
|
||
|
|
|
||
|
|
}, 'WebGL');
|