明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5085|回复: 8

在C#下插入块

[复制链接]
发表于 2006-6-27 15:21:00 | 显示全部楼层 |阅读模式
 public class Testinsert
  {
    [CommandMethod("testinsert")]
    static public void DoIt()
    {
        Document doc = Application.DocumentManager.MdiActiveDocument;
        Editor ed = doc.Editor;
        PromptResult res = ed.GetString("Give me a file to insert");
        if (res.Status != PromptStatus.OK)
          return;
        string fname = res.StringResult;
        if (!File.Exists(fname))
          fname = HostApplicationServices.Current.FindFile(fname, doc.Database, FindFileHint.Default);
        using (Database db = new Database(false, false))
        {
          //read drawing
          db.ReadDwgFile(fname, FileShare.Read, true, null);
          using (Transaction t = doc.TransactionManager.StartTransaction())
          {
            //insert it as a new block
            ObjectId idBTR = doc.Database.Insert("test", db, false);
            //create a ref to the block
            BlockTable bt = (BlockTable)t.GetObject(doc.Database.BlockTableId, OpenMode.ForRead);
            BlockTableRecord btr = (BlockTableRecord)t.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
            using (BlockReference bref = new BlockReference(Point3d.Origin, idBTR))
            {
                btr.AppendEntity(bref);
                t.AddNewlyCreatedDBObject(bref, true);
            }
            t.Commit();
          }
        }
    }
  }
发表于 2006-7-1 00:29:00 | 显示全部楼层
对于块对像,除了将块分解外。还有没有其它方法取得块中对像。
发表于 2006-12-31 11:04:00 | 显示全部楼层
在VB.net下插入块怎么写
发表于 2011-3-2 11:16:53 | 显示全部楼层
先生你好!现在要急着解决一个在程序中对dwg文件插入块的问题,就是往dwg文件中插入另外文件夹下的dwg块的问题,看了你的文章有看不懂的地方,就是那个database类和document类是怎么引用的啊?c#中引用的是哪些类库?是否需要第三方开发包?感谢您,请你帮忙回复下,不胜感激!
发表于 2011-3-2 13:22:48 | 显示全部楼层
发表于 2011-3-2 15:12:28 | 显示全部楼层
多谢楼主指点!
发表于 2011-12-16 17:14:14 | 显示全部楼层
谢谢楼主
但是有个问题 如果想给插入指定插入点可以嘛???
发表于 2011-12-16 17:20:36 | 显示全部楼层
请问C#的dll中能否省略添加命令这一步?就是autocad加载dll后直接执行代码,而不需要输入命令。望指点
发表于 2012-1-11 10:53:35 | 显示全部楼层
学习了,进步了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 18:41 , Processed in 0.202868 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表