找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1206|回复: 1

心伤

[复制链接]
发表于 2009-1-11 22:52:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
请教高手,如图,黑色的线是原图里的,我这样画一条线(红色),怎样按照红线穿过黑线的顺序依次取得黑线的坐标?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2009-1-12 10:23:32 | 显示全部楼层
用 ssget f 选择,然后 inters 求交点,最后对求得的交点按曲线排序

  1. (defun c:tt (/ e sp ep ss ssl i sp1 ep1 pl pts)
  2.   (if (setq e (car (entsel "\npick line: ")))
  3.     (progn
  4.       (setq sp (vlax-curve-getstartpoint e)
  5.             ep (vlax-curve-getendpoint e)
  6.       )

  7.       (if (setq ss (ssget "_F" (list sp ep)))
  8.         (progn
  9.           (setq        ssl (sslength ss)
  10.                 i   -1
  11.           )
  12.           (repeat ssl
  13.             (setq ent (ssname ss (setq i (1+ i)))
  14.                   sp1 (vlax-curve-getstartpoint ent)
  15.                   ep1 (vlax-curve-getendpoint ent)
  16.             )
  17.             (setq pl (cons (inters sp ep sp1 ep1 nil) pl))
  18.           )
  19.           (setq
  20.             pts        (mapcar
  21.                   'cadr
  22.                   (vl-sort
  23.                     (mapcar
  24.                       '(lambda (x)
  25.                          (list (vlax-curve-getparamatpoint
  26.                                  e
  27.                                  (vlax-curve-getclosestpointto e x)
  28.                                )
  29.                                x
  30.                          )
  31.                        )
  32.                       (vl-remove nil pl)
  33.                     )
  34.                     '(lambda (x1 x2)
  35.                        (< (car x1) (car x2))
  36.                      )
  37.                   )
  38.                 )
  39.           )
  40.         )
  41.       )
  42.     )
  43.   )
  44.   (princ pts)
  45.   (princ)
  46. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-18 22:17 , Processed in 0.393841 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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