Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 03.12.2015
Сообщений: 1
1

Создание линии без использования Line

03.12.2015, 19:53. Показов 1053. Ответов 2

Прошу помогите! мучаюсь второй день, не могу придумать как сделать общую процедуру, чтобы рисовать линию в паскаль АВС без использования Line. Линии необходимо рисовать в разных направлениях. у меня два задания прямоугольник (пунктиром) и звезда пятиконечная.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.12.2015, 19:53
Ответы с готовыми решениями:

Создание отчета без использования СКД
GreenkA, alex1248, Необходимо сделать отчет без использования СКД. Можешь скинуть ссылку где...

Создание программ без использования IDE
Помогите, срочно с заданием: Написать на языке java 1)метод getSum(), возвращающий сумму значений...

Создание 2D игр без использования движка
Подскажите где можно найти много инфы по этой теме. Подойдут недоделанные до конца проекты, и...

Создание приложения без использования Storyboard
Здравствуйте, дано задание (в названии). Совсем новичок в этой теме. Есть ли туториалы, как это...

2
Эксперт Pascal/Delphi
6766 / 4535 / 4806
Регистрация: 05.06.2014
Сообщений: 22,364
04.12.2015, 11:52 2
Алгоритм Брезенхема
1
Почетный модератор
64085 / 47494 / 32734
Регистрация: 18.05.2008
Сообщений: 115,182
04.12.2015, 12:54 3
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Цитата Сообщение от Alex1ya Посмотреть сообщение
звезда пятиконечная.
Звезда Алгоритмом Брезенхема

Добавлено через 29 минут
Цитата Сообщение от Alex1ya Посмотреть сообщение
прямоугольник (пунктиром)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
uses graphABC;
//процедура рисования отрезка
procedure Brezenhem(x1,y1,x2,y2:integer);
var currentX, currentY: integer;
    errorX, errorY: integer;
    d, dx, dy, incX, incY: integer;
begin
dx := x2 - x1;
dy := y2 - y1;
errorX := 0;
errorY := 0;
if(dx > 0) then incX := 1
else if(dx = 0) then incX := 0
else incX := -1;
if(dy > 0) then incY := 1
else if(dy = 0) then incY := 0
else incY := -1;
dx := abs(dx);
dy := abs(dy);
if(dy > dx) then d := dy
else d := dx;
currentX := x1;
currentY := y1;
setpixel(currentX, currentY, clRed);
while((currentX <> x2) OR (currentY <> y2)) do
 begin
  errorX := errorX + dx;
  errorY := errorY + dy;
  if(errorX >= d) then
   begin
    errorX := errorX - d;
    currentX := currentX + incX;
   end;
  if(errorY >= d) then
   begin
    errorY := errorY - d;
    currentY := currentY + incY;
   end;
  SetPixel(currentX, currentY, clRed);
 end;
end;
 
var x1,y1,x2,y2,i,x3,x4,y3,y4,d:integer;
begin
setwindowsize(600,400);
centerwindow;
d:=5;
x1:=windowwidth div 2-d*50;
y1:=windowheight div 2-d*30;
x2:=windowwidth div 2+d*50;
y2:=windowheight div 2+d*30;
x3:=x1;
x4:=x3+d;
while x3<x2 do
 begin
  Brezenhem(x3,y1,x4,y1);
  Brezenhem(x3,y2,x4,y2);
  x3:=x3+2*d;
  x4:=x3+d;
 end;
y3:=y1;
y4:=y3+d;
while y3<y2 do
 begin
  Brezenhem(x1,y3,x1,y4);
  Brezenhem(x2,y3,x2,y4);
  y3:=y3+2*d;
  y4:=y3+d;
 end;
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.12.2015, 12:54

Создание сайта без использования ORM
Все время, создавая сайты, пользовался ADO.NET Entitiy Framework... тут поставили задачу...

Создание стека без использования классов
На первом шаге нужно создать стек включением в него k целых чисел в возрастающей...

Создание меню без использования ресурсного файла
Создаю меню при помощи функций CreateMenu(),CreatePopupMenu(). Добавлял пункты меню функцией ...

Создание таблицы без использования стандартных элементов управления
Как мне создать динамически таблицу на форме, не используя DataGridView и GridControl, что бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru