参考博客:https://adndevblog.typepad.com/autocad/2013/01/restore-hatch-boundaries-if-they-have-been-lost.html
/*
* 函数介绍:获取图案填充边界
* 输入参数:AcDbObjectId hatchId 填充区域Id
* 输出参数:AcDbVoidPtrArray & entitySet 边界实体指针
* 返回值 : bool true获取边界成功
*/
bool RestoreHatchBoundary(AcDbObjectId hatchId, AcDbVoidPtrArray &entitySet)
{
AcDbHatch*pHatch = NULL;
acdbOpenObject(pHatch, hatchId, AcDb::kForRead);
if (pHatch == NULL)
return false;
// For each loop, draw the boundary.
int nLoops = pHatch->numLoops();
for (int i = 0; i < nLoops; i++)
{
long loopType;
if (pHatch->loopTypeAt(i) & AcDbHatch::kPolyl