你是打算用DBX吗?
这样的话在worldDraw或者viewportDraw的时候在mode->geometry()上加clip
AcGiClipBoundary cb; cb.m_vNormal=AcGeVector3d::kZAxis;//这个是多边形平面的法线 cb.m_ptPoint=AcGePoint3d::kOrigin;//这个是多边形的原点 cb.m_aptPoints.append(AcGePoint2d(0,0));//这个是多边形的顶点,如果只有两个点,那就认为是一个长方形 cb.m_aptPoints.append(AcGePoint2d(4000,4000));
cb.m_bDrawBoundary=true;//是否划出边界,似乎没效果 cb.m_bClippingFront=0;//是否远裁 cb.m_bClippingBack=0;//是否近裁 mode->geometry().pushClipBoundary(&cb);
DO SOMETHING.....
mode->geometry().popClipBoundary();//一定要POP,否则会崩溃
|