Custom3DVolume QML Type
グラフにボリュームレンダリングされたオブジェクトを追加します。詳細...
| Import Statement: | import QtGraphs |
| In C++: | QCustom3DVolume |
| Inherits: |
- 継承されたメンバを含む、全メンバの一覧
- Custom3DVolume はQt Graphs QML Types for 3D に含まれます。
プロパティ
- alphaMultiplier : real
- drawSliceFrames : bool
- drawSlices : bool
- preserveOpacity : bool
- sliceFrameColor : color
- sliceFrameGaps : vector3d
- sliceFrameThicknesses : vector3d
- sliceFrameWidths : vector3d
- sliceIndexX : int
- sliceIndexY : int
- sliceIndexZ : int
- textureDepth : int
- textureHeight : int
- textureWidth : int
- useHighDefShader : bool
信号
- alphaMultiplierChanged(float mult)
- drawSliceFramesChanged(bool enabled)
- drawSlicesChanged(bool enabled)
- preserveOpacityChanged(bool enabled)
- sliceFrameColorChanged(color color)
- sliceFrameGapsChanged(vector3d values)
- sliceFrameThicknessesChanged(vector3d values)
- sliceFrameWidthsChanged(vector3d values)
- sliceIndexXChanged(int value)
- sliceIndexYChanged(int value)
- sliceIndexZChanged(int value)
- textureDepthChanged(int value)
- textureHeightChanged(int value)
- textureWidthChanged(int value)
- useHighDefShaderChanged(bool enabled)
詳細説明
ボリュームレンダリングされたオブジェクトは、3Dテクスチャを持つボックスです。ボリュームには、ボリュームの各主軸に沿った3つのスライスプレーンがサポートされています。
ボリュームオブジェクトのレンダリングは、特にボリュームの内容がレイトレースされるため、ボリュームの大部分が透明である場合、非常にパフォーマンスが集中します。パフォーマンスは、ボリュームが画面上で占めるピクセル量とほぼリニアにスケールするため、ボリュームを小さく表示するか、グラフのズームレベルを制限することが、パフォーマンスを向上させる簡単な方法です。同様に、ボリュームのテクスチャ寸法もパフォーマンスに大きな影響を与えます。ボリュームの内容をピクセル単位で完璧にレンダリングするよりもフレームレートを重視する場合は、useHighDefShader プロパティをfalse に設定して高解像度シェーダをオフにすることを検討してください。
注意: ボリュームデータへの入力は、純粋なQMLからは通常効率的でも実用的でもな いため、これに直接関係するプロパティはQMLでは完全にはサポートされていません。ボリュームオブジェクトをQt Quick UI で使用したい場合は、QML/C++のハイブリッドアプリケーションを作成してください。
注意: ボリュームオブジェクトは3Dテクスチャを利用しますが、これはOpenGL ES2環境ではサポートされていません。
useHighDefShaderも参照して ください。
プロパティ・ドキュメント
alphaMultiplier : real
ボリュームテクスチャの各テクセルのアルファ値は、レンダリング時にこの値と乗算されます。これは、ボリュームに均一な透明度を導入するために使用できます。preserveOpacity がtrue の場合、少なくともある程度の透明度を持つテクセルのみが影響を受け、完全に不透明なテクセルは影響を受けません。この値は負であってはいけません。デフォルトは1.0 です。
preserveOpacityも参照してください 。
drawSliceFrames : bool
このプロパティ値がtrue の場合、スライスインデックスプロパティで示されるスライスのフレームがボリュームの周囲に描画される。false の場合、スライスフレームは描画されません。スライス枠の描画はスライスの描画とは独立しているので、ボリューム全体を表示しながら、その周囲にスライス枠を描画することができます。デフォルトはfalse です。
sliceIndexX,sliceIndexY,sliceIndexZ,drawSlicesも参照してください 。
drawSlices : bool
このプロパティ値がtrue の場合、フルボリュームではなく、スライスインデックスプロパティで示されるスライスが描画される。こ のプ ロ パテ ィ 値がfalse の場合、 容積全体が常に描画 さ れます。デフォルトはfalse です。
注意: スライスは常にアイテムの軸に沿って描画されるので、アイテムが回転するとスライスも回転します。
sliceIndexX 、sliceIndexY 、sliceIndexZも参照してください 。
preserveOpacity : bool
このプロパティ値がtrue の場合、alphaMultiplier は、すでにある程度の透明度を持つテクセルにのみ適用されます。こ のプ ロパテ ィ 値がfalse の場合、 乗数はすべてのテ キ セルのアルフ ァ 値に適用 さ れます。デフォルトはtrue です。
alphaMultiplierも参照してください 。
sliceFrameColor : color
スライス枠の色。透明なスライス枠の色はサポートされていない。
デフォルトは黒。
drawSliceFramesも参照 。
sliceFrameGaps : vector3d
各寸法において、容積本体とフレームとの間に残された空隙の大きさ。ギャップは異なる寸法で異なることがある。値は、同じ寸法におけるボリュームの厚さの分数である。値を負にすることはできない。
デフォルトはvector3d(0.01, 0.01, 0.01) 。
drawSliceFramesも参照 。
sliceFrameThicknesses : vector3d
各次元のスライス枠の厚さ。値は同じ次元の体積の厚さの分数。値は負にできない。
デフォルトはvector3d(0.01, 0.01, 0.01) 。
drawSliceFramesも参照してください 。
sliceFrameWidths : vector3d
スライス枠の幅。幅は異なる次元で異なることができるので、例えば、その次元の値をゼロに設定することで、ボリュームの特定の辺のフレームを描画するのを省略することができます。値は、同じ次元のボリュームの厚さの分数です。値を負にすることはできません。
デフォルトはvector3d(0.01, 0.01, 0.01) 。
drawSliceFramesも参照してください 。
sliceIndexX : int
どの垂直スライスを表示するかを示す、テクスチャデータのx次元インデックス。いずれかの次元を負に設定すると、その次元のスライスまたはスライスフレームが描画されないことを示します。すべての次元が負の場合、スライスやスライスフレームは描画されず、ボリュームは正常に描画されます。デフォルトは-1 。
QCustom3DVolume::textureData 、drawSlices 、drawSliceFramesも参照してください 。
sliceIndexY : int
どの水平スライスを表示するかを示す、テクスチャデータのy次元インデックス。いずれかの次元を負に設定すると、その次元のスライスまたはスライスフレームが描画されないことを示します。すべての次元が負の場合、スライスやスライスフレームは描画されず、ボリュームは正常に描画されます。デフォルトは-1 。
QCustom3DVolume::textureData 、drawSlices 、drawSliceFramesも参照してください 。
sliceIndexZ : int
どの垂直スライスを表示するかを示す、テクスチャデータのz次元インデックス。いずれかの次元を負に設定すると、その次元のスライスまたはスライスフレームが描画されないことを示します。すべての次元が負の場合、スライスやスライスフレームは描画されず、ボリュームは正常に描画されます。デフォルトは-1 。
QCustom3DVolume::textureData 、drawSlices 、drawSliceFramesも参照してください 。
textureDepth : int
ボリューム内容を定義する 3D テクスチャの深さをピクセル単位で指定します。デフォルトは0 です。
注意: QML からこのプロパティを変更することはサポートされていません。
textureHeight : int
ボリューム内容を定義する 3D テクスチャの高さをピクセル単位で指定します。デフォルトは0 です。
注意: QML からこのプロパティを変更することはサポートされていません。
textureWidth : int
ボリューム内容を定義する 3D テクスチャの幅をピクセル単位で指定します。デフォルトは0 です。
注意: QML からこのプロパティを変更することはサポートされていません。
useHighDefShader : bool
このプロパティ値がtrue の場合、ボリュームのレンダリングに高解像度シェーダが使用されます。false の場合、低解像度シェーダが使用されます。
高解像度シェーダは、ボリュームのレンダリング時にボリュームテクスチャのすべての可視テクセルがサンプリングされることを保証します。低精細度シェーダはボリュームの内容の大まかな近似だけをレンダリング しますが、フレームレートはずっと高くなります。低解像度シェーダはボリュームテクスチャのすべてのテクセルがサンプリングされることを保証しないため、ボリュームに明瞭な薄い特徴がある場合、ちらつきが発生する可能性があります。
注意: この値は、ボリュームのスライスをレンダリングする際の詳細レベルには影響しません。
デフォルトはtrue 。
Signal ドキュメント
alphaMultiplierChanged(float mult)
このシグナルは、alphaMultiplier がmult に変更されたときに発せられる。
注: 対応するハンドラはonAlphaMultiplierChanged 。
drawSliceFramesChanged(bool enabled)
このシグナルは、drawSliceFrames がenabled に変更されたときに発せられる。
注: 対応するハンドラはonDrawSliceFramesChanged 。
drawSlicesChanged(bool enabled)
このシグナルは、drawSlices がenabled に変更されたときに発せられる。
注: 対応するハンドラはonDrawSlicesChanged 。
preserveOpacityChanged(bool enabled)
このシグナルは、preserveOpacity がenabled に変更されたときに発せられる。
注: 対応するハンドラはonPreserveOpacityChanged 。
sliceFrameColorChanged(color color)
このシグナルは、sliceFrameColor がcolor に変更されたときに発せられる。
注: 対応するハンドラはonSliceFrameColorChanged 。
sliceFrameGapsChanged(vector3d values)
このシグナルは、sliceFrameGaps がvalues に変更されたときに発せられる。
注: 対応するハンドラはonSliceFrameGapsChanged 。
sliceFrameThicknessesChanged(vector3d values)
このシグナルは、sliceFrameThicknesses がvalues に変更されたときに発せられる。
注: 対応するハンドラはonSliceFrameThicknessesChanged 。
sliceFrameWidthsChanged(vector3d values)
このシグナルは、sliceFrameWidths がvalues に変更されたときに発せられる。
注: 対応するハンドラはonSliceFrameWidthsChanged 。
sliceIndexXChanged(int value)
このシグナルは、sliceIndexX がvalue に変更されたときに発せられる。
注: 対応するハンドラはonSliceIndexXChanged 。
sliceIndexYChanged(int value)
このシグナルは、sliceIndexY がvalue に変更されたときに発せられる。
注: 対応するハンドラはonSliceIndexYChanged 。
sliceIndexZChanged(int value)
このシグナルは、sliceIndexZ がvalue に変更されたときに発せられる。
注: 対応するハンドラはonSliceIndexZChanged 。
textureDepthChanged(int value)
このシグナルは、textureDepth がvalue に変更されたときに発せられる。
注: 対応するハンドラはonTextureDepthChanged 。
textureHeightChanged(int value)
このシグナルは、textureHeight がvalue に変更されたときに発せられる。
注: 対応するハンドラはonTextureHeightChanged 。
textureWidthChanged(int value)
このシグナルは、textureWidth がvalue に変更されたときに発せられる。
注: 対応するハンドラはonTextureWidthChanged 。
useHighDefShaderChanged(bool enabled)
このシグナルは、useHighDefShader がenabled に変更されたときに発せられる。
注: 対応するハンドラはonUseHighDefShaderChanged 。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.