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 |
sliceFrameGaps : vector3d |
各次元のボリューム本体と枠の間に残された空隙のサイズ。ギャップは異なる次元で異なることがあります。値は、同じ次元のボリュームの厚さの分数です。値を負にすることはできない。
デフォルトはvector3d(0.01, 0.01, 0.01)
。
drawSliceFramesも参照 。
sliceFrameThicknesses : vector3d |
各次元のスライス枠の厚さ。値は、同じ次元の体積の厚さの分数です。値を負にする こ と はで き ません。
デフォルトはvector3d(0.01, 0.01, 0.01)
です。
drawSliceFramesも参照してください 。
sliceFrameWidths : vector3d |
スライス枠の幅。幅は異なる次元で異なることができるので、例えば、その次元の値を0に設定することで、ボリュームの特定の辺のフレームの描画を省略することができます。値は、同じ次元のボリュームの厚さの分数です。値を負にすることはできません。
デフォルトは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
。
シグナル ドキュメント
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
です。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。