用于创建工程图纸的库/语言

时间:2012-03-27 15:31:36

标签: java c++ python c user-interface

任何人都有使用图形语言的经验,主要是为绘图而设计的?我的问题是在编写用于创建绘图的代码方面替代AutoCAD和/或类似的绘图软件。如果存在,我找不到任何类型的语言,主要是为编程工程图设计的。

例如:我希望能够根据大小创建圆柱体,矩形,圆形等,并希望能够通过添加,减去,挤压等来操作它们......还有一些注释功能会很棒。

更新:据我所做的研究,我认为在搅拌机上创建一些工程图库(这本身就是一个很好的动画工具)可能会很棒。有人知道这个领域正在进行或已经存在的任何事情吗?

2 个答案:

答案 0 :(得分:2)

LaTeX世界一直试图在文档源代码中表达线条艺术图。目前的最爱似乎是TikZ

但是,它没有提供完整的CSG(Constructive Solid Geometry)支持。

如果您确实需要3D和CSG,POV-Ray可让您通过编辑好的旧文本文件来源(referenceexamples)来创建对象和场景。但另一方面,据我所知,POV-Ray不会生成工程风格的线条图。

关于你的更新问题:请注意Blender已经有一个非常好的Python API(以及在应用程序中获取Python shell的能力),它可以让你获得几乎所有的Blender状态,并且很可能实现扩展插件的最简单方法,用于程序建模,应用效果和导入/导出到其他格式。也许它也适用于“图纸”。它是否有用还取决于您对Java方面的重要性;我不知道Java API,但我编写了C ++应用程序,它们以python代码的形式导出模型,由Blender执行。

答案 1 :(得分:1)

我不知道大多数人会认为是主要为CAD和类似应用程序设计的编程语言。我猜想大多数众所周知的CAD软件包(商业和开源)都是用Fortran,C或C ++编写的。当然,他们可能会使用其他东西来制作GUI等等,但是核心的组合将会采用经典的,编译速度快的编程语言。

有些语言(例如LOGO)为绘图操作提供原生支持,但我不知道其中任何一种已成功用于已发布的CAD系统。

但是,许多关于面向对象编程的介绍性文本从图形和形状的领域中获取它们的例子并不是巧合 - 你知道,Shape是圆形和矩形的超类型。多边形;所有这些都实现了Draw方法,依此类推。 OO的兴起与图形程序的兴起密切相关。

最后,您可能对Processing感兴趣。