VertexElement — Aspose.3D FOSS for Java
Pakotne: com.aspose.threed (aspose-3d-foss 26.1.0)
VertexElement ir abstrakta pamata klase per-virsotnes (vai per-poliģona, per-malā) datu slāņiem, kas pievienoti a Mesh.Katrs apakšklase saglabā konkrētu ģeometriskā atribūta veidu — normāles, UV koordinātas, virsotnes krāsas vai gludināšanas grupas.
Methods
Methods
| Methods | Methods | Methods | Methods | Methods |
|---|---|---|---|---|
vertexElementType | VertexElementType | getVertexElementType() | – | Semantiskais šī elementa tips (tikai lasāms). |
mappingMode | MappingMode | getMappingMode() | setMappingMode(MappingMode) | Nosaka, kuram primitīvam katra vērtība tiek piesaistīta. |
referenceMode | ReferenceMode | getReferenceMode() | setReferenceMode(ReferenceMode) | Nosaka, kā vērtības tiek indeksētas. |
indices | List<Integer> | getIndices() | – | Indeksu masīvs (izmanto, kad atsauces režīms ir INDEX_TO_DIRECT). |
name | String | getName() | setName(String) | Pēc izvēles nosaukums šim virsotnes elementa slānim. |
VertexElementNormal
Saglabā vienu normāles vektoru uz virsotnes vai uz poliģona stūra, atkarībā no getMappingMode(). Datu vērtības ir Vector4 instances ar w neizmantots.
import com.aspose.threed.*;
VertexElement normals = mesh.createElement(
VertexElementType.NORMAL,
MappingMode.CONTROL_POINT,
ReferenceMode.DIRECT
);Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
data | List<Vector4> | getData() | Normāles vektori. w komponents nav izmantots (parasti 0.0). |
Atgriež: VertexElementUV
Saglabā tekstūras koordinātu pārus (Vector2) uz virsotnes vai uz daudzstūra stūra. Tīkls var saturēt vairākus UV slāņus dažādiem tekstūras kanāliem.
VertexElementUV uv = mesh.createElementUV(
TextureMapping.DIFFUSE,
MappingMode.POLYGON_VERTEX,
ReferenceMode.INDEX_TO_DIRECT
);Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
data | List<Vector2> | getData() | UV koordinātu pāri. |
VertexElementVertexColor
Saglabā uz virsotnes vai uz stūra RGBA krāsu datus kā Vector4 (r, g, b, a diapazonā 0–1).
Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
data | List<Vector4> | getData() | RGBA krāsu vērtības. |
VertexElementType uzskaitījums
Identificē semantisko lomu virsotnes elementa slānim.
import com.aspose.threed.*;| Methods | Methods |
|---|---|
NORMAL | Virsmu normālu vektori. |
UV | Tekstūras UV koordinātas. |
VERTEX_COLOR | Katras virsotnes RGBA krāsa. |
TANGENT | Tangentu vektori normālu kartēšanai. |
BINORMAL | Binormālie (bitangentu) vektori. |
MATERIAL | Katras daudzstūra materiāla indekss. |
POLYGON_GROUP | Daudzstūru grupēšanas indekss. |
VERTEX_CREASE | Apakšdalījuma virsotnes saliekuma svari. |
EDGE_CREASE | Apakšdalījuma malas saliekuma svari. |
USER_DATA | Patvaļīgi lietotāja definēti dati. |
VISIBILITY | Katras elementa redzamības karogi. |
SPECULAR | Spoguļgaismas krāsa vai intensitāte. |
WEIGHT | Sapludināšanas svarus skinningam. |
HOLE | Poligona caurumu karogi. |
MappingMode uzskaitījums
Nosaka, kuram ģeometrijas primitīvam ir piesaistīta katra virsotnes elementa vērtība.
| Methods | Methods |
|---|---|
CONTROL_POINT | Viena vērtība katram vadības punktam (virsotnei). |
POLYGON_VERTEX | Viena vērtība katram daudzstūra stūrim (sejas-virsotnei). |
POLYGON | Viena vērtība katram daudzstūrim. |
ReferenceMode uzskaitījums
Nosaka, kā tiek indeksēts virsotnes elementa datu masīvs.
| Methods | Methods |
|---|---|
DIRECT | Dati tiek piekļūti secīgi bez atsevišķa indeksu masīva. |
INDEX | Dati tiek piekļūti, izmantojot atsevišķu indeksu masīvu. |
INDEX_TO_DIRECT | Indeksu masīvs kartē katru kartēšanas primitīvu uz pozīciju datu masīvā. |
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());
}
}
}