Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Сб июн 25, 2022 09:27

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: Irbis
СообщениеДобавлено: Чт мар 10, 2022 00:03 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Идея облегченного Форта получила существенное продвижение. В чем, собственно, идея - внедрить Форт ВМ глубоко внутрь графического приложения, чтобы его объекты были доступны этой ВМ. В качестве базы взята система Lazarus 2.0. Выбор простой - там есть SynEdit и Chart, с которыми удобно работать. Ну и OpenGL.

Внутри весьма лобовое решение - большой case и адресный интерпретатор, аналог байт-кода (хотя команды - integer). Данные, впрочем, 64-разрядные. Скорость самого Форта в свете предполагаемого применения ни на что не влияет. Это скриптовый движок для управления виджетами, и все решения подчинены этому приоритету.


Вложения:
irbis01.png
irbis01.png [ 4.02 Кб | Просмотров: 3770 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Чт мар 10, 2022 23:46 
Не в сети

Зарегистрирован: Ср фев 06, 2008 16:29
Сообщения: 16
Благодарил (а): 6 раз.
Поблагодарили: 0 раз.
А можно чуть подробнее, ну встречаются ещё люди не знающие Lazarus.
Вот нафантазирую сейчас себе черт знает что, а окажется все наоборот :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Пт мар 11, 2022 00:16 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Lazarus - современный Open-source аналог Delphi. Внутри Object Pascal, вся разработка очень похожа на Delphi. Для несложных программ вполне подходит.

Общая идея в том, чтобы не перекомпилировать все каждый раз, когда нужны даже небольшие изменения. От простого "подвинуть кнопку" с Фортом можно дойти до достаточно развитой системы. Не просто подвинуть, а вообще показать/убрать, изменить размеры, вывести надпись, назначить действие (слово Форта), которое должно выполниться. Аналогично с другими элементами управления. Здесь главное - не поддаваться соблазну сделать "все то же самое, но на Форте", потому что переписывать уже готовый код смысла мало. А вот писать в терминах пользовательского приложения очень даже надо.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Пт мар 11, 2022 00:54 
Не в сети

Зарегистрирован: Ср фев 06, 2008 16:29
Сообщения: 16
Благодарил (а): 6 раз.
Поблагодарили: 0 раз.
Я представил себе так: irbis это написанное в lazarus приложение наподобие spf4wc, которое может выполнять некоторый диалект форта, в который добавлена графика. Если при запуске в качестве параметра получает программу на форте, то исполняет её.
Но подозреваю что упускаю что-то важное, а что - не могу понять :(


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Пт мар 11, 2022 01:33 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Да, в целом все так. Будут нюансы - например, консоль и редактор прямо в приложении.

Да, и это будет free. Выложу чуть позже, когда оно придет в минимально пригодное для работы состояние.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Пт мар 11, 2022 18:45 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Интерфейс уже почти такой, какой планируется.


Вложения:
irbis02.png
irbis02.png [ 8.7 Кб | Просмотров: 3525 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Сб мар 12, 2022 04:49 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Процесс ползет.
RosettaCode - сложение A + B.
График синуса.


Вложения:
irbis04.png
irbis04.png [ 17.1 Кб | Просмотров: 3466 ]
irbis03.png
irbis03.png [ 12.27 Кб | Просмотров: 3466 ]

За это сообщение автора Hishnik поблагодарил: NLObP
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Вс мар 13, 2022 02:23 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Достаточно быстрая отрисовка пикселов в цикле, если предварительно скрыть объект...


Вложения:
irbis05.png
irbis05.png [ 161.91 Кб | Просмотров: 3375 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Вс мар 13, 2022 21:34 
Не в сети

Зарегистрирован: Пн янв 28, 2019 03:10
Сообщения: 154
Благодарил (а): 17 раз.
Поблагодарили: 9 раз.
Здесь может пригодиться техника двойной буферизации: рисование осуществляется не напрямую на виджете, а на изображении в памяти, которое одной командой быстро переносится на виджет. Такой подход позволяет избавиться от видимых эффектов при перерисовке изображения.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Вс мар 13, 2022 22:56 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
В принципе можно, но у TPicture такого не нашлось. Можно строить что-нибудь вроде bmp в памяти и быстро копировать, это хорошо, когда много перестраивать. Но пока идет процесс "массового добавления виджетов".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Вс мар 13, 2022 23:12 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Вот еще для проверки. Да, рисуется не мгновенно, но приемлемо, и еще с учетом того, что 256*256 на деле и не надо для такой цели.


Вложения:
irbis06.png
irbis06.png [ 29.75 Кб | Просмотров: 3237 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Ср мар 16, 2022 11:04 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1679
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Hishnik писал(а):
В качестве базы взята система Lazarus 2.0. Выбор простой - там есть SynEdit и Chart, с которыми удобно работать. Ну и OpenGL..

Редактор с открытым кодом сделанный на Lazarus 2.0, Free Pascal 3.2.0. CudaText

Изображение


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Чт апр 07, 2022 22:46 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7539
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Скриншот (и видео)

https://drive.google.com/file/d/1BiX-z3pPI-Nk9HPshMuaAiexCQawwZx5/view?usp=sharing


Вложения:
irbis_midi.png
irbis_midi.png [ 172.89 Кб | Просмотров: 2089 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Irbis
СообщениеДобавлено: Пт апр 22, 2022 10:29 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1207
Благодарил (а): 3 раз.
Поблагодарили: 15 раз.
C релизом)

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


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

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


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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB