2

能够在 Ada 代码中绘制 2D 图形而不是必须将值保存到文件并在之后使用外部绘图软件会很有趣。在网上搜索后,我找到了两个包: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. cd 到 gnatcom 并运行:make install
  3. cd 到 gwindows 并运行:make UNICODE=1 all
  4. 运行:gnavi_ide 并享受 :-)

但是安装时遇到错误:

C:\gnavi\gnatcom>install 安装 GNATCOM ..... MAKE 版本 5.2 版权所有 (c) 1987, 2000 Borland 错误 makefile 2: 命令语法错误 * 1 错误在 make * 安装完成

C:\gnavi\gwindows>make UNICODE=1 all MAKE Version 5.2 Copyright (c) 1987, 2000 Borland Error makefile 2: 命令语法错误 * 1 make during make *

虽然 C:GNAVI 在我的路径上,但 IDE 仍然抱怨在 C:GNAVI 中找到的 icg.exe 不在路径上。`这是没有完全测试的软件的问题!我很失望人们可以编写不负责任和不完整的安装说明。开发人员是否发现普通用户是否可以安装他们的软件?

我还尝试在https://gna.org/projects/adadesigner上查看 AdaDesigner

在这里,FireFox 抱怨:此连接不受信任

gna.org 使用了无效的安全证书。

该证书不受信任,因为颁发者证书未知。

我决定不访问这样的网站。

4

4 回答 4

5

PLplot是一个用于创建科学绘图的跨平台软件包。它有一个有据可查的Ada binding。作为参考,这个画廊展示了各种情节。单击缩略图可查看全尺寸图像。单击 Ada 选项卡(标准或传统)以查看相应的源代码。

于 2010-07-10T04:40:57.823 回答
2

我会尝试GTKAda。我不完全确定该子系统是否允许您制作 2​​D 图形,因为我从未将它用于此目的,但可以使用 GTK+ (C/C++) 完成。

还有关于 GTKAda的指南和参考手册,一些关于 GTK 工具包本身的文档也可能会派上用场。

于 2010-07-09T09:50:49.440 回答
2

这完全取决于您想要做什么。对于绘制基于节点的图表,我首先考虑使用的是Graphviz。它有自己使用的特殊图形语言,但我只想在适当的时候使用领域特定语言。Ada 具有很好的互操作性,因此与它一起使用 DSL 确实可以让它变得更强大。

我发现的一个例子是AdaDesigner,它生成 Graphviz DOT 文件以帮助可视化 Ada 代码的结构。

过去有一次我不得不做简单的绘图,那是为了一个网络应用程序。我最终在服务器端动态生成了SVG页面(尽管当时它的支持很差)。现在支持更好了,所以我今天肯定会再次使用它。

如果直接在 Windows PC 显示器上工作对您更有吸引力,则有几个 GUI 绑定选项,所有这些选项都应支持在画布上绘制线和点。除了 GTK(功能强大且可移植)之外,还有一些 Win32 API 浮动。我认为一个带有Gnat。另一个您可能不知道的是 GWindows。它是GNAVI的一部分,旨在成为 Delphi 的开源替代品。它不是最活跃的项目,但(据报道)非常有用,并且仍在开发和使用中。这是一些用于绘图的屏幕截图。 (来源:gnavi.org替代文字

于 2010-07-09T13:33:45.400 回答
0

MathGL是跨平台的 GPL 绘图库。它有 C 接口,所以你也可以从你的代码中使用它。它还可以创建一个带有图形的窗口——也就是说,在最简单的情况下,您不需要学习/使用其他小部件库。

于 2011-06-08T05:44:55.813 回答