Class Camera

بسته: @aspose/3d (v24.12.0)

Camera یک Entity که می‌تواند به یک Node برای تعریف یک نقطه‌نظر در صحنه. این ویژگی هر دو پروجکشن پرسپکتیو و ارتوگرافیک را پشتیبانی می‌کند که توسط projectionType ویژگی کنترل می‌شود. پارامترهای دوربین در فایل 3D ذخیره می‌شوند هنگامی که صحنه به فرمت‌ّی که دوربین‌ها را پشتیبانی می‌کند (FBX, COLLADA, glTF) ذخیره شود.

export class Camera extends Entity

Example

یک فایل سه‌بعدی را از یک Buffer در حافظه بارگذاری می‌کند. این بارگذاری ترجیحی است زمانی که داده‌های فایل قبلاً در حافظه خوانده شده‌اند.

Example

BoundingBox یک جعبه محدود‌کننده محور-محور است که توسط گوشه‌های حداقل و حداکثر Vector3 تعریف می‌شود و دارای متدهایی برای ادغام نقاط، آزمون‌های دربرگیری و پرس‌وجوهای بسط است.

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

Example

ExampleExampleExampleExample
namestring''نام این دوربین که برای شناسایی آن در گراف صحنه استفاده می‌شود.
projectionType`ProjectionTypestring`ProjectionType.PERSPECTIVE
nearPlanenumber0.1فاصله دوربین تا صفحه برش نزدیک. اشیائی که نزدیک‌تر از این مقدار هستند رندر نمی‌شوند.
farPlanenumber1000.0فاصله دوربین تا صفحه برش دور. اشیائی که دورتر از این مقدار هستند رندر نمی‌شوند.
aspectnumber1.0نسبت عرض به ارتفاع نمای دوربین.
fieldOfViewnumber0.0زاویه دید قطری به درجه (پروژکشن پرسپکتیو).
fieldOfViewXnumber0.0زاویه دید افقی به درجه.
fieldOfViewYnumber0.0زاویه دید عمودی به درجه.
orthoHeightnumber100.0ارتفاع حجم پروژکشن ارتوگرافیک. فقط زمانی مرتبط است که projectionType است 'ORTHOGRAPHIC'.
widthnumber0.0عرض حسگر یا نمایگاه، که هنگام استفاده می‌شود apertureMode مشتق‌گیری FOV را کنترل می‌کند.
heightnumber0.0ارتفاع حسگر یا نمایگاه.
aspectRationumber1.0نام مستعار نسبت عرض به ارتفاع، برای سازگاری با برخی صحنه‌های مبتنی بر FBX ارائه شده است.

Example

moveForward(distance)

overlapsWith(box).

moveForward(distance: number): void

Example

distance number

بسته: @aspose/3d (v24.12.0).

Example

void

Example

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

Example

  • در منبع،, Camera ارث می‌برد از Entity. Light همچنین گسترش می‌دهد Camera,، که به این معنی است Light اشیاء تمام ویژگی‌های دوربین را در سلسله‌مراتب نوع دارند؛ این بازتاب‌دهنده مدل داده‌ای FBX است که در آن نورها و دوربین‌ها یک نوع گره پایه مشترک دارند.
  • از ProjectionType ثابت‌های کلاس (ProjectionType.PERSPECTIVE, ProjectionType.ORTHOGRAPHIC) به‌جای رشته‌های متنی خام برای ایمنی نوع.
 فارسی