123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- import {
- Vector3
- } from '../../../src/Three';
- export interface RandomGenerator {
- random(): number;
- getSeed(): number;
- setSeed( seed: number ): void;
- }
- export interface LightningSegment {
- iteration: number;
- pos0: Vector3;
- pos1: Vector3;
- linPos0: Vector3;
- linPos1: Vector3;
- up0: Vector3;
- up1: Vector3;
- radius0: number;
- radius1: number;
- fraction0: number;
- fraction1: number;
- positionVariationFactor: number;
- }
- export interface LightningSubray {
- seed: number;
- maxIterations: number;
- recursion: number;
- pos0: Vector3;
- pos1: Vector3;
- linPos0: Vector3;
- linPos1: Vector3;
- up0: Vector3;
- up1: Vector3;
- radius0: number;
- radius1: number;
- birthTime: number;
- deathTime: number;
- timeScale: number;
- roughness: number;
- straightness: number;
- propagationTimeFactor: number;
- vanishingTimeFactor: number;
- endPropagationTime: number;
- beginVanishingTime: number;
- }
- export interface RayParameters {
- sourceOffset?: Vector3;
- destOffset?: Vector3;
- timeScale?: number;
- roughness?: number;
- straightness?: number;
- up0?: Vector3;
- up1?: Vector3;
- radius0?: number;
- radius1?: number;
- radius0Factor? : number;
- radius1Factor? : number;
- minRadius? : number;
- isEternal?: boolean;
- birthTime?: number;
- deathTime?: number;
- propagationTimeFactor?: number;
- vanishingTimeFactor?: number;
- subrayPeriod?: number;
- subrayDutyCycle?: number;
- maxIterations?: number;
- isStatic?: boolean;
- ramification?: number;
- maxSubrayRecursion?: number;
- recursionProbability?: number;
- generateUVs?: boolean;
- randomGenerator?: RandomGenerator;
- noiseSeed?: number;
- onDecideSubrayCreation?: ( segment: LightningSegment, lightningStrike: LightningStrike ) => void;
- onSubrayCreation?: ( segment: LightningSegment, parentSubray: LightningSubray, childSubray: LightningSubray, lightningStrike: LightningStrike ) => void;
- }
- export class LightningStrike {
- constructor( rayParameters?: RayParameters );
- copyParameters( dest?: RayParameters, source?: RayParameters ): RayParameters;
- // Ray states
- static readonly RAY_INITIALIZED: number;
- static readonly RAY_UNBORN: number;
- static readonly RAY_PROPAGATING: number;
- static readonly RAY_STEADY: number;
- static readonly RAY_VANISHING: number;
- static readonly RAY_EXTINGUISHED: number;
- state: number;
- update( time: number ): void;
- copy( source: LightningStrike ): LightningStrike;
- clone(): LightningStrike;
- }
|