Показать сообщение отдельно
Старый 27.10.2010, 18:30   #13
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Lib_beta: Перенаправления вывода в картинку/на дисплей

Добавил работу с массивом точек.
Новые команды:

create_array(wintegerhinteger) - создать картинку в виде массива точек размерами w h

clear_array 
очистить память от массива точек

draw_array
(xintegeryinteger) - вывести картинку (из массива точекна экран (без перерисовки)
    
xкоординаты левого верхнего угла картинки
    поддерживается полупрозрачность
!
    
poke(xintegeryintegercolorinteger) - записать точку в массив точек
    x
координаты точки в массиве
    color 
ARGB цвет точки (подсчитаете на научном калькуляторе)
    
integer peek(xintegeryinteger) - прочитать значение цвета в точке из массива точек
    x
координаты точки в массиве 
Простейший пример работы с массивом чисел:
Program BetaTest;
Uses beta;
Var 
imimage;
Begin
    CreateImage
(100100); // Создаем картинку 100*100    
    
Replace// Переключаем поток вывода на нашу картинку
    
    
DrawText('odd was here'00); // Рисуем что-то на картинке
    
DrawImage(LoadImage('/icon.png'), 516); // Для примера выводим в нашу картинку др. картинку
    
    
Replace// Переключаем фокус вывода назад. Теперь вывод будет идти на дисплей
    
SetColor(02550); FillRect(00GetWidthGetHeight); // Закрашиваем дисплей
    
im:=GetImage// Извлекаем полученную картинку в переменную (можно и не в переменную, а вставить внутрь функции DrawImage)
    
DrawImage(im55); // Выводим сгенерированную картинку на дисплей
    
Repaint;    
    
Delay(5000);
    
    
// Работа с массивом точек
    
    
SetColor(255255255); FillRect(00GetWidthGetHeight); // Закрашиваем дисплей
    
create_array(10050); // Создаем массив точек
    
poke(154278190335); // Закрашиваем точку (1, 5) цветом FF0000FF = 4278190335
    
draw_array(00); // Выводим массив на дисплей
    
Repaint;    
    
Delay(5000);
    
End
Вложения
Тип файла: zip Lib_beta.zip (1.6 Кб, 532 просмотров)
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
LIDERSERVIS (28.10.2010), _Nox_ (27.10.2010)