UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

41 lines (40 loc) 1.34 kB
import { BaseSopOperation } from './_Base'; import { CoreGroup } from '../../../core/geometry/Group'; import { Vector2, Vector3 } from 'three'; import { InputCloneMode } from '../../../engine/poly/InputCloneMode'; import { DefaultOperationParams } from '../../../core/operations/_Base'; interface SphereSopParams extends DefaultOperationParams { type: number; radius: number; resolution: Vector2; open: boolean; phiStart: number; phiLength: number; thetaStart: number; thetaLength: number; detail: number; center: Vector3; asLines: boolean; } declare enum SphereType { DEFAULT = "default", ISOCAHEDRON = "isocahedron" } type SphereTypes = { [key in SphereType]: number; }; export declare const SPHERE_TYPE: SphereTypes; export declare const SPHERE_TYPES: Array<SphereType>; export declare class SphereSopOperation extends BaseSopOperation { static readonly DEFAULT_PARAMS: SphereSopParams; static readonly INPUT_CLONED_STATE = InputCloneMode.NEVER; static type(): Readonly<'sphere'>; cook(inputCoreGroups: CoreGroup[], params: SphereSopParams): CoreGroup; private _cookWithoutInput; private _cookWithInput; private _createSphereObject; private _createRequiredGeometry; private _createDefaultSphere; private _createDefaultIsocahedron; } export {};