12#include "KDChartTernaryCoordinatePlane_p.h"
19#include "KDChartPainterSaver_p.h"
28TernaryCoordinatePlane::Private::Private()
42void TernaryCoordinatePlane::init()
49 "TernaryCoordinatePlane::addDiagram",
"Only ternary "
50 "diagrams can be added to a ternary coordinate plane!");
63 margins.second.width(), margins.second.height());
69 QSizeF bottomRight(0.0, 0.0);
70 const auto constDiagrams =
diagrams();
79 bottomRight = bottomRight.
expandedTo(margin.second);
82 d->diagramRectContainer =
83 d->diagramRect.adjusted(
topleft.width(),
92 qreal w =
d->diagramRectContainer.width();
93 qreal h =
d->diagramRectContainer.height();
126 return QPointF(
d->diagramRect.bottomLeft().x() + point.
x() *
d->xUnit,
127 d->diagramRect.bottomLeft().y() + point.
y() *
d->yUnit);
149 if (!
diags.isEmpty()) {
152 ctx.setCoordinatePlane(
this);
158 d->grid->drawGrid(&
ctx);
161 for (
int i = 0;
i <
diags.size();
i++) {
const qreal TriangleHeight
const qreal TriangleWidth
QRect areaGeometry() const override
Base class common for all coordinate planes, CartesianCoordinatePlane, PolarCoordinatePlane,...
virtual void addDiagram(AbstractDiagram *diagram)
AbstractDiagramList diagrams()
AbstractDiagram * diagram()
AbstractDiagram defines the interface for diagram classes.
Base class for diagrams based on a ternary coordinate plane.
A chart with one or more diagrams.
Stores information about painting diagrams.
void setPainter(QPainter *painter)
void layoutDiagrams() override
DataDimensionsList getDataDimensionsList() const override
void paint(QPainter *) override
~TernaryCoordinatePlane() override
TernaryCoordinatePlane(Chart *parent=nullptr)
void addDiagram(AbstractDiagram *diagram) override
const QPointF translate(const QPointF &diagramPoint) const override
QSize minimumSizeHint() const
QSizePolicy sizePolicy() const
QPair< QSizeF, QSizeF > requiredMargins() const
QList< DataDimension > DataDimensionsList
T qobject_cast(QObject *object)
void setRenderHint(QPainter::RenderHint hint, bool on)
QSizeF expandedTo(const QSizeF &otherSize) const const
qreal height() const const
qreal width() const const