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

Вниз

Реализация отмена-повтор последних действий   Найти похожие ветки 

 
debuger ©   (2002-10-20 13:58) [0]

Никто не знает как в Фотошопе реализована отмена-повторение последних действий? Неужели сохраняется все придыдущие картинки в файл на диске?


 
MJH ©   (2002-10-20 14:11) [1]

ага...только не картинки, а последовательность действий


 
debuger ©   (2002-10-20 14:15) [2]

А если это заливка? А если ластик? И строить картинку по объектам?


 
Anatoly Podgorestky ©   (2002-10-20 14:22) [3]

Есть еще один метод, не отменять, а повторять с начала, но для растровой графики может оказаться накладныи


 
debuger ©   (2002-10-20 14:30) [4]

Anatoly Podgorestky
Спасибо.
В векторном редакторе я делаю очень просто. Я строю список объектов. Создается класс фигуры. От нее наследуется все остальные классы (квадраты, элипсы, прямые, и т.д.). И достаточно воспроизвести список то определенного кол-ва действий, и все само сабой отменится.
В растровой же графике можно конечно работать с тем же списком объектов, но некоторые специфичные растровые дейстия, такие как ластик, заливка, вырезание фрагмента (в который могут попасть части объектов) действительно реализовать не очень просто:)
В общем пока для отмен-повтора остановился на следующем. Просто сохраняю образы картинки в файл при каждом действии способным изменить картинку.


 
debuger ©   (2002-10-20 14:33) [5]

К последнему.
Конечно не сразу в файл, есть промежуточные картинки в памяти. но в общем и целом так:)



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

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

Наверх




Память: 0.48 MB
Время: 0.05 c
1-4961
Checist [root]
2003-01-26 23:33
2003.02.03
Перехват ошибки


7-5300
ReYken
2002-11-18 11:43
2003.02.03
Вывод текста поверх всех окон.


1-4867
Someone
2003-01-24 18:23
2003.02.03
Посоветуйте с превью печати


3-4775
Chery
2003-01-16 17:58
2003.02.03
Как в добавлять и просматривать записи.


7-5290
Newe
2002-11-21 15:24
2003.02.03
Как программно узнать когда юзер вставит в дисковод дискету?