Vertex Elements

Vertex Elements — Aspose.3D FOSS for Java

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

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


Example

Example

ClassDescription
VertexElementAbstract base for all vertex element types. Carries getMappingMode() , getReferenceMode() , and a data list.

VertexElementNormal

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

import com.aspose.threed.*;

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

Example

ClassDescription
VertexElementNormalStores per-vertex or per-corner normal vectors as Vector4 (w unused).
VertexElementUVStores texture-coordinate pairs ( Vector2 ) per vertex or per polygon corner. A mesh may carry multiple UV layers.
VertexElementVertexColorStores per-vertex or per-corner RGBA colour data as Vector4 (r, g, b, a in 0–1 range).
VertexElementTangentStores tangent vectors for normal-map shading.
VertexElementBinormalStores binormal (bitangent) vectors, perpendicular to both the normal and the tangent.
VertexElementMaterialStores per-face material index references.

반환값: VertexElementUV

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


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

Example

EnumerationDescription
VertexElementTypeSemantic role: NORMAL , UV , VERTEX_COLOR , TANGENT , BINORMAL , and others.
MappingModeControls which primitive a value maps to: CONTROL_POINT , POLYGON_VERTEX , or POLYGON .
ReferenceModeControls indexing: DIRECT or INDEX_TO_DIRECT .

VertexElementVertexColor

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

Example


VertexElementType 열거형

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

import com.aspose.threed.*;

MappingMode 열거형

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


ReferenceMode 열거형

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


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());
        }
    }
}

참고

 한국어