Camera

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

Camera yra Entity kuris gali būti prijungtas prie Node kad apibrėžtų vaizdą scenoje. Ji palaiko tiek perspektyvines, tiek ortografinės projekcijas, valdomas projectionType savybę. Kameros parametrai saugomi 3D faile, kai scena išsaugoma formatu, kuris palaiko kameras (FBX, COLLADA, glTF).

export class Camera extends Entity

ImageRenderOptions

A3DObject ← SceneObject ← Entity ← Camera

ImageRenderOptions

Pridėkite perspektyvinę kamerą į sceną ir sukonfigūruokite jos 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

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)

Perkelia kamerą į priekį pagal jos žiūrėjimo kryptį nurodytu atstumu.

moveForward(distance: number): void

ImageRenderOptions

distance number

Atstumas, kuriuo judama į priekį. Neigiamos reikšmės perkelia kamerą atgal.

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

  • Šaltinyje, Camera paveldi iš Entity. Light taip pat plečia Camera, kas reiškia Light objektai turi visas kameros savybes tipų hierarchijoje; tai atspindi FBX duomenų modelį, kuriame šviesos šaltiniai ir kameros dalijasi bendru baziniu mazgo tipu.
  • Naudokite ProjectionType klasės konstantų (ProjectionType.PERSPECTIVE, ProjectionType.ORTHOGRAPHIC) vietoj tiesioginių eilutės literalių dėl tipų saugumo.
 Lietuvių