summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTavmjong Bah <tavmjong@free.fr>2019-09-24 11:17:51 +0000
committerTavmjong Bah <tavmjong@free.fr>2019-09-24 11:17:51 +0000
commit72aba43e422ebb0b122c91bae5c20c7b6549027e (patch)
treedc98245ebf7242a71799c1edfa290fc9fe761a70 /src
parentPrecompile Python packages (diff)
downloadinkscape-72aba43e422ebb0b122c91bae5c20c7b6549027e.tar.gz
inkscape-72aba43e422ebb0b122c91bae5c20c7b6549027e.zip
Remove use of sp_round.
Diffstat (limited to 'src')
-rw-r--r--src/ui/tools/spiral-tool.cpp17
-rw-r--r--src/ui/tools/star-tool.cpp12
2 files changed, 18 insertions, 11 deletions
diff --git a/src/ui/tools/spiral-tool.cpp b/src/ui/tools/spiral-tool.cpp
index dd4a839e4..9de9800ec 100644
--- a/src/ui/tools/spiral-tool.cpp
+++ b/src/ui/tools/spiral-tool.cpp
@@ -26,18 +26,20 @@
#include "desktop.h"
#include "document-undo.h"
#include "document.h"
-#include "include/macros.h"
#include "message-context.h"
-#include "ui/pixmaps/cursor-spiral.xpm"
#include "selection.h"
#include "verbs.h"
#include "display/sp-canvas-item.h"
#include "display/sp-canvas.h"
+#include "include/sp-round.h"
+#include "include/macros.h"
+
#include "object/sp-namedview.h"
#include "object/sp-spiral.h"
+#include "ui/pixmaps/cursor-spiral.xpm"
#include "ui/shape-editor.h"
#include "ui/tools/spiral-tool.h"
@@ -361,10 +363,13 @@ void SpiralTool::drag(Geom::Point const &p, guint state) {
Geom::Point const delta = p1 - p0;
gdouble const rad = Geom::L2(delta);
- gdouble arg = Geom::atan2(delta) - 2.0*M_PI*this->spiral->revo;
+ // Start angle calculated from end angle and number of revolutions.
+ gdouble arg = Geom::atan2(delta) - 2.0*M_PI * spiral->revo;
if (state & GDK_CONTROL_MASK) {
- arg = sp_round(arg, M_PI/snaps);
+ /* Snap start angle */
+ double snaps_radian = M_PI/snaps;
+ arg = std::round(arg/snaps_radian) * snaps_radian;
}
/* Fixme: these parameters should be got from dialog box */
@@ -378,8 +383,8 @@ void SpiralTool::drag(Geom::Point const &p, guint state) {
Inkscape::Util::Quantity q = Inkscape::Util::Quantity(rad, "px");
Glib::ustring rads = q.string(desktop->namedview->display_units);
this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE,
- _("<b>Spiral</b>: radius %s, angle %5g&#176;; with <b>Ctrl</b> to snap angle"),
- rads.c_str(), sp_round((arg + 2.0*M_PI*this->spiral->revo)*180/M_PI, 0.0001));
+ _("<b>Spiral</b>: radius %s, angle %.2f&#176;; with <b>Ctrl</b> to snap angle"),
+ rads.c_str(), arg * 180/M_PI + 360*spiral->revo);
}
void SpiralTool::finishItem() {
diff --git a/src/ui/tools/star-tool.cpp b/src/ui/tools/star-tool.cpp
index a6a143ec0..8b916ae36 100644
--- a/src/ui/tools/star-tool.cpp
+++ b/src/ui/tools/star-tool.cpp
@@ -26,7 +26,6 @@
#include "desktop.h"
#include "document-undo.h"
#include "document.h"
-#include "include/macros.h"
#include "message-context.h"
#include "selection.h"
#include "verbs.h"
@@ -34,6 +33,8 @@
#include "display/sp-canvas.h"
#include "display/sp-canvas-item.h"
+#include "include/macros.h"
+
#include "object/sp-namedview.h"
#include "object/sp-star.h"
@@ -381,7 +382,8 @@ void StarTool::drag(Geom::Point p, guint state)
if (state & GDK_CONTROL_MASK) {
/* Snap angle */
- arg1 = sp_round(arg1, M_PI / snaps);
+ double snaps_radian = M_PI/snaps;
+ arg1 = std::round(arg1/snaps_radian) * snaps_radian;
}
sp_star_position_set(this->star, this->magnitude, p0, r1, r1 * this->proportion,
@@ -392,9 +394,9 @@ void StarTool::drag(Geom::Point p, guint state)
Glib::ustring rads = q.string(desktop->namedview->display_units);
this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE,
( this->isflatsided?
- _("<b>Polygon</b>: radius %s, angle %5g&#176;; with <b>Ctrl</b> to snap angle")
- : _("<b>Star</b>: radius %s, angle %5g&#176;; with <b>Ctrl</b> to snap angle") ),
- rads.c_str(), sp_round((arg1) * 180 / M_PI, 0.0001));
+ _("<b>Polygon</b>: radius %s, angle %.2f&#176;; with <b>Ctrl</b> to snap angle") :
+ _("<b>Star</b>: radius %s, angle %.2f&#176;; with <b>Ctrl</b> to snap angle") ),
+ rads.c_str(), arg1 * 180 / M_PI);
}
void StarTool::finishItem() {