Class Camera

Pakke: @aspose/3d (v24.12.0)

Camera er en Entity der kan vedhæftes til en Node for at definere et synspunkt i scenen. Den understøtter både perspektiv- og ortografiske projektioner, styret af projectionType egenskaben. Kamera‑parametre gemmes i 3D‑filen, når scenen gemmes i et format, der understøtter kameraer (FBX, COLLADA, glTF).

export class Camera extends Entity

Properties

Destinationsfilens sti. Filendelsen bestemmer outputformatet (f.eks. .glb → GLB, .gltf → glTF JSON, .stl → STL).

Properties

Tilføj et perspektivkamera til en scene og konfigurer dets 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

Properties

PropertiesPropertiesPropertiesProperties
namestring''Navnet på dette kamera, der bruges til at identificere det i scenegrafen.
projectionType`ProjectionTypestring`ProjectionType.PERSPECTIVE
nearPlanenumber0.1Afstand fra kameraet til den nærmeste klippeplan. Objekter, der er tættere på end denne værdi, renderes ikke.
farPlanenumber1000.0Afstand fra kameraet til den fjerneste klippeplan. Objekter, der er længere væk end denne værdi, renderes ikke.
aspectnumber1.0Bredde‑til‑højde‑aspektforholdet for kameraets viewport.
fieldOfViewnumber0.0Diagonal synsfelt i grader (perspektivprojektion).
fieldOfViewXnumber0.0Horisontalt synsfelt i grader.
fieldOfViewYnumber0.0Vertikalt synsfelt i grader.
orthoHeightnumber100.0Højden på den ortografiske projektionens volumen. Kun relevant når projectionType er 'ORTHOGRAPHIC'.
widthnumber0.0Sensor‑ eller viewport‑bredde, brugt når apertureMode styrer FOV‑afledning.
heightnumber0.0Sensor‑ eller viewport‑højde.
aspectRationumber1.0Alias for aspektforholdet, leveret for kompatibilitet med nogle FBX‑oprindelige scener.

Properties

moveForward(distance)

Flytter kameraet fremad langs dets kig‑retning med den angivne afstand.

moveForward(distance: number): void

Properties

distance number

Afstanden, der skal flyttes fremad. Negative værdier flytter kameraet bagud.

Properties

void

Properties

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.');

Properties

  • I kilden, Camera arver fra Entity. Light udvider også Camera, hvilket betyder Light objekter har alle kameraegenskaber i typehierarkiet; dette afspejler FBX-datamodellen, hvor lys og kameraer deler en fælles basenodetype.
  • Brug ProjectionType klassekonstanter (ProjectionType.PERSPECTIVE, ProjectionType.ORTHOGRAPHIC) i stedet for rå strenglitteraler for typesikkerhed.
 Dansk