Я пытаюсь найти центроид каждого среза на круговой диаграмме. Предполагая, что центр круга является источником, как рассчитать координаты x и y центроида каждого среза?
У меня есть радиус, начальный угол и конечный угол каждого среза.
Я знаю, как рассчитать центр тяжести среза, когда начальный угол этого среза равен 0; здесь ответили . Но это предполагает, что у вас есть угол альфа среза, начиная с 0 (что, как предполагает JavaScript, это место, обычно называемое pi / 2). Мне нужны координаты, например, центроида красного среза на этой фотографии:
.
Скажем, угол альфа красного среза равен 1 радиану (для простоты startAngle = 6 и endAngle = 5, это не точно, но близко к фактическим углам на фотографии), а радиус диаграммы равен 400 пикселям. , Используя формулу, xbar = (2/3) (r / a) sin (a) = (2/3) (400/1) (. 84147) = 224.39226px, что будет ~ 225px справа от начала координат, нигде вблизи фактической координаты x центроида, поскольку в формуле предполагается, что начальный угол среза равен 0.
Кроме того, отправная точка, являющаяся координатами pi / 2, а не 0, может способствовать возникновению проблемы? Я не уверен.
Как узнать фактическую координату x центроида?