UNPKG

@awayjs/scene

Version:
70 lines 2.34 kB
import { Vector3D, Matrix3D, Box, Sphere } from '@awayjs/core'; import { PickingCollision, _Pick_PickableBase, IEntityTraverser, IEntity, IPickable } from '@awayjs/view'; import { IMaterial } from '@awayjs/renderer'; import { DisplayObject } from './DisplayObject'; /** * A Line Segment primitive. */ export declare class LineSegment extends DisplayObject implements IPickable { static assetType: string; _startPosition: Vector3D; _endPosition: Vector3D; _halfThickness: number; _pickObjects: Record<number, _Pick_PickableBase>; /** * */ get assetType(): string; /** * */ get startPosition(): Vector3D; set startPosition(value: Vector3D); /** * */ get endPosition(): Vector3D; set endPosition(value: Vector3D); /** * */ get thickness(): number; set thickness(value: number); /** * Create a line segment * * @param startPosition Start position of the line segment * @param endPosition Ending position of the line segment * @param thickness Thickness of the line */ constructor(material: IMaterial, startPosition: Vector3D, endPosition: Vector3D, thickness?: number); invalidateElements(): void; getEntity(): IEntity; _acceptTraverser(traverser: IEntityTraverser): void; } import { _Stage_ElementsBase, _Render_MaterialBase, _Render_RenderableBase, Style } from '@awayjs/renderer'; /** * @class away.pool._Render_LineSegment */ export declare class _Render_LineSegment extends _Render_RenderableBase { private static _lineGraphics; /** * //TODO * * @returns {base.LineElements} * @protected */ protected _getStageElements(): _Stage_ElementsBase; protected _getRenderMaterial(): _Render_MaterialBase; protected _getStyle(): Style; } /** * @class away.pool._Render_Shape */ export declare class _Pick_LineSegment extends _Pick_PickableBase { hitTestPoint(x: number, y: number, z: number): boolean; getBoxBounds(matrix3D?: Matrix3D, strokeFlag?: boolean, cache?: Box, target?: Box): Box; getSphereBounds(center: Vector3D, matrix3D?: Matrix3D, strokeFlag?: boolean, cache?: Sphere, target?: Sphere): Sphere; testCollision(collision: PickingCollision, closestFlag: boolean): boolean; } //# sourceMappingURL=LineSegment.d.ts.map