许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  C# CAD二次开发类库:块的操作详解

C# CAD二次开发类库:块的操作详解

阅读数 2
点赞 0
article_banner

c# cad 二次开发 类库 块的操作

   using Autodesk.AutoCAD.ApplicationServices;

   using Autodesk.AutoCAD.DatabaseServices;

   using Autodesk.AutoCAD.EditorInput;

   using Autodesk.AutoCAD.Geometry;

   using Autodesk.AutoCAD.Runtime;

   using System;

   using System.Collections.Generic;

   using System.Linq;

   using System.Text;

   using System.Threading.Tasks;

namespace _14块操作

   {

   public class Class1

   {

   //简单块

   [CommandMethod(“BlockDemo”)]

   public void   BlockDemo()

   {
Database db = HostApplicationServices.WorkingDatabase;

   //using (Transaction trans = db.TransactionManager.StartTransaction())

   //{

   // BlockTable bt = (BlockTable)trans.GetObject(db.BlockTableId, OpenMode.ForRead);

   // foreach ( var item in bt)

   // {

   // BlockTableRecord btr = (BlockTableRecord)item.GetObject(OpenMode.ForRead);

   // }

   //}

   MyBlockTableRecord.Block1Id = db.AddBlockTableRecord(MyBlockTableRecord.Block1Name, MyBlockTableRecord.Block1Ents);

    }

    [CommandMethod("InsertBlockDemo")]
    public void InsertBlockDemo()
    {
        Database db = HostApplicationServices.WorkingDatabase;
        db.InsertBlockBlockReference(MyBlockTableRecord.Block1Id, new Point3d(10, 10, 0));
        db.InsertBlockBlockReference(MyBlockTableRecord.Block1Id, new Point3d(40, 10, 0),Math.PI/4,new Scale3d(2));
        db.InsertBlockBlockReference(MyBlockTableRecord.Block1Id, new Point3d(100, 10, 0), Math.PI / 4, new Scale3d(2,1.5,1));
    }

    //注释样式的箭头
    [CommandMethod("ModifyDimDemo")]
    public void ModifyDimDemo()
    {
        Database db = HostApplicationServices.WorkingDatabase;
        MyBlockTableRecord.DimBlock1Id = db.AddBlockTableRecord(MyBlockTableRecord.DimBlock1Name, MyBlockTableRecord.DimBlock1Ents);
        using (Transaction trans = db.TransactionManager.StartTransaction())
        {
            
            DimStyleTable dst = (DimStyleTable)trans.GetObject(db.DimStyleTableId, OpenMode.ForRead);
            if (dst.Has("Standard"))
            {
                DimStyleTableRecord dstr = (DimStyleTableRecord)dst["Standard"].GetObject(OpenMode.ForRead);
                if (MyBlockTableRecord.DimBlock1Id != ObjectId.Null)
                {
                    dstr.UpgradeOpen();
                    dstr.Dimblk = MyBlockTableRecord.DimBlock1Id;
                    dstr.Dimasz = 1;
 
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空