A3DObject / SceneObject / Entity

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

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

Diese drei Klassen bilden die Basis der @aspose/3d Klassenhierarchie. Jedes öffentliche Objekt in der Bibliothek erweitert letztendlich A3DObject, das den Namens- und dynamischen Eigenschaftsmechanismus bereitstellt. SceneObject fügt die Verfolgung der Szenenmitgliedschaft hinzu. Entity ist die Basis für alle Objekte, die an ein Node als seine primäre Entität (Netze, Kameras, Lichter usw.).

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

A3DObject

Die grundlegende Basisklasse für alle @aspose/3d Objekte. Implementiert INamedObject.

export class A3DObject implements INamedObject

Enumerations

new A3DObject(name?: string)

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
namestringlesen/schreibenMenschlich lesbarer Name. Standardwert ist ''.
propertiesPropertyCollectionlesenDynamische Eigenschaftssammlung. Durchlaufen mit for...of oder nach Namen abfragen.

Enumerations

findProperty(propertyName)

Gib das Property mit dem angegebenen Namen, oder null falls nicht vorhanden.

findProperty(propertyName: string): Property | null

getProperty(property)

Gib den Wert einer benannten Eigenschaft zurück, oder null falls die Eigenschaft nicht existiert.

getProperty(property: string): any

setProperty(property, value)

Setzt den Wert einer benannten Eigenschaft. Erstellt sie, falls sie noch nicht existiert.

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

removeProperty(property)

Entferne eine benannte Eigenschaft oder ein Property Instanz aus der Sammlung.

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 mit einem Verweis auf das Eigentum Scene.

export class SceneObject extends A3DObject

Enumerations

A3DObjectSceneObject

Speichert Texturkoordinatenpaare (Vector2) pro Vertex oder pro Polygon‑Ecke. Ein Mesh kann mehrere UV‑Ebenen enthalten.

EnumerationsEnumerationsEnumerationsEnumerations
scene`Scenenull`lesen/schreiben

Enumerations

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

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

Enumerations

Abstrakte Basisklasse für alle Objekte, die an ein(e) Node als seine primäre Szenen-Entität. Subklassen umfassen Mesh, Camera, Light, und Geometrietypen.

export class Entity extends SceneObject

Enumerations

A3DObjectSceneObjectEntity

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
parentNode`Nodeundefined`lesen/schreiben
parentNodesNode[]lesenAlle übergeordneten Knoten, die auf diese Entität verweisen (schreibgeschützte Kopie). In den meisten Szenen hat eine Entität genau einen Elternknoten.
excludedbooleanLesen/SchreibenEnumerations true, die Entität ist vom Rendern und Exportieren ausgeschlossen. Standardwert ist false.

Enumerations

getBoundingBox()

Gibt die achsenparallele Begrenzungsbox für diese Entität zurück. Wirft in der Basisklasse; implementiert von konkreten Unterklassen wie Mesh.

getBoundingBox(): BoundingBox

getEntityRendererKey()

Gibt einen Renderer‑Schlüssel zurück, der den Renderpfad für diesen Entitätstyp identifiziert. Wirft eine Ausnahme in der Basisklasse; wird intern verwendet.

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;

Siehe auch

 Deutsch