You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.3 KiB
C++
30 lines
1.3 KiB
C++
#ifndef NMVOLUMESLICESETTINGS_H
|
|
#define NMVOLUMESLICESETTINGS_H
|
|
|
|
#include "nmSubWxs_global.h"
|
|
#include <QMetaType>
|
|
#include <QString>
|
|
|
|
class nmVolumeData;
|
|
|
|
/** @brief 单平面切片的值类型参数;不持有 VTK 对象,可安全复制为界面草稿。 */
|
|
struct NM_SUB_WXS_EXPORT nmVolumeSliceSettings
|
|
{
|
|
/** @brief 初始化 Z 向平面,默认显示辅助平面、不显示原模型。 */
|
|
nmVolumeSliceSettings();
|
|
/** @brief 从完整模型边界初始化中心平面,并选取模型的默认着色属性。 */
|
|
static nmVolumeSliceSettings fromData(const nmVolumeData& oData);
|
|
/** @brief 校验有限原点及非零法向;成功才原位归一化,失败不改变参数。 */
|
|
bool normalize(QString* pError = nullptr);
|
|
|
|
double m_dOrigin[3]; ///< 平面经过的位置,使用数据的原始坐标,不推断单位。
|
|
double m_dNormal[3]; ///< 草稿允许任意非零向量,提交后的向量始终为单位向量。
|
|
QString m_sPropertyId; ///< 关联类型及数组名组成的属性身份;无属性模型为空。
|
|
bool m_bShowPlane; ///< 参数窗口打开时是否显示辅助平面及拖动手柄。
|
|
bool m_bShowSource; ///< 切片模式下是否显示灰色半透明的原模型。
|
|
};
|
|
|
|
Q_DECLARE_METATYPE(nmVolumeSliceSettings)
|
|
|
|
#endif // NMVOLUMESLICESETTINGS_H
|