Graphics editor <<ANIMAGE>>

Processing, playback of audio and video
  • Victor

    Это один из глюков примитивного меню.Как я уже говорил,меню делалось для временного использования.Нужно писать нормальное полноценное меню(в общем библиотеку универсального и полноценного GUI).Как автор программы я знаю обовсех багах в ANIMAGE(в том числе и о тех,которые вы ещё не заметили :) ).



    Mario79

    Для того,чтобы KFM запускал ANIMAGE для редактирования BMP файлов, необходимо в KFM.INI файле написать строку:

    bmp /rd/1/animage

    Марат, сделать в KFM возможность выбора между MV и ANIMAGE - это уже к тебе. :)



    diamond

    Хорошо,проверю.


    P.S.

    На этих каникулах я хотел заниматься разработкой ANIMAGE, но по независящим от меня причинам(тяжёлые жизненные обстоятельства в семье) я не смогу этого сделать. :(
  • andrew_programmer

    Похоже что при выходе через меню редактор не удаляет курсоры.
  • Проверю.
    Я уже немного подзабыл код ANIMAGE.
  • andrew_programmer
    Извиняюсь за назойливость)), но мож у тебя появилось время доделать полосы прокрутки? Сейчас они большие, т.к. таскать можно только за них. Но в некоторых прогах (KFM например) уже реализован код когда можно сводить курсор с полос прокрутки.

    Мм.. ещё. Если закрыть диалог "Открыть" или "Сохранить как...", то меню стаёт неактивным и рисовать уже нельзя.

    В любом случае удачи.
  • Дела я всегда делаю в порядке степени приоритетности.
    Leency, поверь, как только приоритет дойдёт до графического редактора - займусь им.

    С появлением библиотеки libGUI набросать на форму скролер стало делом пяти минут. Вот только код ANIMAGE писался до появления libGUI, поэтому нужно значительно переделывать код ANIMAGE под libGUI. К тому-же надо переделывать работу с памятью под новый менеджер памяти Колибри.

    А меню - тема для отдельного разговора. Надо несколько переделать оконную систему Колибри для его реализации.
  • А что с памятью kos, можно ссылку на акцент данного вопроса?

    ..bw
  • bw
    В MenuetOS и ранних версиях Колибри единственной возможностью работы с динамической памятью было изменение размера памяти функцией 64. После трудов Serge появилось действительно выделение/освобождение блоков памяти 68.11/12/13, но ещё не все программы об этом знают.
  • andrew_programmer
    Давно заметил такое дело (но все забывал написать): в Qemy 64 Мб памяти прописано, BMP файл размером 10 Мб не открывается – черный фон вместо файла, прописываю 128 Мб, все открывается. На реальном компере (старый Cyrix) памяти 32 Мб – файлы больше 1,5 Мб (приблизительно) тоже не открываются.
    Вот у меня и возник вопрос – глюк программы или как? Даже если считать что программа резервирует двойной размер памяти под файл и откаты, все равно должно открываться, так как системе требуется не более 7-8 Мб всего, это с учетом всех приложений, запущенных лаунчером при старте.
  • Mario79

    Размер расходуемой ANIMAGE памяти = 5MB+6*размер_распакованного_файла(3*размер_по_x*размер_по_y)

    С появлением новых возможностей работы с файлами и нового менеджера памяти Колибри - можно уменьшить размер расходуемой памяти. Но полное переписывание ANIMAGE на новый менеджер памяти, новый интерфейс через libGUI, новую работу с файлами, займёт дней 7-10 непрерывной работы(с утра до вечера).
    Мне этим летом нужно ещё некоторую работу выполнить, которая облегчит мне жизнь во время тяжёлой учёбы. Незнаю, останеться ли у меня этим летом время для ANIMAGE.
  • andrew_programmer
    Будим надеяться что удастцо, т.к. графический редактор - это очень важная составляющая операционной системы. Не дадим Менуетчикам (Вилле и ко) нас перегнать! :)
  • andrew_programmer
    6*размер_распакованного_файла ?!!!!!!!! Шесть!!!!!!
    Челюсть валяется где-то под столом у соседа....
    Это зачем такие "скромные" потребности в памяти? Я чего-то не понимаю...
  • Mario79

    64 функция крайне скудна на возможности работы с памятью, поэтому приходиться резервировать буферы размером с распакованную картинку.Даже если нужно скопировать часть картинки размером 2х2 пиксела, под это всёравно выделяется буфер размером с распакованную картику.
    А память в ANIMAGE распределяется так:

    5MB -статический экранный буфер под максимальное разрешение 1280*1024

    дальше идут буферы размером с распакованную картинку(назовём это pak)

    1 pak для самой картинки

    2 pak-а для двух отмен последнего действия

    1 pak для хранения скопированной выделенной части картинки

    1 pak для хранения фона под скопированной картинкой, чтобы при его перемещении по картинке он не затирал основное изображение.

    1 pak При сохранениии картинки она сначала упаковывается в этот буфер, а потом только записывается в файл(раньше небыло 70-ой функции).

    Сейчас, когда есть настоящее динамическое выделение памяти, ненужно выделять статические буферы. Нужно выделять динамические буферы в зависимости от действий пользователя при редактировании картинки. Это позволит варьировать размер расходуемой памяти от 3-х распакованных картинок(минимум) до 5(максимум)(в зависимости от действий пользователя).
  • andrew_programmer
    Да нет, я в принципе ничего не имею против - просто удивил размер. В KFM я тоже использовал 64 функцию, а данные панелей в памяти таскаются туда сюда. Правда размер любой папки редко бывает больше размера BMP файла. Видимо мой подход оправдывается лишь при не очень больших объемах данных.
  • 1.Когда-то давно, когда я только учился програмировать, я писал на C++ под Винду, так вот в одной умной книжке я прочитал такую интересную вещь, что необязательно для отмены последних действий хранить всю картинку, альтернативный вариант - запоминать действия пользователя. В текстовом виде. Или в виде подобия опкодов. Когда буфер действий заполняется (а при таком виде заполнится он не скоро), то самое далёкое действие по дате выполняется над изображением, а остальные в буфере смещаются вниз. Действия, например, такие: MoveTo(x,y),LineTo(x,y),FloodFill(x,y)...

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

    Users browsing this forum: No registered users and 6 guests