gpt4 book ai didi

language-agnostic - CAD 应用程序是用什么编写的,它们是如何组织的?

转载 作者:行者123 更新时间:2023-12-04 02:54:38 24 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。




8年前关闭。




当今的 CAD 应用程序(Rhino、Autocad)是用什么编写的,它们在内部是如何组织的?

我举了一个例子,Autocad 和 Rhino,虽然我也很想听听其他例子。我特别想知道他们的后端是用什么(多语言?)编写的,它是如何组织的,以及他们如何实时处理他们的前端(GUI)?他们是否使用 native Windows API 或他们自己的一些库,因为我想,尽可能好,今天市场上的开源解决方案不会削减它。我可能错了...

正如大多数使用过它们的人所知道的那样,它们可以实时处理相对复杂的旋转操作(我对着色不感兴趣)。我最近一直在用几个包做一些实验,对于一些较大的模型,发现速度有很大差异,例如,其中一些(我不会命名)程序旋转(大型全船模型) .所以我想知道他们的内部...

另外,如果有人知道一些关于这个主题的书,我很想听听。

最佳答案

CATIAv5、Pro/Engineer 和 Solidworks 等 3D 机械 CAD 软件大多使用 C++ 编写,有时还带有用于向客户发布基本 API 的薄 COM 接口(interface)。

由于这些应用程序非常庞大并且由多个团队开发,因此它们依赖于大规模 C++ 设计原则,例如接口(interface)/实现模式来隔离模块免受更改。

它们由几个子系统组成,例如:

  • 提供底层操作系统抽象的基础框架
  • GUI、对话框和用户交互的框架
  • 一个 3D 渲染器(主要使用带有一些自定义场景图层的 OpenGL)
  • 一个几何内核,带有一个镶嵌模块(以便几何图形可以在渲染器中显示)
  • 基于几何内核的参数建模器
  • 以及针对不同领域(机械、绘图、模拟...)的许多特定建模器
  • 关于language-agnostic - CAD 应用程序是用什么编写的,它们是如何组织的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/779639/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com