明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1801|回复: 15

选择集

  [复制链接]
发表于 2011-12-20 13:50 | 显示全部楼层 |阅读模式
请教大家,怎样写可以,选择紫色的圆弧和红色选择框,可以获得A和B两点

本帖子中包含更多资源

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

x
发表于 2011-12-20 15:16 | 显示全部楼层
再说详细点,根据什么得到什么?
 楼主| 发表于 2011-12-20 15:20 | 显示全部楼层
选圆弧可以得到圆弧两端点,也就得到了B点,但是怎么从选到的绿线得到A点?
 楼主| 发表于 2011-12-20 15:21 | 显示全部楼层
从选到的所有绿线中找出直线AB的A点
发表于 2011-12-20 16:33 | 显示全部楼层
;; 选择紫色的圆弧和红色选择框
;; 改 单选 圆弧如何?

  1. (Defun C:test ()
  2.    (setq ee (entsel "\n选择紫色的圆弧<<近AorB点: ")
  3.          pt (osnap (cadr ee) "end")
  4.          ee (car ee)
  5.          ss (ssget "C" pt pt)
  6.    )
  7.    (ssdel ee ss)
  8.    (setq ee (ssname ss 0)
  9.         pts (acet-geom-object-end-points ee)    ; 获得A和B两点
  10.    )
  11. )
 楼主| 发表于 2011-12-21 09:45 | 显示全部楼层
谢谢Andyhon,你的方法我试了可以获得A和B两点,要是不用   “近AorB点:" 就好了,因为一不小心就会点错
大家还有更好的办法吗?
 楼主| 发表于 2011-12-21 09:48 | 显示全部楼层
还有我图上的选择框是  ssget 选择时的框 不是真的有那个框
 楼主| 发表于 2011-12-21 09:51 | 显示全部楼层
(点选紫色的圆弧 ----> 框选绿色的线  -----> 得到A和B点)   我表达的不好,不好意思
发表于 2011-12-21 10:43 | 显示全部楼层
(Defun C:test ()
   (setq ee (entsel "\n选择紫色的圆弧: ")
         ee (car ee)
        pts (acet-geom-object-end-points ee)    ; 获得圆弧两端点
         pa (car  pts)
         pb (cadr pts)
        ssa (ssget "C" pa pa '((0 . "LINE")))
        ssb (ssget "C" pb pb '((0 . "LINE")))
   )
   
   (princ "\n框选连结区的线: ")
   (setq ss (ssget '((0 . "LINE"))))
   
   (cond
    ((ssmemb (setq ee (ssname ssa 0)) ss))
    ((ssmemb (setq ee (ssname ssb 0)) ss))
    (T (Alert "状况外!"))
   )
   (acet-geom-object-end-points ee)    ; 获得A和B两点
)
 楼主| 发表于 2011-12-21 11:57 | 显示全部楼层
谢谢Andyhon,达到效果了,谢谢你的帮助
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-19 08:06 , Processed in 0.222522 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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