32 m_rotation_angle{rotation_angle},
33 m_cos{
std::cos(m_rotation_angle->getValue())},
34 m_sin{
std::sin(m_rotation_angle->getValue())} {
35 m_observer_id = rotation_angle->addObserver([
this](
double v){
42 : m_component {
std::move(other.m_component)},
43 m_rotation_angle{
std::move(other.m_rotation_angle)},
44 m_cos{other.m_cos}, m_sin{other.m_sin},
45 m_observer_id (other.m_observer_id) {
64 for (
auto& sample : result) {
65 double new_x = std::get<0>(sample) * m_cos + std::get<1>(sample) * m_sin;
66 double new_y = std::get<1>(sample) * m_cos - std::get<0>(sample) * m_sin;
67 std::get<0>(sample) = new_x;
68 std::get<1>(sample) = new_y;
76 return m_component->insideSharpRegion(new_x, new_y);