16 #include <QSharedPointer>
19 : m_showNormalVector(false), m_uniqueId(0) {}
27 : m_showNormalVector(false), m_uniqueId(id) {}
46 new ccCylinder(0.02f, 0.9f, 0,
"UnitNormal", 12));
55 new ccCone(0.05f, 0.0f, 0.1f, 0, 0, 0,
"UnitNormalHead", 12));
constexpr PointCoordinateType PC_ONE
'1' as a PointCoordinateType value
Vector3Tpl< PointCoordinateType > CCVector3
Default 3D Vector.
void applyRotation(Vector3Tpl< float > &vec) const
Applies rotation only to a 3D vector (in place) - float version.
static ccGLMatrixTpl< float > FromToRotation(const Vector3Tpl< float > &from, const Vector3Tpl< float > &to)
Creates a transformation matrix that rotates a vector to another.
Double version of ccGLMatrixTpl.
void glDrawNormal(CC_DRAW_CONTEXT &context, const CCVector3 &pos, float scale, const ecvColor::Rgb *color=0)
Draws a normal vector (OpenGL)
void clearNormalVector(CC_DRAW_CONTEXT &context)
bool normalVectorIsShown() const
Whether normal vector is shown or not.
ccPlanarEntityInterface()
Default constructor.
virtual CCVector3 getNormal() const =0
Returns the entity normal.
static QSharedPointer< ccCylinder > c_unitNormalSymbol(0)
static QSharedPointer< ccCone > c_unitNormalHeadSymbol(0)
static const QString SEPARATOR
constexpr Rgb green(0, MAX, 0)
int drawingFlags
Drawing options (see below)
TransformInfo transformInfo