A3DObject, SceneObject, Entity — Aspose.3D TypeScript API Reference
Πακέτο: @aspose/3d (v24.12.0)
Αυτές οι τρεις κλάσεις σχηματίζουν τη βάση του @aspose/3d ιεραρχίας κλάσεων. Κάθε δημόσιο αντικείμενο στη βιβλιοθήκη τελικά κληρονομεί το A3DObject, το οποίο παρέχει το σύστημα ονομάτων και δυναμικών ιδιοτήτων. SceneObject προσθέτει παρακολούθηση μέλους σκηνής. Entity είναι η βάση για όλα τα αντικείμενα που μπορούν να προσαρτηθούν σε ένα Node ως κύρια οντότητα (πλέγματα, κάμερες, φωτισμοί κ.λπ.).
import { A3DObject, SceneObject, Entity } from '@aspose/3d';A3DObject
Η ριζική βασική κλάση για όλα τα @aspose/3d αντικείμενα. Υλοποιεί INamedObject.
export class A3DObject implements INamedObjectnew A3DObject(name?: string)name | string | ανάγνωση/εγγραφή | Ανθρώπινα αναγνώσιμο όνομα. Προεπιλογή είναι ''. |
properties | PropertyCollection | ανάγνωση | Συλλογή δυναμικών ιδιοτήτων. Επανάληψη με for...of ή ερώτημα με όνομα. |
findProperty(propertyName)
Επιστρέψτε το Property με το δοσμένο όνομα, ή null αν λείπει.
findProperty(propertyName: string): Property | nullgetProperty(property)
Επιστρέψτε την τιμή μιας ονομασμένης ιδιότητας, ή null αν η ιδιότητα δεν υπάρχει.
getProperty(property: string): anysetProperty(property, value)
Ορίζει την τιμή μιας ονομασμένης ιδιότητας. Δημιουργεί την ιδιότητα αν δεν υπάρχει ήδη.
setProperty(property: string, value: any): voidremoveProperty(property)
Αφαιρέστε μια ονομασμένη ιδιότητα ή ένα Property αντίγραφο από τη συλλογή.
removeProperty(property: string | Property): booleantoString()
"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 με μια αναφορά στον ιδιοκτήτη Scene.export class SceneObject extends A3DObjectA3DObject → SceneObject
Πρόσθετη ιδιότητα
scene | `Scene | null` | ανάγνωση/εγγραφή |
import { Scene } from '@aspose/3d';
const scene = new Scene();
const node = scene.rootNode.createChildNode('child');
console.log(node.scene === scene); // true
Αφηρημένη βάση για όλα τα αντικείμενα που μπορούν να προσαρτηθούν σε ένα Node ως κύρια οντότητα σκηνής του. Οι υποκλάσεις περιλαμβάνουν Mesh, Camera, Light, και τύπους γεωμετρίας.
export class Entity extends SceneObjectA3DObject → SceneObject → Entity
parentNode | `Node | undefined` | ανάγνωση/εγγραφή |
parentNodes | Node[] | ανάγνωση | Όλοι οι γονικοί κόμβοι που αναφέρονται σε αυτήν την οντότητα (αντίγραφο μόνο για ανάγνωση). Στις περισσότερες σκηνές μια οντότητα έχει ακριβώς έναν γονέα. |
excluded | boolean | ανάγνωση/εγγραφή | true, η οντότητα εξαιρείται από την απόδοση και την εξαγωγή. Η προεπιλογή είναι false. |
getBoundingBox()
Επιστρέφει το ορθογώνιο περιβάλλον ευθυγραμμισμένο με τους άξονες για αυτήν την οντότητα. Εκτοπίζει στην βασική κλάση; υλοποιείται από συγκεκριμένες υποκλάσεις όπως Mesh.
getBoundingBox(): BoundingBoxgetEntityRendererKey()
Επιστρέφει ένα κλειδί renderer που προσδιορίζει τη διαδρομή απόδοσης για αυτόν τον τύπο οντότητας. Εγείρει εξαίρεση στην βασική κλάση· χρησιμοποιείται εσωτερικά.
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;