Custom3DVolume QML Type

グラフにボリュームレンダリングされたオブジェクトを追加します。詳細...

Import Statement: import QtGraphs
In C++: QCustom3DVolume
Inherits:

Custom3DItem

プロパティ

シグナル

詳細説明

ボリュームレンダリングオブジェクトは、3Dテクスチャを持つボックスです。ボリュームには、ボリュームの各主軸に沿った3つのスライス面がサポートされています。

ボリュームオブジェクトのレンダリングは、特にボリュームの大部分が透明な場合、ボリュームの内容がレイトレースされるため、非常にパフォーマンスが集中します。パフォーマンスは、ボリュームが画面上で占めるピクセル量とほぼリニアにスケールするため、ボリュームを小さく表示するか、グラフのズームレベルを制限することが、パフォーマンスを向上させる簡単な方法です。同様に、ボリュームのテクスチャ寸法もパフォーマンスに大きな影響を与えます。ボリュームの内容をピクセル単位で完璧にレンダリングするよりもフレームレートを重視する場合は、useHighDefShader プロパティをfalse に設定して高解像度シェーダをオフにすることを検討してください。

注意: ボリュームデータへの入力は、純粋なQMLからは通常効率的でも実用的でもな いため、これに直接関係するプロパティはQMLでは完全にはサポートされていません。ボリュームオブジェクトを Qt Quick UI で使用したい場合は、QML/C++ のハイブリッドアプリケーションを作成してください。

注意: ボリュームオブジェクトは3Dテクスチャを利用しますが、これはOpenGL ES2環境ではサポートされていません。

useHighDefShaderも参照してください

プロパティの説明

alphaMultiplier : real

ボリュームテクスチャの各テクセルのアルファ値は、レンダリング時にこの値と乗算されます。これは、ボリュームに均一な透明度を導入するために使用できます。preserveOpacitytrue の場合、少なくともある程度の透明度を持つテクセルのみが影響を受け、完全に不透明なテクセルは影響を受けません。この値は負であってはいけません。デフォルトは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

スライス枠の幅。幅は異なる次元で異なることができるので、例えば、その次元の値を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)

このシグナルは、alphaMultipliermult に変更されたときに発行されます。

注意: 対応するハンドラはonAlphaMultiplierChanged です。


drawSliceFramesChanged(bool enabled)

このシグナルはdrawSliceFramesenabled に変更されたときに発行されます。

: 対応するハンドラはonDrawSliceFramesChanged です。


drawSlicesChanged(bool enabled)

このシグナルはdrawSlicesenabled に変更されたときに発せられる。

注: 対応するハンドラはonDrawSlicesChanged です。


preserveOpacityChanged(bool enabled)

このシグナルはpreserveOpacityenabled に変更されたときに発せられる。

注: 対応するハンドラはonPreserveOpacityChanged です。


sliceFrameColorChanged(color color)

このシグナルはsliceFrameColorcolor に変更されたときに発せられる。

注: 対応するハンドラはonSliceFrameColorChanged です。


sliceFrameGapsChanged(vector3d values)

このシグナルはsliceFrameGapsvalues に変更されたときに発せられる。

注: 対応するハンドラはonSliceFrameGapsChanged です。


sliceFrameThicknessesChanged(vector3d values)

このシグナルはsliceFrameThicknessesvalues に変更されたときに発せられる。

注: 対応するハンドラはonSliceFrameThicknessesChanged です。


sliceFrameWidthsChanged(vector3d values)

このシグナルはsliceFrameWidthsvalues に変更されたときに発せられる。

注: 対応するハンドラはonSliceFrameWidthsChanged です。


sliceIndexXChanged(int value)

このシグナルはsliceIndexXvalue に変更されたときに発せられる。

注: 対応するハンドラはonSliceIndexXChanged です。


sliceIndexYChanged(int value)

このシグナルはsliceIndexYvalue に変更されたときに発せられる。

注: 対応するハンドラはonSliceIndexYChanged です。


sliceIndexZChanged(int value)

このシグナルはsliceIndexZvalue に変更されたときに発せられる。

注: 対応するハンドラはonSliceIndexZChanged です。


textureDepthChanged(int value)

このシグナルはtextureDepthvalue に変更されたときに発せられる。

注: 対応するハンドラはonTextureDepthChanged です。


textureHeightChanged(int value)

このシグナルはtextureHeightvalue に変更されたときに発せられる。

注: 対応するハンドラはonTextureHeightChanged である。


textureWidthChanged(int value)

このシグナルは、textureWidthvalue に変わったときに発せられる。

: 対応するハンドラはonTextureWidthChanged です。


useHighDefShaderChanged(bool enabled)

このシグナルはuseHighDefShaderenabled に変更されたときに発せられる。

: 対応するハンドラはonUseHighDefShaderChanged です。


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