6#ifndef iview_CPolylineShape_included
7#define iview_CPolylineShape_included
11#include <QtGui/QPainter>
48 QPainter& drawContext,
50 const QBrush& rightBrush,
52 const QBrush& leftBrush,
57 QPainter& drawContext,
64 virtual void DrawCurve(QPainter& drawContext)
const;
65 virtual void DrawArea(QPainter& drawContext)
const;
75 bool m_isOrientationVisible;
81 return m_isOrientationVisible;
87 m_isOrientationVisible = state;
Definition of a line in 2D-space.
Simple rectangle with integer bounds.
Definition of position or mathematical vector on 2D plane.
Common interface for model objects, that supports Model/Observer design pattern.
Index implementation for addressing elements in 2D-space.
Set of change flags (its IDs).
Base class of shape implementation with user interaction.
virtual void DrawCurve(QPainter &drawContext) const
CInteractiveShapeBase ShapeBaseClass
static void DrawOrientationMarker(QPainter &drawContext, const QPen &rightPen, const QBrush &rightBrush, const QPen &leftPen, const QBrush &leftBrush, const i2d::CLine2d &segmentLine, double scale)
Draw an orientation marker consisting of two triangles (black for outside and white for inside)
virtual TouchState IsTouched(istd::CIndex2d position) const
Check, if any shape is touched.
virtual bool OnModelAttached(imod::IModel *modelPtr, istd::IChangeable::ChangeSet &changeMask)
This call back function will be called, if an observable object is about to be attached.
virtual void DrawSelectionElements(QPainter &drawContext) const
void SetOrientationVisible(bool state=true)
static void DrawOrientationMarker(QPainter &drawContext, const i2d::CVector2d &point, const i2d::CVector2d &direction, double maxWidth, const iview::IColorSchema &colorSchema)
virtual bool OnMouseButton(istd::CIndex2d position, Qt::MouseButton buttonType, bool downFlag)
It is called, when mouse button is pushed down or up on this object.
virtual bool IsCurveTouched(istd::CIndex2d position) const
virtual void DrawArea(QPainter &drawContext) const
bool IsOrientationVisible() const
virtual i2d::CRect CalcBoundingBox() const
Calculate bounding box.
virtual QString GetShapeDescriptionAt(istd::CIndex2d position) const
Get description to shape at specified position.
Defines set of standard pens, brushes and simple management of unions.
TouchState
Enumeration for possible shape touch states.
In this library is defined 2D view concept and standard visualisation objects.