From 4605eeddae6da7fd135d0fa8223e19d9dde59b5b Mon Sep 17 00:00:00 2001 From: Alexander Buzin Date: Fri, 30 Jun 2017 18:11:19 +0300 Subject: [PATCH] Fix existing meshes --- src/components/meshes/Box.js | 4 +--- src/components/meshes/Cylinder.js | 6 +----- src/components/meshes/Dodecahedron.js | 4 +--- src/components/meshes/Extrude.js | 4 ++-- src/components/meshes/Icosahedron.js | 4 +--- src/components/meshes/Lathe.js | 4 +--- src/components/meshes/Line.js | 18 +++--------------- src/components/meshes/Octahedron.js | 4 +--- src/components/meshes/Parametric.js | 4 +--- src/components/meshes/Plane.js | 6 +----- src/components/meshes/Polyhedron.js | 4 +--- src/components/meshes/Ring.js | 4 +--- src/components/meshes/Shape.js | 4 +--- src/components/meshes/Sphere.js | 4 +--- src/components/meshes/Tetrahedron.js | 4 +--- src/components/meshes/Text.js | 3 ++- src/components/meshes/Tube.js | 4 +--- 17 files changed, 21 insertions(+), 64 deletions(-) diff --git a/src/components/meshes/Box.js b/src/components/meshes/Box.js index a9ef9fa7..172bfa98 100644 --- a/src/components/meshes/Box.js +++ b/src/components/meshes/Box.js @@ -86,9 +86,7 @@ class Box extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? BoxBufferGeometry : BoxGeometry; - - const geometry = new GConstruct( + const geometry = new (params.buffer ? BoxBufferGeometry : BoxGeometry)( params.geometry.width, params.geometry.height, params.geometry.depth, diff --git a/src/components/meshes/Cylinder.js b/src/components/meshes/Cylinder.js index a3c8b977..e8e14727 100644 --- a/src/components/meshes/Cylinder.js +++ b/src/components/meshes/Cylinder.js @@ -116,9 +116,7 @@ class Cylinder extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer && !params.softbody ? CylinderBufferGeometry : CylinderGeometry; - - const geometry = new GConstruct( + const geometry = new (params.buffer ? CylinderBufferGeometry : CylinderGeometry)( params.geometry.radiusTop, params.geometry.radiusBottom, params.geometry.height, @@ -129,8 +127,6 @@ class Cylinder extends MeshComponent { params.geometry.thetaLength ); - if (params.softbody) this.proccessSoftbodyGeometry(geometry); - return geometry; } } diff --git a/src/components/meshes/Dodecahedron.js b/src/components/meshes/Dodecahedron.js index 892ad830..b6535781 100644 --- a/src/components/meshes/Dodecahedron.js +++ b/src/components/meshes/Dodecahedron.js @@ -86,9 +86,7 @@ class Dodecahedron extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer && !params.softbody ? DodecahedronBufferGeometry : DodecahedronGeometry; - - return new GConstruct( + return new (params.buffer ? DodecahedronBufferGeometry : DodecahedronGeometry)( params.geometry.radius, params.geometry.detail ); diff --git a/src/components/meshes/Extrude.js b/src/components/meshes/Extrude.js index d846ba5c..84accb91 100644 --- a/src/components/meshes/Extrude.js +++ b/src/components/meshes/Extrude.js @@ -111,12 +111,12 @@ class Extrude extends MeshComponent { } buildGeometry(params = {}) { - const extrudeGeometry = new ExtrudeGeometry( + const geometry = new ExtrudeGeometry( params.geometry.shapes, params.geometry.options ); - return params.buffer ? new BufferGeometry().fromGeometry(extrudeGeometry) : extrudeGeometry; + return params.buffer ? new BufferGeometry().fromGeometry(geometry) : geometry; } } diff --git a/src/components/meshes/Icosahedron.js b/src/components/meshes/Icosahedron.js index 82d15e8b..128b54e1 100644 --- a/src/components/meshes/Icosahedron.js +++ b/src/components/meshes/Icosahedron.js @@ -82,9 +82,7 @@ class Icosahedron extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer && !params.softbody ? IcosahedronBufferGeometry : IcosahedronGeometry; - - return new GConstruct( + return new (params.buffer ? IcosahedronBufferGeometry : IcosahedronGeometry)( params.geometry.radius, params.geometry.detail ); diff --git a/src/components/meshes/Lathe.js b/src/components/meshes/Lathe.js index 5eec3f37..b8d4bb87 100644 --- a/src/components/meshes/Lathe.js +++ b/src/components/meshes/Lathe.js @@ -97,9 +97,7 @@ class Lathe extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer && !params.softbody ? LatheBufferGeometry : LatheGeometry; - - return new GConstruct( + return new (params.buffer ? LatheBufferGeometry : LatheGeometry)( params.geometry.points ); } diff --git a/src/components/meshes/Line.js b/src/components/meshes/Line.js index cb9b3ccf..3c4210ee 100644 --- a/src/components/meshes/Line.js +++ b/src/components/meshes/Line.js @@ -2,8 +2,7 @@ import { Line as LineNative, BufferGeometry, Geometry, - BufferAttribute, - Vector3 + BufferAttribute } from 'three'; import {MeshComponent} from '../../core/MeshComponent'; @@ -35,9 +34,7 @@ class Line extends MeshComponent { * { * geometry: { * curve: false, - * points: 50, - * start: new Vector3(0, 0, 0), - * end: new Vector3(10, 0, 0) + * points: 50 * } * } * @@ -46,9 +43,7 @@ class Line extends MeshComponent { ...MeshComponent.defaults, geometry: { curve: false, - points: 50, - start: new Vector3(0, 0, 0), - end: new Vector3(10, 0, 0) + points: 50 } }; @@ -82,13 +77,6 @@ class Line extends MeshComponent { buildGeometry(params = {}) { const geometry = params.buffer ? new BufferGeometry() : new Geometry(); - if (params.geometry.curve === false) { - geometry.vertices.push(params.geometry.start); - geometry.vertices.push(params.geometry.end); - - return geometry; - } - if (params.buffer) { const pp = params.geometry.curve.getPoints(params.geometry.points); const verts = new Float32Array(pp.length * 3); diff --git a/src/components/meshes/Octahedron.js b/src/components/meshes/Octahedron.js index 0427651f..db9c8c17 100644 --- a/src/components/meshes/Octahedron.js +++ b/src/components/meshes/Octahedron.js @@ -73,9 +73,7 @@ class Octahedron extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer && !params.softbody ? OctahedronBufferGeometry : OctahedronGeometry; - - return new GConstruct( + return new (params.buffer ? OctahedronBufferGeometry : OctahedronGeometry)( params.geometry.radius, params.geometry.detail ); diff --git a/src/components/meshes/Parametric.js b/src/components/meshes/Parametric.js index a732adc5..7cef7014 100644 --- a/src/components/meshes/Parametric.js +++ b/src/components/meshes/Parametric.js @@ -79,9 +79,7 @@ class Parametric extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer && !params.softbody ? ParametricBufferGeometry : ParametricGeometry; - - return new GConstruct( + return new (params.buffer ? ParametricBufferGeometry : ParametricGeometry)( params.geometry.func, params.geometry.slices, params.geometry.stacks diff --git a/src/components/meshes/Plane.js b/src/components/meshes/Plane.js index 123f5969..27800013 100644 --- a/src/components/meshes/Plane.js +++ b/src/components/meshes/Plane.js @@ -87,17 +87,13 @@ class Plane extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer || params.softbody ? PlaneBufferGeometry : PlaneGeometry; - - const geometry = new GConstruct( + const geometry = new (params.buffer ? PlaneBufferGeometry : PlaneGeometry)( params.geometry.width, params.geometry.height, params.geometry.wSegments, params.geometry.hSegments ); - if (params.softbody) this.proccessSoftbodyGeometry(geometry); - return geometry; } } diff --git a/src/components/meshes/Polyhedron.js b/src/components/meshes/Polyhedron.js index c75cb1c3..3a421b1d 100644 --- a/src/components/meshes/Polyhedron.js +++ b/src/components/meshes/Polyhedron.js @@ -120,9 +120,7 @@ class Polyhedron extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? PolyhedronBufferGeometry : PolyhedronGeometry; - - return new GConstruct( + return new (params.buffer ? PolyhedronBufferGeometry : PolyhedronGeometry)( params.geometry.verticesOfCube, params.geometry.indicesOfFaces, params.geometry.radius, diff --git a/src/components/meshes/Ring.js b/src/components/meshes/Ring.js index 21490b1f..2adb125a 100644 --- a/src/components/meshes/Ring.js +++ b/src/components/meshes/Ring.js @@ -112,9 +112,7 @@ class Ring extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? RingBufferGeometry : RingGeometry; - - return new GConstruct( + return new (params.buffer ? RingBufferGeometry : RingGeometry)( params.geometry.innerRadius, params.geometry.outerRadius, params.geometry.thetaSegments, diff --git a/src/components/meshes/Shape.js b/src/components/meshes/Shape.js index e2644afe..ee8bd83d 100644 --- a/src/components/meshes/Shape.js +++ b/src/components/meshes/Shape.js @@ -92,9 +92,7 @@ class Shape extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? ShapeBufferGeometry : ShapeGeometry; - - return new GConstruct( + return new (params.buffer ? ShapeBufferGeometry : ShapeGeometry)( params.geometry.shapes ); } diff --git a/src/components/meshes/Sphere.js b/src/components/meshes/Sphere.js index 561e9b7f..8a19eb4a 100644 --- a/src/components/meshes/Sphere.js +++ b/src/components/meshes/Sphere.js @@ -87,9 +87,7 @@ class Sphere extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? SphereBufferGeometry : SphereGeometry; - - const geometry = new GConstruct( + const geometry = new (params.buffer ? SphereBufferGeometry : SphereGeometry)( params.geometry.radius, params.geometry.widthSegments, params.geometry.heightSegments diff --git a/src/components/meshes/Tetrahedron.js b/src/components/meshes/Tetrahedron.js index 588cc337..3308b140 100644 --- a/src/components/meshes/Tetrahedron.js +++ b/src/components/meshes/Tetrahedron.js @@ -91,9 +91,7 @@ class Tetrahedron extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? TetrahedronBufferGeometry : TetrahedronGeometry; - - return new GConstruct( + return new (params.buffer ? TetrahedronBufferGeometry : TetrahedronGeometry)( params.geometry.radius, params.geometry.detail ); diff --git a/src/components/meshes/Text.js b/src/components/meshes/Text.js index 509e69b4..3c3ec860 100644 --- a/src/components/meshes/Text.js +++ b/src/components/meshes/Text.js @@ -108,7 +108,7 @@ class Text extends MeshComponent { } build(params = {}) { - const promise = new Promise((resolve) => { + const promise = new Promise(resolve => { FontLoader.load(params.geometry.parameters.font, font => { params.geometry.parameters.font = font; @@ -117,6 +117,7 @@ class Text extends MeshComponent { params.geometry.text, params.geometry.parameters ), + material: params.material }); diff --git a/src/components/meshes/Tube.js b/src/components/meshes/Tube.js index 12cba394..567ebcce 100644 --- a/src/components/meshes/Tube.js +++ b/src/components/meshes/Tube.js @@ -118,9 +118,7 @@ class Tube extends MeshComponent { } buildGeometry(params = {}) { - const GConstruct = params.buffer ? TubeBufferGeometry : TubeGeometry; - - const geometry = new GConstruct( + const geometry = new (params.buffer ? TubeBufferGeometry : TubeGeometry)( params.geometry.path, params.geometry.segments, params.geometry.radius,