Показать сообщение отдельно
Старый 15.11.2011, 21:14   #18
barsunduk
ПроЭктировщик
 
Аватар для barsunduk
 
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений
(для 271 пользователей)
Ответ: Lib_imgs: выводим картинку на картинку

по просьбе трудящихся добавил возможность рисования на картинках нескольких основных примитивов:

// установить цвет пера для рисования на картинках (можно полупрозрачный)
procedure imgsetcolor(colorinteger);

// получить цвет пера для рисования на картинках
function imggetcolorinteger;

// установить непрозрачность пера для рисования на картинках (0/1)
procedure solid(valueinteger);

// получить состояние непрозрачности пера для рисования на картинках (0/1)
function getsolidinteger;

// линия на картинке
function imgline(imgimagex1y1x2y2integer): image;

// прямоугольник на картинке
function imgrect(imgimagexywhinteger): image;

// закрашенный прямоугольник на картинке
function imgfillrect(imgimagexywhinteger): image;

// эллипс на картинке
function imgellipse(imgimagexywhinteger): image;

// залитый эллипс на картинке
function imgfillellipse(imgimagexywhinteger): image;

// заливка на картинке
function imgfill(imgimagexyinteger): image;

// сектор на картинке
function imgarc(imgimagexywha1a2integer): image;

// кривая на картинке (все опорные точки лежат на кривой)
function imgbow(imgimagex1y1x2y2x3y3integer): image;

// кривая на картинке (2-я опорная точка не лежит на кривой)
function imgbezier(imgimagex1y1x2y2x3y3integer): image
и немного поправил заливку экрана:
// быстрая заливка экрана цветом col
procedure cls(colinteger);

// заливка экрана полупрозрачным цветом col
procedure clsa(colinteger);

// заливка экрана
procedure scrfill(xy); 
функции, как мог оптимизировал, но не обещаю скоростей на топорах.
хотя на картинках в основном рисует по самым шустрым алгоритмам брезенхама, битмапы то и дело конвертируются в картинки и наоборот.
треугольнички пока победить не смог, кривовато рисуются, надо править ..(
__________________
to be or not to be - it's not a question!
2b or not 2b = ff

Последний раз редактировалось barsunduk, 16.11.2011 в 22:35.
(Offline)
 
Ответить с цитированием