UNPKG

polygonjs-engine

Version:

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

70 lines (69 loc) 1.71 kB
import { Vector3 } from 'three/src/math/Vector3'; import { BufferGeometry } from 'three/src/core/BufferGeometry'; export declare enum PointsCountMode { SEGMENTS_COUNT = "segments count", SEGMENTS_LENGTH = "segments length" } export declare const POINTS_COUNT_MODE: PointsCountMode[]; export declare enum JoinMode { ABC = "abc", ACB = "acb", AB = "ab", BC = "bc", AC = "ac" } export declare const JOIN_MODES: JoinMode[]; interface Circle3PointsParameters { arc: boolean; center: boolean; pointsCountMode: PointsCountMode; segmentsLength: number; segmentsCount: number; full: boolean; joinMode: JoinMode; addIdAttribute: boolean; addIdnAttribute: boolean; } interface CreatedGeometries { arc?: BufferGeometry; center?: BufferGeometry; } export declare class Circle3Points { private params; private a; private b; private c; private an; private bn; private cn; private ac; private ab; private ab_x_ac; private part0; private part1; private divider; private a_center; private center; private normal; private radius; private x; private y; private z; private angle_ab; private angle_ac; private angle_bc; private angle; private x_rotated; private _created_geometries; constructor(params: Circle3PointsParameters); created_geometries(): CreatedGeometries; create(a: Vector3, b: Vector3, c: Vector3): void; private _create_arc; private _create_center; private _compute_axis; private _compute_angle; private _points_count; private _set_x_from_joinMode; private _set_angle_from_joinMode; } export {};