Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Ср июл 26, 2017 5:50 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 96 сообщений ]  На страницу Пред. 13 4 5 6 7 След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Пт авг 24, 2007 6:54 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
>.Когда-то давно, когда я только учился програмировать, я писал на C++ под Винду, так вот в одной умной книжке я прочитал такую интересную вещь, что необязательно для отмены последних действий хранить всю картинку, альтернативный вариант - запоминать действия пользователя. В текстовом виде. Или в виде подобия опкодов. Когда буфер действий заполняется (а при таком виде заполнится он не скоро), то самое далёкое действие по дате выполняется над изображением, а остальные в буфере смещаются вниз. Действия, например, такие: MoveTo(x,y),LineTo(x,y),FloodFill(x,y)...

Я про это знаю. Просто из временных соображений реализован пока такой вариант.

>2.Я недавно на диске с учебниками математики обнаружил кучу литературы по обработке изображений(с примерами), с радостью, если есть время.

Замечательно. Через год воспользуюсь предложенными описаниями :)


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Сб мар 01, 2008 6:20 pm 
Не в сети

Зарегистрирован: Пн янв 07, 2008 11:39 am
Сообщения: 22
Найден баг. При сворачивании анимэджа курсор начинает двигаться рывками.


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Вс июл 04, 2010 10:45 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пн окт 27, 2008 10:10 pm
Сообщения: 740
Хочу добавить в библиотеку buf2d функции рисования окружности и заливки цветом. Подумал что можно взять их из animage, но не пойму входные параметры:
Код:
;procedure <<<<<<calculate_circle>>>>>>
; IN
;eax - pointer to screen
;ebx - output array
;ecx - (screen size x)*bytes per pixel
;edx - x_c*65536+y_c
;esi   r
; OUT
;eax - number of pixels
calculate_circle:

а именно назначение pointer to screen и output array, то же самое и в заливке:
Код:
;procedure <<<<<<flood fill>>>>>
;IN
;eax - pointer to screen
;ebx - pointer to output array
..........
flood_fill:



Также в файле string.inc нашел возможность упростить код, вместо:
Код:
find_symvol:
   ;eax=string
   ;ebx=symvol
   mov esi,eax
   next_symvol:
   xor ecx,ecx
   mov cl,[eax]
   cmp cl,bl
   je symvol_fined
   inc eax
   jmp next_symvol

   symvol_fined:
   sub eax,esi

   ret

сделать так:
Код:
find_symvol:
   ;eax=string
   ;ebx=symvol
   mov esi,eax
   next_symvol:
   cmp byte[eax],bl
   je symvol_fined
   inc eax
   jmp next_symvol

   symvol_fined:
   sub eax,esi

   ret


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Вт июл 06, 2010 11:15 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 971
IgorA писал(а):
Также в файле string.inc нашел возможность упростить код

Мой вариант:
Код:
find_symbol:
   ;edi = string
   ;ecx = length of string
   ;al = symbol
   push  ecx
   repne scasb
   pop    eax
   sub    eax, ecx
   ret


Код не смотрел, но рискну предположить, что pointer to screen - это указатель на буфер где рисуется графический примитив.


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Ср июл 07, 2010 8:03 am 
Animage (как и KFM) нуждается в переписывании с 64 функциии на 68. Без этого в нем нельзя использовать "расшаренную" память и следовательно не прикрутить OpenDialog. Я смотрел код, но без знания что и где переписывать я его не могу - слишком много времени уйдет.


Вернуться к началу
   
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Вт сен 28, 2010 11:53 pm 
У меня хорошая новость - двух-дневным (вернее двух-вечерним) мозговым штурмом Animage переписан с 64 функции на 68, остается прикрутить OpenDialog. Возможно поправлю пару багов за одно.

Ну, и судя по коду - возможна довольно значительна оптимизация - например процедура установки указателей с 100% идентичным кодом была продублирована то ли 3, то ли 4 раза - уже сделал в этом случае оптимизацию кода.


Вернуться к началу
   
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Чт сен 30, 2010 4:24 pm 
SVN r. 1632
1) Приложение использует функцию 68 вместо 64, для управления памятью приложения.
2) Использование OpenDialog (через библиотеку proc_lib.obj), для указания пути к открываемому и сохраняемому файлу.


Вернуться к началу
   
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Чт сен 30, 2010 6:22 pm 
Не в сети

Зарегистрирован: Вс ноя 04, 2007 2:46 am
Сообщения: 390
Надеюсь, оно больше не будет так перерисовываться по-дурацки.


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Пт окт 01, 2010 10:54 am 
maximYCH писал(а):
Надеюсь, оно больше не будет так перерисовываться по-дурацки.

Использование 68 функции никаких изменения в скорость работы и улучшение отрисовки не вносит. Оно просто позволяет теперь подключать библиотеки. Для изменения отрисовки требуется переделать вывод окна - не отрисовывать фон окна ядром, но при этом требуется самому заполнять все пустые места. Если будет время займусь, но пока не до этого.


Вернуться к началу
   
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Пн окт 04, 2010 11:52 pm 
SVN r. 1643 - Animage версии 1.3
1) Устранено мерцание при перерисовке окна.
2) Устранена утечка памяти для стека (вызывать процедуры через call, а затем выходить из них через jmp still - очень плохая идея).

Программа все еще содержит не менее двух багов:
1) Если переместить окно с открытым меню - будет дискотека с цветомузыкой.
2) Если при создании новой картинки, чуть-чуть ошибиться, то лучше сразу закрыть приложение.
Они не столь заметны, но естественно нуждаются в исправлении.

И еще пожалуй нуждается в переписывании на тип окна с заданием сетки координат от базы, учитывающей параметры скина, но эта довольно большой объем работ.


Вернуться к началу
   
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Сб окт 09, 2010 6:01 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вс май 10, 2009 7:56 pm
Сообщения: 97
А также при активации инструментов выделения и иногда рисвования прямоугольника Animage вылетает.


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Вт авг 02, 2011 2:17 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4092
Улучшения во внешнем виде:
- избавился от капса
- надписи в подменю теперь посередине
- help вылазил за границы выделения, исправлено
- немного улучшил внешний вид кнопочек
- теперь лучше видно как нажимается кнопочка (левый верхний бок какбэ вдавливается)
- правильно отрисовывается выбранный цвет

А неплохо бы ещё и программную часть обновить - скроллы, например.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Вт авг 09, 2011 1:30 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4092
Хотелось бы немного простых, но крайне важных изменений, чтобы программой можно было пользоваться:
- Ctrl+Z отмена (в идеали и другие хоткеи)
- изменение размера области не приводит к изменению курсора и инструмента редактирования
- по-умолчанию выбран инструмент карантдаш.

P.S. Копирование и вставка поломаны?

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Вт авг 09, 2011 7:22 am 
Leency писал(а):
P.S. Копирование и вставка поломаны?

А они разве работали?


Вернуться к началу
   
 Заголовок сообщения: Re: Graphics editor <<ANIMAGE>>
СообщениеДобавлено: Чт авг 11, 2011 8:34 am 
Не в сети

Зарегистрирован: Вс ноя 04, 2007 2:46 am
Сообщения: 390
День багрепертов Максимыча продолжается ;)
Впрочем этот баг относится не только к Animage, такое наблюдается везде.


Вложения:
animage.png
animage.png [ 60.07 КБ | 2536 просмотров ]
Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 96 сообщений ]  На страницу Пред. 13 4 5 6 7 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB