Q3DCamera Class
3D空間におけるカメラの表現。さらに...
ヘッダー | #include <Q3DCamera> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
qmake: | QT += datavisualization |
以来: | QtDataVisualization 1.0 |
QML で: | Camera3D |
継承: | Q3DObject |
パブリックな型
enum | CameraPreset { CameraPresetNone, CameraPresetFrontLow, CameraPresetFront, CameraPresetFrontHigh, CameraPresetLeftLow, …, CameraPresetDirectlyBelow } |
プロパティ
|
|
パブリック関数
Q3DCamera(QObject *parent = nullptr) | |
virtual | ~Q3DCamera() |
Q3DCamera::CameraPreset | cameraPreset() const |
float | maxZoomLevel() const |
float | minZoomLevel() const |
void | setCameraPosition(float horizontal, float vertical, float zoom = 100.0f) |
void | setCameraPreset(Q3DCamera::CameraPreset preset) |
void | setMaxZoomLevel(float zoomLevel) |
void | setMinZoomLevel(float zoomLevel) |
void | setTarget(const QVector3D &target) |
void | setWrapXRotation(bool isEnabled) |
void | setWrapYRotation(bool isEnabled) |
void | setXRotation(float rotation) |
void | setYRotation(float rotation) |
void | setZoomLevel(float zoomLevel) |
QVector3D | target() const |
bool | wrapXRotation() const |
bool | wrapYRotation() const |
float | xRotation() const |
float | yRotation() const |
float | zoomLevel() const |
再実装パブリック関数
virtual void | copyValuesFrom(const Q3DObject &source) override |
シグナル
void | cameraPresetChanged(Q3DCamera::CameraPreset preset) |
void | maxZoomLevelChanged(float zoomLevel) |
void | minZoomLevelChanged(float zoomLevel) |
void | targetChanged(const QVector3D &target) |
void | wrapXRotationChanged(bool isEnabled) |
void | wrapYRotationChanged(bool isEnabled) |
void | xRotationChanged(float rotation) |
void | yRotationChanged(float rotation) |
void | zoomLevelChanged(float zoomLevel) |
メンバ型ドキュメント
enum Q3DCamera::CameraPreset
あらかじめ定義されたカメラの位置。
定数 | 値 | 説明 |
---|---|---|
Q3DCamera::CameraPresetNone | -1 | プリセットが設定されていないか、シーンが自由に回転していることを示すために使用される。 |
Q3DCamera::CameraPresetFrontLow | 0 | |
Q3DCamera::CameraPresetFront | 1 | |
Q3DCamera::CameraPresetFrontHigh | 2 | |
Q3DCamera::CameraPresetLeftLow | 3 | |
Q3DCamera::CameraPresetLeft | 4 | |
Q3DCamera::CameraPresetLeftHigh | 5 | |
Q3DCamera::CameraPresetRightLow | 6 | |
Q3DCamera::CameraPresetRight | 7 | |
Q3DCamera::CameraPresetRightHigh | 8 | |
Q3DCamera::CameraPresetBehindLow | 9 | |
Q3DCamera::CameraPresetBehind | 10 | |
Q3DCamera::CameraPresetBehindHigh | 11 | |
Q3DCamera::CameraPresetIsometricLeft | 12 | |
Q3DCamera::CameraPresetIsometricLeftHigh | 13 | |
Q3DCamera::CameraPresetIsometricRight | 14 | |
Q3DCamera::CameraPresetIsometricRightHigh | 15 | |
Q3DCamera::CameraPresetDirectlyAbove | 16 | |
Q3DCamera::CameraPresetDirectlyAboveCW45 | 17 | |
Q3DCamera::CameraPresetDirectlyAboveCCW45 | 18 | |
Q3DCamera::CameraPresetFrontBelow | 19 | CameraPresetFrontBelow 以降のQ3DBars では、負の値を含むグラフに対してのみ機能します。正の値のみの場合は、Preset...Low として動作します。 |
Q3DCamera::CameraPresetLeftBelow | 20 | |
Q3DCamera::CameraPresetRightBelow | 21 | |
Q3DCamera::CameraPresetBehindBelow | 22 | |
Q3DCamera::CameraPresetDirectlyBelow | 23 | 正の値のみのバーに対しては CameraPresetFrontLow として動作します。 |
プロパティの説明
cameraPreset : CameraPreset
このプロパティは、現在アクティブなカメラ・プリセットを保持する。
CameraPreset の値が設定されていない場合、デフォルトでCameraPresetNone が使用されます。
アクセス関数:
Q3DCamera::CameraPreset | cameraPreset() const |
void | setCameraPreset(Q3DCamera::CameraPreset preset) |
通知シグナル:
void | cameraPresetChanged(Q3DCamera::CameraPreset preset) |
maxZoomLevel : float
このプロパティは、許可されるカメラのズーム・レベルの最大値を保持する。
最大レベルが既存の最小レベルより低い新しい値に設定された場合、最小レベルも新しい最大レベルに調整されます。現在のzoomLevel が新しい境界の外側にある場合は、同様に調整されます。デフォルトは500.0f
。
アクセス関数:
float | maxZoomLevel() const |
void | setMaxZoomLevel(float zoomLevel) |
通知シグナル:
void | maxZoomLevelChanged(float zoomLevel) |
zoomLevel およびminZoomLevelも参照のこと 。
minZoomLevel : float
このプロパティは、許可されるカメラのズーム・レベルの最小値を保持する。
最小レベルが既存の最大レベルより高い新しい値に設定された場合、最大レベルも新しい最小レベルに調整されます。現在のzoomLevel が新しい範囲外の場合、同様に調整されます。minZoomLevel を1.0f
以下に設定することはできません。デフォルトは10.0f
。
アクセス関数:
float | minZoomLevel() const |
void | setMinZoomLevel(float zoomLevel) |
Notifierシグナル:
void | minZoomLevelChanged(float zoomLevel) |
zoomLevel およびmaxZoomLevelも参照のこと 。
[since QtDataVisualization 1.2]
target : QVector3D
このプロパティは、カメラターゲットを 3D 空間のベクトルまたは頂点として保持します。
デフ ォル ト はQVector3D(0.0, 0.0, 0.0)
です。
有効な座標値は-1.0...1.0
の間です。 こ こ で辺値は、 対応す る 軸範囲の辺を示 し ます。こ の範囲外の値は、 その辺に ク ラ ンプ さ れます。
注: 棒グラフの場合、Y 座標は無視され、カメラは常に水平背景上の点をターゲットにします。
このプロパティは QtDataVisualization 1.2 で導入されました。
アクセス関数
QVector3D | target() const |
void | setTarget(const QVector3D &target) |
通知シグナル:
void | targetChanged(const QVector3D &target) |
wrapXRotation : bool
このプロパティは、X 回転における最小および最大の制限の動作を保持する。
true
に設定すると、カメラの X 回転は最小値から最大値へ、最大値から最小値へと折り返されます。false
に設定すると、カメラの X 回転は最小値と最大値によって決定されるセクタに制限されます。デフォルトではtrue
に設定されています。
アクセス関数:
bool | wrapXRotation() const |
void | setWrapXRotation(bool isEnabled) |
通知シグナル:
void | wrapXRotationChanged(bool isEnabled) |
wrapYRotation : bool
このプロパティは、Y 回転における最小および最大の制限の動作を保持する。
true
の場合、カメラの Y 回転は最小から最大、および最大から最小に折り返されます。false
の場合、カメラの Y 回転は、最小値と最大値によって決定されるセクタに制限されます。デフォルトではtrue
に設定されています。
アクセス関数:
bool | wrapYRotation() const |
void | setWrapYRotation(bool isEnabled) |
通知信号:
void | wrapYRotationChanged(bool isEnabled) |
xRotation : float
このプロパティは、ターゲット点周りのカメラの X 回転角度を度単位で保持する。
アクセス関数
float | xRotation() const |
void | setXRotation(float rotation) |
通知シグナル
void | xRotationChanged(float rotation) |
yRotation : float
(2)回転角度 カメラの回転角度を度単位で示す。
アクセス関数
float | yRotation() const |
void | setYRotation(float rotation) |
通知シグナル
void | yRotationChanged(float rotation) |
zoomLevel : float
このプロパティは、カメラのズームレベルをパーセンテージで保持します。
デフォルト値の100.0f
は、カメラにズームインまたはズームアウトが設定されていないことを意味します。この値はminZoomLevel およびmaxZoomLevel プロパティによって制限されます。
アクセス関数:
float | zoomLevel() const |
void | setZoomLevel(float zoomLevel) |
通知シグナル:
void | zoomLevelChanged(float zoomLevel) |
minZoomLevel およびmaxZoomLevelも参照 。
メンバ関数ドキュメント
[explicit]
Q3DCamera::Q3DCamera(QObject *parent = nullptr)
位置を原点に設定し、上方向を Y 軸に向け、デフォルトで原点を見る新しい 3D カメラを構築します。オプションでparent パラメータを指定でき、QObject コンストラクタに渡されます。
[virtual noexcept]
Q3DCamera::~Q3DCamera()
カメラオブジェクトを破壊する。
[override virtual]
void Q3DCamera::copyValuesFrom(const Q3DObject &source)
再実装:Q3DObject::copyValuesFrom(const Q3DObject &source)。
与えられたソースカメラから3Dカメラのプロパティをコピーします。値はsource からこのオブジェクトにコピーされます。
void Q3DCamera::setCameraPosition(float horizontal, float vertical, float zoom = 100.0f)
カメラの回転と距離を設定するユーティリティ関数。horizontal とvertical で使用するカメラの回転を定義する。オプションのパラメータzoom を指定すると、minZoomLevel およびmaxZoomLevel プロパティで定義された範囲内でカメラのズーム率を設定できます。
© 2025 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.