diff options
| author | Alexander Brock <Brock.Alexander@web.de> | 2015-06-10 00:54:16 +0000 |
|---|---|---|
| committer | Alexander Brock <Brock.Alexander@web.de> | 2015-06-10 00:54:16 +0000 |
| commit | 469621748a3321f8b9363a96628f9ec04dd03cb2 (patch) | |
| tree | 4b92a7cf3d922d1ef9c5dc4065bb254f7e833e73 /src/ui/tools/node-tool.cpp | |
| parent | Show angle of selected line segments relative to X-axis (diff) | |
| download | inkscape-469621748a3321f8b9363a96628f9ec04dd03cb2.tar.gz inkscape-469621748a3321f8b9363a96628f9ec04dd03cb2.zip | |
Compute angle in [0,180[ and adhere to style guide
(bzr r14195.1.2)
Diffstat (limited to 'src/ui/tools/node-tool.cpp')
| -rw-r--r-- | src/ui/tools/node-tool.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/ui/tools/node-tool.cpp b/src/ui/tools/node-tool.cpp index 5c97a4c7f..488d1eb9f 100644 --- a/src/ui/tools/node-tool.cpp +++ b/src/ui/tools/node-tool.cpp @@ -667,21 +667,16 @@ void NodeTool::update_tip(GdkEvent *event) { if (sz != 0) { char *nodestring; if (sz == 2) { - Inkscape::UI::ControlPointSelection::Set &selectionNodes = this->_selected_nodes->allPoints(); - std::vector<Geom::Point> selectedNodesPositions; - for (Inkscape::UI::ControlPointSelection::Set::iterator i = selectionNodes.begin(); i != selectionNodes.end(); ++i) { + Inkscape::UI::ControlPointSelection::Set &selection_nodes = this->_selected_nodes->allPoints(); + std::vector<Geom::Point> positions; + for (Inkscape::UI::ControlPointSelection::Set::iterator i = selection_nodes.begin(); i != selection_nodes.end(); ++i) { if ((*i)->selected()) { Inkscape::UI::Node *n = dynamic_cast<Inkscape::UI::Node *>(*i); - selectedNodesPositions.push_back(n->position()); + positions.push_back(n->position()); } } - g_assert(selectedNodesPositions.size() == 2); - Geom::Point difference = selectedNodesPositions[0] - selectedNodesPositions[1]; - double angle = Geom::atan2(difference); - if (angle < 0) { - angle += 2*M_PI; - } - angle *= 180.0/M_PI; + g_assert(positions.size() == 2); + const double angle = Geom::rad_to_deg(Geom::Line(positions[0], positions[1]).angle()); nodestring = g_strdup_printf( "<b>%u of %u</b> nodes selected, angle: %.2f°.", sz, total, angle); |
