VertexElement

VertexElement — Aspose.3D FOSS for Java

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

VertexElement je apstraktna osnovna klasa za slojeve podataka po vrhu (ili po poligonu, po rubu) koji su pričvršćeni na Mesh.Svaka podklasa pohranjuje određenu vrstu geometrijskog atributa – normale, UV koordinate, boje vrhova ili grupe zaglađivanja.


Enumerations

Enumerations

EnumerationsEnumerationsEnumerationsEnumerationsEnumerations
vertexElementTypeVertexElementTypegetVertexElementType()Semantički tip ovog elementa (samo za čitanje).
mappingModeMappingModegetMappingMode()setMappingMode(MappingMode)Upravlja kojem primitivnom svaki vrijednost pripada.
referenceModeReferenceModegetReferenceMode()setReferenceMode(ReferenceMode)Upravlja načinom indeksiranja vrijednosti.
indicesList<Integer>getIndices()Polje indeksa (koristi se kada je način referencije INDEX_TO_DIRECT).
nameStringgetName()setName(String)Opcionalno ime ovog sloja elementa vrha.

VertexElementNormal

Pohranjuje jedan vektor normale po vrhu ili po kutu poligona, ovisno o getMappingMode(). Vrijednosti podataka su Vector4 instance s w neiskorišteno.

import com.aspose.threed.*;

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

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
dataList<Vector4>getData()Vektori normale. The w komponenta nije korištena (obično 0.0).

Vraća: VertexElementUV

Pohranjuje parove teksturnih koordinata (Vector2) po vrhu ili po uglu poligona. Mreža može imati više UV slojeva za različite teksturne kanale.


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

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
dataList<Vector2>getData()Parovi UV koordinata.

VertexElementVertexColor

Pohranjuje podatke o boji RGBA po vrhu ili po uglu kao Vector4 (r, g, b, a u rasponu 0–1).

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
dataList<Vector4>getData()RGBA vrijednosti boje.

Enumeracija VertexElementType

Identificira semantičku ulogu sloja elementa vrha.

import com.aspose.threed.*;
EnumerationsEnumerations
NORMALVektori površinskih normala.
UVUV koordinate teksture.
VERTEX_COLORRGBA boja po vrhu.
TANGENTTangencijalni vektori za normal mapiranje.
BINORMALBinormalni (bitangent) vektori.
MATERIALIndeks materijala po poligonu.
POLYGON_GROUPIndeks grupiranja poligona.
VERTEX_CREASETežine nabora vrha podjele.
EDGE_CREASETežine nabora rubova podjele.
USER_DATAProizvoljni podaci definirani od strane korisnika.
VISIBILITYZastavice vidljivosti po elementu.
SPECULARSpecularna boja ili intenzitet.
WEIGHTTežine blendanja za skinning.
HOLEZastavice rupa u poligonu.

Enumeracija MappingMode

Upravlja kojim geometrijskim primitivom je svaka vrijednost elementa vrha povezana.

EnumerationsEnumerations
CONTROL_POINTJedna vrijednost po kontrolnoj točki (vrhu).
POLYGON_VERTEXJedna vrijednost po kutu poligona (vrh‑lica).
POLYGONJedna vrijednost po poligonu.

Enumeracija ReferenceMode

Upravlja načinom indeksiranja niza podataka elementa vrha.

EnumerationsEnumerations
DIRECTPodaci se pristupaju sekvencijalno bez zasebnog niza indeksa.
INDEXPodaci se pristupaju putem zasebnog niza indeksa.
INDEX_TO_DIRECTNiz indeksa mapira svaki primitiv mapiranja na položaj u nizu podataka.

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

Vidi također

 Hrvatski