VertexElement

VertexElement — Aspose.3D FOSS for Java

Paquete: com.aspose.threed (aspose-3d-foss 26.1.0)

VertexElement es la clase base abstracta para capas de datos por vértice (o por polígono, por arista) adjuntas a un Mesh.Cada subclase almacena un tipo específico de atributo geométrico — normales, coordenadas UV, colores de vértice o grupos de suavizado.


Methods

Methods

MethodsMethodsMethodsMethodsMethods
vertexElementTypeVertexElementTypegetVertexElementType()Tipo semántico de este elemento (solo lectura).
mappingModeMappingModegetMappingMode()setMappingMode(MappingMode)Controla a qué primitiva se asigna cada valor.
referenceModeReferenceModegetReferenceMode()setReferenceMode(ReferenceMode)Controla cómo se indexan los valores.
indicesList<Integer>getIndices()Matriz de índices (usada cuando el modo de referencia es INDEX_TO_DIRECT).
nameStringgetName()setName(String)Nombre opcional de esta capa de elemento de vértice.

VertexElementNormal

Almacena un vector normal por vértice o por esquina de polígono, según getMappingMode(). Los valores de datos son Vector4 instancias con w no usado.

import com.aspose.threed.*;

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

Methods

MethodsMethodsMethodsMethods
dataList<Vector4>getData()Vectores normales. El w el componente no se usa (típicamente 0.0).

Returns: VertexElementUV

Almacena pares de coordenadas de textura (Vector2) por vértice o por esquina de polígono. Una malla puede contener múltiples capas UV para diferentes canales de textura.


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

Methods

MethodsMethodsMethodsMethods
dataList<Vector2>getData()Pares de coordenadas UV.

VertexElementVertexColor

Almacena datos de color RGBA por vértice o por esquina como Vector4 (r, g, b, a en el rango 0–1).

Methods

MethodsMethodsMethodsMethods
dataList<Vector4>getData()Valores de color RGBA.

Enumeración VertexElementType

Identifica el rol semántico de una capa de elemento de vértice.

import com.aspose.threed.*;
MethodsMethods
NORMALVectores normales de superficie.
UVCoordenadas UV de la textura.
VERTEX_COLORColor RGBA por vértice.
TANGENTVectores tangentes para mapeo normal.
BINORMALVectores binormales (bitangentes).
MATERIALÍndice de material por polígono.
POLYGON_GROUPÍndice de agrupación de polígonos.
VERTEX_CREASEPesos de pliegue de vértice en subdivisión.
EDGE_CREASEPesos de pliegue de arista en subdivisión.
USER_DATADatos arbitrarios definidos por el usuario.
VISIBILITYBanderas de visibilidad por elemento.
SPECULARColor o intensidad especular.
WEIGHTPesos de mezcla para skinning.
HOLEBanderas de huecos de polígonos.

Enumeración MappingMode

Controla a qué primitiva geométrica está asociado cada valor del elemento de vértice.

MethodsMethods
CONTROL_POINTUn valor por punto de control (vértice).
POLYGON_VERTEXUn valor por esquina de polígono (face-vertex).
POLYGONUn valor por polígono.

Enumeración ReferenceMode

Controla cómo se indexa la matriz de datos del elemento de vértice.

MethodsMethods
DIRECTLos datos se acceden secuencialmente sin una matriz de índices separada.
INDEXLos datos se acceden mediante una matriz de índices separada.
INDEX_TO_DIRECTUna matriz de índices asigna cada primitiva de mapeo a una posición en la matriz de datos.

Methods

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

Ver también

 Español