From dc50262033de1e66e28be30e08262dce7bc24c56 Mon Sep 17 00:00:00 2001 From: Jonathan Alvarez-Gutierrez Date: Wed, 17 Jan 2018 13:00:09 -0500 Subject: [PATCH] Update Polyhedron Geometries in "three" (#22889) * Add PolyhedronBufferGeometry and subclasses Added PolyhedronBufferGeometry and the four BufferGeometries subclassing it (TetrahedronBufferGeometry, OctahedronBufferGeometry, DodecahedronBufferGeometry, and IcosahedronBufferGeometry). * Fix constructors for PolyhedronGeometry subclasses The PolyhedronGeometry subclasses all have optional parameters for their constructor, but not all the type definitions were in line on this. --- types/three/three-core.d.ts | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/types/three/three-core.d.ts b/types/three/three-core.d.ts index a2c4b05544..c3401a7737 100644 --- a/types/three/three-core.d.ts +++ b/types/three/three-core.d.ts @@ -6621,9 +6621,13 @@ export class ConeBufferGeometry extends BufferGeometry { export class ConeGeometry extends CylinderGeometry { constructor(radius?: number, height?: number, radialSegment?: number, heightSegment?: number, openEnded?: boolean, thetaStart?: number, thetaLength?: number); } + +export class DodecahedronBufferGeometry extends PolyhedronBufferGeometry { + constructor(radius?: number, detail?: number); +} export class DodecahedronGeometry extends Geometry { - constructor(radius: number, detail: number); + constructor(radius?: number, detail?: number); parameters: { radius: number; @@ -6648,8 +6652,12 @@ export class ExtrudeGeometry extends Geometry { addShape(shape: Shape, options?: any): void; } +export class IcosahedronBufferGeometry extends PolyhedronBufferGeometry { + constructor(radius?: number, detail?: number); +} + export class IcosahedronGeometry extends PolyhedronGeometry { - constructor(radius: number, detail: number); + constructor(radius?: number, detail?: number); } export class LatheBufferGeometry extends BufferGeometry { @@ -6673,9 +6681,13 @@ export class LatheGeometry extends Geometry { phiLength: number; }; } + +export class OctahedronBufferGeometry extends PolyhedronBufferGeometry { + constructor(radius?: number, detail?: number); +} export class OctahedronGeometry extends PolyhedronGeometry { - constructor(radius: number, detail: number); + constructor(radius?: number, detail?: number); } export class ParametricGeometry extends Geometry { @@ -6709,6 +6721,17 @@ export class PlaneGeometry extends Geometry { heightSegments: number; }; } + +export class PolyhedronBufferGeometry extends BufferGeometry { + constructor(vertices: number[], indices: number[], radius: number, detail: number); + + parameters: { + vertices: number[]; + indices: number[]; + radius: number; + detail: number; + } +} export class PolyhedronGeometry extends Geometry { constructor(vertices: number[], indices: number[], radius?: number, detail?: number); @@ -6797,6 +6820,10 @@ export class SphereGeometry extends Geometry { thetaLength: number; }; } + +export class TetrahedronBufferGeometry extends PolyhedronBufferGeometry { + constructor(radius?: number, detail?: number); +} export class TetrahedronGeometry extends PolyhedronGeometry { constructor(radius?: number, detail?: number);