Camera

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

Camera adalah satu Entity yang boleh dilampirkan kepada Node untuk menentukan sudut pandang dalam adegan. Ia menyokong kedua-dua proyeksi perspektif dan ortografik, dikawal oleh projectionType sifat. Parameter kamera disimpan dalam fail 3D apabila adegan disimpan ke format yang menyokong kamera (FBX, COLLADA, glTF).

export class Camera extends Entity

ImageRenderOptions

A3DObject ← SceneObject ← Entity ← Camera

ImageRenderOptions

Tambah kamera perspektif ke dalam adegan dan konfigurasikan frustumnya.

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

NameTypeAccessDescription
namestringRead/WriteGets the name.
parentNodesany[]ReadGets the parent nodes.
excludedbooleanRead/WriteGets the excluded.
parentNodeanyRead/WriteGets the parent node.
rotationModeanyRead/WriteGets the rotation mode.
nearPlanenumberRead/WriteGets the near plane.
farPlanenumberRead/WriteGets the far plane.
aspectnumberRead/WriteGets the aspect.
orthoHeightnumberRead/WriteGets the ortho height.
upanyRead/WriteGets the up.
lookAtanyRead/WriteGets the look at.
directionanyRead/WriteGets the direction.
targetanyRead/WriteGets the target.
apertureModeanyRead/WriteGets the aperture mode.
fieldOfViewnumberRead/WriteGets the field of view.
fieldOfViewXnumberRead/WriteGets the field of view x.
fieldOfViewYnumberRead/WriteGets the field of view y.
widthnumberRead/WriteGets the width.
heightnumberRead/WriteGets the height.
aspectRationumberRead/WriteGets the aspect ratio.
magnificationanyRead/WriteGets the magnification.
projectionTypestringRead/WriteGets the projection type.
SignatureDescription
`constructor(name: stringnull, projectionType: any)`
moveForward(_distance: number)Moves the camera forward by the specified distance
getBoundingBox()anyReturns the bounding box.
getEntityRendererKey()anyNot implemented in the FOSS edition — throws at runtime. Returns the entity renderer key.
`removeProperty(_prop: Propertystring)boolean`
getProperty(_property: string)anyReturns the value of the specified property
setProperty(_property: string, _value: any)Sets the property value.
findProperty(_property: string) → `Propertynull`

ImageRenderOptions

moveForward(distance)

Menggerakkan kamera ke hadapan sepanjang arah pandangannya mengikut jarak yang diberikan.

moveForward(distance: number): void

ImageRenderOptions

distance number

Jarak untuk bergerak ke hadapan. Nilai negatif menggerakkan kamera ke belakang.

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

  • Dalam sumber, Camera mewarisi dari Entity. Light juga meluaskan Camera, yang bermakna Light objek mempunyai semua sifat kamera dalam hierarki jenis; ini mencerminkan model data FBX di mana lampu dan kamera berkongsi jenis nod asas yang sama.
  • Gunakan ProjectionType pemalar kelas (ProjectionType.PERSPECTIVE, ProjectionType.ORTHOGRAPHIC) daripada literal rentetan mentah untuk keselamatan jenis.
 Bahasa Melayu