11.txt

来自「椭圆拟合的误差算法」· 文本 代码 · 共 23 行

TXT
23
字号
void CVCTiSView::FitEllipseErrorAnalyse(double longaxis, double shortaxis, double Xc, double Yc)
{
	CErrorDlg dlg;

    SquSubEllipse = 0.0;   //拟合Ellipse的方差值,是点到Ellipse上的距离

	if(m_nFittype==4)
	{
		int i = 0;
	    while( i < HotPtArray.GetSize())
	    {		
			CPoint pointI;
			pointI=((CPolygon*)HotPtArray.GetAt(i))->Polygonpoint;
			double Angle = atan((pointI.y-Yc)/(pointI.x-Xc));
			double rr = longaxis*shortaxis/(sqrt(longaxis*longaxis*sin(Angle)*sin(Angle))+shortaxis*shortaxis*cos(Angle)*cos(Angle));
			SquSubEllipse += sqrt (pow((pointI.x-Xc),2)+pow((pointI.y-Yc),2)) - rr; 
			i++;
	     }		
	}
	dlg.m_nxSquareSub = this-> SquSubEllipse;	
	dlg.m_dFittype = this->m_nFittype;
	dlg.DoModal();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?