VertexElement — Aspose.3D FOSS for Java
パッケージ: com.aspose.threed (aspose-3d-foss 26.1.0)
VertexElement は、頂点ごと(またはポリゴンごと、エッジごと)のデータレイヤーの抽象基底クラスで、~に付随します。 Mesh.各サブクラスは、法線、UV座標、頂点カラー、またはスムージンググループといった、特定の種類のジオメトリ属性を格納します。.
Example
Example
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
vertexElementType | VertexElementType | getVertexElementType() | – | この要素のセマンティック型(読み取り専用)。. |
mappingMode | MappingMode | getMappingMode() | setMappingMode(MappingMode) | 各値がマッピングされるプリミティブを制御します。. |
referenceMode | ReferenceMode | getReferenceMode() | setReferenceMode(ReferenceMode) | 値のインデックス方法を制御します。. |
indices | List<Integer> | getIndices() | – | インデックス配列(参照モードが INDEX_TO_DIRECT). |
name | String | getName() | setName(String) | この頂点要素レイヤーのオプション名。. |
VertexElementNormal
頂点ごとまたはポリゴンのコーナーごとに1つの法線ベクトルを格納します(…に応じて)。 getMappingMode().。 データ値は Vector4 インスタンスが w 未使用です。.
import com.aspose.threed.*;
VertexElement normals = mesh.createElement(
VertexElementType.NORMAL,
MappingMode.CONTROL_POINT,
ReferenceMode.DIRECT
);Example
| Example | Example | Example | Example |
|---|---|---|---|
data | List<Vector4> | getData() | 法線ベクトル。この w コンポーネントは未使用です(通常 0.0). |
Returns: VertexElementUV
テクスチャ座標ペアを格納します(Vector2) 各頂点またはポリゴンのコーナーごとに。メッシュは異なるテクスチャチャンネル用に複数のUVレイヤーを持つことができます。.
VertexElementUV uv = mesh.createElementUV(
TextureMapping.DIFFUSE,
MappingMode.POLYGON_VERTEX,
ReferenceMode.INDEX_TO_DIRECT
);Example
| Example | Example | Example | Example |
|---|---|---|---|
data | List<Vector2> | getData() | UV座標ペア。. |
VertexElementVertexColor
各頂点またはコーナーごとのRGBAカラー データを次のように格納します Vector4 (r, g, b, a は 0〜1 の範囲です)。.
Example
| Example | Example | Example | Example |
|---|---|---|---|
data | List<Vector4> | getData() | RGBAカラー値。. |
VertexElementType 列挙体
頂点要素レイヤーの意味的役割を識別します。.
import com.aspose.threed.*;| Example | Example |
|---|---|
NORMAL | 表面法線ベクトル。. |
UV | テクスチャ UV座標。. |
VERTEX_COLOR | 頂点ごとのRGBAカラー。. |
TANGENT | 法線マッピング用タンジェントベクトル。. |
BINORMAL | バイノーマル(ビタンジェント)ベクトル。. |
MATERIAL | ポリゴンごとのマテリアルインデックス。. |
POLYGON_GROUP | ポリゴンのグループ化インデックス。. |
VERTEX_CREASE | サブディビジョン頂点クレース重み。. |
EDGE_CREASE | サブディビジョンエッジクレース重み。. |
USER_DATA | 任意のユーザー定義データ。. |
VISIBILITY | 要素ごとの可視性フラグ。. |
SPECULAR | Specularカラーまたは強度。. |
WEIGHT | スキニング用のブレンドウェイト。. |
HOLE | ポリゴンの穴フラグ。. |
MappingMode 列挙体
各頂点要素の値がどのジオメトリプリミティブに関連付けられるかを制御します。.
| Example | Example |
|---|---|
CONTROL_POINT | 制御点(頂点)ごとに1つの値。. |
POLYGON_VERTEX | ポリゴンのコーナー(フェイス頂点)ごとに1つの値。. |
POLYGON | ポリゴンごとに1つの値。. |
ReferenceMode 列挙体
頂点要素データ配列がどのようにインデックス付けされるかを制御します。.
| Example | Example |
|---|---|
DIRECT | データは別個のインデックス配列なしで順次アクセスされます。. |
INDEX | データは別個のインデックス配列を介してアクセスされます。. |
INDEX_TO_DIRECT | インデックス配列は、各マッピングプリミティブをデータ配列内の位置にマッピングします。. |
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());
}
}
}