Added methods to directly access the horizontal / vertical radius of an ellipse.

This commit is contained in:
Tats
2014-03-02 17:35:54 -05:00
parent 0b027f29f3
commit 4bbe4df115
2 changed files with 10 additions and 7 deletions
+5 -7
View File
@@ -243,11 +243,9 @@ void EllipseColorMapper::draw(QPainter* painter)
painter->resetTransform();
painter->setBrush(color->getColor());
const QPointF& center = outputEllipse->getCenter();
float rx = outputEllipse->getHorizontalAxis().length() / 2;
float ry = outputEllipse->getVerticalAxis().length() / 2;
painter->translate(center);
painter->rotate(rotation);
painter->drawEllipse(QPointF(0,0), rx, ry);
painter->drawEllipse(QPointF(0,0), outputEllipse->getHorizontalRadius(), outputEllipse->getVerticalRadius());
painter->resetTransform();
for (int i=0; i<4; i++) {
@@ -443,13 +441,13 @@ void EllipseTextureMapper::_doDraw(QPainter* painter)
// References for performance.
const QPointF& inputCenter = inputEllipse->getCenter();
float inputHorizRadius = inputEllipse->getHorizontalAxis().length() / 2;
float inputVertRadius = inputEllipse->getVerticalAxis().length() / 2;
float inputHorizRadius = inputEllipse->getHorizontalRadius();
float inputVertRadius = inputEllipse->getVerticalRadius();
float inputRotation = inputEllipse->getRotationRadians();
const QPointF& outputCenter = outputEllipse->getCenter();
float outputHorizRadius = outputEllipse->getHorizontalAxis().length() / 2;
float outputVertRadius = outputEllipse->getVerticalAxis().length() / 2;
float outputHorizRadius = outputEllipse->getHorizontalRadius();
float outputVertRadius = outputEllipse->getVerticalRadius();
float outputRotation = outputEllipse->getRotationRadians();
// Variation in angle at each step of the loop.
+5
View File
@@ -304,7 +304,12 @@ public:
Shape::setVertex(1, v1);
Shape::setVertex(3, v3);
}
qreal getHorizontalRadius() const {
return getHorizontalAxis().length() / 2;
}
qreal getVerticalRadius() const {
return getVerticalAxis().length() / 2;
}