Camera
Pakket: @aspose/3d (v24.12.0)
Camera is een Entity die kan worden gekoppeld aan een Node om een gezichtspunt in de scène te definiëren. Het ondersteunt zowel perspectief- als orthografische projecties, gecontroleerd door de projectionType eigenschap. Camera‑parameters worden opgeslagen in het 3D‑bestand wanneer de scène wordt opgeslagen in een formaat dat camera’s ondersteunt (FBX, COLLADA, glTF).
export class Camera extends EntityImageRenderOptions
A3DObject ← SceneObject ← Entity ← Camera
ImageRenderOptions
Voeg een perspectiefcamera toe aan een scène en configureer zijn frustum.
import { Scene, Node, Camera, ProjectionType } from '@aspose/3d';
const scene = new Scene();
const camNode = scene.rootNode.createChildNode('mainCamera');
const camera = new Camera('mainCamera', ProjectionType.PERSPECTIVE);
camNode.entity = camera;
camera.nearPlane = 0.1;
camera.farPlane = 500;
camera.fieldOfView = 60;
camera.aspect = 16 / 9;
scene.save('output.gltf');
console.log(`Camera projection: ${camera.projectionType}`);
// Camera projection: PERSPECTIVE
ImageRenderOptions
| Name | Type | Access | Description |
|---|---|---|---|
name | string | Read/Write | Gets the name. |
parentNodes | any[] | Read | Gets the parent nodes. |
excluded | boolean | Read/Write | Gets the excluded. |
parentNode | any | Read/Write | Gets the parent node. |
rotationMode | any | Read/Write | Gets the rotation mode. |
nearPlane | number | Read/Write | Gets the near plane. |
farPlane | number | Read/Write | Gets the far plane. |
aspect | number | Read/Write | Gets the aspect. |
orthoHeight | number | Read/Write | Gets the ortho height. |
up | any | Read/Write | Gets the up. |
lookAt | any | Read/Write | Gets the look at. |
direction | any | Read/Write | Gets the direction. |
target | any | Read/Write | Gets the target. |
apertureMode | any | Read/Write | Gets the aperture mode. |
fieldOfView | number | Read/Write | Gets the field of view. |
fieldOfViewX | number | Read/Write | Gets the field of view x. |
fieldOfViewY | number | Read/Write | Gets the field of view y. |
width | number | Read/Write | Gets the width. |
height | number | Read/Write | Gets the height. |
aspectRatio | number | Read/Write | Gets the aspect ratio. |
magnification | any | Read/Write | Gets the magnification. |
projectionType | string | Read/Write | Gets the projection type. |
| Signature | Description |
|---|---|
| `constructor(name: string | null, projectionType: any)` |
moveForward(_distance: number) | Moves the camera forward by the specified distance |
getBoundingBox() → any | Returns the bounding box. |
getEntityRendererKey() → any | Not implemented in the FOSS edition — throws at runtime. Returns the entity renderer key. |
| `removeProperty(_prop: Property | string) → boolean` |
getProperty(_property: string) → any | Returns the value of the specified property |
setProperty(_property: string, _value: any) | Sets the property value. |
findProperty(_property: string) → `Property | null` |
ImageRenderOptions
moveForward(distance)
Verplaatst de camera naar voren langs zijn kijkrichting met de opgegeven afstand.
moveForward(distance: number): voidImageRenderOptions
distance number
De afstand om naar voren te bewegen. Negatieve waarden verplaatsen de camera naar achteren.
ImageRenderOptions
void
ImageRenderOptions
import { Scene, Camera, ProjectionType } from '@aspose/3d';
const scene = new Scene();
const camNode = scene.rootNode.createChildNode('cam');
const camera = new Camera('cam', ProjectionType.PERSPECTIVE);
camNode.entity = camera;
camera.moveForward(10);
console.log('Camera moved forward by 10 units.');ImageRenderOptions
- In de bron,
Cameraerft vanEntity.Lightbreidt ook uitCamera, wat betekentLightobjecten hebben alle camera‑eigenschappen in de typehiërarchie; dit weerspiegelt het FBX‑gegevensmodel waarin lampen en camera’s een gemeenschappelijk basisknooppunttype delen. - Gebruik de
ProjectionTypeklasseconstanten (ProjectionType.PERSPECTIVE,ProjectionType.ORTHOGRAPHIC) in plaats van ruwe tekenreeksletterlijke waarden voor typeveiligheid.