Example #1
0
double Hermit( double x, int n)
{
if (n<0)
return 0.0;
if (n ==0)
return x;
if(n==1)
return (x*x - 1.0);

return ( x * Hermit(x,n-1) - n * Hermit(x,n-2) );
}
void HermiteShape::Draw(CDC *pDC)
{
	if(IsDone())
	{
		drawHelper(pDC, counter);
		
		HPEN pen = CreatePen(2, 2, 0xff0000);
		HPEN old = (HPEN)SelectObject (pDC->m_hDC ,pen);

		pDC -> MoveTo(Hermit(0));
		for(float t = 0; t <= 1; t += 0.001f)
		{
			pDC -> LineTo(Hermit(t));
		}
		SelectObject (pDC->m_hDC ,old);
		DeleteObject(pen);
	}
	else
	{
		drawHelper(pDC, counter);
	}
}