+ -
当前位置:首页 → 问答吧 → 请教个数学问题,数学还没忘记的朋友请不吝惜赐教~!

请教个数学问题,数学还没忘记的朋友请不吝惜赐教~!

时间:2011-09-29

来源:互联网

已知一三角型三个点的坐标为(x0,y0),(x1,y1),(x2,y2),现以中点将三角型旋转R°,三角型的新坐标分别是多少!

作者: moocky   发布时间: 2011-09-29

现以中点将三角型旋转R°,三角型的新坐标分别是多少?

假设三角形的中心与坐标轴原点重合

顶点A(x0,y0),旋转R°之后,变成:x=x0*cos(R),y=y0*sin(R),其他的依次类推。

如果不重合,可以先平移坐标轴。

作者: TottyAndBaty   发布时间: 2011-09-29

如果不重合,可以先平移坐标轴。

可以根据坐标轴平移的规则,稍加变化即可

作者: TottyAndBaty   发布时间: 2011-09-29

中点指的是什么?重心?垂心还是某个顶点

作者: ohmygirl   发布时间: 2011-09-29

数学都忘干净了,这么说吧,就是三角型的三个点都落在一个圆上,我说的中心就是这个圆的圆心,数学术语不知道怎么说了。

引用 1 楼 tottyandbaty 的回复:

现以中点将三角型旋转R°,三角型的新坐标分别是多少?

假设三角形的中心与坐标轴原点重合

顶点A(x0,y0),旋转R°之后,变成:x=x0*cos(R),y=y0*sin(R),其他的依次类推。

如果不重合,可以先平移坐标轴。


咱们就拿重合的来说,你的意思是新的坐标为:(x0*cos(R),y0**sin(R)),(x1*cos(R),y1*sin(R)),(x2*cos(R),y2*sin(R))

作者: moocky   发布时间: 2011-09-29

不论什么点,反正是LZ自己定的,三角形五心坐标,LZ想要一搜一把.而且这样的问题,应该在AS版问会比较快.
方法可以这样,以LZ的中心点逆向旋转坐标轴R度,然后再映射原来的点到新坐标轴上就可以得出.

作者: ZT_King   发布时间: 2011-09-29

三角型的三个点都落在一个圆上 就是外接圆了
不过要求出 外心 的坐标还是比较复杂的

作者: xuzuning   发布时间: 2011-09-29

两点的垂直平分线

斜率-(x1-x2)/(y1-y2)

肯定经过中点坐标为((x1+x2)/2, (y1+y2)/2)

利用两条线唯一相交点,解就是外心坐标。。。既然是平面三角形,至少有一点与另外两点的纵坐标值是不一样的,就不需要考虑y1=y2的情况了

k1(x-Dx1) + Dy1 = k2(x-Dx2) + Dy2
仅x为未知数,可得到x=(……),关于两点坐标值的等式

作者: amani11   发布时间: 2011-09-29

引用 4 楼 moocky 的回复:

数学都忘干净了,这么说吧,就是三角型的三个点都落在一个圆上,我说的中心就是这个圆的圆心,数学术语不知道怎么说了。

引用 1 楼 tottyandbaty 的回复:

现以中点将三角型旋转R°,三角型的新坐标分别是多少?

假设三角形的中心与坐标轴原点重合

顶点A(x0,y0),旋转R°之后,变成:x=x0*cos(R),y=y0*sin(R),其他的依次类推。

如果不重……


就是这样的啊。你围绕任何一点旋转都是这样,只不过说要对坐标轴进行平移。

假设你要围绕(3,4)这个点进行旋转。那么x0,y0旋转后,坐标就变成(x0-3)*sin(R),(y0+4)*R

作者: TottyAndBaty   发布时间: 2011-09-29

我试试去,记得很简单的,就是不会……

作者: moocky   发布时间: 2011-09-29

。。。
数学都忘光了。
这算是初中几何?

作者: foolbirdflyfirst   发布时间: 2011-09-29

顶下。

作者: SmileToCandy   发布时间: 2011-09-29

郁闷了,很抱歉,我的问题提的还太对!

简单了说,还有一个问题,三个坐标都知道了,怎么计算圆心的坐标

作者: moocky   发布时间: 2011-09-29

那就是唠叨说的求三角形外心坐标了,放狗搜吧。

作者: foolbirdflyfirst   发布时间: 2011-09-29

求外接圆圆心算式:
PHP code
$_0x=(($y1-$y0)*($y2*$y2-$y0*$y0+$x2*$x2-$x0*$x0)-($y2-$y0)*($y1*$y1-$y0*$y0+$x1*$x1-$x0*$x0))/(2*($x2-$x0)*($y1-$y0)-2*(($x1-$x0)*($y2-$y0)));  
$_0y=(($x1-$x0)*($x2*$x2-$x0*$x0+$y2*$y2-$y0*$y0)-($x2-$x0)*($x1*$x1-$x0*$x0+$y1*$y1-$y0*$y0))/(2*($y2-$y0)*($x1-$x0)-2*(($y1-$y0)*($x2-$x0)));  


找到一个,大致验证了一下,没有问题

作者: moocky   发布时间: 2011-09-29

PHP code
      $points = array(
          $_0x+($x0-$_0x)*cos(deg2rad($angel)),$_0y+($y0-$_0y)*sin(deg2rad($angel)),
          $_0x+($x1-$_0x)*cos(deg2rad($angel)),$_0y+($y1-$_0y)*sin(deg2rad($angel)),
          $_0x+($x2-$_0x)*cos(deg2rad($angel)),$_0y+($y2-$_0y)*sin(deg2rad($angel))
        );


新坐标是这样吗?怎么不对啊!

作者: moocky   发布时间: 2011-09-29

终于找到一个C的算法,改写的

/*
$angel 旋转角度
$_0x 外接圆圆心x坐标
$_0y 外接圆圆心y坐标
*/
$nx0 = $_0x + cos(deg2rad($angel)) * ($x0-$_0x) + sin(deg2rad($angel)) * ($_0y - $y0);
$ny0 = $_0y - sin(deg2rad($angel)) * ($_0x-$x0) - cos(deg2rad($angel)) * ($_0y - $y0);
$nx1 = $_0x + cos(deg2rad($angel)) * ($x1-$_0x) + sin(deg2rad($angel)) * ($_0y - $y1);
$ny1 = $_0y - sin(deg2rad($angel)) * ($_0x-$x1) - cos(deg2rad($angel)) * ($_0y - $y1);
$nx2 = $_0x + cos(deg2rad($angel)) * ($x2-$_0x) + sin(deg2rad($angel)) * ($_0y - $y2);
$ny2 = $_0y - sin(deg2rad($angel)) * ($_0x-$x2) - cos(deg2rad($angel)) * ($_0y - $y2);

问题解决,欢迎跟帖!
散分了……

作者: moocky   发布时间: 2011-09-29

...
我突然发现自己已经是数学白痴了啊...
话说怪蜀黍你数学专业啊...记得这么清楚

作者: PhpNewnew   发布时间: 2011-09-29

相关阅读 更多