明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: 54525596

[提问] 怎么选择这种PL线上的块

[复制链接]
发表于 2015-11-23 12:11:21 | 显示全部楼层

点评

人家需要在程序中让程序选择出来。。。。。。而不是用命令人工去选,ok?  发表于 2015-11-23 18:13
发表于 2015-11-23 19:05:22 | 显示全部楼层
本帖最后由 llsheng_73 于 2015-11-24 10:55 编辑



  1. (defun c:tt(/ e a b s i)
  2.   (if(and(setq e(car(entsel)))
  3.          (member(cdr(assoc 0(entget e)))'("LINE""ARC""CIRCLE""ELLIPSE""SPLINE""LWPOLYLINE""POLYLINE"))
  4.          (vlax-method-applicable-p(setq e(vlax-ename->vla-object e))'getboundingbox))
  5.     (progn(vla-getboundingbox e'a'b)
  6.       (if(setq i 0 s(ssget"X"(list'(0 . "INSERT")'(2 . "A1")'(-4 . ">=,>=")(cons 10(vlax-safearray->list a))'(-4 . "<=,<=")(cons 10(vlax-safearray->list b)))));;2组里边的块名根据自己情况更换
  7.         (progn
  8.           (repeat(sslength s)
  9.             (setq a(ssname s i)p(cdr(assoc 10(entget a))))
  10.             (if(equal(vlax-curve-getClosestPointTo e p)p 1e-8);;块插入点在线上
  11.               (setq i(1+ i))
  12.               (setq s(ssdel a s))))  
  13.           (if(>(sslength s)0)(sssetfirst'nil s)
  14.             (setq s nil))
  15.           (alert(strcat(if s(itoa(sslength s))"0")"个图块被选出!\n接下来该你表演"))
  16.           ;;;
  17.           )))))

没有采用在曲线上密集采点进行栏选的办法。一是因为各种曲线采点过程比较复杂才能做到拆线能很好的代替曲线,然而这并不是最主要的,更重要的是另一个原因,进行栏选所用的点不能产生自相交,因此对于drawing1中的那个自相交的样条曲线将无法得到希望的选择结果



本帖子中包含更多资源

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

x
回复 支持 1 反对 0

使用道具 举报

发表于 2015-11-23 20:13:49 | 显示全部楼层
根据圆的大小,把PL分成N等分,得到点集,再SSGET “f”。
发表于 2015-11-23 20:17:39 | 显示全部楼层
或者,圆心到PL线的距离小于容差,所有满足条件的圆,即为所求。
发表于 2015-11-23 20:20:31 | 显示全部楼层
原来llsheng_73 已经写了。。。
浪费口水了
发表于 2015-11-24 08:07:04 | 显示全部楼层
llsheng_73 发表于 2015-11-23 19:05
没有采用在曲线上密集采点进行栏选的办法。一是因为各种曲线采点过程比较复杂才能做到拆线能很好的代 ...

CAD 还可以编程呀!哪里可以学习入门一下!
发表于 2015-11-24 08:23:38 | 显示全部楼层
juminth 发表于 2015-11-24 08:07
CAD 还可以编程呀!哪里可以学习入门一下!

你现在上论坛的目的是什么? 盲目瞎逛?  这个贴子所在是什么版块?

CAD编程的方法很多种! lisp ,vba, net ,c# ,c++ , 论坛都有相关的版块!
发表于 2015-11-27 12:44:02 | 显示全部楼层
不知道。。。。。。。。。。。。
 楼主| 发表于 2015-12-7 21:16:08 | 显示全部楼层
llsheng_73 发表于 2015-11-23 19:05
没有采用在曲线上密集采点进行栏选的办法。一是因为各种曲线采点过程比较复杂才能做到拆线能很好的代 ...

谢谢谢谢,我用了PL线上的点加密方法也做出来,但你的更好。好方法,
发表于 2022-10-16 18:43:53 | 显示全部楼层
llsheng_73 发表于 2015-11-23 19:05
没有采用在曲线上密集采点进行栏选的办法。一是因为各种曲线采点过程比较复杂才能做到拆线能很好的代 ...

这个太好了!不受屏幕显示限制!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-16 00:31 , Processed in 0.183882 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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