UNPKG

angular-three-rapier

Version:
107 lines (106 loc) 6.96 kB
import { ElementRef } from '@angular/core'; import { RigidBody } from '@dimforge/rapier3d-compat'; import { NgtEuler, NgtQuaternion, NgtVector3 } from 'angular-three'; import { Object3D, Vector3 } from 'three'; import { NgtrColliderOptions, NgtrColliderShape, NgtrCollisionEnterPayload, NgtrCollisionExitPayload, NgtrContactForcePayload, NgtrIntersectionEnterPayload, NgtrIntersectionExitPayload, NgtrRigidBodyOptions, NgtrRigidBodyType } from './types'; import * as i0 from "@angular/core"; export declare class NgtrAnyCollider { position: import("@angular/core").InputSignal<NgtVector3 | undefined>; rotation: import("@angular/core").InputSignal<NgtEuler | undefined>; scale: import("@angular/core").InputSignal<NgtVector3 | undefined>; quaternion: import("@angular/core").InputSignal<NgtQuaternion | undefined>; userData: import("@angular/core").InputSignal<Record<string, any> | undefined>; name: import("@angular/core").InputSignal<string | undefined>; options: import("@angular/core").InputSignalWithTransform<NgtrColliderOptions, "" | Partial<NgtrRigidBodyOptions>>; private object3DParameters; shape: import("@angular/core").ModelSignal<NgtrColliderShape | undefined>; args: import("@angular/core").ModelSignal<unknown[]>; collisionEnter: import("@angular/core").OutputEmitterRef<NgtrCollisionEnterPayload>; collisionExit: import("@angular/core").OutputEmitterRef<NgtrCollisionExitPayload>; intersectionEnter: import("@angular/core").OutputEmitterRef<NgtrIntersectionEnterPayload>; intersectionExit: import("@angular/core").OutputEmitterRef<NgtrIntersectionExitPayload>; contactForce: import("@angular/core").OutputEmitterRef<NgtrContactForcePayload>; private sensor; private collisionGroups; private solverGroups; private friction; private frictionCombineRule; private restitution; private restitutionCombineRule; private activeCollisionTypes; private contactSkin; private mass; private massProperties; private density; private rigidBody; private physics; private objectRef; private scaledArgs; private collider; constructor(); get worldScale(): Vector3; setShape(shape: NgtrColliderShape): void; setArgs(args: unknown[]): void; private createColliderStateEffect; private createColliderEventsEffect; private updateColliderEffect; private updateMassPropertiesEffect; private createColliderState; private scaleVertices; static ɵfac: i0.ɵɵFactoryDeclaration<NgtrAnyCollider, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<NgtrAnyCollider, "ngt-object3D[ngtrCollider]", never, { "position": { "alias": "position"; "required": false; "isSignal": true; }; "rotation": { "alias": "rotation"; "required": false; "isSignal": true; }; "scale": { "alias": "scale"; "required": false; "isSignal": true; }; "quaternion": { "alias": "quaternion"; "required": false; "isSignal": true; }; "userData": { "alias": "userData"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "shape": { "alias": "ngtrCollider"; "required": false; "isSignal": true; }; "args": { "alias": "args"; "required": false; "isSignal": true; }; }, { "shape": "ngtrColliderChange"; "args": "argsChange"; "collisionEnter": "collisionEnter"; "collisionExit": "collisionExit"; "intersectionEnter": "intersectionEnter"; "intersectionExit": "intersectionExit"; "contactForce": "contactForce"; }, never, never, true, never>; } export declare const rigidBodyDefaultOptions: NgtrRigidBodyOptions; export declare class NgtrRigidBody { type: import("@angular/core").InputSignalWithTransform<NgtrRigidBodyType, "" | NgtrRigidBodyType | undefined>; position: import("@angular/core").InputSignal<NgtVector3 | undefined>; rotation: import("@angular/core").InputSignal<NgtEuler | undefined>; scale: import("@angular/core").InputSignal<NgtVector3 | undefined>; quaternion: import("@angular/core").InputSignal<NgtQuaternion | undefined>; userData: import("@angular/core").InputSignal<Record<string, any> | undefined>; options: import("@angular/core").InputSignalWithTransform<NgtrRigidBodyOptions, "" | Partial<NgtrRigidBodyOptions>>; private object3DParameters; wake: import("@angular/core").OutputEmitterRef<void>; sleep: import("@angular/core").OutputEmitterRef<void>; collisionEnter: import("@angular/core").OutputEmitterRef<NgtrCollisionEnterPayload>; collisionExit: import("@angular/core").OutputEmitterRef<NgtrCollisionExitPayload>; intersectionEnter: import("@angular/core").OutputEmitterRef<NgtrIntersectionEnterPayload>; intersectionExit: import("@angular/core").OutputEmitterRef<NgtrIntersectionExitPayload>; contactForce: import("@angular/core").OutputEmitterRef<NgtrContactForcePayload>; private canSleep; private colliders; private transformState; private gravityScale; private dominanceGroup; private ccd; private softCcdPrediction; private additionalSolverIterations; private linearDamping; private angularDamping; private lockRotations; private lockTranslations; private enabledRotations; private enabledTranslations; private angularVelocity; private linearVelocity; objectRef: ElementRef<Object3D<import("three").Object3DEventMap>>; private physics; private bodyType; private bodyDesc; rigidBody: import("@angular/core").Signal<RigidBody | null>; protected childColliderOptions: import("@angular/core").Signal<{ colliderOptions: NgtrColliderOptions; args: unknown[]; shape: NgtrColliderShape; rotation: NgtEuler; position: NgtVector3; scale: NgtVector3; }[]>; constructor(); private createRigidBodyStateEffect; private createRigidBodyEventsEffect; private updateRigidBodyEffect; private createRigidBodyState; static ɵfac: i0.ɵɵFactoryDeclaration<NgtrRigidBody, never>; static ɵcmp: i0.ɵɵComponentDeclaration<NgtrRigidBody, "ngt-object3D[ngtrRigidBody]", ["rigidBody"], { "type": { "alias": "ngtrRigidBody"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "rotation": { "alias": "rotation"; "required": false; "isSignal": true; }; "scale": { "alias": "scale"; "required": false; "isSignal": true; }; "quaternion": { "alias": "quaternion"; "required": false; "isSignal": true; }; "userData": { "alias": "userData"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "wake": "wake"; "sleep": "sleep"; "collisionEnter": "collisionEnter"; "collisionExit": "collisionExit"; "intersectionEnter": "intersectionEnter"; "intersectionExit": "intersectionExit"; "contactForce": "contactForce"; }, never, ["*"], true, never>; }