问题标签 [objectarx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1069 浏览

.net - 我应该将命令放在 Autocad VB.NET 项目中的什么位置?

我对 Autocad 编程非常陌生,几个月新,但我设法用大约 10 个 Autocad 命令编写了一个应用程序。这些命令中的大多数都显示一个窗口,其他所有操作都在该窗口中完成。我尝试使我的应用程序 MVVM..ish。因为我在 Models ViewModels Views 和命令之间有几乎 1 对 1 的对应关系,所以我觉得将命令放在 MVVM 的 3 个部分之一中是合适的。首先我决定将命令放在 ViewModel 中,然后我意识到我的命令只是显示一个窗口,而 ViewModel 不应该处理窗口,所以我将命令移至 View 的 Codebehind。据我了解,只要代码与视图严格相关,就可以在代码隐藏中包含代码。然后我在 Autodesk 提供的一些教程中阅读了有关 CommandClass 属性的信息,我发现了这一点:

CommandClassAttribute 此自定义属性类用于将类型标记为应用程序的命令类。一个应用程序可以指定一个并且只有一个类型作为它的命令类。AutoCAD 在具有此属性的类型上查找应用程序的命令方法。

这表明我应该有一个类来包含我的所有命令。然后我读了这个,这证实了上述内容:

对于实例命令方法,方法的封闭类型为每个打开的文档单独实例化。

所以我将命令放入视图或视图模型的第一种方法是完全错误的,因为我会让视图模型实例除了运行命令之外什么都不做。然后我在 ObjectARX 的文档中读到了这个:

如果应用程序使用 CommandClass 属性,它必须为每个包含 AutoCAD 命令处理程序方法的类型声明该属性的实例。

这直接与上面引用的教程相矛盾,并且还表明拥有多个类来处理命令是一种公认​​的做法。

所有 Autocad .NET 教程都是具有一个类和一个命令的项目,因此您不必对放置什么内容进行太多选择。

一些有经验的 Autocad .NET 开发人员能否提供一个最佳实践,或者至少是一个好的或没有错误的实践来管理一个相当大的项目中的 Autocad 命令?

0 投票
2 回答
2441 浏览

api - 用于 c# 的 ObjectARX SDK

在过去的两天里,我一直在寻找示例代码,其中包含可以帮助我理解 Autocad API 的步骤。所以我可以使用 C# 中的代码。

我可以运行上面的代码,但它不能正常运行。我很难理解如何让它与 Autocad 一起工作。我引用了 OjectARX SDK,我正在使用 VS2010 和 Autocad 2012。感谢您的帮助。

0 投票
1 回答
3203 浏览

c# - 在 AutoCAD 中向闭合多段线添加顶点

我正在尝试通过 AutoCAD .Net API 向现有闭合多段线插入一个新顶点。

我有一种将顶点插入折线的方法。但这不适用于下图所示情况的闭合多段线。如果该点位于折线的最后一条边上,则代码将失败。有人可以看到问题所在吗?

注意:我也在 Autodesk 论坛上发布了它

0 投票
1 回答
95 浏览

c# - 基于活动解决方案配置的引用、包含、库、源路径

我想根据解决方案配置使用不同版本的外部库。
我有多个 c++ 项目的解决方案,所有这些项目都包括单个 .props,其中包含引用、包含、库、外部库的源路径等
。是否可以根据活动的解决方案配置将这些路径切换为不同的路径?

0 投票
2 回答
342 浏览

c# - 从 c# 调用 ObjectARX acedDisableDefaultARXExceptionHandler

我正在开发 AutoCAD 插件,但无法捕获未处理的异常。

尝试使用 CurrentDomain.UnhandledException 和 Application.ThreadException,但这些都不起作用。

我想尝试这篇文章中建议的解决方案:

如何捕获 AutoCAD.NET 中引发的未处理异常

但不知道该怎么做。可能这可能是最好的解决方案,所以我可以显示我自己的错误对话框(并发送报告功能),避免 AutoCAD 的错误对话框。

0 投票
1 回答
355 浏览

c# - 在 bedit 命令上隐藏块选择对话框

我需要按名称打开块编辑器,所以我以这种方式执行命令:

运行这行代码后,会出现“选择块”对话框,但我需要自动选择块。那么有没有办法在没有任何对话框的情况下进入块编辑器状态?我没有找到任何不使用命令行来运行块编辑器的方法,也没有找到使对话框消失的系统变量。

0 投票
1 回答
1196 浏览

c# - AutoCAD API 检测层内的形状

我正在使用带有 API 的 Autocad 2012。我正在用 c# 开发。

我要做的是选择某个图层,并“检测”该图层中的所有矩形/正方形。Ultimateley,我希望能够在我“检测到”的所有矩形内绘制(使用它们的坐标)。

到目前为止,我正在使用 LayerTable 类和 GetObjects 将图层与对象关联起来,如下所示:

我似乎无法弄清楚从这里去哪里。如何只选择一层,然后检测其中的形状。就要研究的类/方法而言,有人能指出我正确的方向吗?谢谢。

0 投票
1 回答
180 浏览

objectarx - 如何为 objectarx 插件创建设置

我在c#中有一个类库项目,我的项目是AutoCAD的插件,在这个项目中我使用了objectArx,现在我该如何纠正安装后无法使用这个AutoCAD插件的设置,请给我的提示。

0 投票
4 回答
3852 浏览

.net - How can we read, parse a autocad .dwg file and extract information from it programmatically?

I am trying to make a application which can import a .dwg file and analyze it and show the necessary information I need(e.g. a particular view area). I want to know how it can be done programmatically using .NET technologies.

0 投票
1 回答
3510 浏览

c# - 设置 Visual Studio 2013 以开发 AutoCAD 2015 插件

我正在尝试继续在 Visual Studio 2013 中为 AutoCAD 开发插件。我打开了我的项目文件,并且所有对 Autodesk 库的引用都丢失了。为了解决这个问题,我添加了对来自 ObjectARX 2015 的以下 dll 文件的引用,如随附的 dll 图像所示。我正在使用以下 Autodesk 命名空间:

添加丢失的参考会使错误消失,直到我尝试测试我的程序,此时我得到新的错误,用灰色而不是红色强调 Autodesk 参考,如附图所示。我不知道为什么添加的引用不起作用。可能还值得知道我已经从 Visual Studio 2012 迁移到 Visual Studio 2013 和 AutoCAD 2014 到 AutoCAD 2015在此处输入图像描述

在此处输入图像描述