Node
Methods
Methods Node klase pārstāv nosauktu elementu Aspose.3D ainas grafā. Katrs mezgls var saturēt vienu Entity (piemēram, Mesh, Camera, vai Light), uztur vecāku‑bērna attiecības ar citiem mezgliem un nes lokālu transformāciju. Mezgli ir galvenais veids, kā organizēt 3D objektus ainas hierarhijā.
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 konstruktors inicializē mezglu ar izvēles nosaukumu.
| Methods | Methods | Methods |
|---|---|---|
name | str | Izvēles nosaukums mezglam |
Methods
Visi zemāk esošie mezgla atribūti ir īpašības; piekļūst tiem bez iekavām.
| Methods | Methods | Methods |
|---|---|---|
name | str | Cilvēkam lasāms identifikators mezglam |
entity | `Entity | None` |
entities | list[Entity] | Visas vienības, kas pievienotas šim mezglam (tikai lasāms). Mezgls var atsaukties uz vairāk nekā vienu vienību. |
material | `Material | None` |
materials | list[Material] | Visi materiāli, kas piešķirti šim mezglam (tikai lasāms). |
child_nodes | list[Node] | Bērnu mezglu saraksts. Izmantojiet child_nodes: nav children |
parent_node | `Node | None` |
parent_nodes | list[Node] | Visi vecāka mezgli (mantoti no Entity; atbalsta instancešanu) |
visible | bool | Methods False, mezgls un tā apakškoks ir paslēpts skatītājos, kas ievēro redzamību. |
excluded | bool | Methods True, šis mezgls tiek izslēgts no renderēšanas |
transform | Transform | Lokāla transformācija (pārvietojums, rotācija, mērogs) |
global_transform | GlobalTransform | Pasaules telpas transformācijas matrica |
asset_info | `AssetInfo | None` |
properties | PropertyCollection | Pielāgotas īpašības, kas pievienotas šim mezglam |
Methods
| Methods | Atgriešanas tips | Methods |
|---|---|---|
create_child_node(name) | Node | Izveido un pievieno jaunu bērna mezglu ar norādīto nosaukumu |
create_child_node(name, entity) | Node | Izveido bērna mezglu un piešķir tam vienību |
add_child_node(node) | None | Pievieno esošu mezglu kā šī mezgla bērnu |
get_child(name) | Optional[Node] | Atrast tiešu bērna mezglu pēc nosaukuma |
add_entity(entity) | None | Pievieno papildu vienību šim mezglam |
merge(node) | None | Apvieno cita mezgla bērnus un vienības šajā mezglā |
evaluate_global_transform(with_geometric_transform) | Matrix4 | Atgriež pasaules telpas transformācijas matricu; nodod True lai iekļautu ģeometriskos nobīdes |
get_bounding_box() | BoundingBox | Aprēķina mezgla ass‑līdzināto robežkasti pasaules telpā |
get_property(name) | Any | Iegūst īpašības vērtību pēc nosaukuma |
find_property(name) | Optional[Property] | Atrod īpašību pēc nosaukuma |
Methods
Izveidojiet ainu, pievienojiet Mesh mezglam un pārlūkojiet ainas grafu:
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}")