Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на Delphi

Выпуск № 038
от 13.07.2002, 03:40

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 80
Отправлено ответов: 91
Активность: 113.7 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе]


 Список экспертов, ответы которых опубликованы в данном выпуске

Necro
Статус: Начальный
Общий рейтинг: 127.27
[Подробней >>]
veei
Статус: Начальный
Общий рейтинг: 115.58
[Подробней >>]
Артём Шегеда
Статус: Профессиональный
Общий рейтинг: 122.88
URL: Пристанище неодинокого программиста
[Подробней >>]
 
ALastorZ
Статус: Доверительный
Общий рейтинг: 121.68
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 70. Доброе время суток, уважаемые эксперты! Существует ли способ быстрого рисования на канве? Ну, что-то... (ответов: 4)

Вопросов: 1, ответов: 4


 Вопрос № 70

Доброе время суток, уважаемые эксперты!
Существует ли способ быстрого рисования на канве? Ну, что-то по типу: рисуем в памяти, затем выводим на канву.?!
И еще один вопрос: Насколько работа с динамическим массивом медленнее работы с обычным массивом?
Я писал програмку на Celeron, маленькую! Загружаем файл, обрабатываем массив, затем выводим линии на канву (около 16000 линий). Эта програмка в 500 к еле двигается на 486. Что это - работа с массивом или вывод изображения?
Заранее благодарен!
Vitally.



Вопрос отправлен: 09.07.2002, 08:51
Отправитель: Vitally

[Следующий вопрос >>] [Список вопросов]

Отвечает Necro

Доброе время суток, Vitally!
Если ты используешь TImage, то можно изменять картинку в чистом виде, как она хранится в памяти(см. приложение)

Приложение:

Ответ отправлен: 09.07.2002, 09:21
Отправитель: Necro


Отвечает veei

Здравствуйте, Vitally!
Попробуй так:
...
var
b : TBitmap;
...
begin
...
b := TBitmap.Create;
...
YourCanvas.Draw(x, y, b);
...
end;
...
Или создай объект типа TCanvas нарисуй на нем что нужно и скопируй на свою канву методом CopyRect.


Ответ отправлен: 10.07.2002, 04:56
Отправитель: veei


Отвечает Артём Шегеда

Добрый день, Vitally!
Вообще-то так обычно и поступают - рисуют в памяти, а потом копируют битмап на форму. Как это делается - в приложении.
Скорость работы с динамическим массивом гораздо ниже, чем с обычным массивом, размещённым в пвмяти, поскольку динамический массив - это структура, содержащая море информации, в том числе и указатель на данные. Каждое взятие нового элемента требует обращения к этой структуре, а затем - к данным. Так что - думай. По-моему, проще GetMem/FreeMem.

Приложение:

Ответ отправлен: 09.07.2002, 14:14
Отправитель: Артём Шегеда


Отвечает ALastorZ

Добрый день, Vitally!
Посмотри хелпы по поводу разрешения/запрещения автоматической прорисовки канвы и соответственно ручной прорисовки (помоему делается так)

Ответ отправлен: 10.07.2002, 08:39
Отправитель: ALastorZ



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (48)
C / C++ (33)
Perl (10)
Delphi (17)
Pascal (29)
Basic / VBA (12)
Java / JavaScript (6)
PHP (6)
MySQL / MSSQL (9)
Пользователю
Windows 95/98/Me (44)
Windows NT/2000/XP (32)
"Железо" (36)
Поиск информации (19)
Администратору
Windows NT/2000/XP (19)
Linux / Unix (15)
Юристу
Гражданское право (8)
Семейное право (3)
Трудовое право (7)
КоАП (2)

Отправить вопрос всем экспертам выбранной рассылки.




be number one Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное