AutoCAD如何通过C#进行插件开发?

news2024/11/18 3:43:38

文章目录

  • 0.引言
  • 1.开发工具准备
  • 2.VS(C#)创建插件
  • 3.使用插件

0.引言

  AutoCAD是一款广泛应用于工程设计和建筑行业的计算机辅助设计软件。通过使用C#语言进行插件开发,可以扩展AutoCAD的功能,实现定制化的需求。插件可以实现自动化绘图、数据处理、批量操作等功能,提高工作效率和准确性。在本文中,总结使用C#语言进行AutoCAD插件开发并记录。

1.开发工具准备

  (1)安装Visual Studio
  在百度等浏览器搜索“Visual Studio2022”安装包,然后安装即可。

  (2)安装AutoCAD2022
  在百度等浏览器搜索“AutoCAD2022”安装包,然后安装即可。

2.VS(C#)创建插件

  (1)新建项目
  在这里插入图片描述

  (2)引用AutoCAD2022的链接库
  在这里插入图片描述

"acmgd.dll" "accoremgd.dll" "AcCui.dll" "acdbmgd.dll"

  (3)设置链接库
  在这里插入图片描述

  (4)添加命名空间
  在这里插入图片描述

using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;  
using Autodesk.AutoCAD.EditorInput;  
using Autodesk.AutoCAD.Runtime;  
using Autodesk.AutoCAD.Colors;

  (5)设置外部启动程序
  在这里插入图片描述

  (6)编写插件功能
  在这里插入图片描述

[CommandMethod("TestDemo")] //指令名称
public void TestDemo()  
{  
    // 声明命令行对象  
    Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;  
    // 向命令行输出一段文字  
    ed.WriteMessage("hello, AutoCAD!");  
}

3.使用插件

  在这里插入图片描述

参考资料:
[1] CREECLEEXIN. 工程人员的CAD编程(C#对CAD进行二次开发)系列; 2021-05-08 [accessed 2023-07-15].
[2] Linxson. 【C#】AutoCAD二次开发笔记; 2022-06-13 [accessed 2023-07-15].
[3] ‭494. C# CAD二次开发初步(HelloWorld); 2020-09-28 [accessed 2023-07-15].
[4] bullzerone. CAD二次开发(C#)第一个例子; 2017-06-26 [accessed 2023-07-15].
[5] 宁强核桃饼. CAD二次开发-C#项目创建; 2019-10-11 [accessed 2023-07-15].
[6] Peter你去哪. C# Cad二次开发新手入门系列教程(一)开发环境搭建; 2022-10-01 [accessed 2023-07-15].
[7] 淡淡星辰丶. C#实战之CAD二次开发001:CAD和C#的环境配置; 2019-06-24 [accessed 2023-07-15].
[8] Nemo_XP. 利用C#进行AutoCAD的二次开发(转); 2018-04-14 [accessed 2023-07-15].
[9] DK业. c# cad二次开发 ribbon界面 给CAD加个菜单栏; 2023-05-24 [accessed 2023-07-15].
[10] 西域_雪狼. C#二次开发AutoCAD动态加载自定义菜单和命令 .pdf; 2019-09-04 [accessed 2023-07-15].

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756736.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux之Ubuntu系列(-)

单用户和多用户 注意事项 Linux 系统 中区分大小写的 Window 系统 不分区大小写的

1.Java语言概述

1.1概述 JDK(Java development kit)java开发工具包 JDK是提供Java开发人员使用的,其中包含java的开发工具,包括JRE,所以安装JDK,就不需要安装JRE了 其中编译工具javac.exe、打包工具jar.exe JRE(Java Runtime environment) java运行环境 包括…

android11 input 事件 1 初始化

system_server 初始化InputManagerService // SystemServer.java private void startOtherServices(NonNull TimingsTraceAndSlog t) {t.traceBegin("startOtherServices");// 初始化InputManagerServicet.traceBegin("StartInputMana…

让机器学习不再是过门不入,带您一起详解机器学习(机器学习 Machine Learning 研习之一)

什么是机器学习(Machine Learning)? 机器学习是]赋予计算机学习能力的研究领域 无需明确编程。 ——阿瑟塞缪尔,1959 计算机程序可以从关于某些任务的经验 E 中学习 T 和一些绩效衡量 P,如果其在 T 上的绩效按 P 衡量&…

微信批量自动加好友神器,多账号如何统一自动加好友

其实这样的方式不仅太集中容易造成频繁 效率还很低 现在可以解放双手 只需要你有数据 导入数据设置相应添加任务 就可以每天根据你设置的时间点去添加好友 直到数据被用完 就不用每天手动一个个去添加咯 还可以多账号统一自动加好友 一天就可以加多点 相信 无论是个…

RDS-Tools RDS-Knight Crack

RDS 高级安全性 利用全面的网络安全工具箱中有史以来最强大的安全功能集来保护您的 RDS 基础架构。 全方位 360 保护 无与伦比的功能集 无与伦比的物有所值 企业远程桌面安全。现代工作空间的智能解决方案。 办公室正在权力下放。远程办公室和移动员工数量创历史新高。随…

Netty网络编程

参考文档 https://zhuanlan.zhihu.com/p/550956053 https://zhuanlan.zhihu.com/p/514448867 BIO 读取数据有两个阶段 等待数据就绪,数据到达内核缓冲区读取数据(系统调用),从内核缓冲区,拷贝至用户缓冲区 BIO两个阶段都会阻塞 BIO编程时&…

RIS 系列 RISCLIP: Referring Image Segmentation Framework using CLIP 论文阅读笔记

RIS 系列 RISCLIP: Referring Image Segmentation Framework using CLIP 论文阅读笔记 一、Abstract二、引言三、相关工作Referring Image SegmentationVisual Grounding PretrainingContrastive Language-Image Pre-training (CLIP) 四、Referring Image Segmentation Framewo…

Numpy总结

Numpy 文章主要通过案例来理解广播机制、结合相应函数(rollaxis、swapaxes)来理解Axis、总结了相关函数axis1的操作规律。 文章参考博客如下: 大致参考:Python之Numpy详细教程。 线性代数部分:Numpy重要模块——lin…

考研英语一阅读真题逐词翻译(2010-2023)共211页

整理了考研英语一阅读真题逐词翻译(2010-2023)共211页 包含了2010年到2023年所有阅读的逐次逐句翻译,重难点单词的下划线翻译等 也对这份真题逐词翻译进行了年份分类整理,合集包含了多年的考研英语一阅读题目,覆盖了不…

美团JVM面试题

1. 请解释一下对象创建的过程? Java对象创建的过程主要分为以下五个步骤: 类加载检查 Java虚拟机在读取一条new指令时候,首先检查能否在常量池中定位到这个类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化。如果没有&a…

数据库多表查询作业

数据库多表查询作业 创建数据库 插入数据 mysql> insert into student values(901,张老大,男,1985,计算机系,北京市海淀区),-> (902,张老二,男,1986,中文系,北京市昌平市),-> (903,张三,女,1990,中文系,湖南省永州市), -…

IT学不好没什么,大不了躺平

目录 一、个人经历 二、情绪调节技巧和策略 三:治愈自己 最近确实发生很多因为情绪失控发生意外的事情,有伤害别人的,也有伤害自己的,最近才听说过一个词叫呼吸性碱中毒,这就是情绪波动导致的身体不适,有…

layui实现左侧导航树形菜单

今日金句 战术上的勤奋并不能掩盖战略上的懒惰 文章目录 前言一、左侧导航1.1 概述1.2 树形菜单 二、导入数据表及无限级分类2.1 导入数据2.2 无限级分类 三、Book实例3.1 环境准备3.3 导入封装的工具类3.3 实体类及dao方法的编写3.4 编写Servlet3.5 编写Jsp 前言 在上篇博客…

【miniQMT实盘量化2】与客户端建立连接

前言 上篇从概念上介绍了miniQMT和它的优势,本篇开始实操的第一步:连接客户端,让你知其然,也只其所以然,话不多说,开干! 登录客户端 一切的开始,我们要首先保证QMT极简版客户端的…

deeplabv3+源码之慢慢解析 第二章datasets文件夹(2)voc.py--VOCSegmentation类

系列文章目录 第一章deeplabv3源码之慢慢解析 根目录(1)main.py–get_argparser函数 第一章deeplabv3源码之慢慢解析 根目录(2)main.py–get_dataset函数 第一章deeplabv3源码之慢慢解析 根目录(3)main.py–validate函数 第一章deeplabv3源码之慢慢解析 根目录(4)main.py–mai…

MySQl数据库第八课-------SQL命令查询-------主要命脉

作者前言 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com —————————————————————————————— 目录 查询数据 条件 逻辑运算符 模糊查询 范围查询 in 判断空 UNION 排序 聚合 分组:group by —————————…

安卓进度条:ProgressBar和Seekbar

一、ProgressBar进度条介绍 ProgressBar 是 Android 中的一个进度条控件,用于显示正在进行的任务的进度。它可以以水平或圆形的形式展示进度,并提供了多种样式和属性来满足不同的需求。 相关属性: android:progress:设置进度条的…

LangChain大型语言模型(LLM)应用开发(六):Agents

LangChain是一个基于大语言模型(如ChatGPT)用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

【Linux指令集】---zip指令(超详细)

个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【Linux专栏】🎈 本专栏旨在分享学习Linux的一点学习心得,欢迎大家在评论区讨论💌 演示环境&#xff1…