Class 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 Entity

Enumerations

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

EnumerationsEnumerationsEnumerationsEnumerations
namestring''Tên của máy ảnh này, được dùng để xác định nó trong đồ thị cảnh.
projectionType`ProjectionTypestring`ProjectionType.PERSPECTIVE
nearPlanenumber0.1Khoảng cách từ máy ảnh đến mặt cắt gần. Các đối tượng gần hơn giá trị này sẽ không được hiển thị.
farPlanenumber1000.0Khoảng cách từ máy ảnh đến mặt cắt xa. Các đối tượng xa hơn giá trị này sẽ không được hiển thị.
aspectnumber1.0Tỷ lệ khung hình chiều rộng trên chiều cao của khung nhìn máy ảnh.
fieldOfViewnumber0.0Trường nhìn chéo tính bằng độ (phép chiếu phối cảnh).
fieldOfViewXnumber0.0Góc nhìn ngang tính bằng độ.
fieldOfViewYnumber0.0Góc nhìn dọc tính bằng độ.
orthoHeightnumber100.0Chiều cao của orthographic projection volume. Chỉ có liên quan khi projectionType'ORTHOGRAPHIC'.
widthnumber0.0Chiều rộng cảm biến hoặc khung nhìn, được sử dụng khi apertureMode kiểm soát việc suy ra FOV.
heightnumber0.0Chiều cao cảm biến hoặc khung nhìn.
aspectRationumber1.0Tên thay thế cho tỷ lệ khung hình, được cung cấp để tương thích với một số cảnh có nguồn gốc từ FBX.

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): void

Enumerations

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, Camera kế thừa từ Entity. Light cũng mở rộng Camera, có nghĩa là Light cá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 ProjectionType cá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.
 Tiếng Việt