Custom3DVolume QML Type
グラフにボリュームレンダリングされたオブジェクトを追加します。詳細...
| Import Statement: | import QtDataVisualization 1.12 |
| Since: | QtDataVisualization 1.2 |
| In C++: | QCustom3DVolume |
| Inherits: | |
| Status: | Deprecated |
この型は非推奨です。新しいコードでの使用は強く推奨しません。
プロパティ
- 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
詳細説明
ボリュームレンダリングされたオブジェクトは、3Dテクスチャが適用された箱です。このボリュームには、3つのスライス平面がサポートされており、それぞれがボリュームの各主軸に沿っています。
ボリュームオブジェクトのレンダリングは、特にボリュームが大部分透明である場合、ボリュームの内容がレイトレーシングされるため、非常に高い処理負荷を伴います。パフォーマンスは、画面上でボリュームが占めるピクセル数にほぼ線形に比例するため、ビューを小さく表示したり、グラフのズームレベルを制限したりすることが、パフォーマンスを向上させる簡単な方法です。 同様に、ボリュームテクスチャの寸法もパフォーマンスに大きな影響を与えます。ボリュームの内容をピクセル単位で正確にレンダリングすることよりもフレームレートを優先する場合は、useHighDefShader プロパティをfalse に設定して、高精細シェーダーを無効にすることを検討してください。
注: ボリュームデータの設定は 、純粋なQMLだけでは通常、効率的でも実用的でもありません。そのため、それに直接関連するプロパティはQMLからは完全にはサポートされていません。Qt Quick UIでボリュームオブジェクトを使用したい場合は、QMLとC++のハイブリッドアプリケーションを作成してください。
注:ボリューム オブジェクトは、正射影でのみサポートされています。
注:体積 オブジェクトは 3D テクスチャを利用しますが、これは OpenGL ES2 環境ではサポートされていません。
「 AbstractGraph3D::orthoProjection 」および「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 です。
© 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.