Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Apr 25, 2019 11:06 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 44 posts ]  Go to page Previous 1 2 3
Author Message
 Post subject: Re: Kofee - Flash player
PostPosted: Mon Nov 01, 2010 11:27 pm 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
Nable
Спасибо за ссылки. Я думал что при сглажевании нужно расчитывать интенсивность цвета для заливки используя дробные числа, оказывается что можно выкрутится и через целые.
Asper
Алгоритм заливки выглядит очень простым, потому когда будет время то сперва добавлю в библиотеку функцию для заливки.


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Tue Nov 02, 2010 2:19 am 
Offline
Just Flooding

Joined: Sat Jan 06, 2007 2:30 pm
Posts: 269
to Asper
Ты не прав, говоря что этот алгоритм не хранит координаты всех заливаемых точек. Ведь чем больше точек, тем больше глубина вложенности... Уже догадался что меняешь шило на мыло? Раньше было в массиве, теперь в стеке. Некоторая экономия есть, ибо хранится часть точек, а не все, а так же, с другой стороны, рекурсивный алгоритм, быть может, можно легко распаралеллить, но будь аккуратен, переполнение стека - опасная ошибка.

to IgorA
Числа на самом деле в итоге дробные, просто с фиксированной точкой, а не плавающей. Не знаю как сейчас, но раньше в ядре в коде сглаженного рисования фона использовалась fixed-point math 32.32


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Tue Nov 02, 2010 3:53 am 
Offline
User avatar

Joined: Fri Jun 27, 2008 3:22 pm
Posts: 979
Nable
Именно в стеке и не нужно думать сколько памяти выделить под массив, как определить множество заливаемых точек и т.д. Про рекурсию и переполнение стека я конечно же знаю, и уж позабочусь о надлежащем размере стека, важнее то, что сама библиотека будет проще и быстрее заливать требуемую область.
Например вот здесь описываются несколько алгоритмов заливки. Приведенный мной алгоритм там обозначен как "Простой алгоритм заливки".


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Tue Nov 02, 2010 10:54 pm 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
В ревизии 1684 добавил функцию buf2d_flood_fill, заливает области. Но смущает то, что чем больше заливаемая область тем больше должна быть область стека. Причем область нужная для стека растет намного быстрее чем я думал. При увеличении радиуса заливаемой области на 1 пиксель стек по идее должен увеличиваться на 4 байта (одна рекурсивная команда call = 4 байта). Так я думал, но на практике получаются большие цифры ... :?
Например круг радиусом 25 я могу залить со стеком 4096, а круг радиусом 50 пикселей я не могу залить со стеком 8192 зависимость не линейная :?:


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Tue Nov 02, 2010 11:08 pm 
Offline
User avatar

Joined: Mon Apr 16, 2007 6:38 pm
Posts: 1222
ну уж окружности то можно рисовать сразу линиями, а не точками, вот и заливка.. а для фигур произвольной формы то да, придется идти на определенные жертвы..

_________________
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Wed Nov 03, 2010 6:15 pm 
Offline
User avatar

Joined: Fri Jun 27, 2008 3:22 pm
Posts: 979
IgorA
S=2*pi*R*R
Для R=25, S=3297
Для R=50, S=15140


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Mon Dec 20, 2010 12:56 am 
Offline
User avatar

Joined: Thu Mar 01, 2007 7:57 pm
Posts: 835
Наконец-то попробовал!
к сожалению, вынужден подтвердить. что демки рисуются криво, при этом демка ADOBE.SWf у меня вылетает с такой ошибкой:

Code:
K : destroy app object
K : destroy app object
K : Process - forced terminate PID: 0000003D
K : Page fault
K : EAX : 00000000 EBX : 00000000 ECX : 044DE0AB
K : EDX : 1004FB20 ESI : 00000015 EDI : 02D46FFF
K : EBP : 0000243F EIP : 1004F114 ESP : 0000241F
K : Flags : 00001206 CS : 0000001B (application)

Однако начинание хорошее и нужное, удачи!

_________________
Всех выше те, кто доброе творят,
И за дела добра не ждут наград,
Всем жертвуют для страждущих людей,
Не думая о выгоде своей.


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Mon Dec 20, 2010 1:20 am 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
Атауальпа wrote:
при этом демка ADOBE.SWf у меня вылетает с такой ошибкой

Хочется узнать библиотека buf2d, которая была использована в тесте была до или после 1717 ревизии? Скорее всего ошибка не в этом, но вдруг... Алгоритм рисования закрашенного прямоугольника при задании отрицательных размеров мог или подвесить программу (ширина меньше 0) или привести к сбою программы (высота меньше 0), что было в 1717 устранено (хотя очень серйозных тестов по этому поводу я не проводил).


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Tue Dec 21, 2010 4:00 pm 
Offline
User avatar

Joined: Thu Mar 01, 2007 7:57 pm
Posts: 835
Да, библиотека оказалась действительно старая. А где новая, на svn я не нашёл.

_________________
Всех выше те, кто доброе творят,
И за дела добра не ждут наград,
Всем жертвуют для страждущих людей,
Не думая о выгоде своей.


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Tue Dec 21, 2010 10:47 pm 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
Атауальпа wrote:
А где новая, на svn я не нашёл

рядом с другими библиотеками в папке
programs/develop/libraries/buf2d
просмотреть в браузере можно по ссылке
http://redmine.kolibrios.org/projects/k ... /buf2d.asm


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Wed Dec 22, 2010 5:08 am 
Offline

Joined: Tue Oct 05, 2010 6:05 pm
Posts: 213
Offtopic: А нельзя ли в buf2d поправить cruve на curve? А для совместимости с программами использующими кривое написание воткнуть
buf_cruve_bezier fix buf_curve_bezier
obj станет потолще, но меня (а может кого-нибудь ещё) перестанет передёргивать :)
(лучше, конечно и в прогах поправить и совсем от "cruve" избавиться)


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Wed Dec 22, 2010 5:37 pm 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
На сколько я знаю пока только одна программа использует эту функцию, потому заменить название не проблематично.
В английском я не силен :(
Со следующей ревизией поменяю.


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Wed Dec 22, 2010 7:32 pm 
Offline

Joined: Tue Oct 05, 2010 6:05 pm
Posts: 213
Я примерно в пяти файлах по svn насчитал, один из которых html :)


Top
   
 Post subject: Re: Kofee - Flash player
PostPosted: Wed Dec 22, 2010 8:27 pm 
Проще поиском по содержимому, в файловых менеджерах поискать. Например Krusader (для Linux) или Unreal Commander (соответственно для Windows).


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 44 posts ]  Go to page Previous 1 2 3

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited