6#include <istd/TRange.h>
9#include <imt3dgui/CShape3dBase.h>
10#include <imt3d/CPointCloud3d.h>
17class CAxisShape:
public CShape3dBase
19 typedef CShape3dBase BaseClass;
32 void SetAxisLength(AxisType axis,
double axisLength);
33 void SetAxisRange(AxisType axis,
const istd::CRange& range);
34 void SetAxisLineWidth(AxisType axis,
double lineWidth);
35 void SetAxisLabel(AxisType axis,
const QString& label);
39 virtual void UpdateShapeGeometry(
const istd::IChangeable::ChangeSet& changeSet)
override;
40 virtual void DrawShapeGl(QOpenGLShaderProgram& program, QOpenGLFunctions& functions)
override;
43 virtual void Draw(QPainter& painter)
override;
46 QFont GetAxeLabelFont()
const;
53 double axisLength = 1.0;
54 istd::CRange axisRange = istd::CRange(0.0, 1.0);
55 double lineWidth = 2.0;
59 QMap<AxisType, AxisConfig> m_axisConfigs;
61 static const float s_zoomFontFactor;