Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.14;
Скачать: CL | DM;

Вниз

Приоритет или ускорение???   Найти похожие ветки 

 
Zhekson   (2008-11-07 10:01) [0]

Имеется приложение, которое работает с изображениями. По необходимости происходит многократная загрузка BMP файла в компонент TImage(мышью перетаскиваю объекты). Как максимально ускорить процесс загрузки, перепрорисовки и вообще работы приложения? Спс.


 
KSergey ©   (2008-11-07 10:05) [1]

ккой-то неконкретный вопрос.
а что происходит медленно? может просто мьше медленно перемещается? как именно и что отображается?


 
Zhekson   (2008-11-07 10:11) [2]

KSergey ©   (07.11.08 10:05) [1]

перемещение происходит с некоторой задержкой. На сильных компах она почти незаметна, а на более слабых, она более очевидна.

повторю неконкретный вопрос, на всякий случай:

> Как максимально ускорить процесс загрузки, перепрорисовки
> и вообще работы приложения?


 
clickmaker ©   (2008-11-07 10:14) [3]

DoubleBuffered?

и не совсем понятно, как связаны "происходит многократная загрузка BMP файла в компонент TImage" и "мышью перетаскиваю объекты"?


 
Zhekson   (2008-11-07 10:22) [4]

clickmaker ©   (07.11.08 10:14) [3]

DoubleBuffered - не знаю с чем связано, но это свойство искажает отображаемые на форме компоненты.


> и не совсем понятно, как связаны "происходит многократная
> загрузка BMP файла в компонент TImage" и "мышью перетаскиваю
> объекты"?

Задача - обозначить ломаные изображения точками, соединёнными линиями, для этого использую массив координат точек и при изменении(перетаскивании) координат одной из точек перепрорисовываю все точки с учётом изменения коодинат перемещаемого мной объекта.


 
clickmaker ©   (2008-11-07 10:26) [5]

> перепрорисовываю все точки

так а файл-то тут каким боком?


 
Zhekson   (2008-11-07 10:31) [6]

clickmaker ©   (07.11.08 10:26) [5]

старые точки стираю, путём перезегрузки исходного изображения и перепрорисовки уже указанных точек.


 
clickmaker ©   (2008-11-07 10:36) [7]

а не лучше ли использовать растровую операцию "искл. или"?
нарисовал один раз - появилось. Нарисовал второй в том же месте - стерлось


 
Anatoly Podgoretsky ©   (2008-11-07 10:37) [8]

> clickmaker  (07.11.2008 10:14:03)  [3]

Началось :-)


 
Правильный$Вася   (2008-11-07 10:46) [9]

зачем грузить многократно одно и то же, если можно загрузить один рази хранить в памяти?


 
Zhekson   (2008-11-07 10:49) [10]

clickmaker ©   (07.11.08 10:36) [7]

может и лучше, только как запоминать участки, поверх которых рисуются точки, а главное участки под линиями, соединяющими эти точки???


 
Zhekson   (2008-11-07 10:51) [11]

Правильный$Вася   (07.11.08 10:46) [9]

Спасибо Вася, ты в каждой ветке даёшь мне надежду, что у меня всё ещё не так запущено)))


 
clickmaker ©   (2008-11-07 10:53) [12]

> может и лучше, только как запоминать участки

а их в этом случае и не надо запоминать.
С графическим редактором работал? Там, когда рисуется "резиновый" контур будущей фигуры, именно эта операция и используется. Безо всякого ущерба для уже нарисованного и дерганья файла


 
Zhekson   (2008-11-07 10:58) [13]

clickmaker ©   (07.11.08 10:53) [12]

на словах всё просто, каков механизм???


 
clickmaker ©   (2008-11-07 11:04) [14]

> на словах всё просто

а на деле тоже.
1. движение мыши - рисуем линию xor-ом, запомнили координаты
2. следующее движение - рисуем линию xor-ом по запомненным координатам - линия стирается, затем п.1 по новым координатам
и т.д.


 
Zhekson   (2008-11-07 11:18) [15]

clickmaker ©   (07.11.08 11:04) [14]

> линия стирается


а рисунок под линией???


 
clickmaker ©   (2008-11-07 11:25) [16]

> а рисунок под линией???

да сколько раз можно говорить? суть xor как раз в этом и есть, что стирается только то, что было нарисовано по тем же координатам и тоже с использованием xor
ты бы хоть попробовал уже, а?


 
Zhekson   (2008-11-07 11:28) [17]

clickmaker ©   (07.11.08 11:25) [16]
сорри.

спасибо, буду пробовать.


 
Anatoly Podgoretsky ©   (2008-11-07 11:32) [18]

> Zhekson  (07.11.2008 11:18:15)  [15]

Восстанавливается

Да - Нет - Да
0 0 0
0 1 1
1 0 1
1 1 0


 
Zhekson   (2008-11-07 11:40) [19]

Anatoly Podgoretsky ©   (07.11.08 11:32) [18] clickmaker ©   (07.11.08 11:25) [16]

заранее предупреждаю, категория дла начинающих, поэтому тормозить имею право!!!

функции рисования выглядят следующим образом:

Image1.Canvas.MoveTo(linex, liney);
Image1.Canvas.LineTo(kx, ky);


как используя исключение (xor) прорисовать, по этим же координатам, линию???


 
Сергей М. ©   (2008-11-07 11:44) [20]


> Zhekson   (07.11.08 11:40) [19]


см. TCanvas.Pen.Mode


 
Anatoly Podgoretsky ©   (2008-11-07 11:54) [21]

Рядовая справка говорит:

> The line is drawn using Pen.

Смотреть свойства TPen, TPenMode
Второе определяет режим вывода точек.


 
Zhekson   (2008-11-07 11:55) [22]

clickmaker ©  
спасибо за терпение и помощь!

Anatoly Podgoretsky ©  
спасибо.

Сергей М. ©  
чесслово, прослезился))) ни намёка на провокацию)))
спасибо.


 
Anatoly Podgoretsky ©   (2008-11-07 11:56) [23]

Желательно создать тестовое приложение, что бы поиграться с разными режимами.

Нужны две кнопки

Восстановить полотно
Нарисовать линию

И комбо для выбора режима.


 
Zhekson   (2008-11-07 11:56) [24]

Картинка ожила!!!


 
Сергей М. ©   (2008-11-07 11:58) [25]


> Zhekson   (07.11.08 11:55) [22]


Ушанка потихоньку наполняется, знать быть тебе миллионером)


 
Zhekson   (2008-11-07 12:03) [26]

Anatoly Podgoretsky ©   (07.11.08 11:56) [23]

Хотите верьте, хотите нет, а так и сделаю... так глядишь и прийдёт, на смену надоевшему Paint_у, MegaPaint from Zheksonz)))

Сергей М. ©   (07.11.08 11:58) [25]
Маленько не удержал))) Ну не страшно, в этот раз коэффициент обидности минимален))


 
Anatoly Podgoretsky ©   (2008-11-07 16:32) [27]

> Zhekson  (07.11.2008 12:03:26)  [26]

Тестовое приложение хороший метод для проверки и отладки идей.


 
Zhekson   (2008-11-07 16:51) [28]

Anatoly Podgoretsky ©   (07.11.08 16:32) [27]
Не поспоришь, частенько приходится ваять макеты(каркасы) необходимых узлов приложения, отдельно от программы...



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

Текущий архив: 2008.12.14;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.014 c
15-1223908317
Marcos
2008-10-13 18:31
2008.12.14
аналог радмина


4-1185993816
Serega41
2007-08-01 22:43
2008.12.14
Как получить LinkName устройства?


15-1223232390
Алексин
2008-10-05 22:46
2008.12.14
Что это за музыка?


2-1225372647
Agent89
2008-10-30 16:17
2008.12.14
чтение LTP порта


15-1223750694
Desdechado
2008-10-11 22:44
2008.12.14
Забавное условие в лицензионном соглашении на программу