Node — Aspose.3D FOSS for Java

Example

Example Node klasė atstovauja pavadintą elementą Aspose.3D scenų grafike. Kiekvienas mazgas gali turėti vieną Entity (pvz., Mesh arba Camera), palaiko tėvo‑vaiko ryšius su kitais mazgais ir neša vietinį transformaciją. Mazgai yra pagrindinis būdas organizuoti 3D objektus scenos hierarchijoje.

import com.aspose.threed.Scene;
import com.aspose.threed.Node;

Scene scene = new Scene();

// Access the root node via getter
Node root = scene.getRootNode();

// Create a child node
Node child = root.createChildNode("my_node");

// Iterate child nodes via getter
for (Node node : root.getChildNodes()) {
    System.out.println(node.getName());
}

Example

Example Node konstruktorius inicializuoja mazgą su pasirenkamu pavadinimu.

ExampleExampleExample
nameStringPasirenkamas mazgo pavadinimas

Example

Visos mazgo savybės pasiekiamos per getter/setter metodus.

ExampleExampleExampleExampleExample
nameStringgetName()setName(String)Žmogui skaitomas mazgo identifikatorius
entityEntitygetEntity()setEntity(Entity)Pagrindinė prie šio mazgo prijungta esybė (pvz., Mesh, Camera). Trumpinys pirmam elementui iš getEntities().
entitiesList<Entity>getEntities()Visos prie šio mazgo prijungtos esybės (tik skaityti)
materialMaterialgetMaterial()setMaterial(Material)Pagrindinė medžiaga, priskirta šiam mazgui
materialsList<Material>getMaterials()Visos medžiagos, priskirtos šiam mazgui (tik skaityti)
childNodesList<Node>getChildNodes()Vaikų mazgų sąrašas
parentNodeNodegetParentNode()setParentNode(Node)Tiesioginis tėvo mazgas scenos hierarchijoje
parentNodesList<Node>getParentNodes()Visi tėvo mazgai (paveldėti iš Entity; palaiko instancijavimą)
visiblebooleangetVisible()setVisible(boolean)Example false, mazgas ir jo pošaknis yra paslėpti
excludedbooleangetExcluded()setExcluded(boolean)Example true, šis mazgas yra išskirtas iš atvaizdavimo
transformTransformgetTransform()Vietinis transformavimas (perkėlimas, sukimas, mastelis)
globalTransformGlobalTransformgetGlobalTransform()Pasaulio erdvės transformacijos matrica
assetInfoAssetInfogetAssetInfo()setAssetInfo(AssetInfo)Šio mazgo prie pridėti turto metaduomenys, jei yra
propertiesPropertyCollectiongetProperties()Šio mazgo prie pridėtos pasirinktinės savybės

Example

ExampleGrąžinimo tipasExample
createChildNode(String name)NodeSukuria ir prideda naują vaikų mazgą su nurodytu pavadinimu
createChildNode(String name, Entity entity)NodeSukuria vaikų mazgą ir priskiria jam objektą
addChildNode(Node node)voidPrideda esamą mazgą kaip šio mazgo vaiką
getChild(String name)NodeRanda tiesioginį vaikų mazgą pagal pavadinimą
addEntity(Entity entity)voidPrideda papildomą objektą prie šio mazgo
merge(Node node)voidSujungia kito mazgo vaikus ir objektus į šį mazgą
evaluateGlobalTransform(boolean withGeometricTransform)Matrix4Grąžina pasaulio erdvės transformacijos matricą; perduokite true įtraukti geometrinius poslinkius
getBoundingBox()BoundingBoxApskaičiuoja mazgo ašimis lygią ribinę dėžutę pasaulio erdvėje
getProperty(String name)ObjectGauti savybės reikšmę pagal pavadinimą
findProperty(String name)PropertyRanda savybę pagal pavadinimą

Example

Sukurkite sceną, prijunkite mesh prie mazgo ir pereikite scenų grafą:

import com.aspose.threed.Scene;
import com.aspose.threed.Node;
import com.aspose.threed.*;


Scene scene = new Scene();
Mesh mesh = new Mesh();
mesh.getControlPoints().add(new Vector4(0, 0, 0, 1));
mesh.getControlPoints().add(new Vector4(1, 0, 0, 1));
mesh.getControlPoints().add(new Vector4(0.5, 1, 0, 1));
mesh.createPolygon(0, 1, 2);

// Attach mesh to a child node
Node node = scene.getRootNode().createChildNode("triangle", mesh);

// Traverse child nodes using getter
for (Node child : scene.getRootNode().getChildNodes()) {
    Entity entity = child.getEntity();
    if (entity != null) {
        System.out.println("Node '" + child.getName() + "': " + entity.getClass().getSimpleName());
        System.out.println("  Excluded: " + child.getExcluded());
    }
}

Žr. taip pat

 Lietuvių