1、需求
AutoCAD图形绘制需要放置在相关图层,本文就针对AutoCAD图层样式进行定义

2、思路
根据CAD自带的图层样式以及参考相关接口设置图层样式

3、环境
AutoCAD 2018/vs2015

4、步骤:
(1) 新建一个临时图形数据库

Database tempDB = new Database(false, true);

(2) 定义图层名称以及图层颜色

(3) 设置图层线宽以及线形

(4) 把设置的图层信息添加到块表记录中

BlockTableRecord.AppendEntity()
Transaction.AddNewlyCreatedDBObject();

关键代码:

    /// <summary>/// 标准图层配置/// </summary>public static void InitLayer(){   Database acCurDb = HostApplicationServices.WorkingDatabase;using (Transaction tr = acCurDb.TransactionManager.StartTransaction()){Dictionary<string, short> ldic = new Dictionary<string, short>(){["粗线"] = 4,["细线"] = 2,["标注"] = 7,["文本"] = 7,["中心线"] = 1,["虚线"] = 3,["标注"] = 7,};List<string> Lname = new List<string>() { "CENTER", "DASHED" };LayerTable acLyrTbl;acLyrTbl = tr.GetObject(acCurDb.LayerTableId, OpenMode.ForRead) as LayerTable;LinetypeTable acLinTbl;acLinTbl = tr.GetObject(acCurDb.LinetypeTableId, OpenMode.ForRead) as LinetypeTable;foreach (string ltname in Lname){if (!acLinTbl.Has(ltname)){acCurDb.LoadLineTypeFile(ltname, "acad.lin");}}LayerTableRecord acLyrTblRec = new LayerTableRecord();foreach (string key in ldic.Keys){short cid = ldic[key];acLyrTblRec = new LayerTableRecord();if (!acLyrTbl.Has(key)){acLyrTblRec.Color = Color.FromColorIndex(ColorMethod.ByAci, cid);if (cid != 4) { acLyrTblRec.LineWeight = LineWeight.LineWeight009; }else { acLyrTblRec.LineWeight = LineWeight.LineWeight030; }if (cid == 1) { acLyrTblRec.LinetypeObjectId = acLinTbl["CENTER"]; }if (cid == 3) { acLyrTblRec.LinetypeObjectId = acLinTbl["DASHED"]; }if (cid == 8) { acLyrTblRec.IsPlottable = false; }acLyrTblRec.Name = key;if (acLyrTbl.IsWriteEnabled == false) acLyrTbl.UpgradeOpen();acLyrTbl.Add(acLyrTblRec);tr.AddNewlyCreatedDBObject(acLyrTblRec, true);}else{acLyrTblRec = tr.GetObject(acLyrTbl[key], OpenMode.ForWrite) as LayerTableRecord;if (cid != 4) { acLyrTblRec.LineWeight = LineWeight.LineWeight009; }else { acLyrTblRec.LineWeight = LineWeight.LineWeight030; }if (cid == 1) { acLyrTblRec.LinetypeObjectId = acLinTbl["CENTER"]; }if (cid == 3) { acLyrTblRec.LinetypeObjectId = acLinTbl["DASHED"]; }if (cid == 8) { acLyrTblRec.IsPlottable = false; }acLyrTblRec.Color = Color.FromColorIndex(ColorMethod.ByAci, cid);}}  tr.Commit();}}

————————————————
版权声明:本文为CSDN博主「wnzsj」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wnzsj/article/details/121858950

C#之AutoCAD图层样式定义相关推荐

  1. C# 之AutoCAD标注样式定义

    1.需求 AutoCAD图形标注不同标准下标注样式存在差异,本文就针对AutoCAD标注样式定义进行讲解 2.思路 根据CAD自带的标注样式以及参考相关接口设置标注样式 3.环境 AutoCAD 20 ...

  2. uniapp动态修改样式_掌握Photoshop图层样式技术

    凹凸贴图效果 "等等,什么?" 您会惊叹:""图层样式"菜单中没有凹凸贴图效果!" 的确如此,但是通过将"图案覆盖"和& ...

  3. 图层样式和混合模式—制作美国队长盾牌

    1.新建文件 打开PhotoShop,在菜单栏上点击[文件]|[新建],弹出新建的对话框,填写名称,然后设定大小为: 宽度:1000px: 高度:1000px: 分辨率:72: 2.画美国队长盾牌的雏 ...

  4. ol4加载pbf矢量切片与样式定义

    概述 看了一下mapbox的矢量切片的展示方式,其核心是定义的一个样式配置文件,我就在想:Ol4里面我是否通过styleFunction的方式实现同样的效果呢,折腾了一上午,别说,styleFunct ...

  5. ps入门第13天_ps图层样式基本操作与功能 案例:1、玻璃器皿效果 2、黄金效果字

    一.前言 黄金效果字的制作 1.图层样式的打开的2种方式 ①在图层的名称旁边双击 ②点击图层面板的fx 2.纹理与图案 纹理是有立体效果 图案是贴在上面 二.操作步骤 1.背景设置 渐变(一头浅蓝,一 ...

  6. PS图层样式中的“图案叠加”技巧

    在我们的Photoshop中,图层样式是被应用最多的设计手段,那么在图层样式中,图案叠加相信有不少的朋友已经用过了,下面我们先来看看这图案叠加可以用来做什么~ 首先在Photoshop中随意新建个画布 ...

  7. PS图层样式制作双色巧克力字

    来源:uimaker.com 文字由两部分构成,底层的巧克力及顶部的粉红色装饰层.每一部分都是用样式来设置纹理及质感,顶部图层还需用滤镜等把轮廓变形处理. 最终效果 1.这儿我们先新建一个文件,大小是 ...

  8. 部分样式在360和ie上不能显示_Adobe Photoshop添加图层样式全方面介绍

    PS基础学习第六期 图层样式详解 图层样式是指图形图像处理软件Photoshop中的一项图层处理功能,是后期制作图片以期达到预定效果的重要手段之一. 图层样式的功能强大,能够简单快捷地制作出各种立体投 ...

  9. Bootstrap—基础样式定义

    本章主要是介绍Bootstrap默认的基础样式定义,利用这些基础的定义相互组合,完成页面的整体风格定义甚至是更具体的效果. Bootstrap应该是一个基础工具,它的好处在于已经帮你定义了一个基础的样 ...

  10. 《Photoshop修饰与合成专业技法》—第1章利用图层样式改进抠像

    本节书摘来自异步社区<Photoshop修饰与合成专业技法>一书中的第1章利用图层样式改进抠像,作者[英]Glyn Dewis(格林·杜伊斯),更多章节内容可以访问云栖社区"异步 ...

最新文章

  1. R语言使用ggplot2包使用geom_density()函数绘制密度图(填充色、线性设置)实战(density plot)
  2. [经验总结]源代码管理=Ubuntu+Apache+SVN
  3. golang中的strings.Split
  4. 第一次在Linux系统上操作mysql数据库,看完这篇轻松应对
  5. ios内购二次认证服务器代码
  6. H - 数据结构实验之链表九:双向链表
  7. AI、Big Data、Cloud学习路线之百度智能云ABC初级认证(百度云智学院学习笔记)
  8. 帮你正确理解“财富自由”
  9. 爬动漫“上瘾”之后,放弃午休,迫不及待的用Python薅了腾Xun动漫的数据,啧啧啧
  10. python-----异常处理
  11. BiDi单纤双向光模块全解析
  12. journey、voyage、trip、tour、travel的用法区别
  13. OA、CRM、ERP、BPM系统
  14. 关于Ubuntu多显卡服务器,掉显卡的问题
  15. mysql表关联查询都有什么方式_所有关联表查询方式
  16. Matlab顶级期刊配色工具Rggsci
  17. 微软软件实现技术授课系列内容之五:软件测试基础
  18. Linux NAPI机制分析
  19. 自学系列 | 就谈兴趣!
  20. 2021年煤矿安全监测监控考试资料及煤矿安全监测监控考试试卷

热门文章

  1. 快速实现ARM和DSP的通信和协同工作
  2. LCD点阵液晶多级菜单设计
  3. FYI| Free online events
  4. WindowsXP SP3 AFD.sys 本地拒绝服务漏洞的挖掘过程
  5. 华为android手机root,华为手机root权限获取教程
  6. 效果图渲染器详解,出图最快的竟然是它!
  7. echarts wordCloud画词云图(自定义背景)
  8. 不恢复余数除法原理_小学数学基础概念大全,家长收藏起来,一条一条讲给孩子听。能全背下来的,考试也不带怕的了!...
  9. c语言且不用 怎么表示,“并且”用C语言怎么表示
  10. golang接口与反射剖析