54 #include <QGraphicsLineItem>
57 #include <QSharedPointer>
61 #include "../../tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolshoulderpoint.h"
62 #include "../ifc/ifcdef.h"
63 #include "../vgeometry/vgobject.h"
64 #include "../vgeometry/vpointf.h"
65 #include "../vpatterndb/vcontainer.h"
66 #include "../visualization.h"
71 :
VisLine(data, parent), lineP1Id(
NULL_ID), lineP2Id(
NULL_ID), point(nullptr), line1P1(nullptr), line1P2(nullptr),
72 line1(nullptr), line2P2(nullptr), line2(nullptr), line3(nullptr), length(0)
102 DrawLine(
line1, QLineF(
static_cast<QPointF
>(*first),
static_cast<QPointF
>(*second)),
115 DrawLine(
line2, QLineF(
static_cast<QPointF
>(*second),
static_cast<QPointF
>(*third)),
118 if (not qFuzzyIsNull(
length))
121 static_cast<QPointF
>(*third),
122 static_cast<QPointF
>(*first),
length);
123 QLineF mainLine = QLineF(
static_cast<QPointF
>(*second), fPoint);
132 qreal angle = QLineF(
static_cast<QPointF
>(*second),
static_cast<QPointF
>(*third)).angle();
133 QPointF endRay =
Ray(
static_cast<QPointF
>(*second), angle);
135 QLineF(
static_cast<QPointF
>(*second), endRay).
length(),
The VContainer class container of all variables.
const QSharedPointer< T > GeometricObject(const quint32 &id) const
static QLineF BuildLine(const QPointF &p1, const qreal &length, const qreal &angle)
The VPointF class keep data of point.
QPointF Ray(const QPointF &firstPoint, const qreal &angle) const
void DrawPoint(QGraphicsEllipseItem *point, const QPointF &pos, const QColor &color, Qt::PenStyle style=Qt::SolidLine)
static qreal FindLength(const QString &expression, const QHash< QString, QSharedPointer< VInternalVariable > > *vars)
virtual void DrawLine(VScaledLine *lineItem, const QLineF &line, const QColor &color, const qreal &lineWeight, Qt::PenStyle style=Qt::SolidLine)
VScaledEllipse * InitPoint(const QColor &color, QGraphicsItem *parent, qreal z=0) const