Совместное создание freeware-калькулятора
-
- Активный участник
- Сообщения: 209
- Зарегистрирован: 13 июл 2007, 18:58
- Репутация: 1
Совместное создание freeware-калькулятора
Предлагаю ГИС-сообществу идею по созданию freeware-калькулятора.
Основные принципы:
- открытые исходники. Язык - максимально распространённый и лёгкий (в понимании). Давайте не устраивать холивары, я предлагаю Delphi. Очень удобная среда, Паскаль знают все. Переводить с языка на язык особо никому не интересно. Кто-то может быть не программистом и знать поверхностно лишь Паскаль, но хорошо разбираться в математике. Система - x86, Windows. Не КПК.
- понятный интерфейс, чтобы не надо было курсов обучения, ломания мозгов и плясок с бубном. Программой будут пользоваться люди со средней компьютерной грамотностью, задолбанные сроками, полевой работой и прочими геморроями. Общих знаний о проекциях должно быть достаточно. Программа не должна допускать некорректные действия пользователя, но при этом ему должно быть кратко, но ясно показано, в чём именно он ошибается и (при возможности) как это исправить. Не нужно выводить "ошибка #2327" и т.п.
- никаких аппаратных и программных ключей, никакой рекламы (разве что что-нибудь в разделе "о программе"), интерфейс без украшательств, в сухом инженерном стиле. Никакого сетапа - программа сразу запускается и работает. Отработанная совместимость с XP/Vista/7. Минимум файлов - 1-3 вместе с экзешником. Если всё-таки будут нужны файлы, кроме EXE, программа должна явно указать, чего не хватает, и по возможности создать этот файл в своём каталоге. Интерфейс рассчитан под различные мониторы, оптимальное разрешение от 1024*768 до 1280*1024 для 4:3 и аналогичное для других пропорций - типичная машина будет либо ноутбук, либо ординарная рабочая станция.
- пересчёт из любой проекции в любую на любом эллипсоиде. Параметры проекций и эллипсоидов выбираются из списка или задаются вручную. Параметры СК63, чтобы не дрючили за секретность, считываются из xls-файла (поставляющегося отдельно) в каталоге программы. Работа с координатами x/y, B/L/H, X/Y/Z и т.п. МСК.
- координаты могут быть сдвинуты или ещё как-то хитро изменены. Точки могут иметь дополнительные параметры (код, семантику и т.п.)
- прочие возможности. Особо акцентирую, что должно быть нахождение параметров перехода по известным пунктам.
- работа с моделями геоида (уметь подцеплять гриды различных форматов). Нужна для преобразования эллипсоидальной высоты в нормальную и обратно.
- работа со всеми распространёнными файлами для ГИС. Текстовые файлы - должен настраиваться шаблон. Файл может быть создан несколько некорректно (допустим, вручную) и должно быть предусмотренное автоматическое или ручное исправление ошибок в соответствии с шаблоном.
Предлагаю к обсуждению и дополнению. Часть функций написана. Жду реального участия и привнесения своих наработок и идей, а не "дай скачать преобразование - нужно писать курсовик". ГИС-сообществу нужен профессиональный точный продукт с открытым кодом, постоянно развивающийся. Работал с Транскором - каждые 10 секунд матерился. Наколенные поделки, на 100 функций - 90 программ, тоже фигня (часть при проверке даёт хреновую точность).
Можно подумать, не стоит ли написать приложение таким образом (не затрачивая при этом много сил на создание различных версий, а чтобы была одна универсальная), чтобы запускать его из-под других продуктов (мапинфы, арки и т.п.). В виде DLL или в виде EXE, но запускающегося без показа окна, с параметрами.
Основные принципы:
- открытые исходники. Язык - максимально распространённый и лёгкий (в понимании). Давайте не устраивать холивары, я предлагаю Delphi. Очень удобная среда, Паскаль знают все. Переводить с языка на язык особо никому не интересно. Кто-то может быть не программистом и знать поверхностно лишь Паскаль, но хорошо разбираться в математике. Система - x86, Windows. Не КПК.
- понятный интерфейс, чтобы не надо было курсов обучения, ломания мозгов и плясок с бубном. Программой будут пользоваться люди со средней компьютерной грамотностью, задолбанные сроками, полевой работой и прочими геморроями. Общих знаний о проекциях должно быть достаточно. Программа не должна допускать некорректные действия пользователя, но при этом ему должно быть кратко, но ясно показано, в чём именно он ошибается и (при возможности) как это исправить. Не нужно выводить "ошибка #2327" и т.п.
- никаких аппаратных и программных ключей, никакой рекламы (разве что что-нибудь в разделе "о программе"), интерфейс без украшательств, в сухом инженерном стиле. Никакого сетапа - программа сразу запускается и работает. Отработанная совместимость с XP/Vista/7. Минимум файлов - 1-3 вместе с экзешником. Если всё-таки будут нужны файлы, кроме EXE, программа должна явно указать, чего не хватает, и по возможности создать этот файл в своём каталоге. Интерфейс рассчитан под различные мониторы, оптимальное разрешение от 1024*768 до 1280*1024 для 4:3 и аналогичное для других пропорций - типичная машина будет либо ноутбук, либо ординарная рабочая станция.
- пересчёт из любой проекции в любую на любом эллипсоиде. Параметры проекций и эллипсоидов выбираются из списка или задаются вручную. Параметры СК63, чтобы не дрючили за секретность, считываются из xls-файла (поставляющегося отдельно) в каталоге программы. Работа с координатами x/y, B/L/H, X/Y/Z и т.п. МСК.
- координаты могут быть сдвинуты или ещё как-то хитро изменены. Точки могут иметь дополнительные параметры (код, семантику и т.п.)
- прочие возможности. Особо акцентирую, что должно быть нахождение параметров перехода по известным пунктам.
- работа с моделями геоида (уметь подцеплять гриды различных форматов). Нужна для преобразования эллипсоидальной высоты в нормальную и обратно.
- работа со всеми распространёнными файлами для ГИС. Текстовые файлы - должен настраиваться шаблон. Файл может быть создан несколько некорректно (допустим, вручную) и должно быть предусмотренное автоматическое или ручное исправление ошибок в соответствии с шаблоном.
Предлагаю к обсуждению и дополнению. Часть функций написана. Жду реального участия и привнесения своих наработок и идей, а не "дай скачать преобразование - нужно писать курсовик". ГИС-сообществу нужен профессиональный точный продукт с открытым кодом, постоянно развивающийся. Работал с Транскором - каждые 10 секунд матерился. Наколенные поделки, на 100 функций - 90 программ, тоже фигня (часть при проверке даёт хреновую точность).
Можно подумать, не стоит ли написать приложение таким образом (не затрачивая при этом много сил на создание различных версий, а чтобы была одна универсальная), чтобы запускать его из-под других продуктов (мапинфы, арки и т.п.). В виде DLL или в виде EXE, но запускающегося без показа окна, с параметрами.
-
- Активный участник
- Сообщения: 117
- Зарегистрирован: 16 апр 2008, 17:28
- Репутация: 0
- Откуда: Омск
Re: Совместное создание freeware-калькулятора
в свое время знал паскаль очень даже не плохо... хотя и давно не пользовался. Вот с математикой дела чуть лучше - но опять же с ГИС меня связывает не так много. Но все ж готов помочь чем смогу.
Могу сразу сказать что оптимизировать под разные расширения экрана не обязательно. Достаточно изначально сделать размеры окна где-то в районе 600 на 400 - и сие будет неплохо смотреться везде.
Могу сразу сказать что оптимизировать под разные расширения экрана не обязательно. Достаточно изначально сделать размеры окна где-то в районе 600 на 400 - и сие будет неплохо смотреться везде.
-
- Гуру
- Сообщения: 810
- Зарегистрирован: 22 авг 2007, 14:58
- Репутация: 123
- Откуда: Казань
Re: Совместное создание freeware-калькулятора
Боюсь, меня посчитают зловредным, но не могу не задать вопрос: а почему бы не взять что-либо готовое, например, proj и написать обертку? Это должно быть гораздо эффективнее, чем писать самим с нуля.
-
- Активный участник
- Сообщения: 209
- Зарегистрирован: 13 июл 2007, 18:58
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Мануалы в несколько мегабайт, необходимость использовать чужой код и всё это на английском языке - это минусы.
Я считаю, что надо писать самим.
Размер экрана не должен быть слишком маленьким - зачем 640*480???
Большие таблицы. Окна с кучей настроек.
Ещё бы Photoshop сделать с таким разрешением
Я считаю, что надо писать самим.
Размер экрана не должен быть слишком маленьким - зачем 640*480???
Большие таблицы. Окна с кучей настроек.
Ещё бы Photoshop сделать с таким разрешением

-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 16 дек 2008, 14:40
- Репутация: 8
Re: Совместное создание freeware-калькулятора
Нда, это бы было бомбой!!! Вводишь координаты точки в широте\долготе в WGS84 и рядом в МСК (желательно 3 пункта, но чтобы была возможность и одного) и получаешь FE и FN, а также ЦМ (опционально) для нужного датума.Особо акцентирую, что должно быть нахождение параметров перехода по известным пунктам.
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9129
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 748
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: Совместное создание freeware-калькулятора
Я лично могу предложить хостинг (web,svn,trac) и поддержку, тестирование и генерацию идей. Паскаля не знаю. Не уверен, что этого достаточно. Поэтому поясните, пожалуйста, какого именно участия вы ожидаете.Andrey1 писал(а):Жду реального участия
С proj вопрос хороший, хотя я за разнообразие, пока ответа я, увы, не понял, т.к. потенциально и мануалы в несколько мегабайт и необходимость использовать чужой код предвижу и в этом продукте. Куда же без этого, они нужны. В целом я за более тесную интеграцию c proj, DRY.
пристегивайтесь, турбулентность прямо по курсу
-
- Активный участник
- Сообщения: 209
- Зарегистрирован: 13 июл 2007, 18:58
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Больше всего мне знаете что охота? Чтобы параметры перехода между разными СК рассчитывал без плясок с бубном. А перегонять из формата в формат (форматы, встречающиеся мне в работе) можно и Mapinfo. Всё равно приходится потом что-то вручную переделывать. Разная идеология. И вообще, наши тётки работают только в одном (dwg), лишь субподрядчики и заказчики что-то иное изредка закинут.
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Совместное создание freeware-калькулятора
С паскалем знаком более-менее хорошо, с ГИС - много хуже (особенно в части проекций и прочих премудростей). Но готов присоединиться и помочь по мере сил.
Есть несколько замечаний:
Есть несколько замечаний:
- предлагаю заменить Delphi на связку Lazarus+FreePascal. Не смотря на статус беты и некоторые шероховатости, Лазарь уже сейчас вполне пригоден для написания достаточно сложных проектов. Совместимость с дельфями на достаточно высоком уровне.
- немного не согласен с ориентированием исключительно на Windows. Все же это не единственно возможная система, да и другие аппаратные платформы отметать не стоит. Если использовать связку Lazarus+FreePascal эти вопросы будут решены автоматически - поддержка кросскомпиляции и большого числа программных и аппаратных платформ одна из главных фишек обеих продуктов.
- чтобы было удобно использовать этот калькулятор в пакетном режиме или запускать его из другого приложения, имеет смысл изначально разработать некое ядро (библиотека или консольное приложение) вокруг которого уже строить GUI. Но этот вариант мало чем будет отличаться от написания обертки над тем же proj.
-
- Гуру
- Сообщения: 852
- Зарегистрирован: 15 сен 2005, 13:19
- Репутация: 6
- Откуда: москва
- Контактная информация:
Re: Совместное создание freeware-калькулятора
Насчет графических форматов понятно, это другая тема. Но что вы все же думаете насчет описания проекций? Не к имеющимся готовым средствам, а к форматам описания проекции в них. Ваш инструмент в этом будет совершенно автономный, своя библиотека? (Я не говорю, что это плохо, просто интересно знать).
И другое - для того, чтобы перепроецировать любой векторный файл через калькулятор, достаточно его разобрать на координаты и после собрать - это будет иметь смысл, если инструмент надежен и точен. Но тогда желательно, чтобы он читал на просто списки координат, а еще и мог сберечь две колонки - Group (признак группировки в графические примитивы) и Order (порядок сборки в элементах), всего навсего. Для реставрации атрибутов удобен еще и ID - идентификатор точки, например, в общем облаке. ВОзможно, инструмент стоит построить так, чтобы вообще в таблице менялись колонки XYZ, но сохранялись (переписывались) остальные атрибуты, это было бы очень перспективно - многие калькуляторы атрибутику "презирают".
Еще удобство было бы, если подать можно былоб не только текст, но и формат DBF.
И другое - для того, чтобы перепроецировать любой векторный файл через калькулятор, достаточно его разобрать на координаты и после собрать - это будет иметь смысл, если инструмент надежен и точен. Но тогда желательно, чтобы он читал на просто списки координат, а еще и мог сберечь две колонки - Group (признак группировки в графические примитивы) и Order (порядок сборки в элементах), всего навсего. Для реставрации атрибутов удобен еще и ID - идентификатор точки, например, в общем облаке. ВОзможно, инструмент стоит построить так, чтобы вообще в таблице менялись колонки XYZ, но сохранялись (переписывались) остальные атрибуты, это было бы очень перспективно - многие калькуляторы атрибутику "презирают".
Еще удобство было бы, если подать можно былоб не только текст, но и формат DBF.
- JEY
- Активный участник
- Сообщения: 228
- Зарегистрирован: 17 июл 2008, 13:42
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Очень интересная тема! Я всегда за что-то инновационное. Еще мне кажется что здесь только на разговорах никто не остановится...
Я думаю, что этот проект потенциально может разделиться на несколько модулей:
1. Модуль для работы с математической основой - это элементарная работа с векторами и матрицами, а также прочие алгоритмы геометрических преобразований.
2. Модуль для работы с форматами пространственных данных - чтение и запись пространственных данных или атрибутивной информации.
3. Графический пользовательский интерфейс - творческая работа по созданию пользовательского интерфейса, диалоговых окон, панелей инструментов и инструментальных палитр.
4. Пользовательская документация - создание библиотеки руководства пользователя, и описания стандартных функций настолько подробно, насколько это возможно, для сторонних разработчиков.
Я пока не видел ничего подобного из всех известных мне программных продуктов, где бы можно было произвести преобразование координат точек из одной координатной системы в другую, а потом в документации прочитать как это было буквально сделано средствами этого программного продукта...
Я думаю, что этот проект потенциально может разделиться на несколько модулей:
1. Модуль для работы с математической основой - это элементарная работа с векторами и матрицами, а также прочие алгоритмы геометрических преобразований.
2. Модуль для работы с форматами пространственных данных - чтение и запись пространственных данных или атрибутивной информации.
3. Графический пользовательский интерфейс - творческая работа по созданию пользовательского интерфейса, диалоговых окон, панелей инструментов и инструментальных палитр.
4. Пользовательская документация - создание библиотеки руководства пользователя, и описания стандартных функций настолько подробно, насколько это возможно, для сторонних разработчиков.
Я пока не видел ничего подобного из всех известных мне программных продуктов, где бы можно было произвести преобразование координат точек из одной координатной системы в другую, а потом в документации прочитать как это было буквально сделано средствами этого программного продукта...
-
- Участник
- Сообщения: 82
- Зарегистрирован: 22 сен 2008, 20:41
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Мы наш, мы новый мир построим?
Или как сейчас модно говорить, построим своё, с блэкджеком и девицами...
Велосипед изобретать - это всё хорошо.
А вот к openoffice есть вроде geotools, если я правильно помню. ОО - табличный процессор, макросы/формулы помогут решить остальное.
Насчет нахождения параметров - не похоже ли это на попытку раскрытия неких тайн, в которые лезть не стОит?
есть ведь и секретные параметры перехода.
Или как сейчас модно говорить, построим своё, с блэкджеком и девицами...
Велосипед изобретать - это всё хорошо.
А вот к openoffice есть вроде geotools, если я правильно помню. ОО - табличный процессор, макросы/формулы помогут решить остальное.
Насчет нахождения параметров - не похоже ли это на попытку раскрытия неких тайн, в которые лезть не стОит?

- JEY
- Активный участник
- Сообщения: 228
- Зарегистрирован: 17 июл 2008, 13:42
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Мне кажется тут дело не в "изобретении велосипеда", а в "усовершенствовании его конструкции". Я считаю, что это хорошо, когда специалист пытается укрепить свои знания посредством создания программных продуктов, которые аналогичны уже созданным. Для примера: зачем создавать ПО для ГИС, когда есть ПО от ESRI? Никто не вспомнит про "изобретение велосипеда"?
А про определение параметров говорить можно много... Но элементарно, я сам нашел в интернете программку для определения семи параметров трансформации Гельмерта... Никто не задумывался о секретности, когда создавал ее?
А про определение параметров говорить можно много... Но элементарно, я сам нашел в интернете программку для определения семи параметров трансформации Гельмерта... Никто не задумывался о секретности, когда создавал ее?
-
- Участник
- Сообщения: 82
- Зарегистрирован: 22 сен 2008, 20:41
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Мне кажется тут дело не в "изобретении велосипеда", а в "усовершенствовании его конструкции". Я считаю, что это хорошо, когда специалист пытается укрепить свои знания посредством создания программных продуктов, которые аналогичны уже созданным.
Есть такое понятие. Unix-way. Каждой цели - своя одна программа. И она должна уметь делать всё и идеально. типа того.
С этой теорией согласен на все 100%.
Незачем плодить сущности без особой на то нужды.
а насчет этого вопроса я готов предложить несколько вариантов ответа:Для примера: зачем создавать ПО для ГИС, когда есть ПО от ESRI? Никто не вспомнит про "изобретение велосипеда"?
1) мы делаем это, если мы хотим заработать деньги на продаже ГИС.
2) мы делаем это если хотим быть альтруистами и планируем подарить миру бесплатную ГИС
3) мы делаем это потому что хотим _себе_ персональную ГИС в большую организацию, но купить ее дороже чем написать свою или доработать опенсорц.
4) если у нас есть исходники ГИС, но мы не можем их доработать потому что код сильно непонятен.
мне кажется я смог бы придумать еще варианты.
никто не задумывался о многом. например о том что геообъект с определенными (точнее секунды, вроде) координатами - секретен (про это сам не читал); что гугл и прочие космосъемки 18 и лучше уровней - попадают под определение "секретно" (это есть в законе); что гугл и прочие съемки практически любого уровня секретны если на них попал секретный объект. Про это спорить можно много. Нахождение параметров - полезнейшая вещь. И, возможно, никогда не придется столкнуться с вопросом секретности в связи с этим. А если придется?А про определение параметров говорить можно много... Но элементарно, я сам нашел в интернете программку для определения семи параметров трансформации Гельмерта... Никто не задумывался о секретности, когда создавал ее?
- JEY
- Активный участник
- Сообщения: 228
- Зарегистрирован: 17 июл 2008, 13:42
- Репутация: 1
Re: Совместное создание freeware-калькулятора
Хороший и развернутый ответ! И к теме о сказанном...
Это все потому, что каждый пользователь подходит к ПО со своими требованиями: "А ну, браток, что ты умеешь делать? А?", а далее 50 на 50. В лучшем случае будет найдено около половины полезных функций...
...прямо указывает на то, что ни одна программа не умеет делать все и идеально!1) мы делаем это, если мы хотим заработать деньги на продаже ГИС.
2) мы делаем это, если хотим быть альтруистами и планируем подарить миру бесплатную ГИС
3) мы делаем это, потому что хотим _себе_ персональную ГИС в большую организацию, но купить ее дороже чем написать свою или доработать опенсорц.
4) если у нас есть исходники ГИС, но мы не можем их доработать потому что код сильно непонятен.
Это все потому, что каждый пользователь подходит к ПО со своими требованиями: "А ну, браток, что ты умеешь делать? А?", а далее 50 на 50. В лучшем случае будет найдено около половины полезных функций...
-
- Гуру
- Сообщения: 852
- Зарегистрирован: 15 сен 2005, 13:19
- Репутация: 6
- Откуда: москва
- Контактная информация:
Re: Совместное создание freeware-калькулятора
В этом случае как раз и важно терпеливо и вдумчиво поставить задачу... А уже потом её решать.
Например, создание велосипеда (пардон, калькулятора координат) мне (производственнику) видится интересным по отношению к следующим соображениям:
1. Открытые формулы - (в документации) - отдельная задача - редактирование и оформление страниц.
2. Не все и всякие проекции, а продуманная система подключения пользовательских проекций. Возможно, импорт других форматов (prj, tab, map etc).
3. Возможно, включение в состав ПЗ90/СК95 etc. которые пока отсутствуют во всех почти иностранных средствах. Но тут надо продумать формат подачи параметров "не в комплекте"... Отдельные файлы описаний на отдельных сайтах... (Другой вариант - ГИСовский - не добиваться точности выше дозволенной, но тогда многие СК делаются бесполезными).
Это собственно, все что надо для того, чтобы велосипед отличался от остальных. Бесплатность - freeware - не так уж важна как таковая, хотя логически вытекает из вышеизложенного. Однако открытость в таком деле важнее. Бесплатных калькуляторов много, все они закрытые и по формулам, и по спискам проекций, и потому бесполезны во многих случаях, IMHO
Например, создание велосипеда (пардон, калькулятора координат) мне (производственнику) видится интересным по отношению к следующим соображениям:
1. Открытые формулы - (в документации) - отдельная задача - редактирование и оформление страниц.
2. Не все и всякие проекции, а продуманная система подключения пользовательских проекций. Возможно, импорт других форматов (prj, tab, map etc).
3. Возможно, включение в состав ПЗ90/СК95 etc. которые пока отсутствуют во всех почти иностранных средствах. Но тут надо продумать формат подачи параметров "не в комплекте"... Отдельные файлы описаний на отдельных сайтах... (Другой вариант - ГИСовский - не добиваться точности выше дозволенной, но тогда многие СК делаются бесполезными).
Это собственно, все что надо для того, чтобы велосипед отличался от остальных. Бесплатность - freeware - не так уж важна как таковая, хотя логически вытекает из вышеизложенного. Однако открытость в таком деле важнее. Бесплатных калькуляторов много, все они закрытые и по формулам, и по спискам проекций, и потому бесполезны во многих случаях, IMHO
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость