首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

求算法,5点共椭圆解决方法

2012-02-06 
求算法,5点共椭圆如何判断任意给定的5个点是否在一个椭圆上?(椭圆是任意的,不是标准的,轴也不一定是和x\y

求算法,5点共椭圆
如何判断任意给定的5个点是否在一个椭圆上?
(椭圆是任意的,不是标准的,轴也不一定是和x\y轴平行的)

如果经过判断共椭圆,进而求出椭圆的方程

[解决办法]
关于5个6个的疑问:

把等式 Ax^2+2Bxy+Cy^2+2Dx+2Ey+F=0;
两边分别除以A,得到一个新方程式,它只有5个系数了,
再在其中代入5个点的坐标,分别可得5个未知系数的5个线性方程,
于是就可求解了.而此方程的解自然就是原来方程的解.
[解决办法]
求出解以后通过B^2-AC的符号就可以判断是否是椭圆了呀。
B^2-AC <0是椭圆,
B^2-AC=0是抛物线
B^2-AC> 0是双曲线。
当然如果考虑到实际计算中可能有误差,可以取一个充分小的正数ERR
认为当
B^2-AC <-ERR时,才是椭圆。(当然先要进行数据归一话,比如让2*B^2+|AC|=1)
至于5条方程6个变量的问题,zzwu给出解释了。
原因在于方程是齐次方程(常数项为0)。
比如对于任何一组解(A,B,C,D,E,F),(u*A,u*B,u*C,u*D,u*E,u*F)也是解(当u!=0),而且两组解代表相同的方程。

热点排行