Spaces:
Sleeping
Sleeping
File size: 1,517 Bytes
2b7aae2 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | import { Curve } from './../extras/core/Curve';
import { Vector2 } from './../math/Vector2';
import { Vector3 } from './../math/Vector3';
import { Shape } from './../extras/core/Shape';
import { BufferGeometry } from './../core/BufferGeometry';
export interface ExtrudeGeometryOptions {
/**
* @default 12
*/
curveSegments?: number | undefined;
/**
* @default 1
*/
steps?: number | undefined;
/**
* @default 100
*/
depth?: number | undefined;
/**
* @default true
*/
bevelEnabled?: boolean | undefined;
/**
* @default 6
*/
bevelThickness?: number | undefined;
bevelSize?: number | undefined;
/**
* @default 0
*/
bevelOffset?: number | undefined;
/**
* @default 3
*/
bevelSegments?: number | undefined;
extrudePath?: Curve<Vector3> | undefined;
UVGenerator?: UVGenerator | undefined;
}
export interface UVGenerator {
generateTopUV(geometry: ExtrudeGeometry, vertices: number[], indexA: number, indexB: number, indexC: number): Vector2[];
generateSideWallUV(geometry: ExtrudeGeometry, vertices: number[], indexA: number, indexB: number, indexC: number, indexD: number): Vector2[];
}
export class ExtrudeGeometry extends BufferGeometry {
constructor(shapes?: Shape | Shape[], options?: ExtrudeGeometryOptions);
/**
* @default 'ExtrudeGeometry'
*/
type: string;
addShapeList(shapes: Shape[], options?: any): void;
addShape(shape: Shape, options?: any): void;
static fromJSON(data: any): ExtrudeGeometry;
}
export { ExtrudeGeometry as ExtrudeBufferGeometry };
|