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

Вниз

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

 
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 вся ветка

Форум: "Media";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.031 c
1-4975
SinnerPro
2003-01-27 05:02
2003.02.03
Чтение из файла


7-5285
cutter-pro
2002-11-19 15:28
2003.02.03
ЧЕРНЫЙ ЭКРАН СМЕРТИ :(


1-4942
Astarot
2003-01-26 15:41
2003.02.03
Существование Component


3-4806
Valeris
2003-01-17 11:20
2003.02.03
подключение к SQL серверу в консольном приложении


3-4718
dtm
2003-01-15 14:29
2003.02.03
Не видно выбранного значения в lookup-поле при выборе





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский