Camera
Gói: @aspose/3d (v24.12.0)
Camera là một Entity có thể được gắn vào một Node để xác định góc nhìn trong cảnh. Nó hỗ trợ cả phép chiếu phối cảnh và trực giao, được điều khiển bởi projectionType thuộc tính. Các tham số máy ảnh được lưu trong tệp 3D khi cảnh được lưu dưới định dạng hỗ trợ máy ảnh (FBX, COLLADA, glTF).
export class Camera extends EntityEnumerations
A3DObject ← SceneObject ← Entity ← Camera
Enumerations
Thêm một camera phối cảnh vào cảnh và cấu hình khối nhìn của nó.
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
Enumerations
| 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` |
Enumerations
moveForward(distance)
Di chuyển camera về phía trước dọc theo hướng nhìn của nó theo khoảng cách đã cho.
moveForward(distance: number): voidEnumerations
distance number
Khoảng cách di chuyển về phía trước. Giá trị âm sẽ di chuyển camera về phía sau.
Enumerations
void
Enumerations
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.');Enumerations
- Trong nguồn,
Camerakế thừa từEntity.Lightcũng mở rộngCamera, có nghĩa làLightcác đối tượng có tất cả các thuộc tính của camera trong hệ thống kiểu; điều này phản ánh mô hình dữ liệu FBX, nơi đèn và camera chia sẻ một loại nút cơ sở chung. - Sử dụng
ProjectionTypecác hằng lớp (ProjectionType.PERSPECTIVE,ProjectionType.ORTHOGRAPHIC) thay vì các chuỗi nguyên thuỷ để đảm bảo an toàn kiểu.