读书人

线段上的点的计算.JS编写.

发布时间: 2012-02-19 19:43:39 作者: rapoo

线段上的点的计算.JS编写.求救啊.!

HTML code
<img src="images/1111.jpg"  width="500" height="300"  border="0" usemap="#Map" /><map name="Map" id="Map"><area shape="poly" coords="189,164" href="#" /><area shape="poly" coords="208,159" href="#" /><area shape="poly" coords="215,168" href="#" /><area shape="poly" coords="220,166,231,150,259,112" href="#" /></map><script>A(x1=231,y1=150)B(x2=159,y2=112)C(x0,y0)//如图头像:A、B、C在同一条线段上。A、B的从标知道。C离A的距离为10//求C点坐标x0=?y0=?</script>


//如图头像:A、B、C在同一条线段上。A、B的从标知道。C离A的距离为10
//求C点坐标

[解决办法]
没看到图,据你说得分析有两种情况,当C处于线段AB之间得时候如下:
算法:
var AB=0;
AB=x1*x1+y1*y1;
AB=Sqrt(AB);
x0=x1-((x1-x2)/AB*10);
y0=y1-((y1-y2)/AB*10);
当C处于线段AB之外时:
算法:
var AB=0;
AB=x1*x1+y1*y1;
AB=Sqrt(AB);
x0=(x2-x1)/AB*(10+AB)+x1;
y0=(y2-y1)/AB*(10+AB)+y1;
[解决办法]
如果图是你那样,就用第二种算法:
算法:
var AB=0;
AB=x1*x1+y1*y1;
AB=Sqrt(AB);
x0=(x2-x1)/AB*(10+AB)+x1;
y0=(y2-y1)/AB*(10+AB)+y1;

读书人网 >JavaScript

热点推荐