A3DObject / SceneObject / Entity

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

Pakiet: @aspose/3d (v24.12.0)

Te trzy klasy stanowią podstawę @aspose/3d hierarchii klas. Każdy publiczny obiekt w bibliotece ostatecznie dziedziczy po A3DObject, który dostarcza system nazw i dynamicznych właściwości. SceneObject dodaje śledzenie przynależności do sceny. Entity jest podstawą dla wszystkich obiektów, które mogą być dołączone do Node jako jej głównego podmiotu (siatki, kamery, światła itp.).

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

A3DObject

Podstawowa klasa korzenia dla wszystkich @aspose/3d obiektów. Implementuje INamedObject.

export class A3DObject implements INamedObject

Example

new A3DObject(name?: string)

Example

ExampleExampleExampleExample
namestringodczyt/zapisNazwa czytelna dla człowieka. Domyślnie ''.
propertiesPropertyCollectionodczytDynamiczna kolekcja właściwości. Iteruj przy użyciu for...of lub zapytaj po nazwie.

Example

findProperty(propertyName)

Zwróć Property z podaną nazwą, lub null jeśli nieobecny.

findProperty(propertyName: string): Property | null

getProperty(property)

Zwróć wartość nazwanej właściwości, lub null jeśli właściwość nie istnieje.

getProperty(property: string): any

setProperty(property, value)

Ustawia wartość nazwanej właściwości. Tworzy ją, jeśli jeszcze nie istnieje.

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

removeProperty(property)

Usuń nazwane właściwość lub Property instancja z kolekcji.

removeProperty(property: string | Property): boolean

toString()

Example "ClassName(name)".

Example

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

Example A3DObject z odwołaniem do właściciela Scene.

export class SceneObject extends A3DObject

Example

A3DObjectSceneObject

Dodatkowa właściwość

ExampleExampleExampleExample
scene`Scenenull`odczyt/zapis

Example

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

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

Example

Abstrakcyjna baza dla wszystkich obiektów, które mogą być dołączone do Node jako jego główny podmiot sceny. Podklasy obejmują Mesh, Camera, Light, oraz typy geometryczne.

export class Entity extends SceneObject

Example

A3DObjectSceneObjectEntity

Example

ExampleExampleExampleExample
parentNode`Nodeundefined`odczyt/zapis
parentNodesNode[]odczytWszystkie węzły nadrzędne, które odwołują się do tego entity (kopia tylko do odczytu). W większości scen entity ma dokładnie jednego rodzica.
excludedbooleanodczyt/zapisExample true, entity jest wykluczony z renderowania i eksportu. Domyślnie false.

Example

getBoundingBox()

Zwróć prostopadłościan ograniczający wyrównany do osi dla tego entity. Rzuca wyjątek w klasie bazowej; zaimplementowane w konkretnych podklasach, takich jak Mesh.

getBoundingBox(): BoundingBox

getEntityRendererKey()

Zwraca klucz renderera, który identyfikuje ścieżkę renderowania dla tego typu podmiotu. Rzuca wyjątek w klasie bazowej; używane wewnętrznie.

Example

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;

Zobacz także

 Polski