libreCAD源码阅读笔记3
1 前言
打开RS_Document源码后,又出现了RS_EntityContainer、RS_Entity等一系列类,这好像就是libreCAD的数据模型,有具体的实体类,也有实体类所关联的数据。
2 相关类
2.1 RS_EntityContainer类
RS_EntityContainer类是一个Composite模式的类,主要是各种点、线、面等具体要素的集合。
2.2 RS_Entity类
RS_Entity是点、线、弧线等绘制对象的基类,属性有该绘制对象所属的对象容器、图层;对象的最小外包矩形;绘制自己时用的RS_Pen;对象ID等内容。对象的draw函数为纯虚函数,子类需要实现该类实现绘制自身的功能,该函数接受RS_Painter、RS_GrahpicView作为绘制环境和绘制窗体。