A3DObject, SceneObject, Entity — Aspose.3D TypeScript API Reference
بسته: @aspose/3d (v24.12.0)
این سه کلاس پایهٔ @aspose/3d سلسلهٔ کلاسها. هر شیء عمومی در کتابخانه در نهایت از A3DObject, که نام و سیستم ویژگیهای پویا را فراهم میکند. SceneObject قابلیت ردیابی عضویت صحنه را اضافه میکند. Entity پایهٔ تمام اشیائی است که میتوان به یک Node به عنوان موجودیت اصلی آن (meshes, cameras, lights و غیره).
import { A3DObject, SceneObject, Entity } from '@aspose/3d';A3DObject
کلاس پایه ریشه برای همه @aspose/3d اشیاء. پیادهسازی میکند INamedObject.
export class A3DObject implements INamedObjectnew A3DObject(name?: string)name | string | خواندن/نوشتن | نام قابل خواندن برای انسان. پیشفرض به ''. |
properties | PropertyCollection | خواندن | مجموعهٔ پویا از ویژگیها. با استفاده از for...of یا بر اساس نام جستجو کنید. |
findProperty(propertyName)
بازگرداندن Property با نام دادهشده، یا null اگر موجود نباشد.
findProperty(propertyName: string): Property | nullgetProperty(property)
مقدار یک ویژگی نامگذاریشده را بازگردان، یا null اگر ویژگی وجود نداشته باشد.
getProperty(property: string): anysetProperty(property, value)
مقدار یک ویژگی نامدار را تنظیم میکند. اگر هنوز وجود نداشته باشد، آن را ایجاد میکند.
setProperty(property: string, value: any): voidremoveProperty(property)
حذف یک ویژگی نامگذاریشده یا یک Property نمونه را از مجموعه حذف کنید.
removeProperty(property: string | Property): booleantoString()
"ClassName(name)".import { Scene } from '@aspose/3d';
const scene = new Scene();
const node = scene.rootNode.createChildNode('my_node');
node.setProperty('exportLayer', 2);
console.log(node.getProperty('exportLayer')); // 2
const prop = node.findProperty('name');
if (prop) {
console.log(prop.value); // my_node
console.log(prop.valueType); // string
}
for (const p of node.properties) {
console.log(`${p.name} = ${p.value}`);
}
node.removeProperty('exportLayer');
console.log(node.getProperty('exportLayer')); // null
SceneObject
A3DObject با ارجاع به مالک Scene.export class SceneObject extends A3DObjectA3DObject → SceneObject
ویژگی اضافی
scene | `Scene | null` | خواندن/نوشتن |
import { Scene } from '@aspose/3d';
const scene = new Scene();
const node = scene.rootNode.createChildNode('child');
console.log(node.scene === scene); // true
پایهٔ انتزاعی برای تمام اشیائی که میتوانند به یک Node به عنوان موجودیت اصلی صحنهٔ خود. زیرکلاسها شامل Mesh, Camera, Light, و انواع هندسی.
export class Entity extends SceneObjectA3DObject → SceneObject → Entity
parentNode | `Node | undefined` | خواندن/نوشتن |
parentNodes | Node[] | خواندن | تمام گرههای والد که به این موجودیت ارجاع میدهند (نسخه فقط‑خواندنی). در اکثر صحنهها یک موجودیت دقیقاً یک والد دارد. |
excluded | boolean | خواندن/نوشتن | true,، موجودیت از رندر و صادرات حذف میشود. بهصورت پیشفرض false. |
getBoundingBox()
جعبه مرزی محور‑تراز (axis-aligned bounding box) این موجودیت را برگردانید. در کلاس پایه استثنا میاندازد؛ توسط زیرکلاسهای واقعی مانند Mesh.
getBoundingBox(): BoundingBoxgetEntityRendererKey()
یک کلید رندرر را برمیگرداند که مسیر رندر برای این نوع موجودیت را شناسایی میکند. در کلاس پایه استثنا میاندازد؛ بهصورت داخلی استفاده میشود.
import { Scene, Mesh } from '@aspose/3d';
const scene = new Scene();
const mesh = new Mesh();
// Add control points and a polygon
// ...
const node = scene.rootNode.createChildNode('geo', mesh);
console.log(mesh.parentNode === node); // true
console.log(mesh.excluded); // false
// Exclude from next export
mesh.excluded = true;