我需要一些算法上的帮助,我有一个程序的问题。我需要做一个程序,用户输入坐标3点,系数为线性函数,通过这3点的三角形,我需要比较面积的形状,是什么使函数与那个三角形相交。
我会在这里粘贴代码,但是在我的母语中有一些东西,我只想知道这个解决方案的代码,因为只有在输入的点是精确的顺序而我无法处理的情况下,我的唤醒才会出现。
http://pastebin.com/vNzGuqX4码
例如,我使用这个http://goo.gl/j18Ch0 --代码没有完成,我只是注意到,如果我按不同的顺序输入它,它就不会像输入点“1 1 2 5 4 4 0 5 1 5”那样工作,但是“4 4 1 1 2 5 0 5 1 5”就不起作用了。
发布于 2013-11-27 09:52:55
线性必须至少与三角形的两条边交叉。所以你可以先找到这两个交叉点,这两个点和这三个顶点中的一个会形成一个小的三角形。用这个方程计算三角形S= sqrt(l *(L)*(L)*(L))的面积,其中l= (a+b+c)/2和a,b,c是边的长度。给定顶点的坐标,应该很容易得到边的长度。一个是小三角形的面积,另一个是大三角形减去小三角形的面积。
发布于 2013-11-27 13:25:05
如果你的三角形是ABC,那么下面是一个很好的方法:
https://stackoverflow.com/questions/20238707
复制相似问题