6. Графични структури
Изобразяване на графични форми
 -- Точка:  Point(3,1)
#include "ccc_win.cpp"
int main()
{  cwin << Point(1, 3);
   return 0;
}
 -- Окръжност: Circle(Point(2,3),1)
#include "ccc_win.cpp"
int main()
{  Point p(1, 3);
   cwin << p << Circle(p, 2.5);
   return 0;
}
 -- Отсечка: Line(Point(1,3), Point(2,2))
#include "ccc_win.cpp"
int main()
{ Point p(1, 3);
  Point q(4, 7);
  Line s(p, q);
  cwin << s;
  return 0;
}
 -- Текст: Message(Point(4,4),"Hello")
#include "ccc_win.cpp"
int main()
{  Point p(1, 3);
   Message greeting(p, "Hello, Window!");
   cwin << greeting;
   return 0;
}
 
Име Действие
Point p=Point(x,y); Конструира точка p с координати (x, y).
p.get_x() Връща x-координатата на точката p
p.get_y() Връща y-координатата на точката p.
p.move(dx,dy) Премества точката p с (dx, dy).
 
Име Действие
Circle c=Circle(p,r);         Конструира окръжност с център точка p и радиус r.
c.get_center() Връща центъра p на окръжността c.
c.get_radius() Връща радиуса r на окръжността c.
c.move(dx,dy) Премества окръжността c с (dx, dy).
 
Име Действие
Line l=Line(p,q);  Конструира отсечка l, свързваща точките p и q.
l.get_start() Връща началната точка p на отсечката l.
l.get_end() Връща крайната точка q на отсечката l
l.move(dx,dy) Премества точката c с (dx, dy).
 
Име Действие
Message m=Message(p,s);     Конструира съобщение m с начална точка p и съдържание s.
Message m=Message(p,x);  Конструира съобщение m с начална точка p и етикет числото x.
m.get_start() Връща началната точка p на съобщението m.
m.get_text() Връща съдържанието s на съобщението m.
m.move(dx,dy) Премества съобщението m с (dx,dy).
 
Избор на координатна система:
-- по подразберане cwin.coord(-10,10,10,-10);
-- зададена от програмиста cwin.coord(0,60,100,10);
-- горен ляв ъгъл, долен десен ъгъл

Вход от графичния прозорец
string name = cwin.get_string("Моля, въведете своето име: ");
Point center = cwin.get_mouse("Entger center of the mouse");

#include "ccc_win.cpp"
int main()
{string name = cwin.get_string("Please type your name:");
 Circle c(Point(0, 0), 1);
 cwin << c;
 Point m = cwin.get_mouse("Please click inside the circle.");
 cwin << m << Message(m, "You clicked here");
 return 0;
}
 

Име Действие
 w.coord(x1,y1,x2,y2)         Избира координатна система.
 w << x Изобразява обекта  x в прозореца.
 w.clear() Изчиства прозореца w.
 w.get_string(p) Извежда подканващ текст p в прозореца w и връща въведения низ
 w.get_int(p) Извежда подканващ текст p в прозореца w и връща въведеното цяло число
 w.get_double(p) Извежда подканващ текст p в прозореца w и връща въведеното число
 w.get_mouse(p) Извежда подканващ текст p в прозореца w и връща точката, избрана с мишката

Сравняване на визуална и числова информация
#include "ccc_win.cpp"
int main()
{  double radius = cwin.get_double("Radius: ");
   Circle c(Point(0, 0), radius);

   double b = cwin.get_double("Line position: ");
   Line s(Point(-10, b), Point(10, b));

   cwin << c << s;

   double root = sqrt(radius * radius - b * b);

   Point p1(root, b);
   Point p2(-root, b);

   Message m1(p1, p1.get_x());
   Message m2(p2, p2.get_x());

   cwin << p1 << p2 << m1 << m2;

   return 0;
}