VertexElement

VertexElement — Aspose.3D FOSS for Java

패키지: com.aspose.threed (aspose-3d-foss 26.1.0)

VertexElement 은(는) 정점당(또는 폴리곤당, 엣지당) 데이터 레이어가 부착되는 추상 기본 클래스입니다 Mesh.각 하위 클래스는 특정 종류의 기하학적 속성—노멀, UV 좌표, 정점 색상 또는 스무딩 그룹—을 저장합니다.


Example

Example

ExampleExampleExampleExampleExample
vertexElementTypeVertexElementTypegetVertexElementType()이 요소의 의미 유형(읽기 전용).
mappingModeMappingModegetMappingMode()setMappingMode(MappingMode)각 값이 매핑되는 프리미티브를 제어합니다.
referenceModeReferenceModegetReferenceMode()setReferenceMode(ReferenceMode)값이 인덱싱되는 방식을 제어합니다.
indicesList<Integer>getIndices()인덱스 배열(참조 모드가 INDEX_TO_DIRECT).
nameStringgetName()setName(String)이 정점 요소 레이어의 선택적 이름입니다.

VertexElementNormal

정점당 또는 폴리곤 코너당 하나의 노멀 벡터를 저장합니다, …에 따라 getMappingMode(). 데이터 값은 Vector4 인스턴스로 w 사용되지 않음.

import com.aspose.threed.*;

VertexElement normals = mesh.createElement(
    VertexElementType.NORMAL,
    MappingMode.CONTROL_POINT,
    ReferenceMode.DIRECT
);

Example

ExampleExampleExampleExample
dataList<Vector4>getData()노멀 벡터. w 구성 요소는 사용되지 않음(일반적으로 0.0).

반환값: VertexElementUV

텍스처 좌표 쌍을 저장합니다 (Vector2) 정점당 또는 폴리곤 코너당. 메시는 다양한 텍스처 채널을 위해 여러 UV 레이어를 가질 수 있습니다.


VertexElementUV uv = mesh.createElementUV(
    TextureMapping.DIFFUSE,
    MappingMode.POLYGON_VERTEX,
    ReferenceMode.INDEX_TO_DIRECT
);

Example

ExampleExampleExampleExample
dataList<Vector2>getData()UV 좌표 쌍.

VertexElementVertexColor

정점당 또는 코너당 RGBA 색상 데이터를 다음과 같이 저장합니다 Vector4 (r, g, b, a는 0–1 범위).

Example

ExampleExampleExampleExample
dataList<Vector4>getData()RGBA 색상 값.

VertexElementType 열거형

정점 요소 레이어의 의미적 역할을 식별합니다.

import com.aspose.threed.*;
ExampleExample
NORMAL표면 법선 벡터.
UV텍스처 UV 좌표.
VERTEX_COLOR정점당 RGBA 색상.
TANGENT노멀 매핑용 탄젠트 벡터.
BINORMAL바이노멀(비탄젠트) 벡터.
MATERIAL폴리곤당 재질 인덱스.
POLYGON_GROUP폴리곤 그룹화 인덱스.
VERTEX_CREASE서브디비전 정점 크리즈 가중치.
EDGE_CREASE서브디비전 엣지 크리즈 가중치.
USER_DATA임의의 사용자 정의 데이터.
VISIBILITY요소당 가시성 플래그.
SPECULAR스페큘러 색상 또는 강도.
WEIGHT스키닝용 블렌드 가중치.
HOLE폴리곤 구멍 플래그.

MappingMode 열거형

각 정점 요소 값이 연결되는 기하학 프리미티브를 제어합니다.

ExampleExample
CONTROL_POINT컨트롤 포인트(정점)당 하나의 값.
POLYGON_VERTEX다각형 코너(면-정점)당 하나의 값.
POLYGON다각형당 하나의 값.

ReferenceMode 열거형

정점 요소 데이터 배열이 인덱싱되는 방식을 제어합니다.

ExampleExample
DIRECT데이터는 별도의 인덱스 배열 없이 순차적으로 접근됩니다.
INDEX데이터는 별도의 인덱스 배열을 통해 접근됩니다.
INDEX_TO_DIRECT인덱스 배열은 각 매핑 프리미티브를 데이터 배열의 위치에 매핑합니다.

Example

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

Scene scene = Scene.fromFile("model.obj");

for (Node node : scene.getRootNode().getChildNodes()) {
    if (node.getEntity() instanceof Mesh) {
        Mesh mesh = (Mesh) node.getEntity();
        for (VertexElement ve : mesh.getVertexElements()) {
            System.out.println("  Element: " + ve.getVertexElementType()
                + " mapping=" + ve.getMappingMode()
                + " ref=" + ve.getReferenceMode());
        }
    }
}

참고

 한국어