/** * GameLib.D3.API.Geometry.Buffer.Extrude * @param apiGeometry * @param shapes * @param curveSegments * @param steps * @param amount * @param bevelEnabled * @param bevelThickness * @param bevelSize * @param bevelSegments * @param extrudePath * @param frames * @param UVGenerator * @constructor */ GameLib.D3.API.Geometry.Buffer.Extrude = function( apiGeometry, shapes, curveSegments, steps, amount, bevelEnabled, bevelThickness, bevelSize, bevelSegments, extrudePath, frames, UVGenerator ) { if (GameLib.Utils.UndefinedOrNull(apiGeometry)) { apiGeometry = { geometryType: GameLib.D3.API.Geometry.GEOMETRY_TYPE_BUFFER_EXTRUDE }; } if (GameLib.Utils.UndefinedOrNull(apiGeometry.geometryType)) { apiGeometry.geometryType = GameLib.D3.API.Geometry.GEOMETRY_TYPE_BUFFER_EXTRUDE; } if (GameLib.Utils.UndefinedOrNull(shapes)) { shapes = []; } this.shapes = shapes; if (GameLib.Utils.UndefinedOrNull(curveSegments)) { curveSegments = 12; } this.curveSegments = curveSegments; if (GameLib.Utils.UndefinedOrNull(steps)) { steps = 1; } this.steps = steps; if (GameLib.Utils.UndefinedOrNull(amount)) { amount = 100; } this.amount = amount; if (GameLib.Utils.UndefinedOrNull(bevelEnabled)) { bevelEnabled = true; } this.bevelEnabled = bevelEnabled; if (GameLib.Utils.UndefinedOrNull(bevelThickness)) { bevelThickness = 6; } this.bevelThickness = bevelThickness; if (GameLib.Utils.UndefinedOrNull(bevelSegments)) { bevelSegments = 3; } this.bevelSegments = bevelSegments; if (GameLib.Utils.UndefinedOrNull(extrudePath)) { extrudePath = null; } this.extrudePath = extrudePath; if (GameLib.Utils.UndefinedOrNull(frames)) { frames = null; } this.frames = frames; if (GameLib.Utils.UndefinedOrNull(UVGenerator)) { UVGenerator = null; } this.UVGenerator = UVGenerator; GameLib.D3.API.Geometry.Buffer.call( this, apiGeometry, apiGeometry.attributes, apiGeometry.drawRange, apiGeometry.groups, apiGeometry.index, apiGeometry.morphAttributes ); }; GameLib.D3.API.Geometry.Buffer.Extrude.prototype = Object.create(GameLib.D3.API.Geometry.Buffer.prototype); GameLib.D3.API.Geometry.Buffer.Extrude.prototype.constructor = GameLib.D3.API.Geometry.Buffer.Extrude;