A3DObject / SceneObject / Entity

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

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

Aceste trei clase formează baza @aspose/3d ierarhiei de clase. Fiecare obiect public din bibliotecă se extinde în final A3DObject, care furnizează sistemul de nume și proprietăți dinamice. SceneObject adaugă urmărirea apartenenței la scenă. Entity este baza pentru toate obiectele care pot fi atașate la un Node ca entitatea sa principală (meshes, camere, lumini etc.).

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

A3DObject

Clasa de bază rădăcină pentru toate @aspose/3d obiecte. Implementează INamedObject.

export class A3DObject implements INamedObject

Example

new A3DObject(name?: string)

Example

ExampleExampleExampleExample
namestringcitire/scriereNume lizibil pentru oameni. Implicit este ''.
propertiesPropertyCollectioncitireColecție dinamică de proprietăți. Iterați cu for...of sau interogați după nume.

Example

findProperty(propertyName)

Returnează Property cu numele dat, sau null dacă lipsește.

findProperty(propertyName: string): Property | null

getProperty(property)

Returnează valoarea unei proprietăți numite, sau null dacă proprietatea nu există.

getProperty(property: string): any

setProperty(property, value)

Setează valoarea unei proprietăți numite. O creează dacă nu există deja.

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

removeProperty(property)

Elimină o proprietate numită sau o Property instanță din colecție.

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 cu o referință la entitatea proprietară Scene.

export class SceneObject extends A3DObject

Example

A3DObjectSceneObject

Proprietate suplimentară

ExampleExampleExampleExample
scene`Scenenull`citire/scriere

Example

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

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

Example

Bază abstractă pentru toate obiectele care pot fi atașate la un Node ca entitatea sa principală de scenă. Subclasele includ Mesh, Camera, Light, și tipuri de geometrie.

export class Entity extends SceneObject

Example

A3DObjectSceneObjectEntity

Example

ExampleExampleExampleExample
parentNode`Nodeundefined`citire/scriere
parentNodesNode[]citireToate nodurile părinte care fac referire la această entitate (copie doar în citire). În majoritatea scenelor, o entitate are exact un părinte.
excludedbooleancitire/scriereExample true, entitatea este exclusă din randare și export. Implicit este false.

Example

getBoundingBox()

Returnează cutia delimitatoare aliniată pe axe pentru această entitate. Aruncă în clasa de bază; implementată de subclase concrete, cum ar fi Mesh.

getBoundingBox(): BoundingBox

getEntityRendererKey()

Returnează o cheie de renderer care identifică calea de redare pentru acest tip de entitate. Aruncă o excepție în clasa de bază; este utilizată intern.

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;

Vezi și

 Română