Node
Methods
Methods Node klasse vertegenwoordigt een benoemd element in de Aspose.3D‑scènegrafiek. Elke knoop kan er één bevatten Entity (zoals een Mesh, Camera, of Light), onderhoudt ouder‑kindrelaties met andere knopen, en draagt een lokale transformatie. Knooppunten zijn de primaire manier om 3D‑objecten in een scenahiërarchie te organiseren.
from aspose.threed import Scene, Node
scene = Scene()
# Access the root node: root_node is a property on Scene
root = scene.root_node
# Create a child node
child = root.create_child_node("my_node")
# child_nodes is a property: access without parentheses
for node in root.child_nodes:
print(node.name)Methods
Methods Node constructor initialiseert een knoop met een optionele naam.
| Methods | Methods | Methods |
|---|---|---|
name | str | Optionele naam voor de knoop |
Methods
Alle knoopattributen hieronder zijn eigenschappen; benader ze zonder haakjes.
| Methods | Methods | Methods |
|---|---|---|
name | str | Menselijk leesbare identifier voor de knoop |
entity | `Entity | None` |
entities | list[Entity] | Alle entiteiten die aan deze knoop zijn gekoppeld (alleen‑lezen). Een knoop kan meer dan één entiteit refereren. |
material | `Material | None` |
materials | list[Material] | Alle materialen die aan deze knoop zijn toegewezen (alleen‑lezen). |
child_nodes | list[Node] | Lijst van kindknooppunten. Gebruik child_nodes: niet children |
parent_node | `Node | None` |
parent_nodes | list[Node] | All parent nodes (inherited from: Alle bovenliggende nodes (geërfd van Entity; supports instancing): ; ondersteunt instantiering) |
visible | bool | Methods False, the node and its subtree are hidden in viewers that respect visibility.: , de node en zijn subboom zijn verborgen in viewers die zichtbaarheid respecteren. |
excluded | bool | Methods True, this node is excluded from rendering: , deze node wordt uitgesloten van rendering |
transform | Transform | Local transform (translation, rotation, scale): Lokale transformatie (vertaling, rotatie, schaal) |
global_transform | GlobalTransform | World-space transformation matrix: World-space transformatie-matrix |
asset_info | `AssetInfo | None` |
properties | PropertyCollection | Custom properties attached to this node: Aangepaste eigenschappen gekoppeld aan deze node |
Methods
| Methods | Return Type: Retourtype | Methods |
|---|---|---|
create_child_node(name) | Node | Creates and attaches a new child node with the given name: Maakt een nieuw kindnode aan en koppelt deze met de opgegeven naam |
create_child_node(name, entity) | Node | Creates a child node and assigns an entity to it: Maakt een kindnode aan en wijst er een entiteit aan toe |
add_child_node(node) | None | Adds an existing node as a child of this node: Voegt een bestaande node toe als kind van deze node |
get_child(name) | Optional[Node] | Finds a direct child node by name: Zoekt een direct kindnode op naam |
add_entity(entity) | None | Attaches an additional entity to this node: Koppelt een extra entiteit aan deze node |
merge(node) | None | Voegt de kinderen en entiteiten van een andere node samen met deze node |
evaluate_global_transform(with_geometric_transform) | Matrix4 | Retourneert de wereldruimte-transformatiematrix; geef door True om geometrische offsets op te nemen |
get_bounding_box() | BoundingBox | Berekent de asgeoriënteerde begrenzingsbox van de node in wereldruimte |
get_property(name) | Any | Haalt een eigenschapswaarde op op naam |
find_property(name) | Optional[Property] | Vindt een eigenschap op naam |
Methods
Maak een scène, koppel een mesh aan een node, en doorloop de scènegraph:
from aspose.threed import Scene, Node
from aspose.threed.entities import Mesh
from aspose.threed.utilities import Vector4
scene = Scene()
mesh = Mesh()
# Use _control_points to mutate the backing list (control_points returns a copy)
mesh._control_points.append(Vector4(0, 0, 0, 1))
mesh._control_points.append(Vector4(1, 0, 0, 1))
mesh._control_points.append(Vector4(0.5, 1, 0, 1))
mesh.create_polygon(0, 1, 2)
# Attach mesh to a child node
node = scene.root_node.create_child_node("triangle", mesh)
# Traverse child_nodes (property, not a method)
for child in scene.root_node.child_nodes:
entity = child.entity
if entity is not None:
print(f"Node '{child.name}': {type(entity).__name__}")
# excluded is a property
print(f" Excluded: {entity.excluded}")