Node — Aspose.3D FOSS for Java

Methods

Methods Node 클래스는 Aspose.3D 씬 그래프에서 이름이 지정된 요소를 나타냅니다. 각 노드는 하나를 보유할 수 있습니다 Entity (예를 들어 a 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 생성자는 선택적 이름을 사용하여 노드를 초기화합니다.

MethodsMethodsMethods
nameString노드의 선택적 이름

Methods

모든 노드 속성은 getter/setter 메서드를 통해 접근합니다.

MethodsMethodsMethodsMethodsMethods
nameStringgetName()setName(String)노드에 대한 사람이 읽을 수 있는 식별자
entityEntitygetEntity()setEntity(Entity)이 노드에 연결된 주요 엔터티 (예:., Mesh, Camera). 첫 번째 요소에 대한 바로 가기 of getEntities().
entitiesList<Entity>getEntities()이 노드에 연결된 모든 엔티티(읽기 전용)
materialMaterialgetMaterial()setMaterial(Material)이 노드에 할당된 기본 머티리얼
materialsList<Material>getMaterials()이 노드에 할당된 모든 머티리얼(읽기 전용)
childNodesList<Node>getChildNodes()자식 노드 목록
parentNodeNodegetParentNode()setParentNode(Node)씬 계층 구조에서 바로 위의 부모 노드 (getParentNodes() 은(는) 다음에서 사용할 수 없습니다 Node)
visiblebooleangetVisible()setVisible(boolean)Methods false, 노드와 그 하위 트리가 숨겨집니다
excludedbooleangetExcluded()setExcluded(boolean)Methods true, 이 노드는 렌더링에서 제외됩니다
transformTransformgetTransform()로컬 변환(이동, 회전, 스케일)
globalTransformGlobalTransformgetGlobalTransform()월드 공간 변환 행렬
assetInfoAssetInfogetAssetInfo()setAssetInfo(AssetInfo)이 노드에 연결된 자산 메타데이터(있는 경우)
propertiesPropertyCollectiongetProperties()이 노드에 연결된 맞춤 속성

Methods

Methods반환 유형Methods
createChildNode(String name)Node주어진 이름으로 새 자식 노드를 생성하고 연결합니다
createChildNode(String name, Entity entity)Node자식 노드를 생성하고 엔터티를 할당합니다
addChildNode(Node node)void기존 노드를 이 노드의 자식으로 추가합니다
getChild(String name)Node이름으로 직접 자식 노드를 찾습니다
addEntity(Entity entity)void추가 엔터티를 이 노드에 연결합니다
merge(Node node)void다른 노드의 자식 및 엔터티를 이 노드에 병합합니다
evaluateGlobalTransform(boolean withGeometricTransform)Matrix4월드 스페이스 변환 행렬을 반환합니다; pass 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());
    }
}

또 보기

 한국어