A3DObject / SceneObject / Entity

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

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

Ova tri klase čine osnovu @aspose/3d hijerarhije klasa. Svaki javni objekat u biblioteci na kraju proširuje A3DObject, koji obezbeđuje sistem imena i dinamičkih svojstava. SceneObject dodaje praćenje članstva u sceni. Entity je osnova za sve objekte koji se mogu prikačiti na Node kao njegov primarni entitet (mreže, kamere, svetla, itd.).

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

A3DObject

Osnovna korenska klasa za sve @aspose/3d objekte. Implementira INamedObject.

export class A3DObject implements INamedObject

new A3DObject(name?: string)

namestringčitanje/pisanjeLjudski čitljivo ime. Podrazumevano je ''.
propertiesPropertyCollectiončitanjeDinamička kolekcija svojstava. Iterirajte pomoću for...of ili upitajte po imenu.

findProperty(propertyName)

Vrati Property sa zadatim imenom, ili null ako je odsutan.

findProperty(propertyName: string): Property | null

getProperty(property)

Vrati vrednost imenovane osobine, ili null ako osobina ne postoji.

getProperty(property: string): any

setProperty(property, value)

Postavlja vrednost imenovanog svojstva. Kreira ga ako još ne postoji.

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

removeProperty(property)

Ukloni imenovanu osobinu ili Property instancu iz kolekcije.

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 sa referencom na vlasnika Scene.

export class SceneObject extends A3DObject

A3DObjectSceneObject

Dodatna svojstva

scene`Scenenull`čitanje/pisanje

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

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

Apstraktna baza za sve objekte koji se mogu prikačiti na Node kao njegov primarni entitet scene. Podklase uključuju Mesh, Camera, Light, i tipove geometrije.

export class Entity extends SceneObject

A3DObjectSceneObjectEntity

parentNode`Nodeundefined`čitanje/pisanje
parentNodesNode[]čitanjeSvi roditeljski čvorovi koji referišu na ovaj entitet (kopija samo za čitanje). U većini scena entitet ima tačno jednog roditelja.
excludedbooleančitanje/pisanje
true, entitet je isključen iz renderovanja i izvoza. Podrazumevano je false.

getBoundingBox()

Vrati osno poravnatu granicu (axis-aligned bounding box) za ovaj entitet. Baca izuzetak u osnovnoj klasi; implementirano u konkretnim podklasama kao što su Mesh.

getBoundingBox(): BoundingBox

getEntityRendererKey()

Vraća ključ renderera koji identifikuje put renderovanja za ovaj tip entiteta. Baci izuzetak u osnovnoj klasi; koristi se interno.

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;

Vidi takođe

 Српски