A3DObject / SceneObject / Entity

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

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

Estas tres clases forman la base de la @aspose/3d jerarquía de clases. Cada objeto público en la biblioteca finalmente extiende A3DObject, que proporciona el nombre y el sistema de propiedades dinámicas. SceneObject añade el seguimiento de membresía de escena. Entity es la base para todos los objetos que pueden adjuntarse a un Node como su entidad principal (mallas, cámaras, luces, etc.).

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

A3DObject

La clase base raíz para todos los @aspose/3d objetos. Implementa INamedObject.

export class A3DObject implements INamedObject

new A3DObject(name?: string)

namestringlectura/escrituraNombre legible por humanos. Por defecto es ''.
propertiesPropertyCollectionlecturaColección dinámica de propiedades. Iterar con for...of o consultar por nombre.

findProperty(propertyName)

Devuelve el Property con el nombre dado, o null si está ausente.

findProperty(propertyName: string): Property | null

getProperty(property)

Devuelve el valor de una propiedad nombrada, o null si la propiedad no existe.

getProperty(property: string): any

setProperty(property, value)

Establece el valor de una propiedad nombrada. La crea si aún no existe.

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

removeProperty(property)

Elimina una propiedad nombrada o una Property instancia de la colección.

removeProperty(property: string | Property): boolean

toString()

"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 con una referencia al propietario Scene.

export class SceneObject extends A3DObject

A3DObjectSceneObject

Propiedad adicional

scene`Scenenull`lectura/escritura

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

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

Base abstracta para todos los objetos que pueden adjuntarse a un Node como su entidad de escena principal. Las subclases incluyen Mesh, Camera, Light, y tipos de geometría.

export class Entity extends SceneObject

A3DObjectSceneObjectEntity

parentNode`Nodeundefined`lectura/escritura
parentNodesNode[]lecturaTodos los nodos padre que hacen referencia a esta entidad (copia de solo lectura). En la mayoría de las escenas, una entidad tiene exactamente un padre.
excludedbooleanlectura/escritura
true, la entidad se excluye de la renderización y exportación. Por defecto es false.

getBoundingBox()

Devuelve el cuadro delimitador alineado a los ejes para esta entidad. Lanza una excepción en la clase base; implementado por subclases concretas como Mesh.

getBoundingBox(): BoundingBox

getEntityRendererKey()

Devuelve una clave de renderizador que identifica la ruta de renderizado para este tipo de entidad. Lanza una excepción en la clase base; se usa internamente.

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;

Ver también

 Español