|
发表于 2009-4-6 21:59:00
|
显示全部楼层
代码修改如下:可能是将比例设置为0.0导致的问题。
AcDbObjectIdArray dbObjIds;
AcDbHatch* pHatch;
AcGeVector3d normal(0.0 , 0.0 , 1.0 );
dbObjIds.append(LineId[7]);
dbObjIds.append(LineId[8]);
dbObjIds.append(LineId[9]);
dbObjIds.append(LineId[3]); //LineId是四边形的四条边的Id
pHatch = new AcDbHatch();
pHatch -> setNormal(normal);
pHatch -> setElevation(0.0);
pHatch -> setAssociative(Adesk::kFalse);
pHatch -> setColorIndex(162);
pHatch -> setPatternScale(1.0);
pHatch -> setPatternAngle(0.0);
pHatch -> setPattern(AcDbHatch::kPreDefined, "ANSI31");
pHatch -> setHatchStyle(AcDbHatch::kNormal);
pHatch -> appendLoop(AcDbHatch::kExternal, dbObjIds);
pHatch -> evaluateHatch();
AddEntityToDbs( pHatch ); // AddEntityToDbs()函数用于将填充加入到数据库,函数没有问题
pHatch -> close(); |
|