Node — Aspose.3D FOSS for Java
Methods
Methods Node クラスは Aspose.3D シーン グラフ内の名前付き要素を表します。各ノードは 1 つ保持できます Entity (例えば Mesh または Camera).
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());
}Methods
Methods Node コンストラクタはオプションの名前でノードを初期化します。.
| Methods | Methods | Methods |
|---|---|---|
name | String | ノードの任意の名前 |
Methods
すべてのノード属性は getter / setter メソッドを通じてアクセスされます。.
| Methods | Methods | Methods | Methods | Methods |
|---|---|---|---|---|
name | String | getName() | setName(String) | ノードの人間が読める識別子 |
entity | Entity | getEntity() | setEntity(Entity) | このノードに添付された主要エンティティ(例:., Mesh, Camera)。最初の要素のショートカット getEntities(). |
entities | List<Entity> | getEntities() | – | このノードに添付されたすべてのエンティティ(読み取り専用) |
material | Material | getMaterial() | setMaterial(Material) | このノードに割り当てられた主要マテリアル |
materials | List<Material> | getMaterials() | – | このノードに割り当てられたすべてのマテリアル(読み取り専用) |
childNodes | List<Node> | getChildNodes() | – | 子ノードの一覧 |
parentNode | Node | getParentNode() | setParentNode(Node) | シーン階層内の直接の親ノード (getParentNodes() は利用できません Node) |
visible | boolean | getVisible() | setVisible(boolean) | Methods false, ノードとそのサブツリーは非表示です |
excluded | boolean | getExcluded() | setExcluded(boolean) | Methods true, このノードはレンダリングから除外されます |
transform | Transform | getTransform() | – | ローカルトランスフォーム(平行移動、回転、スケール) |
globalTransform | GlobalTransform | getGlobalTransform() | – | ワールド空間変換行列 |
assetInfo | AssetInfo | getAssetInfo() | setAssetInfo(AssetInfo) | このノードに添付されたアセットメタデータ(存在する場合) |
properties | PropertyCollection | getProperties() | – | このノードに添付されたカスタムプロパティ |
Methods
| Methods | 戻り値の型 | Methods |
|---|---|---|
createChildNode(String name) | Node | 指定された名前で新しい子ノードを作成し、添付します |
createChildNode(String name, Entity entity) | Node | 子ノードを作成し、entity を割り当てます |
addChildNode(Node node) | void | 既存のノードをこのノードの子として追加します |
getChild(String name) | Node | 名前で直接の子ノードを検索します |
addEntity(Entity entity) | void | このノードに追加の entity を添付します |
merge(Node node) | void | 別のノードの子ノードと entities をこのノードにマージします |
evaluateGlobalTransform(boolean withGeometricTransform) | Matrix4 | ワールド空間の変換行列を返します;パス true ジオメトリオフセットを含めるため |
getBoundingBox() | BoundingBox | このエディションのスタブ — 常に sentinel を返します BoundingBox (min = Double.MAX_VALUE, max = Double.MIN_VALUE)。ジオメトリ計算は実行されません. |
getProperty(String name) | Object | 名前でプロパティの値を取得します |
findProperty(String name) | Property | 名前でプロパティを検索します |
Methods
シーンを作成し、メッシュをノードにアタッチして、シーングラフを走査します::
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());
}
}