У меня есть две точки на окружности (x1, y1, x2, y2). Я хочу найти середину точек, но с меньшим радиусом круга. как показано в pi c, необходимо вычислить точки X0 и Y0. и этот процесс может быть повторяющимся, иногда переходя во внутренний круг.
я использовал этот пример из потока stackoverflow для вычисления точек X1, Y1 и X2, Y2.
drawPoint(r, currentPoint, totalPoints) {
var startPt = {'x':-1,'y':-1,'a':0}
var theta = ((Math.PI*2) / totalPoints);
var angle = (theta * currentPoint);
startPt.a = angle
startPt.x = (r * Math.cos(angle));
startPt.y = (r * Math.sin(angle));
return startPt;
}
Теперь мне нужно было найти точки воображаемого круга X0, Y0. Я рассчитал угол на окружности, используя углы из точек X1 и X2 и применив известный радиус меньшего круга, я попытался получить точки внутреннего круга (мнимые) X0, Y0.
getNewEnd(endPt,angle,newSmallRadius){
endPt.x = (newSmallRadius * Math.cos(angle));
endPt.y = (newSmallRadius * Math.sin(angle));
}
ОБНОВЛЕНИЕ Найдена проблема. проблема заключалась в предоставлении радиуса, спасибо за ответ.