diff --git a/src/edit/src/editor.cpp b/src/edit/src/editor.cpp index 3eb5925c165446fc679b84d356b549d799e2df67..9388074dca954005136e76e0cd2b279913bcab7f 100644 --- a/src/edit/src/editor.cpp +++ b/src/edit/src/editor.cpp @@ -2680,11 +2680,9 @@ void Editor::teleportModulesByConnectors(const connector_ptr source_connector, c const auto oriented_angle = glm::orientedAngle(source_north, destination_north, destination_facing); source_parent->rotateRotationQuat(glm::angleAxis(oriented_angle, destination_facing)); + // Rotate to selected cardinality - // Have to use -radians because cardinality is from destination to source and this needs to rotate the source to the destination - auto orientation = source_is_head || destination_is_head - ? glm::radians(rofi::cardinal_to_degree(selected_cardinality)) - : -glm::radians(rofi::cardinal_to_degree(selected_cardinality)); + auto orientation = glm::radians(rofi::cardinal_to_degree(selected_cardinality)); source_parent->rotateRotationQuat(glm::angleAxis(orientation, destination_facing)); diff --git a/src/rofi/src/connector.cpp b/src/rofi/src/connector.cpp index cf6d6c36bc984e6da47463707eb2fe0dcb9ad26e..b863f9f47a265927c8801dc295f35f67c0ca3740 100644 --- a/src/rofi/src/connector.cpp +++ b/src/rofi/src/connector.cpp @@ -94,10 +94,7 @@ cardinal Connector::get_mutual_orientation(connector_ptr source_connector, conne auto oriented_angle = glm::degrees(glm::orientedAngle(destination_north, source_north, - source_connector->getNode()->getRotationAxisZWorld())); - - if (source_is_head || destination_is_head) - oriented_angle = -oriented_angle; + destination_connector->getNode()->getRotationAxisZWorld())); return degree_to_cardinal(oriented_angle); }