zoukankan      html  css  js  c++  java
  • 探秘AutoCAD中的标注关联

    新开一张图,创建一个直线AcDbLine,创建一个对齐标注AcDbAlignedDimension,关联直线的起点和终点。那么CAD创建了哪些对象,通过ARXDBG分析如下:

    AcDbLine,句柄271
    AcDbAlignedDimension,句柄272
    AcDbDictionary,句柄273,名称ACAD_DIMASSOC,属于AcDbAlignedDimension的扩展词典
    AcDbFontTableRecord,句柄274,未公开
    AcDbLayerTableRecord,句柄275,名称Defpoints
    AcDbBlockTableRecord,句柄276,名称*D1,标注的匿名块
    AcDbBlockBegin,句柄277,AcDbBlockEnd,句柄278,一直到句柄283,标注内的实体
    AcDbDimAssoc,句柄284,直线与标注的关联对象

    所以直线与标注能自动关联,其实是多了一个AcDbDimAssoc的中间对象,负责直线改变时通知标注联动。

    标注点与直线的端点关联是通过AcDbOsnapPointRef来记录。

    不过C#里并没有开放AcDbDimAssoc和AcDbOsnapPointRef的接口,只能通过C++/CLI编程扩展。

  • 相关阅读:
    Codeforces Round #274 (Div. 2)
    codeforces 477C
    ZOJ 3822 Domination
    Codeforces Round #271 (Div. 2)
    进程
    线程
    udp和tcp特点 实现文件上传
    面向对象补1
    socket基本语法和粘包
    网络编程
  • 原文地址:https://www.cnblogs.com/ztcad/p/14107353.html
Copyright © 2011-2022 走看看