002集—— CAD划线并模拟向命令窗口发送命令(CAD—C#二次开发入门)

news2024/9/21 10:56:06

模拟向命令窗口发送全图居中的命令:  Application.DocumentManager.MdiActiveDocument.SendStringToExecute("z\ne\n",true,false,false); 

弹窗命令:

 Application.ShowAlertDialog("Erase the newly added polyline.");

本例在cad画一条线并全图显示:

using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.Runtime;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ClassLibrary4
{
    public class Class1
    {
        [CommandMethod("xx")]
        public static void AngleFromXAxis()
        {
            //
            
            // 获得当前文档和数据库   Get the current document and database
            Document acDoc = Application.DocumentManager.MdiActiveDocument;
            Database acCurDb = acDoc.Database;

            // 启动一个事务  Start a transaction
            using (Transaction acTrans = acCurDb.TransactionManager.StartTransaction())
            {
                // 以只读方式打开块表   Open the Block table for read
                BlockTable acBlkTbl;
                acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId,
                                             OpenMode.ForRead) as BlockTable;

                // 以写方式打开模型空间块表记录   Open the Block table record Model space for write
                BlockTableRecord acBlkTblRec;
                acBlkTblRec = acTrans.GetObject(acBlkTbl[BlockTableRecord.ModelSpace],
                                                OpenMode.ForWrite) as BlockTableRecord;

                // 创建一条轻量多段线     Create a lightweight polyline
                Polyline acPoly = new Polyline();
                acPoly.SetDatabaseDefaults();
                acPoly.AddVertexAt(0, new Point2d(2, 4), 0, 0, 0);
                acPoly.AddVertexAt(1, new Point2d(4, 2), 0, 0, 0);
                acPoly.AddVertexAt(2, new Point2d(6, 4), 0, 0, 0);

                // 添加新对象到块表记录和事务中   Add the new object to the block table record and the transaction
                acBlkTblRec.AppendEntity(acPoly);
                acTrans.AddNewlyCreatedDBObject(acPoly, true);

                // 更新显示并显示一条提醒消息    Update the display and display an alert message
                acDoc.Editor.Regen();
                //acDoc.Editor.WriteMessage("z\n");
                //acDoc.Editor.Regen();
                //acDoc.Editor.WriteMessage("e\n");
                Application.DocumentManager.MdiActiveDocument.SendStringToExecute("z\ne\n",true,false,false); 
                acDoc.Editor.Regen();
                Application.DocumentManager.MdiActiveDocument.SendStringToExecute("regen", true, false, false);
                Application.ShowAlertDialog("pl线已画好");

                // 从图形中删除多段线    Erase the polyline from the drawing
                //acPoly.Erase(true);
               // Application.ShowAlertDialog("pl线已删除");
                // 保存新对象到数据库中   Save the new object to the database
                acTrans.Commit();
            }


            //
            
            //


        }
    }
}

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

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

相关文章

macos清理垃圾桶时提示 “操作无法完成,因为该项目正在使用中” 解决方法 , 强制清理mac废纸篓 方法

在macos中,删除文件后, 在清理垃圾桶时提示 “操作无法完成,因为该项目正在使用中” 出现这个提示,在大多数的情况下是因为数据问题导致,需要通过磁盘管理工具进行修复,修复后才可彻底的清理垃圾桶。 另外…

FPGA低功耗设计

FPGA低功耗设计 文章目录 FPGA低功耗设计前言一、功耗类型1.1 动态功耗1.2 静态功耗1.3 浪涌功耗 二、系统级低功耗设计2.1 **多电压技术:**即工作频率、电压和功耗的关系2.2 系统时钟分配:2.3 软硬件划分2.4 p 或单元库选择 三、RTL级别低功耗设计3.1 并…

运算放大电路

填鸭子呢 兴趣没了,啥也没了 运行过程,少了什么 差分放大 二极放大 功率放大 输出为饱和 反馈调整放大 倍数 考试 我可以认为就应该那样 但理解却不能如 懂了不妨碍我不会用 会用不妨碍我不懂 也想设计一个如哆来A梦那样的; 什么…

Gapless-REMA100:一个通过多源DEM填补空白的南极洲无缝100米参考高程模型

ABSTRACT 南极洲的数字高程模型(DEM)是冰川学应用中至关重要的数据集,广泛用于从野外工作规划到冰盖动力学分析等多个方面。高空间分辨率的DEM数据能够更详细地描绘地形。南极洲参考高程模型(REMA)马赛克是最近发布的…

VR全景视频编辑SDK解决方案,指尖玩转全景世界

随着虚拟现实(VR)技术的日益成熟,全景视频以其沉浸式、全方位的视觉体验,成为了连接现实与虚拟世界的桥梁。然而,传统VR视频编辑的繁琐流程和高门槛,往往限制了创作者们的灵感释放与作品传播。如今&#xf…

我的独立游戏-休闲社交游戏-“淘金城堡“CSDN上线了

大家好,我的休闲社交游戏-"淘金城堡"在CSDN课堂上线了,有91节视频课和三个开发阶段的项目源码,非常适合分阶段学习。 项目的地址: http://t.csdnimg.cn/m0hFd 游戏截图 这个项目是我开发的一款独立游戏的附属产物。 …

【信道复用技术】

信道复用技术 复用(multiplexing)是通信技术种的基本概念。它允许用户使用一个共享信道进行通信,降低成本,提高利用率。 如下图所示,情况a是A1,B1,C1各自使用自己单独的信道,情况b…

苹果CMS与海洋CMS安全性对比:为什么苹果CMS更值得信赖

苹果CMS(Maccms)介绍及安全性分析 在选择内容管理系统(CMS)时,安全性是每个网站管理员都必须重点考虑的因素。苹果CMS(maccmscn)和海洋CMS都是在国内较受欢迎的CMS平台,但它们在安全…

在WordPress中最佳Elementor主题推荐:进阶级指南

如果你已经熟悉WordPress和Elementor,选择功能更强大、定制性更高的主题能进一步提升网站质量。今天,我为大家介绍五款适合用户的进阶级Elementor主题:Shoptimizer、OceanWP、Hestia、Zakra和Phlox。这些主题不仅功能丰富,而且非常…

Maven私服Nexus安装及使用

前言 周末在家闲着无聊,不知道做点啥,就想着自己搭建一个Maven私服来玩玩。刚好使用自己之前在电脑上搭建的虚拟机服务器来操作体验了一把。搭建好私服后,以后自己写的一些小模块啊,工具包啥的就可以发布到自己的私服上了&#xf…

【信创】推荐一款好用的免费在线流程图思维导图工具 _ 统信 _ 麒麟 _ 方德

原文链接:【信创】推荐一款好用的免费在线流程图思维导图工具 | 统信 | 麒麟 | 方德 Hello,大家好啊!今天给大家推荐一款非常好用的免费在线流程图和思维导图工具——ProcessOn。无论是项目管理、数据分析、头脑风暴还是日常办公,…

常见的弹性公网ip类型

常见的弹性公网ip类型有常规BGPIP、精品BGPIP、加速IP、静态单线IP、高防EIP。弹性公网ip的优点在于灵活、稳定、安全和可扩展等方面,适用于不同的业务场景和需求,用户可以根据自身的实际情况进行选择。以下是对常见的弹性公网ip类型的具体分析&#xff…

使用 PyCharm 新建 Python 项目详解

使用 PyCharm 新建 Python 项目详解 文章目录 使用 PyCharm 新建 Python 项目详解一 新建 Python 项目二 配置环境1 项目存放目录2 Python Interpreter 选择3 创建隔离环境4 选择你的 Python 版本5 选择 Conda executable 三 New Window 打开项目四 目录结构五 程序编写运行六 …

ADS1248 测电阻 0~10欧姆

目录 需求 端口供电范围 PGA 振荡器 恒流源IDAC 配置 需求 测量范围0~10欧姆; 误差:0.01欧姆 端口供电范围 注意的端口Vref 最小电压0.5V ; PGA 振荡器 恒流源IDAC 配置 恒流源通过电阻提供基准; 恒流源1mA&#xff0c…

k8s的搭建

一、安装环境 准备三台主机: 192.168.1.66 k8s-master 192.168.1.77 k8s-node01 192.168.1.88 k8s-node02 网段: Pod ⽹段 172.16.0.0/16 Service ⽹段 10.96.0.0/16 注:宿主机⽹段、Pod…

集群聊天服务器项目【C++】项目介绍和环境搭建

前言:学习一个基于C集群聊天服务器的项目,记录学习的内容和学习的过程。 1.项目介绍 在 Linux 环境下基于 muduo 开发的集群聊天服务器。实现新用户注册、用户登录、添加好友、添加群组、好友通信、群组聊天、保持离线消息等功能。 2.技术栈 Json序列…

CSS基本布局理解(测试)——WEB开发系列38

对CSS学习已经接近尾声,下面你可以对以下两道“小卡拉米”测试进行测试下CSS理解程度。 题 1:基于栅格布局的现代博客首页设计 题目要求: 创建一个博客首页布局,包含一个顶部导航栏、一个主要的内容区域(左侧为博客文…

第二证券:频频收购!81.64亿元买下“超级工厂”

下周A股解禁总市值较小,为262.57亿元。 赛力斯出手增资 为增强赛力斯轿车的资本实力,满意其可继续高质量发展需要,昨日晚间,赛力斯发布公告称,拟以自有资金向赛力斯轿车增资50亿元,完结增资后&#xff0c…

几天不上微博ip地址会消失吗?微博上的ip地址准确吗

微博,作为当代最受欢迎的社交媒体平台之一,近年来开始显示用户的IP地址。这一功能的引入,无疑增强了平台的透明度和互动性,但同时也引发了一系列关于IP地址准确性和持久性的疑问。本文将深入探讨几天不上微博IP地址是否会消失&…

为何视频监控AI分析逐渐融入摄像头?浅述背后的必然逻辑

视频监控的应用领域极为广泛,它已成为现代社会中各行各业不可或缺的信息化基石。从工业生产到日常生活,视频监控无处不在,其重要性不言而喻。 传统上,视频监控仅局限于通过摄像头捕捉并储存图像,以此辅助我们的工作与…