|
02.07.2008, 03:26
|
#1
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Lib_gfx
Библиотека с некоторыми дополнительными графическими функциями.
Функции такие:
SetLineStyle(integer style) - Установка стиля для линий (0 - сплошная, 1 - пунктирная).
DrawTriangle(integer x1, integer y1, integer x2, integer y2, integer x3, integer y3) - Рисование треугольника
FillTriangle(integer x1, integer y1, integer x2, integer y2, integer x3, integer y3) - Закрашивание треугольника
SetDefaultFont - Установка шрифта по умолчанию
DrawString(string s, integer x, integer y, integer anchor) - Рисование строки с привязкой
|
(Offline)
|
|
Эти 3 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
|
|
23.10.2008, 22:02
|
#2
|
AnyKey`щик
Регистрация: 22.10.2008
Сообщений: 7
Написано одно полезное сообщение (для 2 участников)
|
Ответ: Lib_gfx
почему я не могу качать прикреплённые файлы, я подтвердил регу же, или сколько то сообщений нужно набрать?
|
(Offline)
|
|
23.10.2008, 22:18
|
#3
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Ответ: Lib_gfx
ограничения нет. а не получается качать как? ссылки нет? или ошибку даёт?
|
(Offline)
|
|
24.10.2008, 06:47
|
#4
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
Забей. Если надо скачать - качай сразу сборник библиотек (у меня в подписи к сообщению ссылка). Там есть и все библиотеки и описания к ним.
|
(Offline)
|
|
27.01.2010, 18:18
|
#5
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
В библиотеку добавлена функция рисования линий произвольной толщины.
DrawBoldLine(x1, y1, x2, y2, b).
|
(Offline)
|
|
Эти 6 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
|
|
03.02.2010, 15:32
|
#6
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
Добавил функцию закрашивания произвольной замкнутой поверхности любым цветом.
Fill (x: integer; y: integer: r: integer; g: integer, b: integer)
Попробуйте, например такой пример:
Program IM; Uses gfx; begin SetColor(0, 0, 0); DrawLine(5, 5, 150, 10); DrawLine(150, 10, 170, 200); DrawLine(170, 200, 60, 60); DrawLine(60, 60, 5, 105); DrawLine(5, 105, 5, 5); Fill(20, 20, 100, 120, 250); Repaint; Delay(10000); end.
Результат можно увидеть на скриншоте.
|
(Offline)
|
|
Эти 6 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
|
|
12.06.2010, 17:41
|
#7
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
Добавилась функция Draw_Transformed(im: image; x1: integer; y1: integer; x2: integer; y2: integer; x3: integer; y3: integer; x4: integer; y4: integer);
для вписывания текстуры в произвольный четырехугольник.
Порядок описывания углов четырехугольника показан на рисунке.
|
(Offline)
|
|
Эти 13 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
|
.:MaSe:. (28.04.2014), Banan (18.06.2010), cherepets (12.06.2010), DIMMON4IK (12.06.2010), Igor (10.01.2011), impersonalis (24.06.2010), im_zorg (12.06.2010), NetBuilding (05.09.2010), Nex (02.09.2010), Phantom (12.06.2010), Romanzes (12.06.2010), scimitar (18.06.2010), Trazzy (14.06.2010)
|
12.06.2010, 20:42
|
#8
|
Знающий
Регистрация: 25.10.2009
Сообщений: 338
Написано 53 полезных сообщений (для 61 пользователей)
|
Ответ: Lib_gfx
Ура, спасибо, odd, респект.
|
(Offline)
|
|
16.06.2010, 13:15
|
#9
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Lib_gfx
функция скоростью не блещет. вариант Винта о игре типо дума отменяется, у меня 3 вызова полностью убивают производительность((
есть какой-нить вариант сбить качество и повысить производительность?
|
(Offline)
|
|
18.06.2010, 14:19
|
#10
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
Для Doom видимо придется писать другой алгоритм, более оптимизированный.
В Doom прямые 1-4 и 2-3 будут параллельны и притом перпендикулярны горизонту.
Это обстоятельство позволит намного сократить количество вычислений.
|
(Offline)
|
|
24.06.2010, 00:20
|
#11
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
По просьбе пользователя Igor добавил ещё одну функцию:
image Transform(im: image; x1: integer; y1: integer; x2: integer; y2: integer; x3: integer; y3: integer; x4: integer; y4: integer)
Вписывание текстуры im в произвольный четырехугольник.
Порядок описи углов прямоугольника:
x1, y1 - правый нижний угол
x2, y2 - левый нижний угол
x3, y3 - левый верхний угол
x4, y4 - правый верхний угол
Пример:
Program gfx_test; Uses gfx; Var size: integer; im: Image; Begin size:=30; im:=transform(LoadImage('/dollar.png'), 6 * size, 4 * size, 1 * size, 2 * size, 4 * size, 1 * size, 7 * size, 2 * size); DrawImage(im, 5, 5); DrawImage(im, 10, 10); DrawImage(im, 15, 15); Repaint; Delay(10000); End.
Более ускоренный алгоритм для игр типа DOOM пока в процессе.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
|
|
24.06.2010, 11:04
|
#12
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Lib_gfx
ну, польза и в таком виде есть)) например можно с помощью нее из прямоугольных текстур сделать стены для игр с изометрией
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
24.06.2010, 12:15
|
#13
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Lib_gfx
можно с помощью нее из прямоугольных текстур сделать стены для игр с изометрией
|
Кстати да. Только не вертикальные стены, а наклонные поверхности ландшафта
Огромное спасибо!
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
25.06.2010, 15:38
|
#14
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Lib_gfx
Но над стенами я всё таки работаю. Нужно будет сделать алгоритм побыстрее.
|
(Offline)
|
|
06.04.2012, 22:56
|
#15
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Ответ: Lib_gfx
Уже 2 года работаешь...как все забивают
__________________
G502, GT S5230w user!
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:50.
|