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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2014, 15:15   #1
I_R_I_A_N_A
Пользователь
 
Регистрация: 29.01.2014
Сообщений: 11
Радость помогите закрасить треугольник,используя floodfill

Код:
program AnimROB;
uses crt, graph;
var grDriver, grMode: integer;
	
var x, y, m: integer;

procedure robot(x, y, m: integer);
begin
  setcolor(9); setfillstyle(1,9);  bar(x - 4 * m, y - 5 * m, x + 4 * m, y + 5 * m);setbkcolor(0);
  setcolor(9); setfillstyle(1,9); bar(x - 2 * m, y - 5 * m, x - 2 * m, y - 6 * m);
  setcolor(9); setfillstyle(1,9); bar(x + 2 * m, y - 5 * m, x + 2 * m, y - 6 * m);
  setcolor(9); setfillstyle(1,9);   bar(x-2*m,y-6*m,x+2*m,y-5*m);
  setcolor(11);setfillstyle(1,11);  bar(x-3*m,y-12*m,x+3*m,y-6*m);
  setcolor(8); setfillstyle(1,8); fillellipse(trunc(x - 1.5 * m), trunc(y - 11 * m), trunc(0.5 * m), trunc(0.5 * m));
  setcolor(8); setfillstyle(1,8); fillellipse(trunc(x + 1.5 * m), trunc(y - 11 * m), trunc(0.5 * m), trunc(0.5 * m));
  setcolor(5); setfillstyle(1,5);  line(x - 4 * m, y - 5 * m, x - 7 * m, y + m);
  setcolor(5); setfillstyle(1,5);  line(x + 4 * m, y - 5 * m, x + 7 * m, y + m);
  setcolor(9); setfillstyle(1,9);  bar(x - 3 * m,y + 5 * m, x - m,y + 10 * m);
  setcolor(9); setfillstyle(1,9);  bar(x + m,y + 5 * m, x + 3 * m,y + 10 * m);
  setcolor(12); setfillstyle(1,12);bar(x-m,y-8*m,x+m,y-7*m);
  setcolor(11); setfillstyle(1,11); bar(x - 3 * m, y - 10 * m, x - 4 * m, y - 7 * m);
  setcolor(11); setfillstyle(1,11); bar(x + 3 * m, y - 10 * m, x + 4 * m, y - 7 * m);
  setcolor(4);  setfillstyle(1,4);  fillellipse(x,trunc(y-9.3*m),trunc(0.3*m),trunc(0.3*m));
  setcolor(4); setfillstyle(1,4); line(x-2*m,y-12*m,x,y-15*m);{здесь
  setcolor(4); setfillstyle(1,4); line(x,y-15*m,x+2*m,y-12*m);{и здесь мне надо закрасить треуголник
  putpixel(x,y-3*m,0);
  putpixel(x,y,0);
  putpixel(x,y+3*m,0);
  putpixel(trunc(x-1.5*m),y-11*m,14);
  putpixel(trunc(x+1.5*m),y-11*m,14);
  end;
begin
  grDriver := Detect;
  InitGraph(grDriver, grMode, '');
  x := 180;
  y := 280;
  m := 10;
  repeat
    robot(x, y, m);
    Delay(1000);
    x := x + 4;
    ClearDevice;
  until (x > 400);
  closegraph;
end.
Никак не могу закрасить треугольник,все время закрашивает и внутри и снаружи.Помогите пожалуйста.

Последний раз редактировалось Stilet; 04.05.2014 в 15:24.
I_R_I_A_N_A вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите закрасить область графика chart SonnyWalker Windows Forms 0 25.04.2014 12:06
Необходимо нарисовать через Canvas треугольник, чтобы закрасить его заливкой потом?(C++ Builder) Женька Good Помощь студентам 1 26.09.2012 21:32
floodfill Акоб Паскаль, Turbo Pascal, PascalABC.NET 5 09.11.2011 16:18
Не закрашивается область. ( FloodFill) vedro-compota Мультимедиа в Delphi 5 05.06.2010 20:05