A3DObject / SceneObject / Entity

A3DObject, SceneObject, Entity — Aspose.3D TypeScript API Reference

Пакет: @aspose/3d (v24.12.0)

Тези три класа образуват основата на @aspose/3d йерархията на класовете. Всеки публичен обект в библиотеката в крайна сметка разширява A3DObject, който предоставя името и динамичната система за свойства. SceneObject добавя проследяване на членство в сцена. Entity е основата за всички обекти, които могат да бъдат прикрепени към a Node като основната си единица (мрежи, камери, светлини и др.).

import { A3DObject, SceneObject, Entity } from '@aspose/3d';

A3DObject

Основният базов клас за всички @aspose/3d обекти. Реализира INamedObject.

export class A3DObject implements INamedObject

Enumerations

new A3DObject(name?: string)

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
namestringчетене/записЧовекоразбираемо име. По подразбиране е ''.
propertiesPropertyCollectionчетенеДинамична колекция от свойства. Итерайте с for...of или заявявайте по име.

Enumerations

findProperty(propertyName)

Върнете Property с даденото име, или null ако липсва.

findProperty(propertyName: string): Property | null

getProperty(property)

Върнете стойността на именувано свойство, или null ако свойството не съществува.

getProperty(property: string): any

setProperty(property, value)

Задава стойността на именувано свойство. Създава го, ако все още не съществува.

setProperty(property: string, value: any): void

removeProperty(property)

Премахнете именувано свойство или Property екземпляр от колекцията.

removeProperty(property: string | Property): boolean

toString()

Enumerations "ClassName(name)".

Enumerations

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

Enumerations A3DObject с препратка към притежаващия Scene.

export class SceneObject extends A3DObject

Enumerations

A3DObjectSceneObject

Допълнително свойство

EnumerationsEnumerationsEnumerationsEnumerations
scene`Scenenull`четене/запис

Enumerations

import { Scene } from '@aspose/3d';

const scene = new Scene();
const node = scene.rootNode.createChildNode('child');
console.log(node.scene === scene);   // true

Enumerations

Абстрактна базова класа за всички обекти, които могат да бъдат прикрепени към Node като основната си сцена единица. Подкласовете включват Mesh, Camera, Light, и геометрични типове.

export class Entity extends SceneObject

Enumerations

A3DObjectSceneObjectEntity

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
parentNode`Nodeundefined`четене/запис
parentNodesNode[]четенеВсички родителски възли, които се отнасят до този обект (копие само за четене). В повечето сцени един обект има точно един родител.
excludedbooleanчетене/записEnumerations true, обектът е изключен от рендерирането и експорта. По подразбиране е false.

Enumerations

getBoundingBox()

Връща осево-ориентирания ограничителен куб за този обект. Хвърля изключение в базовия клас; реализира се от конкретни подкласове като Mesh.

getBoundingBox(): BoundingBox

getEntityRendererKey()

Връща ключ за рендеръра, който идентифицира пътя за рендериране на този тип единица. Хвърля изключение в базовия клас; използва се вътрешно.

Enumerations

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;

Вижте също

 Български