Я пытаюсь обозначить анимированную круговую диаграмму, и у меня возникли проблемы с поворотными объектами, чтобы выстроить их с помощью тригонометрически расположенных объектов. Так, например, если у меня есть кусок пирога, что это середина угол тета и повернута п градусов в анимации, а затем я пытаюсь поместить ярлык с кодом, как это:DisplayObject.rotation не соответствует функции триггера
label.x = center.x + Math.cos((theta + n)/180 * Math.PI) * radius;
label.y = center.y + Math.sin((theta + n)/180 * Math.PI) * radius;
этикетка часто не выровнены с центром среза пирога. Поскольку я также увеличиваю масштаб круговой диаграммы, ошибка становится настолько значительной, что она иногда заставляет метку пропускать кусочек пирога в целом. Ошибка кажется относительно непредсказуемой, и она очень похожа на ошибку округления, но я не вижу никакого очевидного округления (триггерные функции оценивают десяти десятичных знаков, что должно быть здесь более чем достаточно).
Как я могу правильно установить эти ярлыки?
В качестве примечания: просто смещение меток вокруг с использованием вращения также не очень хорошо работает, потому что я снова ударил проблему, когда попытаюсь написать алгоритм, чтобы предотвратить перекрытие меток. Argh! – futuraprime
theta + n - вращение части пирога вокруг центра круговой диаграммы? – jestro
theta - это срез части пирога. (Итак, если первая часть представляла 25%, то она была бы равна 45 градусам, а если бы вторая часть представляла 50%, ее тэта составляла бы 180 градусов.) Затем весь пирог поворачивается анимацией на n градусов. – futuraprime