1.  
  2. C#实现在CAD图纸中插入另一个DWG图块的代码
  3.  
  4. PromptPointResult ppr = ed.GetPoint("请选择插入点:");
  5.  
  6. Point3d pt = ppr.Value;
  7.  
  8. utility.WriteToEditor(pt.ToString());
  9.  
  10. PIDBlock pidBlock = new PIDBlock();//自己定义的图块类,保存图块的路径和名称
  11.  
  12. pidBlock.Name = "sample";
  13.  
  14. pidBlock.Path = blockPath + "b_sample.dwg";using (Database blkDb = new Database(false, true))
  15.  
  16. {
  17.  
  18. //read drawing
  19.  
  20. blkDb.ReadDwgFile(pidBlock.Path, System.IO.FileShare.Read, true, null);
  21.  
  22. blkDb.CloseInput(true);
  23.  
  24. using (DocumentLock docLock = doc.LockDocument())//多文档要先这样,否则报至命错误
  25.  
  26. {
  27.  
  28. using (Transaction t = doc.TransactionManager.StartTransaction())
  29.  
  30. {
  31.  
  32. //insert it as a new block
  33.  
  34. ObjectId idBTR = doc.Database.Insert(pidBlock.Name, blkDb, false);
  35.  
  36. //create a ref to the block
  37.  
  38. BlockTable bt = (BlockTable)t.GetObject(doc.Database.BlockTableId, OpenMode.ForRead);
  39.  
  40. BlockTableRecord btr = (BlockTableRecord)t.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
  41.  
  42. using (BlockReference bref = new BlockReference(pt, idBTR))
  43.  
  44. {
  45.  
  46. btr.AppendEntity(bref);
  47.  
  48. t.AddNewlyCreatedDBObject(bref, true);
  49.  
  50. }
  51.  
  52. t.Commit();
  53.  
  54. }
  55.  
  56. }
  57.  
  58. }

C#实现在CAD图纸中插入另一个DWG图块的代码的更多相关文章

  1. 按照excel文档中的内容在当前cad图纸中自动排布实体

    本例实现的主要功能是读取excel文档中的内容,其次是将按照读取的信息在当前cad图纸中添加相应的实体.下面先介绍实现代码: CString excelPath; //外部excel文档的地址 Upd ...

  2. 如何在CAD图纸中进行线性标注

    在CAD中,都会在图纸中进行CAD标注,一般都是有CAD标注样式.CAD标注文字等.那其中有一个就是CAD线性标注?可以标注图纸间的距离?那如何在CAD图纸中进行线性标注呢?具体要怎么来进行操作?本篇 ...

  3. Android笔记——在布局文件中插入另一个布局文件

    假如有一个布局文件A.xml想把另外一个布局文件B.xml引进其布局,则可以通过下面的代码 <include layout="@layout/B" />

  4. 如何用iframe在网页中插入另一个网页的一部分内容,做成页中页

    <html><head></head><body><h1>这是一段引用的内容!!!</h1><div style=&quo ...

  5. CAD图纸怎么看?这两种方法值得看

    在CAD日常的工作中,每天都是需要接触到CAD图纸文件,有一些房屋设计.建筑施工图.室内家具设计图纸等,这些CAD图纸的格式均为dwg格式的.是不能够直接进行打开查看的,需要借助CAD看图软件来使用. ...

  6. 如何用Apache POI操作Excel文件-----如何在已有的Excel文件中插入一行新的数据?

    在POI的第一节入门中,我们提供了两个简单的例子,一个是如何用Apache POI新建一个工作薄,另外一个例子是,如果用Apache POI新建一个工作表.那么在这个章节里面,我将会给大家演示一下,如 ...

  7. html中插入flash代码详解(转载)

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...

  8. 在html中插入音频

    在html中插入音频 第一种:在页面代码中的<head></head>之间加入<bgsound src="音乐url" loop="-1&q ...

  9. X86逆向13:向程序中插入Dll

    本章我们将学习Dll的注入技巧,我们将把一个动态链接库永久的插入到目标程序中,让程序在运行后直接执行这个Dll文件,这一章的内容也可以看作是第八课的加强篇,第八课中我们向程序中插入了一个弹窗,有木有发 ...

随机推荐

  1. call()和apply()方法

    还在处在刚刚学习JavaScript的初级阶段,所以理解相对浅显,是一种简单的模式理解.这里做一个笔记,让自己在回顾的时候,更加牢记. call()和apply()的形式 A.call(B," ...

  2. 电子图书的编目和OPAC揭示

    摘  要  步入数字图书馆时代,电子资源日益增多,尤其在高校图书馆更加迅猛,怎样将图书馆的电子资源尽可能地整合在OPAC系统的检索功能里,以便更加简便.直观地利用,电子图书的编目已成为重要研究课题.本 ...

  3. Python学习入门基础教程(learning Python)--5.1 Python下文件处理基本过程

    Python下的文件读写操作过程和其他高级语言如C语言的操作过程基本一致,都要经历以下几个基本过程. 1. 打开文件 首先是要打开文件,打开文件的主要目的是为了建立程序和文件之间的联系.按程序访问文件 ...

  4. Introduction into ISO 27145 WWH-OBD

    全球统一的重型发动机的车载诊断系统(WWH-OBD) ISO/PAS 27145 is intended to become the single communication standard for ...

  5. linux tar.gz zip 解压缩 压缩命令

    http://apps.hi.baidu.com/share/detail/37384818 download ADT link http://dl.google.com/android/ADT-0. ...

  6. Oracle DB 使用调度程序自动执行任务

    • 使用调度程序来简化管理任务 • 创建作业.程序和调度 • 监视作业执行 • 使用基于时间或基于事件的调度来执行调度程序作业 • 描述窗口.窗口组.作业类和使用者组的用途 • 使用电子邮件通知 • ...

  7. //判断是否安装Flash插件

    //判断是否安装Flash插件        var swf;        function IE_Flash() {            try {                var swf ...

  8. 【JavaScript】一些注意点

    1.var与没有var的区别 没 2.全局变量和局部变量的速度 3.函数内部的var和外部的var的区别 4.var m =new Array();与var m = [];区别

  9. Windows平台下libevent库的使用

    1     引子 手头上有一个使用了4个年头的HttpClient库,自己封装的,对于集成了IE浏览器的应用程序很友好.但最近想把产品扩展到Chrome和FireFox阵营,萌发了重构HttpClie ...

  10. [ES6] 12. Shorthand Properties in ES6

    Where destructuring in ES6 allows you to easily get properties out of an object, this shorthand prop ...