Приветствую Вас Гость | RSS

Delphi заготовки

Понедельник, 13.05.2024, 09:04
Главная » Файлы » Мои файлы

Процедура перерисовки фигур c n вершин
28.03.2012, 18:36
// cn:Tcanvas; - канва для рисоваия
// cx,cy  координаты центра окружности
// a - угол поворота
//R1,r2 - оси по х и по у
// n - кол-во вершин фигуры

procedure GetFigur(cn:Tcanvas;cx,cy:integer;a:integer;r1,r2:integer;n:integer);
var x,y,i:integer;
    b:real;
    l:real;
    x1,y1:integer;
begin
  b:=360/(n); // вычисляем угол
  for i:=0 to n do begin
        l:=i*b+a; // расчитываем угол поворота оси
        x:=round(cx+r1*cos(l*pi/180)); // расчет точки по Х
        y:=round(cy+r2*sin(l*pi/180)); // расчет точки по У
        if i=0 then begin
          cn.MoveTo(x,y);  // переносим карандашь
          x1:=x;
          y1:=y;
        end else
        if i=n then begin
          cn.LineTo(x,y); // рисуем линию
          cn.LineTo(x1,y1); // рисуем линию 2
        end else
        cn.LineTo(x,y); // рисуем линию
  end;
end;

procedure GetFigura1(cx,cy,r1,a:integer);   // CX,cY - точка внутри фигуры R1 - радиус A-угол поворота
begin
  GetFigur(form1.Canvas,cx,cy,a,r1,r1,4);   // рисуем 4-х угольник
end;
procedure GetFigura2(cx,cy,r1,a:integer);
begin
  GetFigur(form1.Canvas,cx,cy,a,r1,r1,6); // рисуем 6-угольник
end;
procedure GetFigura3(cx,cy,r1,a:integer);
begin
  GetFigur(form1.Canvas,cx,cy,a,r1,r1,3); // рисуем 3-угольник
end;

http://netsoftware.ucoz.ru/13_povorot_figur.zip
Категория: Мои файлы | Добавил: NetSoftWare | Теги: рисуем треугольник, Обрисовка n-угольника, рисуем шестиугольник, рисуем квадрат
Просмотров: 1048 | Загрузок: 0 | Комментарии: 2 | Рейтинг: 5.0/1
Всего комментариев: 1
1 NetSoftWare  
0
пример программы определения лежит ли точка внутри 3-угольника
http://netsoftware.ucoz.ru/news....5-02-50

Имя *:
Email *:
Код *: