我有一个固定点(x1,y1)和一个移动/旋转点(x2,y2),我如何找到切线反转点(x3,y3)
我的圆半径是40。
答案 0 :(得分:2)
假设p1
和p2
是2向量,以下将执行此操作。
v12 = normalize(p2 - p1) // the unit vector from p1 to p2
p3 = p1 - 40 * v12 // 40 away from p1 in the direction opposite p2
normalize(u)
的值只是u / sqrt(u.x * u.x + u.y * u.y)
。
答案 1 :(得分:0)
以这种方式实现,修改为旋转到任何角度
http://jsfiddle.net/christianpugliese/g2Lk9k12/1/
var dx = x2 - x1;
var dy = y2 - y1;
var radianAngle = Math.atan2(dy, dx);
var diameter = -80;
p3x = x1 + diameter * Math.cos(radianAngle);
p3y = y1 + diameters * Math.sin(radianAngle);