Новые форматы
|
|
Nextik | Дата: Понедельник, 24.01.2011, 16:47 | Сообщение # 1 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Можно создавать любые форматы файлов и их использовать не только у себя в программе, а например в кругу сообщества MidletPascal(ну тех кто программирует на mp). Например теже самые картинки, создаём любой текстовый файл, описываем цвет пикселя, описание пикселей разделяем каким нибудь символом, ну например ;. Далее следует какая нибудь процедура, котороя преобразовывает наш формат картинки в настоящую картинку, которая будет на дисплее, таким образом можно и свой формат анимации придумать. Я понимаю что каждый пиксель описывать будет неудобно и такие файлы возможно будут много весить, но мы сможем делать картинки в своём формате с любым расширением каким захотим! Идея темы такова: каждый предлагает свой формат, описывает метод действия и код, который преобразовывает это во что-нибудь(в то что вы задумали, например наш мини браузер, якобы браузер, со своим расширением сохраняемых страничек). Я думаю каждый меня поймёт и поддержит эту идею.
|
|
| |
121212 | Дата: Вторник, 25.01.2011, 10:15 | Сообщение # 2 |
Программист
Группа: Проверенные
Сообщений: 268
Награды: 7
Репутация:
« 14 »
Статус: Offline
| Предложи сначала ты, за тебя работать не очень охото
|
|
| |
Nextik | Дата: Вторник, 25.01.2011, 19:23 | Сообщение # 3 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Ладно, упростим задачу. Вы предлагаете формат, описываете его действие, а я постараюсь напечатать код, который выполнит поставленную задачу.
Сообщение отредактировал Nextik - Вторник, 25.01.2011, 20:04 |
|
| |
lgor | Дата: Вторник, 25.01.2011, 20:00 | Сообщение # 4 |
Группа: Удаленные
| 1. Ты изобретаешь велосипед) 2. Для тех же картинок всё до тебя сделано-есть библиотеки, позволяющие делать анимацию картинок. 3. Если хочется, напиши свой формат для хранения уровня 2d игры. 4. Разделять ';' не надо, трата памяти. В идеале для хранения надо юзать chr() и ord(), чтобы в каждый символ пихать по одному байту информации. Т.е., для хранения числа integer достаточно 4 символов. 5. Можно сделать модуль, который будет быстро читать из файла по 4 байта и выдавать в ответ число. 6. Собственно, я сам могу сделать и потом сравним, у кого лучше.
|
|
| |
Nextik | Дата: Вторник, 25.01.2011, 20:14 | Сообщение # 5 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Quote (lgor) 1. Ты изобретаешь велосипед) 2. Для тех же картинок всё до тебя сделано-есть библиотеки, позволяющие делать анимацию картинок. Есть то есть, ведь только некоторые работают не так уж и отлично, просто впервые у меня есть возможность сделать что то своими руками и это что-то определённо будет работать нормально, пока что мне так кажется:) Ладно, признаюсь я ещё не полностью всё понимаю в mp. По моей оценке я полный нуб в модулях и в тех функциях о которых ты говоришь. Так что если кто может мне помочь в освоении модулях и всего чего я незнаю, помогите. Почему до сих пор нет темы "учительская"??? Она же будет так полезна кто не полностью понимает что и как в мп. Ну для меня в первую очередь:). Давайте сделаем такую тему, где будут разъясняться некоторые детали. Или разъясните эти детали мне хотябы:), а то я вообще не врубаюсь что к чему... Код у меня получается большой и "тяжёлый", хотя после завершения проекта я его всегда оптимизирую делая всё в заумных циклах(иногда сам не понимаю что пишу:),хотя всё работает как надо), так что я прошу помощи и ищу "учителя" для разъяснения некоторых деталей:)
Сообщение отредактировал Nextik - Вторник, 25.01.2011, 20:18 |
|
| |
12121 | Дата: Среда, 26.01.2011, 14:00 | Сообщение # 6 |
Программист
Группа: Проверенные
Сообщений: 357
| здесь и так в каждой теме разъясняются детали.
|
|
| |
Nextik | Дата: Среда, 26.01.2011, 16:01 | Сообщение # 7 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Ладно, тогда поясните что из себя представляет модуль, для чего он нужен, какие функции может выполнять, в общем всё что сами знаете и с какими нибудь примерами желательно
|
|
| |
12121 | Дата: Среда, 26.01.2011, 17:02 | Сообщение # 8 |
Программист
Группа: Проверенные
Сообщений: 357
| http://forum.boolean.name/showthr....3%EB%FC http://forum.boolean.name/showthr....3%EB%FC глянь сначала это
|
|
| |
12121 | Дата: Среда, 26.01.2011, 17:12 | Сообщение # 9 |
Программист
Группа: Проверенные
Сообщений: 357
| Как видишь модуль это просто сборник функций. Хорош тем что эти функции компилируются при создании модуля. А не каждый раз вместе со всем кодом.
|
|
| |
Nextik | Дата: Четверг, 27.01.2011, 08:54 | Сообщение # 10 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Насчёт компиляции: т.е. модуль компилируется один раз и если при следующем компилировании ничего в модуле не изменилось, то он не будет компилироваться? И ещё кое что. А что в модулях обязательно использовать свой тип данных? А то в обоих примерах они используется и я не могу понять...
|
|
| |
12121 | Дата: Четверг, 27.01.2011, 11:54 | Сообщение # 11 |
Программист
Группа: Проверенные
Сообщений: 357
| Свой тип использовать не обязательно. Это обычный код и делай все что тебе надо. Посмотрел в 3 версии - там можно компилировать и все вместе и отдельно от модулей главный код. Во 2 версии не очень понятно но наверно если нет изменений то не компилируется. Можешь сам проверить.
|
|
| |
Nextik | Дата: Четверг, 27.01.2011, 12:19 | Сообщение # 12 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Значит как я понял из этих примеров, после слова interface нужно писать функции и процедуры, которые будут идти в модуле, после implementation пишется та процедура, которая написана после interface, но я не пойму что же всё таки должно идти после слова initialization? Я долго вдумывался в эти два примера, но там не написано что может идти после этого слова...
|
|
| |
12121 | Дата: Четверг, 27.01.2011, 13:06 | Сообщение # 13 |
Программист
Группа: Проверенные
Сообщений: 357
| Можно установить начальные значения переменных. Если нужно. Code Program q1; uses modul; Begin DrawText(''+modul.Add(10,5), 5, 5); Repaint; Delay(5000); End.
Code unit modul;
interface var s:integer;
function Add(a,b:integer):integer;
implementation function Add(a,b:integer):integer; begin Add:=a+b+s; end;
initialization
s:=10; end.
|
|
| |
12121 | Дата: Четверг, 27.01.2011, 13:13 | Сообщение # 14 |
Программист
Группа: Проверенные
Сообщений: 357
| Вот проект с модулями (103 пост) http://forum.boolean.name/showthread.php?t=8908&page=7
|
|
| |
Nextik | Дата: Четверг, 27.01.2011, 14:05 | Сообщение # 15 |
Программист
Группа: Проверенные
Сообщений: 273
Награды: 0
Репутация:
« 42 »
Статус: Offline
| Как настроить эмулятор Keemulator, нажимаю на jar файл правой кнопкой мыши, выбираю "Открыть с помощью...", выбираю этот эмулятор и ничего не происходит. Эмулятор даже не включается. На Windows 2009 SPA работало, а на Windows 2002 SP3, не работает. Что мне делать??? А эмулятор MidpX работает только если нажать jad файл, потом он компилит в exe и запускает проект, но на нём просто белый фон....... А с модулями я разобрался :), спасибо за помощь, но у меня ещё куча вопросов, на которых в справке нет ответа....
Сообщение отредактировал Nextik - Четверг, 27.01.2011, 14:26 |
|
| |