threepipe
Version:
A modern 3D viewer framework built on top of three.js, written in TypeScript, designed to make creating high-quality, modular, and extensible 3D experiences on the web simple and enjoyable.
30 lines • 1.2 kB
TypeScript
import { Float32BufferAttribute } from 'three';
import { AGeometryGenerator } from '../AGeometryGenerator';
import { IGeometry } from '../../../core/IGeometry';
import { UiObjectConfig } from 'uiconfig.js';
export interface ShapeGeometryGeneratorParams {
shapeType: 'rectangle' | 'circle' | 'polygon';
width: number;
height: number;
circleRadius: number;
circleSegments: number;
sides: number;
polygonRadius: number;
curveSegments: number;
}
/**
* Generates a flat 2D shape geometry from preset shape types.
* Uses three.js ShapeGeometry internally.
*/
export declare class ShapeGeometryGenerator extends AGeometryGenerator<ShapeGeometryGeneratorParams> {
constructor(type?: string, defaultParams?: Partial<ShapeGeometryGeneratorParams>);
defaultParams: ShapeGeometryGeneratorParams;
protected _generateData(params: ShapeGeometryGeneratorParams): {
indices: number[];
vertices: Float32BufferAttribute;
normals: Float32BufferAttribute;
uvs: Float32BufferAttribute;
};
createUiConfig(geometry: IGeometry): UiObjectConfig[];
}
//# sourceMappingURL=../../../src/plugins/geometry/primitives/ShapeGeometryGenerator.d.ts.map