Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.11.2010, 21:11   #11
Kingdom_Reborn
Форумчанин
 
Регистрация: 21.10.2010
Сообщений: 130
По умолчанию

А какие проблемы то?

Код:
{$N+}

uses
  Crt, Graph;

function X(const _x: Double): Integer;
begin
  X := Trunc(GetMaxX / 2 + _x);
end;

function Y(const _y: Double): Integer;
begin
  Y := Trunc(GetMaxY / 2 + _y);
end;

procedure Rotate(var x, y: Double; const phi: Double; const x0, y0: Double);
var
  _x, _y: Double;
begin
  _x := x0 + (x - x0) * cos(phi) - (y - y0) * sin(phi);
  _y := y0 + (x - x0) * sin(phi) + (y - y0) * cos(phi);
  x := _x;
  y := _y;
end;

var
  x1, y1, x2, y2, x3, y3: Double;
  GrDriver, GrMode: Integer;
  v: Char;
begin
  GrDriver := Detect;
  InitGraph(GrDriver, GrMode, 'C:\TP\BGI');
  if GraphResult <> GrOK then Halt(2);
  x1 := 8;
  y1 := 31;
  x2 := 110;
  y2 := 31;
  x3 := 59;
  y3 := 118;
  SetColor(Yellow);
  Line(X(x1), Y(y1), X(x2), Y(y2));
  Line(X(x2), Y(y2), X(x3), Y(y3));
  Line(X(x3), Y(y3), X(x1), Y(y1));
  repeat
    SetColor(Black);
    Line(X(x1), Y(y1), X(x2), Y(y2));
    Line(X(x2), Y(y2), X(x3), Y(y3));
    Line(X(x3), Y(y3), X(x1), Y(y1));
    Rotate(x1, y1, pi/3, 0, 0);
    Rotate(x2, y2, pi/3, 0, 0);
    Rotate(x3, y3, pi/3, 0, 0);
    SetColor(Yellow);
    Line(X(x1), Y(y1), X(x2), Y(y2));
    Line(X(x2), Y(y2), X(x3), Y(y3));
    Line(X(x3), Y(y3), X(x1), Y(y1));
    v := ReadKey;
  until v = #27; { Выход при нажатии Esc }
  CloseGraph;
end.
Это поворот относительно начала координат на угол пи/3 радиан. Система координат тут самая обыкновенная с пересечением осей по середине... Можешь вращать треугольник вокруг его центра или другой точки.

Последний раз редактировалось Kingdom_Reborn; 02.11.2010 в 21:16.
Kingdom_Reborn вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
с дельфи на С++ willhunting Фриланс 2 18.05.2010 22:15
БД В дельфи Bilargo Помощь студентам 3 08.12.2009 21:46
for (дельфи) drikusik# Помощь студентам 3 06.12.2009 21:27
Графика и Дельфи Cobalt Помощь студентам 1 21.04.2009 17:46