当前位置: 首页 > news >正文

CAD二次开发(10)-单行文字的添加+图形修改

1. 单行文字的添加

第一步: 首先在CAD中新增中文样式
输入ST命令:
在这里插入图片描述
第二步:代码开发

 /// <summary>/// 添加文本信息/// </summary>[CommandMethod("AddText")]public void AddText(){var doc = Application.DocumentManager.MdiActiveDocument;var docDatabase = doc.Database;using (var trans = docDatabase.TransactionManager.StartTransaction()){//打开块表TextStyleTable textStyleTable = (TextStyleTable)trans.GetObject(docDatabase.TextStyleTableId, OpenMode.ForRead);var objectId = textStyleTable["chinese"];DBText text = new DBText{TextString = "wuk测试添加单行文本",//文本坐标Position   = new Point3d(500,500,0),Height = 500,//宽度因子WidthFactor = 0.8,TextStyleId = objectId};docDatabase.AddEnityToModelSpace(text);trans.Commit();}}

效果如下:
在这里插入图片描述

2. 修改和克隆图形

 /// <summary>/// 添加文本信息/// </summary>[CommandMethod("EditEntity")]public void EditEntity(){var doc = Application.DocumentManager.MdiActiveDocument;var docDatabase = doc.Database;var selectEntity = Selected.selectEntities()[0];if (selectEntity is Circle){using (var trans = docDatabase.TransactionManager.StartTransaction()){//修改对象Circle circle = (Circle)selectEntity.ObjectId.GetObject(OpenMode.ForWrite);circle.Radius = 600;circle.Color = Color.FromRgb(255, 0, 0);trans.Commit();}  }// 克隆对象,原对象不变if (selectEntity is Circle myCircle){var circle = myCircle.Clone() as Circle;if (circle != null){circle.Radius = 500;circle.Color = Color.FromRgb(255, 0, 0);//修改坐标circle.Center = new Point3d(100, 100, 100);docDatabase.AddEnityToModelSpace(circle);}}}

图示结果:
在这里插入图片描述

3. 图形形变

/// <summary>/// 图形形变/// </summary>[CommandMethod("EditEntityTest")]public void EditEntityTest(){var doc = Application.DocumentManager.MdiActiveDocument;var docDatabase = doc.Database;var selectEntity = Selected.selectEntities()[0];using (var trans = docDatabase.TransactionManager.StartTransaction()){//修改对象Entity  entity = (Entity)selectEntity.ObjectId.GetObject(OpenMode.ForWrite);Matrix3d matrix3d;//平移// matrix3d = Matrix3d.Displacement(new Vector3d(200,200,0));// entity.TransformBy(matrix3d);// //旋转 参数1:旋转角度 2:旋转轴心(负则反方向顺时针) 3:旋转中心// matrix3d = Matrix3d.Rotation(Math.PI/6,Vector3d.ZAxis,Point3d.Origin);// //缩放 参数1:缩放比例 2:缩放中心// matrix3d = Matrix3d.Scaling(2,new Point3d(50,50,0));// 镜像 两种方式matrix3d = Matrix3d.Mirroring(new Plane(Point3d.Origin,new Point3d(0,1,0),new Point3d(0,0,1)));matrix3d = Matrix3d.Mirroring(new Line3d(Point3d.Origin, new Point3d(0, 1, 0)));entity.TransformBy(matrix3d);trans.Commit();} }

旋转
在这里插入图片描述

4. 块参照

/// <summary>/// 图形形变/// </summary>[CommandMethod("EditEntityTest1")]public void EditEntityTest1(){var doc = Application.DocumentManager.MdiActiveDocument;var docDatabase = doc.Database;var block = Selected.selectEntities()[0];if (block is BlockReference blockReference){using (var trans = docDatabase.TransactionManager.StartTransaction()){// String name = blockReference.BlockName;// var ro = blockReference.Rotation;// var factors = blockReference.ScaleFactors;// var position = blockReference.Position;//修改块参照数据BlockReference blockR = (BlockReference)block.ObjectId.GetObject(OpenMode.ForWrite);blockR.Rotation = Math.PI / 6;blockR.ScaleFactors = new Scale3d(2, 2, 2);trans.Commit();} }}

相关文章:

CAD二次开发(10)-单行文字的添加+图形修改

1. 单行文字的添加 第一步&#xff1a; 首先在CAD中新增中文样式 输入ST命令&#xff1a; 第二步&#xff1a;代码开发 /// <summary>/// 添加文本信息/// </summary>[CommandMethod("AddText")]public void AddText(){var doc Application.DocumentM…...

【SpringBoot集成Spring Security】

一、前言 Spring Security 和 Apache Shiro 都是安全框架&#xff0c;为Java应用程序提供身份认证和授权。 二者区别 Spring Security&#xff1a;重量级安全框架Apache Shiro&#xff1a;轻量级安全框架 关于shiro的权限认证与授权可参考小编的另外一篇文章 &#xff1a; …...

docker部署dm数据库

官方文档参考 官网地址&#xff1a;https://eco.dameng.com/document/dm/zh-cn/start/dm-install-docker.html 下载镜像地址 docker部署 1、加载镜像 docker load -i dm8_20240613_x86_rh6_64_rq_ent_8.1.3.140_pack5.tar使用docker images&#xff0c;查看镜像和镜像标签…...

Shell中执行.sh文件的常见方式

在Shell中执行.sh文件有几种常见的方式&#xff0c;具体取决于你希望如何执行这个脚本文件。以下是一些常用的方法&#xff1a; 直接运行&#xff1a; ./script.sh 这是最简单的方式。在当前Shell会话中执行脚本文件。 使用bash命令执行&#xff1a; bash script.sh 明确使用b…...

超分辨率重建——2022冠军RLFN网络推理测试(详细图文教程)

&#x1f4aa; 专业从事且热爱图像处理&#xff0c;图像处理专栏更新如下&#x1f447;&#xff1a; &#x1f4dd;《图像去噪》 &#x1f4dd;《超分辨率重建》 &#x1f4dd;《语义分割》 &#x1f4dd;《风格迁移》 &#x1f4dd;《目标检测》 &#x1f4dd;《暗光增强》 &a…...

国际荐酒师香港协会受邀参加2024年美国独立日庆祝活动

国际荐酒师&#xff08;香港&#xff09;协会受邀参加2024年美国独立日庆祝活动促进世界酒中国菜的全球化发展 2024年6月18日&#xff0c;国际荐酒师&#xff08;香港&#xff09;协会大中华区驻广州办事处荣幸地接受了美国驻广州总领事馆 Nicholas Burns大使和Lisa Heller总领…...

(微服务实战)聚合支付系统商户线上聚合收银台接口设计

1 概述 聚合支付收款分为线上和线下业务场景&#xff0c;本文中的商户收银台接口设计主要是指线上业务场景&#xff0c;线下业务场景聚合收款方式后续会进行单独设计和分析。 主流的线上支付渠道有微信支付&#xff0c;支付宝支付&#xff0c;云闪付。这三种支付渠道都有各自…...

【漏洞复现】CRMEB开源电商系统 /api/products SQL注入漏洞(CVE-2024-36837)

0x01 产品简介 CRMEB开源电商系统是一款由西安众邦网络科技有限公司打造的全栈式电商解决方案&#xff0c;旨在为开发者和商家提供高性能、智能化的电商平台服务。该系统集成了CRM(客户关系管理)、ERP(企业资源规划)和EB(电子商务)的功能&#xff0c;通过深度结合这些功能&…...

摄像头图像矫正的表格生成方法

1.设置单元格高宽 点击表格左上角 的 小三角 列宽: HOME -> Rows and Columns -> Column Width 5 CM 行高: HOME -> Rows and Columns -> Row Height 5 CM 2.设置 条件格式 HOME -> Conditional Formatting-> Manager Rules 点击 左上方 New Rule…...

【Arc gis】Arc gis出现ERROR 999999问题的解决办法

地址&#xff1a;ArcGIS中ERROR 999999报错Configuration RasterCommander ImageServer can not be started解决_投影栅格失败error999999-CSDN博客...

优化 Flutter 应用开发:探索 ViewModel 的威力

介绍 1.1 什么是 ViewModel&#xff1f; ViewModel&#xff0c;顾名思义&#xff0c;就是视图的模型。在 Flutter 中&#xff0c;ViewModel 是一种用于管理视图状态和业务逻辑的重要概念。它承载了应用程序的核心功能&#xff0c;像是一个精心设计的控制中心&#xff0c;负责…...

Android开发系列(四)Jetpack Compose之Button

在Jetpack Compose中&#xff0c;Button是一个常用的用户界面组件&#xff0c;用于执行某些操作或触发某些事件。Button控件是可触摸的&#xff0c;并且通常会显示一个文本或图标来表示其功能。 要在Jetpack Compose中创建一个Button&#xff0c;可以使用Button()函数&#xf…...

Java17 --- RabbitMQ之插件使用

目录 一、Federation插件 1.1、运行两个rabbitmq实例 1.2、启用插件 1.3、在下游端点添加上游端点 1.4、创建策略 1.6、测试 二、联邦队列 2.1、创建策略 2.2、创建交换机与队列 2.2.1、创建52000的队列与交换机 2.2.2、创建62000的队列 三、Shovel 3.1、启…...

6.18总结

省赛排位赛2&#xff1a; 省赛排名赛2 - Virtual Judge 思路&#xff1a; 设两个方程直接解出来就行 代码&#xff1a; #include<bits/stdc.h> using namespace std; int n, m; int main() {int n, m;int ans1, ans2;cin >> n >> m;ans1 n - (-3 sqr…...

【ARM Cache 及 MMU 系列文章 1.4 -- 如何判断 L3 Cache 是否实现?】

请阅读【ARM Cache 及 MMU/MPU 系列文章专栏导读】 及【嵌入式开发学习必备专栏】 文章目录 Cluster Configuration Register代码实现什么是Single-Threaded Core?什么是PE(Processor Execution units)?Single-Threaded Core与PE的关系对比多线程(Multithreading)Cluster…...

打印mybatis的sql日志

1、application.xml: logging.level.com.xxx.xxx.daodebug2、log4j2.xml: <Logger name"com.xxx.xxx.dao" level"debug" additivity"true" />...

QT day4(对话框 事件机制)

1&#xff1a;思维导图 2&#xff1a; #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);ui->setupUi(this);//去除头部this->setWindowFlag(Qt::Frameles…...

序列化与反序列化漏洞实例

实验环境&#xff1a; 本次的序列化与反序列化漏洞为2021年强网杯上的一道比赛题目&#xff0c;我使用phpstudy集成环境将其测试环境搭建在了本地&#xff0c;如下。涉及的几个页面php为&#xff1a; index.php function.php myclass.php index.php : <?php // inde…...

6、while循环 - 习题解析

目录 解析部分&#xff1a;分支练习1244. 请问一个正整数能够整除几次2问题描述解题思路代码实现代码解析 1062. 求落地次数问题描述解题思路代码实现代码解析 1254. 求车速问题描述解题思路代码实现代码解析 1261. 韩信点兵问题描述解题思路代码实现代码解析 解析部分&#xf…...

ReentrantLock可重入锁

可重⼊锁&#xff0c;这个锁可以被线程多次重复进⼊进⾏获取操作。 ReentantLock继承接⼝Lock并实现了接⼝中定义的⽅法&#xff0c;除了能完成synchronized所能完成的所有⼯作 外&#xff0c;还提供了诸如可响应中断锁、可轮询锁请求、定时锁等避免多线程死锁的⽅法。 在并发量…...

Sentinel-2 Level-2A数据怎么用?从QA60波段解读到实战:去云、计算NDVI/ARVI并导出GeoTIFF

Sentinel-2 Level-2A数据实战指南&#xff1a;从QA60波段解析到植被指数计算全流程 当第一次打开Sentinel-2 Level-2A数据时&#xff0c;很多研究者会被那些看似晦涩的质量波段搞得一头雾水。记得我刚开始处理这些数据时&#xff0c;就曾因为忽略了QA60波段的重要性&#xff0c…...

通达信缠论画线主图实战:手把手教你5分钟搞定中枢识别与趋势线绘制

通达信缠论画线实战指南&#xff1a;5分钟掌握中枢识别与趋势线绘制技巧 在股票技术分析领域&#xff0c;缠论因其独特的结构思维和实战价值备受投资者青睐。而通达信作为国内主流证券分析软件&#xff0c;其内置的画线工具与缠论理论结合&#xff0c;能够帮助投资者快速识别关…...

GLM-Image创新应用:基于算法的艺术风格探索

GLM-Image创新应用&#xff1a;基于算法的艺术风格探索 当AI算法遇见艺术创作&#xff0c;会碰撞出怎样的火花&#xff1f;GLM-Image正在重新定义数字艺术的可能性边界。 1. 引言&#xff1a;算法与艺术的完美融合 在数字艺术创作领域&#xff0c;传统工具往往需要艺术家具备深…...

人工智能入门全景图:Nanbeige 4.1-3B带你梳理AI核心概念与技术栈

人工智能入门全景图&#xff1a;Nanbeige 4.1-3B带你梳理AI核心概念与技术栈 你是不是也对人工智能充满好奇&#xff0c;但一看到那些复杂的术语和庞大的技术栈就感到无从下手&#xff1f;机器学习、深度学习、神经网络、NLP、CV……这些词听起来很酷&#xff0c;但它们到底是…...

别再手动录单了!手把手教你用U9C OpenAPI打通钉钉审批流(含完整配置流程)

别再手动录单了&#xff01;手把手教你用U9C OpenAPI打通钉钉审批流&#xff08;含完整配置流程&#xff09; 当财务部的张经理第17次因为手工录入错误被审计部门退回单据时&#xff0c;他摔掉键盘的冲动都有了。这场景在很多企业司空见惯——U9C系统承载着核心业务数据&#…...

EagleEye效果实测:在JetPack 6.0 + Orin AGX上实现15ms推理的边缘部署方案

EagleEye效果实测&#xff1a;在JetPack 6.0 Orin AGX上实现15ms推理的边缘部署方案 如果你正在为边缘设备寻找一个又快又准的目标检测方案&#xff0c;那么今天的内容可能会让你眼前一亮。我们刚刚在NVIDIA Jetson Orin AGX上&#xff0c;基于最新的JetPack 6.0系统&#xf…...

隐马尔科夫模型(HMM)实战:从天气预测到股票市场分析

1. 隐马尔科夫模型入门&#xff1a;从天气预报说起 第一次听说隐马尔科夫模型(HMM)时&#xff0c;我正盯着手机上的天气预报发呆。为什么明明显示"晴天"&#xff0c;下午却突然下起暴雨&#xff1f;这让我开始思考天气预测背后的数学模型。HMM正是解决这类问题的利器…...

Flux Sea Studio 入门:十分钟完成星图平台镜像部署并生成首张图片

Flux Sea Studio 入门&#xff1a;十分钟完成星图平台镜像部署并生成首张图片 想试试最近很火的AI绘画&#xff0c;但又觉得本地部署太麻烦&#xff0c;显卡要求太高&#xff1f;今天咱们就来聊聊一个超级省事的办法——直接在云端用Flux Sea Studio。你不需要懂代码&#xff…...

梦幻动漫魔法工坊快速上手:无需代码,网页端直接生成动漫图像

梦幻动漫魔法工坊快速上手&#xff1a;无需代码&#xff0c;网页端直接生成动漫图像 你是否也曾幻想过&#xff0c;用几句话就能召唤出脑海中的梦幻场景&#xff1f;一个可爱的猫耳少女&#xff0c;在樱花树下回眸&#xff1b;或是奇幻的魔法森林里&#xff0c;精灵在月光下起…...

格式排版改到崩溃?高校教授说用这几个AI论文写作工具

论文写作总让人头大&#xff1f;格式排版改到崩溃、文献检索效率低、逻辑结构不清晰……这些痛点你是不是也遇到过&#xff1f;其实&#xff0c;只要用对 AI 工具、走对流程&#xff0c;就能事半功倍。资深教授建议&#xff0c;从选题到降重&#xff0c;全程使用专业工具辅助&a…...