Ада: построение 2D-графиков - PullRequest
1 голос
/ 09 июля 2010

было бы интересно иметь возможность построить двухмерный график в коде Ada, а не сохранять значения, скажем, в файл и впоследствии использовать внешнее программное обеспечение для рисования. Поиск в Интернете привел меня к двум пакетам: Win_IO и JEWL. Я смог использовать WIN_IO, но документация довольно скудная, и, только начав использовать ее, кажется, что невозможно изменить размер холста. Я использую редактор GPS и получаю жалобу при запуске Win_IO, что некоторые шрифты недоступны в моей системе и что вывод будет некрасивым. Наконец, сюжет сам не появляется на экране; Чтобы получить график, нужно щелкнуть exe-файл компилируемого и связанного файла.

Я также посмотрел на JEWL, но, похоже, он не способен строить графики.

Есть ли еще пакеты Ada для построения 2D-графиков.

Большое спасибо ...


Мой опыт работы с GNAVI:

Инструкции по установке находятся на

http://www.gnavi.org/index.php?Command=Class&ClassID=Start&CID=381

В основном установка состоит из: Использовать:

  1. Поместите этот каталог на свой путь
  2. перейдите на gnatcom и запустите: make install
  3. перейдите на gwindows и запустите: сделайте UNICODE = 1 all
  4. беги: gnavi_ide и наслаждайся: -)

Но установка мучается с ошибками:

C: \ gnavi \ gnatcom> установить Установка GNATCOM ..... СДЕЛАТЬ Версия 5.2 Copyright (c) 1987, Borland Ошибка makefile 2: ошибка синтаксиса команды * 1 ошибок во время изготовления * Установка завершена

C: \ gnavi \ gwindows> сделать UNICODE = 1 все СДЕЛАТЬ Версия 5.2 Copyright (c) 1987, Borland Ошибка makefile 2: ошибка синтаксиса команды * 1 ошибок во время изготовления *

И хотя C: GNAVI находится на моем пути, IDE по-прежнему жалуется, что icg.exe, который находится в C: GNAVI, не находится на пути. Это проблема с программным обеспечением, которое не было полностью протестировано !!! Я был очень разочарован тем, что люди могут писать безответственные и неполные инструкции по установке. Разработчики даже выяснили, может ли обычный пользователь установить свое программное обеспечение?

Я также пытаюсь посмотреть на AdaDesigner на https://gna.org/projects/adadesigner

Здесь FireFox жалуется: это соединение ненадежное

gna.org использует недействительный сертификат безопасности.

Сертификат не является доверенным, поскольку сертификат эмитента неизвестен.

Я решил не посещать такой сайт.

Ответы [ 4 ]

2 голосов
/ 09 июля 2010

Это зависит от того, что именно вы хотите сделать.Для построения диаграмм на основе узлов первое, на что я бы хотел обратить внимание, это Graphviz .У него есть свой специальный язык графики, который я использую, но я полностью использую доменные языки, когда это уместно.Ada обладает отличной совместимостью, поэтому использование DSL может сделать ее действительно мощной.

Пример, который я нашел, - AdaDesigner , который генерирует файлы Graphviz DOT для визуализации структуры кода Ada.

Однажды в прошлом мне приходилось делать простые графики, это было для веб-приложения.Я закончил динамически генерировать SVG страниц на стороне сервера (хотя тогда это плохо поддерживалось).Поддержка теперь стала лучше, поэтому я бы определенно воспользовался ею сегодня.

Если вам больше нравится работать с дисплеем на ПК с Windows, есть несколько вариантов привязок графического интерфейса, каждый из которых должен поддерживать рисование линий иуказывает на холст.В дополнение к GTK (который является одновременно мощным и переносимым), существует несколько Win32 API.Я думаю, что один приходит с комарием.Другой, о котором вы можете не знать, это GWindows.Он является частью GNAVI , целью которой является своего рода альтернатива OpenSource Delphi.Это не самый активный из проектов, но (по сообщениям) вполне пригодный для использования, и он все еще разрабатывается и используется.Вот некоторые скриншоты того, что используется для построения графика. альтернативный текст http://www.gnavi.org/images/usersmini/imagespygraph.png

2 голосов
/ 10 июля 2010

PLplot - это кроссплатформенный пакет для создания научных сюжетов. Имеет хорошо документированную привязку Ады .

Приложение: Для справки эти примеры Ады соответствуют этим изображениям по номеру.

2 голосов
/ 09 июля 2010

Я бы попробовал GTKAda . Я не совсем уверен, что эта подсистема позволит вам создавать 2D-графики, поскольку я никогда не использовал ее для этой цели, но это можно сделать с помощью GTK + (C / C ++).

Существует также руководство по GTKAda и справочное руководство , также может пригодиться некоторая документация по самому инструментарию GTK.

0 голосов
/ 08 июня 2011

MathGL - библиотека кроссплатформенных графиков GPL.Он имеет интерфейс C, так что вы также можете использовать его из своего кода.Также он может создать окно с графикой - т.е. вам не нужно изучать / использовать другие библиотеки виджетов в простейшем случае.

...