mirror of
https://github.com/troisjs/trois.git
synced 2024-11-24 12:22:03 +08:00
20 lines
799 B
TypeScript
20 lines
799 B
TypeScript
import { geometryComponent } from './Geometry'
|
|
import { CylinderGeometry } from 'three'
|
|
|
|
export const props = {
|
|
radiusTop: { type: Number, default: 1 },
|
|
radiusBottom: { type: Number, default: 1 },
|
|
height: { type: Number, default: 1 },
|
|
radialSegments: { type: Number, default: 8 },
|
|
heightSegments: { type: Number, default: 1 },
|
|
openEnded: { type: Boolean, default: false },
|
|
thetaStart: { type: Number, default: 0 },
|
|
thetaLength: { type: Number, default: Math.PI * 2 },
|
|
}
|
|
|
|
export function createGeometry(comp: any): CylinderGeometry {
|
|
return new CylinderGeometry(comp.radiusTop, comp.radiusBottom, comp.height, comp.radialSegments, comp.heightSegments, comp.openEnded, comp.thetaStart, comp.thetaLength)
|
|
}
|
|
|
|
export default geometryComponent('CylinderGeometry', props, createGeometry)
|