明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4288|回复: 8

请问如何裁剪对象比如多义线?

[复制链接]
发表于 2004-4-3 20:50:00 | 显示全部楼层 |阅读模式
如何裁剪对象?
发表于 2004-4-4 21:49:00 | 显示全部楼层
自定义对象的裁剪要难一些,一般对象的裁剪,用acedcommand调用trim命令就可以做到了,效果也不错
发表于 2004-4-4 21:50:00 | 显示全部楼层
用acedcommand调用trim就可以了,不过要获取对象,添加条件
 楼主| 发表于 2004-4-10 21:14:00 | 显示全部楼层
谢谢
 楼主| 发表于 2004-4-13 21:30:00 | 显示全部楼层
现在有个新问题,我想用矩形选择一个范围,然后把里面的实体在框外面的部分都裁掉,调用trim时,在什么地方设置裁剪条件,请教各位/ 谢谢
发表于 2004-4-17 12:47:00 | 显示全部楼层
怎样一次剪除多条线段?

  AutoCAD通常的选择方式是“window”和“crossing”。但是在用“trim”选择要剪切的图形时,这两种选择方式都是不起作用的。这样的话,当要剪切多条线段时,要选取多次才能完成,非常麻烦。这时可以使用“fence”选取方式。当“trim”命令提示选择要剪除的图形时,输入“f”,然后在屏幕上画出一条虚线,回车,这时被该虚线接触到的图形全部被剪切掉。下面就是要完成这一任务命令行提示的内容。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2004-5-6 19:51:00 | 显示全部楼层
谢谢
发表于 2010-5-26 05:03:00 | 显示全部楼层

Acad::ErrorStatus TrimPolyline(AcDbPolyline *&pPline, AAcGePoint3d ptBefore, AcGePoint3d ptAfter)
{
 AcGeDoubleArray params;
 AcDbVoidPtrArray polylineSegments;
 double dStartParam, dEndParam, dParam1, dParam2;
 
 pPline->getStartParam(dStartParam);
 pPline->getEndParam(dEndParam);
 if (pPline->getParamAtPoint(ptBefore, dParam1) == Acad::eOk &&
  pPline->getParamAtPoint(ptAfter, dParam2) == Acad::eOk) {
  if (dParam1 < dParam2) {
   params.append(dParam1);
   params.append(dParam2);
  } else {
   params.append(dParam2);
   params.append(dParam1);
  }
  if (pPline->getSplitCurves(params, polylineSegments) == Acad::eOk) {
   switch (polylineSegments.length()) {
    case 3:
     pPline = (AcDbPolyline*)polylineSegments.at(1);
     break;
    case 2:
     if (params.at(0) == dStartParam) {
      pPline = (AcDbPolyline*)polylineSegments.at(0);
     } else {
      pPline = (AcDbPolyline*)polylineSegments.at(1);
     }
     break;
    case 1:
     break;
   }
   return Acad::eOk;
  }
 }
 return Acad::eInvalidInput;
}

发表于 2011-10-12 11:25:38 | 显示全部楼层
dipenghao 发表于 2004-4-13 21:30
现在有个新问题,我想用矩形选择一个范围,然后把里面的实体在框外面的部分都裁掉,调用trim时,在什么地方 ...

我也遇到一样的问题! 用.net 来实现  矩形选择一个范围后,  可以选择性的裁剪   裁里 或 裁外  请MJ高手指点!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 10:02 , Processed in 0.158570 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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