首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

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

2012-02-19 
线段上的点的计算.JS编写.求救啊.!HTML codeimg srcimages/1111.jpgwidth500 height300border

线段上的点的计算.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;

热点排行