QGeometryRenderer Class

class Qt3DRender::QGeometryRenderer

ジオメトリのレンダリングをカプセル化します。詳細...

Header: #include <QGeometryRenderer>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
In QML: GeometryRenderer
Inherits: Qt3DCore::QBoundingVolume
Inherited By:

Qt3DExtras::QConeMesh, Qt3DExtras::QCuboidMesh, Qt3DExtras::QCylinderMesh, Qt3DExtras::QExtrudedTextMesh, Qt3DExtras::QPlaneMesh, Qt3DExtras::QSphereMesh, Qt3DExtras::QTorusMesh, and Qt3DRender::QMesh

Status: Deprecated

パブリックタイプ

enum PrimitiveType { Points, Lines, LineLoop, LineStrip, Triangles, …, Patches }

プロパティ

パブリック関数

QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)
int firstInstance() const
int firstVertex() const
Qt3DCore::QGeometry *geometry() const
int indexBufferByteOffset() const
int indexOffset() const
int instanceCount() const
bool primitiveRestartEnabled() const
Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType() const
int restartIndexValue() const
float sortIndex() const
int vertexCount() const
int verticesPerPatch() const

パブリックスロット

void setFirstInstance(int firstInstance)
void setFirstVertex(int firstVertex)
void setGeometry(Qt3DCore::QGeometry *geometry)
void setIndexBufferByteOffset(int offset)
void setIndexOffset(int indexOffset)
void setInstanceCount(int instanceCount)
void setPrimitiveRestartEnabled(bool enabled)
void setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)
void setRestartIndexValue(int index)
void setSortIndex(float sortIndex)
void setVertexCount(int vertexCount)
void setVerticesPerPatch(int verticesPerPatch)

シグナル

void firstInstanceChanged(int firstInstance)
void firstVertexChanged(int firstVertex)
void geometryChanged(Qt3DCore::QGeometry *geometry)
void indexBufferByteOffsetChanged(int offset)
void indexOffsetChanged(int indexOffset)
void instanceCountChanged(int instanceCount)
void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)
void primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)
void restartIndexValueChanged(int restartIndexValue)
void sortIndexChanged(float sortIndex)
void vertexCountChanged(int vertexCount)
void verticesPerPatchChanged(int verticesPerPatch)

詳細説明

Qt3DRender::QGeometryRenderer は、Qt3DCore::QGeometry を描画するために必要なすべての情報を保持します。 QGeometry はジオメトリ データの座標を保持し、QGeometryRenderer はそのデータの解釈方法を指定します。

メンバ型 ドキュメント

enum QGeometryRenderer::PrimitiveType

プリミティブの型。

定数説明
Qt3DRender::QGeometryRenderer::Points0x0000点のリスト
Qt3DRender::QGeometryRenderer::Lines0x0001線のリスト
Qt3DRender::QGeometryRenderer::LineLoop0x0002ループを形成する両端で接続された線の連結グループ
Qt3DRender::QGeometryRenderer::LineStrip0x0003線の連結グループ
Qt3DRender::QGeometryRenderer::Triangles0x0004三角形のリスト
Qt3DRender::QGeometryRenderer::TriangleStrip0x0005接続された三角形のリスト
Qt3DRender::QGeometryRenderer::TriangleFan0x0006すべての三角形が最初の頂点を共有する、接続された三角形のリスト
Qt3DRender::QGeometryRenderer::LinesAdjacency0x000Aジオメトリシェーダが線リスト内の隣接線にアクセスできるようにする
Qt3DRender::QGeometryRenderer::TrianglesAdjacency0x000Cジオメトリシェーダが三角形リスト内の隣接する三角形にアクセスできるようにする
Qt3DRender::QGeometryRenderer::LineStripAdjacency0x000Bジオメトリシェーダがラインストリップ内の隣接するラインにアクセスできるようにする
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency0x000Dジオメトリシェーダが三角形ストリップ内の隣接する三角形にアクセスできるようにする
Qt3DRender::QGeometryRenderer::Patches0x000Eパッチが任意の数の頂点から構成される場合、テッセレーションシェーダが受け入れる唯一のプリミティブタイプ

プロパティの説明

firstInstance : int

ベースインスタンスを保持します。

アクセス関数:

int firstInstance() const
void setFirstInstance(int firstInstance)

通知シグナル:

void firstInstanceChanged(int firstInstance)

firstVertex : int

基本頂点を保持する。

アクセス関数:

int firstVertex() const
void setFirstVertex(int firstVertex)

通知シグナル:

void firstVertexChanged(int firstVertex)

geometry : Qt3DCore::QGeometry*

ジオメトリを保持する。

アクセス関数:

Qt3DCore::QGeometry *geometry() const
void setGeometry(Qt3DCore::QGeometry *geometry)

通知シグナル

void geometryChanged(Qt3DCore::QGeometry *geometry)

indexBufferByteOffset : int

インデックスバッファへのバイトオフセットを保持します。

アクセス関数:

int indexBufferByteOffset() const
void setIndexBufferByteOffset(int offset)

通知シグナル:

void indexBufferByteOffsetChanged(int offset)

indexOffset : int

基本頂点を保持する。

アクセス関数:

int indexOffset() const
void setIndexOffset(int indexOffset)

通知シグナル:

void indexOffsetChanged(int indexOffset)

instanceCount : int

インスタンスカウントを保持します。

アクセス関数:

int instanceCount() const
void setInstanceCount(int instanceCount)

通知シグナル

void instanceCountChanged(int instanceCount)

primitiveRestartEnabled : bool

原始再起動フラグを保持する。

アクセス関数:

bool primitiveRestartEnabled() const
void setPrimitiveRestartEnabled(bool enabled)

通知シグナル:

void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)

primitiveType : PrimitiveType

プリミティブ型。

アクセス関数:

Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType() const
void setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)

通知シグナル:

void primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)

restartIndexValue : int

再起動インデックスを保持する。

アクセス関数:

int restartIndexValue() const
void setRestartIndexValue(int index)

通知シグナル

void restartIndexValueChanged(int restartIndexValue)

[since 6.0] sortIndex : float

深度ソートが有効な場合、ソートインデックスを上書きする。

フレームグラフで深度ソートが有効になっている場合、レンダラーはバウンディングボリュームの中心がカメラからどのくらい離れているかに基づいてオブジェクトをソートし、最も遠いオブジェクトから最も近いオブジェクトへとレンダリングします。

このプロパティを使用して、深度インデックスをオーバーライドし、オブジェクトがレンダリングされる順序を正確に制御することができます。これは、すべてのオブジェクトがカメラから同じ物理的距離にある場合に便利です。

実際の値は重要ではなく、オブジェクトをソートする順序を定義するだけです。値が最も小さいオブジェクトが最初に描画され、次に2番目に小さいオブジェクトが描画されるというようにソートされます。

注意: これを-1.fに設定すると、このエンティティの明示的なソートが無効になり、バウンディングボリュームの中心からの距離を使用するように戻ります。

このプロパティは Qt 6.0 で導入されました。

アクセス関数:

float sortIndex() const
void setSortIndex(float sortIndex)

通知シグナル

void sortIndexChanged(float sortIndex)

Qt3DRender::QSortPolicyも参照のこと

vertexCount : int

プリミティブカウントを保持します。

アクセス関数:

int vertexCount() const
void setVertexCount(int vertexCount)

通知シグナル

void vertexCountChanged(int vertexCount)

verticesPerPatch : int

パッチごとに頂点を保持する。

アクセス機能

int verticesPerPatch() const
void setVerticesPerPatch(int verticesPerPatch)

通知シグナル

void verticesPerPatchChanged(int verticesPerPatch)

メンバ関数 ドキュメント

[explicit] QGeometryRenderer::QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)

新しい QGeometryRenderer をparent で構築します。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 ここで提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。