Реферат: Разработка программы на языке С для построения сложных геометрических фигур на плоскости
(R1 > 0) &&
(R1 > 2*r2) && (R1 > 2*r3) &&
((x2 - r2) > x3) &&
sqrt((x2 - X1)*(x2 - X1) + (y2 - Y1)*(y2 - Y1)) + r2 < R1 &&
sqrt((x3 - X1)*(x3 - X1) + (y3 - Y1)*(y3 - Y1)) + r3 < R1 ;
return isCorrectState;
}
bool CDraw::Draw(CPaintDC* pDC)
{
if(!isCorrectState)return false;
RECT cr;
pDC->GetWindow()->GetClientRect(&cr);
int x0 = (cr.right - cr.left) /2;
int y0 = (cr.bottom - cr.top) / 2;
pDC->Rectangle(&cr);
pDC->MoveTo(x0, cr.top);
pDC->LineTo(x0, cr.bottom);
pDC->MoveTo(cr.left,y0);
pDC->LineTo(cr.right,y0);
CRect r;
r.SetRect(X1 - R1, -(Y1 - R1), X1 + R1, -(Y1 + R1));
r.OffsetRect(x0, y0);
pDC->Arc(&r, CPoint(r.left, r.top), CPoint(r.left, r.top));
pDC->MoveTo(x2 + x0, r.top + 10);
pDC->LineTo(x2 + x0, r.bottom - 10);
pDC->MoveTo(x3 + x0, r.top + 10);
pDC->LineTo(x3 + x0, r.bottom - 10);
r.SetRect(x2 - r2, -(y2 - r2), x2 + r2, -(y2 + r2));
r.OffsetRect(x0, y0);