Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.18;
Скачать: [xml.tar.bz2];

Вниз

Как вывести массив точек на TImage?   Найти похожие ветки 

 
BofA   (2002-11-07 12:51) [0]

Есть структуры
TCArray = array of TColor;
var Pic : TCArray;

В Pic хранится изображение, как нарисовать его на TImage?


 
Kudatsky   (2002-11-07 13:30) [1]

Если изображение находится в 1-мерном массиве (???), и если его нужно вывести в строку, то это можно сделать так:

procedure TEdiForm.Button1Click(Sender: TObject);
var
Pic : TCArray;
I:Integer;
begin
for I:=Low(Pic) to High(Pic) do
Image1.Canvas.Pixels[1,I]:=Pic[I];
end;

Картинка рисуется в 1-й строке Canvas


 
BofA   (2002-11-07 13:37) [2]

Sorry за неточное изложение проблеммы. В массиве хранится изображение, известны его высота и ширина, а точка с координатами (X,Y) хранится в Pic[X+Width*Y].
Проблемма такая: Image.Canvas.Pixels очень медленно работает, а надо, чтобы изображение быстро выводилось. Можно ли как-нибудь вывести картинку в TImage быстрее чем через Canvas.Pixels?


 
BofA   (2002-11-07 15:58) [3]

Неужели никто не знает?


 
McSimm   (2002-11-07 16:14) [4]

нужно использовать ScanLine и записывать изображение построчно - это будет намного быстрее.
Но. Формат массива с точками должен соответствовать цветовому режиму картинки.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.11.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.008 c
14-59334
Sers
2002-10-31 15:23
2002.11.18
Функторы


14-59348
Igorek
2002-10-25 10:40
2002.11.18
Непереведенные издания


14-59388
Number 1
2002-10-17 03:10
2002.11.18
Не может быть!!!


1-59271
Новачок
2002-11-07 13:29
2002.11.18
Простой вопрос


1-59104
Petr2002
2002-11-07 23:05
2002.11.18
sendkeys





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский