A3DObject, SceneObject, Entity — Aspose.3D TypeScript API Reference
Pacote: @aspose/3d (v24.12.0)
Essas três classes formam a base da @aspose/3d hierarquia de classes. Todo objeto público na biblioteca, em última instância, estende A3DObject, que fornece o sistema de nome e propriedades dinâmicas. SceneObject adiciona o rastreamento de associação à cena. Entity é a base para todos os objetos que podem ser anexados a um Node como sua entidade principal (malhas, câmeras, luzes, etc.).
import { A3DObject, SceneObject, Entity } from '@aspose/3d';A3DObject
A classe base raiz para todos os @aspose/3d objetos. Implementa INamedObject.
export class A3DObject implements INamedObjectExample
new A3DObject(name?: string)Example
| Example | Example | Example | Example |
|---|---|---|---|
name | string | leitura/gravação | Nome legível por humanos. O padrão é ''. |
properties | PropertyCollection | leitura | Coleção dinâmica de propriedades. Itere com for...of ou consulte por nome. |
Example
findProperty(propertyName)
Retorne o Property com o nome fornecido, ou null se ausente.
findProperty(propertyName: string): Property | nullgetProperty(property)
Retorne o valor de uma propriedade nomeada, ou null se a propriedade não existir.
getProperty(property: string): anysetProperty(property, value)
Define o valor de uma propriedade nomeada. Cria-a se ainda não existir.
setProperty(property: string, value: any): voidremoveProperty(property)
Remova uma propriedade nomeada ou um Property instância da coleção.
removeProperty(property: string | Property): booleantoString()
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 com uma referência ao proprietário Scene.
export class SceneObject extends A3DObjectExample
A3DObject → SceneObject
Propriedade adicional
| Example | Example | Example | Example |
|---|---|---|---|
scene | `Scene | null` | leitura/gravação |
Example
import { Scene } from '@aspose/3d';
const scene = new Scene();
const node = scene.rootNode.createChildNode('child');
console.log(node.scene === scene); // true
Example
Base abstrata para todos os objetos que podem ser anexados a um Node como sua entidade de cena principal. Subclasses incluem Mesh, Camera, Light, e tipos de geometria.
export class Entity extends SceneObjectExample
A3DObject → SceneObject → Entity
Example
| Example | Example | Example | Example |
|---|---|---|---|
parentNode | `Node | undefined` | leitura/gravação |
parentNodes | Node[] | leitura | Todos os nós pai que referenciam esta entidade (cópia somente leitura). Na maioria das cenas, uma entidade tem exatamente um pai. |
excluded | boolean | leitura/gravação | Example true, a entidade é excluída da renderização e exportação. O padrão é false. |
Example
getBoundingBox()
Retorna a caixa delimitadora alinhada aos eixos para esta entidade. Lança exceção na classe base; implementado por subclasses concretas como Mesh.
getBoundingBox(): BoundingBoxgetEntityRendererKey()
Retorna uma chave de renderizador que identifica o caminho de renderização para este tipo de entidade. Lança exceção na classe base; usado internamente.
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;