java开发autocad_.NET AutoCAD二次开发之路(四、文字篇)
创建文字的方法有单行文字和多行文字之分,方法都一样都是先用不带参数的默认构造函数(先创建一个单行文字或多行文字对象的实例,不要为构造函数传递任何参数),然后在对其插入点、文字内容、文字宽度、文字高度等进行设置,多行文字要比单行文字复杂点,不过仍然是我学习中最简单的内容。
单行文字创建步骤:
1、 获取当前数据库
Database db=HostApplicationServices.WorkingDatabase;
2、 创建一个单行文字对象的实例,不为构造函数传递任何参数,
DBText firsttext=new DBText();
3、 设置单行文字属性,
firsttext.Position=new point3d();//设置插入点
firsttext.Height=5;//设置文字高度
firsttext.TextString=”This is firsttext!”;// 设置文字内容
…属性下面列出
4、 只读方式打开块表
BlockTable acBlkTbl;
acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId, OpenMode.ForRead) as BlockTable;
5、 写的方式打开块表记录
BlockTableRecord acBlkTblRec;
acBlkTblRec= acTrans.GetObject(acBlkTbl[BlockTableRecord.ModelSpace], OpenMode.ForWrite) as BlockTableRecord;
6、 将文字对象添加到块表记录中
acBlkTblRec.AppendEntity(acText);
7、 将文本对象添加到事物处理中
acTrans.AddNewlyCreatedDBObject(acText, true);
单行文字的属性:
HorizontalMode
指定文字的水平对象方式。
VerticalMode
指定文字的垂直对象方式。
Position
指定文字的插入点
Oblique
指定单个文字对象的倾斜角度。
Rotation
指定以弧度表示的文字的旋转角度。
WidthFactor
指定文字的缩放因子。
AlignmentPoint
指定文字的对齐点。
IsMirroredInX
指定文字是否反向显示。
IsMirroredInY
指定文字是否倒置显示。
TextString
指定实际显示的文字字符串。
注意:要修改单个单行文字 对象的关联文字样式,请将 TextStyleId 属性设置为新的文字样式。只要修改了文字样式,就必须重新生成图形或更新对象以查看图形中的变化;文字对象也可以被移动、旋转、删除、复制和镜像。
多行文字多用来实现堆叠效果,例如公差等,其创建的方式基本和单行文字一至,只有构造函数不同,
MText secondtext=New MText();//创建多行文字
单行文字创建完整代码:
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.Runtime;
namespace Texts
{
public class Texts
{
[CommandMethod("AddText")]
public void AddText()
{
Database db=HostApplicationServices.WorkingDatabase;
using (Transaction trans=db.TransactionManager.StartTransaction())
{
// 以只读方式打开块表
BlockTable acBlkTbl;
acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId, OpenMode.ForRead) as BlockTable;
// 以写方式打开模型空间块表记录 BlockTableRecord acBlkTblRec;
acBlkTblRec = acTrans.GetObject(acBlkTbl[BlockTableRecord.ModelSpace],
OpenMode.ForWrite) as BlockTableRecord;
DBText firsttext=new DBText(); // 创建第一个单行文字
firsttext.Position = new Point3d();//文字位置为原点
firsttext.Height = 5;//文字高度
//设置文字内容
firsttext.TextString = “This is firsttext!”;
//设置文字的水平对齐方式为居中
firsttext.HorizontalMode = TextHorizontalMode.TextCenter;
//设置文字的垂直对齐方式为居中
firsttext.VerticalMode = TextVerticalMode.TextVerticalMid;
//设置文字的对齐点
firsttext.AlignmentPoint = firsttext.Position;
acBlkTblRec.AppendEntity(firsttext);
acTrans.AddNewlyCreatedDBObject(firsttext, true);
trans.Commit();//提交事务处理
}
}
}
}
java开发autocad_.NET AutoCAD二次开发之路(四、文字篇)相关推荐
- c 语言cad 二次开发,c#对AutoCAD二次开发
对AutoCAD进行二次开发可以使用:ObjectArx,VBA,VLisp.但在这里不借用它们,而是直接使用C#开发. 有类库和应用程序两种方式: 方法1:vs2010 开发AutoCAD 2008 ...
- 用C语言编程函数求圆台体积,第六篇 AutoCAD二次开发技术.pdf
第六章 ObjectARX 开发技术 1. AutoCAD二次开发概述 7. MFC对话框 2. ObjectARX简介 8. 搜索图形数据库及获取实体 3. 常用实体类和几何类 数据 4. 创建实体 ...
- C#进行AutoCAD二次开发实例之倒角功能实现原理介绍
内容提要: 今天又是周五,到了双休的日子,比较兴奋,看了一晚上的<最强大脑>,顿时赶脚智商成了硬伤...刚才躺下打算睡觉,觉得还是应该写写CAD二次开发的相关一些内容,原因 ...
- python能二次开发cad么_2,手动创建CAD二次开发项目--AutoCAD二次开发(2020版)
本项目使用手动创建,意为不使用SDK模板. 从Visual Studio的"文件"下拉菜单中,选择"新建"->"项目...". 在出现 ...
- 陈伯雄lisp_基于AutoLisp的AutoCAD二次开发自动生成系统图
龙源期刊网 http://www.qikan.com.cn 基于 AutoLisp 的 AutoCAD 二次开发自动 生成系统图 作者:郎建山 金江 来源:<科技视界> 2013 年第 2 ...
- CAD自控lisp_基于AutoLisp的AutoCAD二次开发自动生成系统图
基于 AutoLisp 的 AutoCAD 二次开发自动生成系统图 [摘 要]本文主要阐述了应用 autolisp 语言二次开发 autocad 自动生成系统图的实现方案. [关键词] autocad ...
- lisp 梯形展开图_斜截圆柱件钣金展开图的AutoCAD二次开发
内容介绍 原文档由会员 刘瑞 发布 斜截圆柱件钣金展开图的AutoCAD二次开发 3.8万字符 70页 包括开题报告,论文,设计分析报告,程序代码,lsp及sld文件 摘 要 在国民经济各个部门的建设 ...
- autocad型源代码_VB与AUTOCAD二次开发源代码包
在发个VB与AUTOCAD二次开发源代码包,包括以下内容: 在学校的话,叫计算机辅助设计 第一章 VB开发AotoCAD基础知识 第一节 欢迎进入VB开发AUTOCAD的精彩世界 第二节 VB 开发 ...
- AutoCAD二次开发基础(三):船体型线绘制
AutoCAD二次开发系列 文章目录 前言 一.绘制船体横剖线 二.绘制船体纵剖线 三.绘制船体肋骨型线图 前言 用程序生成船体型线图,无疑会提高开发效率. 一.绘制船体横剖线 任务:编制程序,根据水 ...
- cass二次开发vba和lisp_基于VBA的AutoCAD二次开发及应用实例
1引言本文引用地址:http://www.eepw.com.cn/article/190993.htm AutOCAD2005是AutOdesk公司的系列产品,该软件从其使用和设计思路上都秉承了工程制 ...
最新文章
- [汇编语言学习笔记][第二章寄存器]
- Docker 容器技术 — Image
- iconmobileu驱动设置教_不求人,超简单打印机共享设置!
- RxJava学习-使用篇
- 朋友圈消失的人,都在偷偷读哪些书?
- Windows下一个可与其他数据集控件结合的通用的搜索框GUSIconEdit
- 解决PowerDesigner中Name与Code同步的问题
- h5跳转小程序_微信小程序吞掉H5?
- 获取上周_北美木材价格上周趋于稳定
- java xml annotation_Annotation与XML配置ID生成策略
- python全栈学习--day13(迭代器,生成器)
- 2019全球区块链杭州高峰论坛将于5月17日举办!
- 适合草根站长的认证产品介绍
- 《Python渗透测试编程技术:方法与实践》:信息的利用(进阶)
- win8 查看和更换密钥方法
- 软件测试之App测试-硬件环境测试
- asc码即ascii,没有asc这一说,ascii后是ii而不是罗马数字
- 计算机应用基础张宇答案,计算机应用基础电子教案教学课件作者张宇单选课件.doc...
- 怎样提交新站的网址给搜索引擎?史上最新最全的网站提交地址
- 护眼台灯显色指数是什么意思?led灯显色指数80够吗
热门文章
- 时间管理表 - 《周计划表》
- 计算机应用程序设计师,2018年上半年软件设计师真题+答案解析上午选择+下午案例完整版(全国计算机软考).pdf...
- html制作网页毕业论文,网页设计与制作 (毕业论文)
- 微信小程序跳转到另一个小程序(往返)
- 基于GLBP协议的医院网络规划与设计 文档+申请表+任务书+开题报告+中期检查+文献综述+PPT+周进展+网络拓扑及配置
- 《机器人动力学与控制》第九章——动力学 9.4 欧拉-拉格朗日方程法应用举例(下)
- 用Mysql得到Webshell(MySql Backup WebShell)
- 记忆GRE词汇三大原则
- Oracle数据库备份与还原
- Keras-YOLOV3-tensorflow制作训练自己的数据集