
ObjectARX
文章平均质量分 58
yunyouxy
这个作者很懒,什么都没留下…
展开
-
关于几何(CAD二次开发实现判断点与多边形相对关系)
一、本节课程C++ ARX二次开发点和闭合多段线的位置关系二、本节要讲解的知识点结合自己的业务场景,想想自己开发中可能碰到的点和闭合多段线相对关系的需求:统计多段线内部的所有图块;还可以拓展判断任意曲线跟多段线的相对关系。三、具体内容计算机图形学、计算几何。判断点是否在多边形内部,一般有以下方法:叉乘判断(适合凸多边形):如果将多边形的所有顶点按逆时针排序,那么判断点和...原创 2020-03-29 21:20:04 · 1509 阅读 · 0 评论 -
MFC如何在CAD二次开发中实现模态对话框
一、知识点(课程在 yunyou.ke.qq.com报名并添加老师微信获取进一步资料)1、使用MFC的对话框在ObjectARX应用程序中创建模态对话框的一般过程。2、使用基于ObjectARX的对话框创建与AutoCAD风格相同的用户界面,以及隐藏模态对话框和AutoCAD进行交互的方法。二、知识点(课程在 yunyou.ke.qq.com报名并添加老师微信获取进一步资料)...原创 2020-03-29 21:09:36 · 1171 阅读 · 0 评论 -
C++ ARX二次开发点和闭合多段线的位置关系
一、本节课程C++ ARX二次开发点和闭合多段线的位置关系二、本节要讲解的知识点结合自己的业务场景,想想自己开发中可能碰到的点和闭合多段线相对关系的需求:统计多段线内部的所有图块;还可以拓展判断任意曲线跟多段线的相对关系。三、具体内容计算机图形学、计算几何。判断点是否在多边形内部,一般有以下方法:叉乘判断(适合凸多边形):如果将多边形的所有顶点按逆时针排序,那么判断点和每一条边...原创 2018-07-28 00:01:42 · 2147 阅读 · 1 评论 -
C++ ARX二次开发-MFC 模态对话框modal dialog
一、本节课程C++ ARX二次开发-MFC 模态对话框modal dialog二、本节要讲解的知识点1、使用MFC的对话框在ObjectARX应用程序中创建模态对话框的一般过程。2、使用基于ObjectARX的对话框创建与AutoCAD风格相同的用户界面,以及隐藏模态对话框和AutoCAD进行交互的方法。三、具体内容1、思路:在ObjectARX中显示一个模态对话框非常简...原创 2018-08-10 23:27:17 · 2658 阅读 · 0 评论 -
关于ObjectARX的那些事
ObjectARX是一个仅在AutoCAD上进行二次开发的一套开发环境,通俗点讲就是一系列的APIObjectARX:扩展AutoCAD功能为各种工程设计开发便利的工具。ARX——AutoCAD Runtime eXtensionDBX ——DataBase eXtensionARX = .DLL + 2 exported functions{ acrxEntryPoin...原创 2018-10-13 20:15:24 · 1387 阅读 · 0 评论 -
ARX 向数据库中添加实体的
向数据库中添加实体:Acad::ErrorStatus addEntityToModelSpace(AcDbEntity * pEnt, AcDbObjectId & EntId){Acad::ErrorStatus eRet;AcDbDatabase * pDb = acdbHostApplicationServices()->workingDatabase();AcDb...原创 2018-10-13 20:25:22 · 602 阅读 · 0 评论 -
C++ ARX遍历AutoCAD图形数据库
C++ ARX遍历AutoCAD图形数据库的代码:void FindObjectId(AcDbObjectId & objId){AcDbDatabase * pDb = acdbHostApplicationServices()->workingDatabase();AcDbBlockTable *pBlockTable;pDb->getBlockTable(pBl...原创 2018-10-13 20:27:13 · 1450 阅读 · 1 评论 -
C#CAD开发如何将AUOCAD潜入到WINFORM窗口中
直接上代码:using System;using System.Windows.Forms;namespace EmbedAutoCAD{public partial class MainForm : Form{public MainForm(){InitializeComponent();}private void browseButton_Click( object ...原创 2018-10-13 20:39:00 · 4347 阅读 · 0 评论 -
C++ ARX CAD二次开发实体操作
得到选中的实体,修改实体如等分线段AcGeVector3d是点阵的集合,通过等分点的差集得到。新的点可以通过点与点阵相差得到。static void ArxProject2partLine(void){ads_name entName;ads_point pt;acedEntSel( _T("\n选择:"),entName,pt);//得到选中的实体AcDbObjectId Obj...原创 2018-10-13 20:45:50 · 3441 阅读 · 0 评论 -
C# CAD arx得到模型空间所有实体的代码
public List<Autodesk.AutoCAD.DatabaseServices.ObjectId> GetEntitiesInModelSpace() { List<Autodesk.AutoCAD.DatabaseServices.ObjectId> objects = new List<Autodesk.AutoCAD.D...原创 2018-10-13 20:48:54 · 1874 阅读 · 0 评论 -
C# CAD 开发得到实体、添加实体、添加XDATA等代码
通过ObjectId得到一个实体的代码:private DBObject GetObject(ObjectId id){DBObject obj = null;using (Transaction transaction = Application.DocumentManager.MdiActiveDocument.TransactionManager.StartTransaction()...原创 2018-10-13 20:50:47 · 4353 阅读 · 1 评论 -
C++ ARX二次开发视图
一、本节课程C++ ARX二次开发视图二、本节要讲解的知识点C++ ARX开发中视图的获取、设置等知识三、具体内容1、AcDbViewTableRecord 来表示AUTOCAD中的视图。如何调整视图:先获取当前视图,设置一些特性,然后acedSetCurrentView函数来更新视图。2、与视图相关的系统变量,来获取当前视图的一些参数。VIEWMODE、VIEWCTR、LENSLE...原创 2018-10-14 15:32:16 · 1709 阅读 · 1 评论 -
ARX最新向导可用2010-2018
OBJECTARXWIZARDS & AUTOCAD .NET WIZARDS 下载地址ObjectARX WizardsThe ObjectARX Wizards for AutoCAD 2016 for Visual Studio 2012 and 2013ObjectARX 2016 Wizard (zip – 636Kb)The ObjectARX Wizards for...原创 2018-11-07 21:58:23 · 1731 阅读 · 0 评论 -
c++ Arx二次开发创建椭圆和样条曲线
一、本节课程c++ Arx二次开发创建椭圆和样条曲线二、本节要讲解的知识点 1、如何应用C++ ARX二次开发创建椭圆(对AcDbEllipse类的构造函数的直接封装和根据外接矩形来创建椭圆) 2、如何应用C++ ARX二次开发创建样条曲线(对AcDbSpline类的构造函数的直接封装)三、具体内容1、创建椭圆的思路默认构造函数:AcDbEllipse::AcDb...原创 2018-07-21 11:25:07 · 2048 阅读 · 0 评论 -
C++ ARX二次开发扩展字典、有名对象字典
一、本节课程C++ ARX二次开发扩展字典、有名对象字典二、本节要讲解的知识点扩展字典的使用和有名对象字典的使用(AddXRecord、ViewXRecord、AddNameDict、ViewNameDict)。三、具体内容1、访问实体的扩展字典?扩展字典与特定的实体关联的,但是一个实体在默认情况下是不包含扩展字典的,如果要利用扩展字典保存与实体关联的数据,可以使用createExtentionD...原创 2018-07-15 00:38:37 · 1608 阅读 · 0 评论 -
如何使用.NET开发AutoCAD?这是第一课
使用.NET开发AutoCAD——C#/AutoCAD 2018/ObjectArx/二次开发入门(二)1、开发环境配置:(1)安装AutoCAD2018;(2)安装VS2015;(3)安装ObjectARX 2018类库;(4)安装ObjectARX 2018 .NET开发向导(ObjectARXWizards.msi)。2、利用向导新建一个ObjectARX项目:File>NEW>...原创 2018-04-01 14:25:06 · 10290 阅读 · 0 评论 -
关于使用C#二次开发添加图形对象步骤和添加直线的例子
C#/AutoCAD 2018/ObjectArx/二次开发添加图形对象步骤和添加直线的例子(三)1、创建一个图形对象的步骤如下(1)得到创建对象的图形数据库;(2)在内存中创建实体类的一个对象;(3)定义一个指向当前数据库的事务处理;(4)打开图形数据库的块表;(5)打开一个存储实体的块表记录(通常绘图都在模型空间中进行),所有模型空间的实体都存储在块表“模型空间”记录中;(6)将该对象添加到块...原创 2018-04-01 14:26:59 · 2002 阅读 · 2 评论 -
关于使用C# 进行AutoCAD 二次开发添加删除实体的工具函数
C#/AutoCAD 2018/ObjectArx/二次开发添加删除实体的工具函数(四)1、添加删除实体C# ObjectARX二次开发添加删除实体是非常容易主要代码如下:添加实体:objId = btr.AppendEntity(entity);trans.AddNewlyCreatedDBObject(entity, true);删除实体: entity.Erase(true);2、基本过...原创 2018-04-01 14:28:16 · 2509 阅读 · 0 评论 -
C#/AutoCAD 2018/ObjectArx/二次开发添加圆对象的的例子(五)
C#/AutoCAD 2018/ObjectArx/二次开发添加圆对象的的例子(五)1、创建一个图形对象的步骤如下见上一篇博客(三)2、添加删除实体的工具函数见上一篇博客(四)3、添加圆的例子(完整源代码请加云幽学院免费课yunyun.ke.qq.com) [CommandMethod("MKCircle")] public void MKCircle() { ...原创 2018-04-01 14:29:17 · 965 阅读 · 0 评论 -
C#/AutoCAD 2018/ObjectArx/二次开发再说实体(六)
C#/AutoCAD 2018/ObjectArx/二次开发再说实体(六)这些函数对大家很有用,如果想获取详细源代码请加云幽学院yunyou.ke.qq.com报名免费课程,如果想学习更系统、更全面的知识请报名收费课程,有大量开发案例共享。1、获取模型空间中所有实体 #region "获取模型空间中所有实体" /// <summary> /// 获取模型空间...原创 2018-04-01 14:30:34 · 2847 阅读 · 0 评论 -
VC编译ARX项目时自动通知AutoCAD卸载ARX程序,并在编译完成后自动加载新编译的ARX程序
视频课程由:yunyou.ke.qq.com提供。一、本节课程VC编译ARX项目时自动通知AutoCAD卸载ARX程序,并在编译完成后自动加载新编译的ARX程序二、本节要讲解的知识点 问题的引出:在编写ARX程序时,一个比较麻烦的地方在于,每次重新编译ARX项目时,需要先手动的卸载此前加载调试的ARX程序,然后编译,最后再加载新生成的程序,虽然过程不算复杂,但经常这样做会让人感到厌烦。有没有办法使...原创 2018-07-12 22:51:41 · 1301 阅读 · 0 评论 -
C++ ARX二次开发视图、视口、UCS
视频课程由yunyou.ke.qq.com提供一、本节课程C++ ARX二次开发视图、视口、UCS二、本节要讲解的知识点1、C++ ARX开发中视图的获取、设置等知识2、C++ARX开发中视口的相关概念及设置3、UCS相关概念、获取和修改三、具体内容1、开发视图的思路:AcDbViewTableRecord 来表示AUTOCAD中的视图。 如何调整视图:先获取当前视图,设置一些特性,然后acedS...原创 2018-07-13 18:36:50 · 2346 阅读 · 0 评论 -
Arx二次开发在acedCommad和结果缓冲区resbuf
一、本节课程Arx二次开发在acedCommad和结果缓冲区resbuf二、本节要讲解的知识点1、acedCommand/acedCommandS函数的使用2、acedCmd/acedCmdS函数的使用3、遍历结果缓冲区链表三、具体内容1、acedCommand函数在高版本中已经用acedCommandS函数替代了。需要使用本函数需要包含的头文件是:acedCmdNF.h。acedCmd函数在高版...原创 2018-07-13 18:38:56 · 2140 阅读 · 0 评论 -
C++ CAD Arx二次开发用户交互
一、本节课程Arx二次开发用户交互二、本节要讲解的知识点1、用户交互的一些函数:acedGetXXX(acedGetString、acedGetPoint、acedGetInt acedGetKword、acedGetReal)。2、动态创建多段线的实现。3、acedGetPoint函数中使用关键字。三、具体内容1、acedGetString:获取用户输入的字符串acedGetPoint:获取用户...原创 2018-07-13 18:41:15 · 3421 阅读 · 0 评论 -
Arx二次开发“选择集”
一、本节课程Arx二次开发“选择集”二、本节要讲解的知识点1、选择集的创建和删除。2、选择集中对象的增加和删除。3、对象选择的方法。4、选择集过滤器的使用。三、具体内容1、选择集的创建和删除选择集是AUTOCAD中当前图形中的一组实体,通过图元名进行引用,就是一个ads_name变量。创建选择集可以使用acedSSAdd、acedSSGet函数。acedSSGet函数提供了绝大多数创建选择集的方法...原创 2018-07-13 18:42:25 · 2507 阅读 · 0 评论 -
C++ ARX二次开发扩展数据
一、本节课程C++ ARX二次开发扩展数据二、本节要讲解的知识点 1、如何向实体添加扩展数据2、如何获得扩展数据并且显示出来3、如何删除扩展数据三、具体内容1、为什么要使用扩展数据:在编程时,某些时候不可避免的要向图形中添加一些用户数据,例如,要将一条直线认为是输电线路、道路中心线、或者是其他的对象,有时候也需要将图形的编号等信息随着图形一起保存。2、一个实体所附加扩展数据最大不能超过16K。3、...原创 2018-07-13 18:44:03 · 995 阅读 · 1 评论 -
Arx二次开发创建第一个应用程序
一、本节课程Arx二次开发创建第一个应用程序二、本节要讲解的知识点1、手动创建ARX的应用的步骤。2、应用向导创建ARX应用程序的步骤。三、具体内容1、需求:创建一个Hello World应用程序,在AUTOCAD的命令行输出“Hello World”。2、手动创建一个ARX应用程序:C++开发ARX应用程序,实际上我们ARX应用程序就是一个动态链接库,它的后缀只是没用.DLL来表示而已,是用.A...原创 2018-07-14 22:21:40 · 4092 阅读 · 0 评论 -
c# ObjectARX AutoCAD2018 二次开发——设计师不做画图匠(一)
(一)前言——如何避免加班那些事我是谁?我是一名工程设计师,有点“不务正业”,在工作之余长期从事软件开发工作,开发了公路铁路行业广泛应用的设计软件。说正题之前,聊聊加班那些事。话说加班,我和我身边的朋友都不会陌生。设计院的人都说自己在加班,朋友总会说,看来你们公司今年效益很好啊,年终奖一定很多啊。其实他有所不知,设计行业之所以加班多,是因为改的多。设计院大体这几类专业,一类是提供基础资料的专业,如...原创 2018-04-01 14:22:07 · 3188 阅读 · 1 评论