VertexElement

VertexElement — Aspose.3D FOSS for Java

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

VertexElement è la classe base astratta per i layer di dati per-vertice (o per-poligono, per-bordo) collegati a un Mesh.Ogni sottoclasse memorizza un tipo specifico di attributo geometrico – normali, coordinate UV, colori dei vertici o gruppi di smoothing.


Enumerations

Enumerations

EnumerationsEnumerationsEnumerationsEnumerationsEnumerations
vertexElementTypeVertexElementTypegetVertexElementType()Tipo semantico di questo elemento (sola lettura).
mappingModeMappingModegetMappingMode()setMappingMode(MappingMode)Controlla a quale primitiva è mappato ciascun valore.
referenceModeReferenceModegetReferenceMode()setReferenceMode(ReferenceMode)Controlla come i valori sono indicizzati.
indicesList<Integer>getIndices()Array di indici (usato quando la modalità di riferimento è INDEX_TO_DIRECT).
nameStringgetName()setName(String)Nome opzionale di questo layer di elementi del vertice.

VertexElementNormal

Memorizza un vettore normale per vertice o per angolo del poligono, a seconda di getMappingMode(). I valori dei dati sono Vector4 istanze con w non utilizzato.

import com.aspose.threed.*;

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

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
dataList<Vector4>getData()Vettori normali. Il w componente è non utilizzato (tipicamente 0.0).

Restituisce: VertexElementUV

Memorizza coppie di coordinate di texture (Vector2) per vertice o per angolo del poligono. Una mesh può contenere più livelli UV per diversi canali di texture.


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

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
dataList<Vector2>getData()Coppie di coordinate UV.

VertexElementVertexColor

Memorizza i dati di colore RGBA per-vertex o per-corner come Vector4 (r, g, b, a nell’intervallo 0–1).

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
dataList<Vector4>getData()Valori di colore RGBA.

Enumerazione VertexElementType

Identifica il ruolo semantico di un layer di elemento vertice.

import com.aspose.threed.*;
EnumerationsEnumerations
NORMALVettori normali di superficie.
UVCoordinate UV della texture.
VERTEX_COLORColore RGBA per-vertex.
TANGENTVettori tangente per il normal mapping.
BINORMALVettori binormali (bitangent).
MATERIALIndice materiale per-polygon.
POLYGON_GROUPIndice di raggruppamento dei poligoni.
VERTEX_CREASEPesi delle pieghe dei vertici di suddivisione.
EDGE_CREASEPesi delle pieghe dei bordi di suddivisione.
USER_DATADati arbitrari definiti dall’utente.
VISIBILITYFlag di visibilità per-elemento.
SPECULARColore o intensità speculare.
WEIGHTPesi di blend per lo skinning.
HOLEFlag dei buchi del poligono.

Enumerazione MappingMode

Controlla a quale primitiva geometrica è associato ciascun valore dell’elemento vertice.

EnumerationsEnumerations
CONTROL_POINTUn valore per punto di controllo (vertice).
POLYGON_VERTEXUn valore per ogni angolo del poligono (face-vertex).
POLYGONUn valore per poligono.

Enumerazione ReferenceMode

Controlla come viene indicizzato l’array di dati dell’elemento vertice.

EnumerationsEnumerations
DIRECTI dati vengono accessi in modo sequenziale senza un array di indici separato.
INDEXI dati vengono accessi tramite un array di indici separato.
INDEX_TO_DIRECTUn array di indici mappa ogni primitiva di mapping a una posizione nell’array dei dati.

Enumerations

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

Vedi anche

 Italiano