AcDbBlockTableRecord:块表记录或块定义 AcDbBlockReference:块引用 意味着这个变量指向的是一个真正的块。
概念辨析:在CAD中,块和块表记录是不同的概念。类比于类与对象。而块中的实体又类似于对象中的成员变量。
所以,AcDbBlockTableRecord为块表记录,类似于一个模板,所有的块都是仿照这个模板构造的。需要显示的实体都需要添加到AcDb_Model_Space空间中。但是注意:直接向AcDb_Model_Space中添加图形对象而不是块引用,则显示出来的为一个个单独的图形对象。
若为了以块的方式显示,则需要先创建一个AcDbBlockTableRecord对象,并添加Name和其中的实体,然后添加到当前数据库块表(AcDbBlockTable)中。
通过新块表的ID构造一个AcDbBlockReference的对象,并将其添加到AcDb_Model_Space的空间中。这样显示出来的则以块的方式显示。
AcDbAttributeDefination:属性定义。 AcDbAttribute:具体的属性
类似于块表和块的关系,属性定义存在于AcDbBlockTableRecord中,而AcDbAttribute存在于AcDbBlockReference中。
如同AcDbBlockTableRecord为一个类,而AcDbBlockReference为一个类的实例化对象。然后才会有具体的属性值。
ID为在应用程序中唯一标示实体。但是ID是为了方便数据库管理实体的工具。所以必须要将new出来的对象放入数据库中,这样才会被分配ID。
并且新new 出来的