明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2865|回复: 4

关于裁剪

[复制链接]
发表于 2006-7-30 12:39:00 | 显示全部楼层 |阅读模式
那位大哥知道, 把窗口中的图形按一个多边形边界去裁剪,保存多边形内的图形  ,这个怎么办,我想了好久都没有找到 ,我要用arx编程实现,能给个相关里的例子也好,谢谢。
发表于 2006-8-1 04:33:00 | 显示全部楼层

你是打算用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,否则会崩溃

发表于 2006-8-4 09:25:00 | 显示全部楼层
在图纸空间里创建一个多边形视口就可以了.
发表于 2006-8-4 20:22:00 | 显示全部楼层
xysyr发表于2006-8-4 9:25:00在图纸空间里创建一个多边形视口就可以了.

同感,但是不如建一个块,然后XC,更简单了
发表于 2010-5-21 14:34:00 | 显示全部楼层
如果用vba怎么编
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 12:55 , Processed in 0.158521 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表