找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: chenjian2159

[求助] 第一次发帖,求助万能的晓东家园

[复制链接]

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2013-8-15 17:59:16 | 显示全部楼层
G版的程序能达到目的,但楼主要的是跟BO命令一样,用“拾取点”的方式形成边界,这个才是重点!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2013-8-15 18:06:07 | 显示全部楼层

楼主要的是跟BO命令一样,用“拾取点”的方式形成边界,贴图里,只是在线内点击了一下,就形成边界了,这个是怎么做到的??
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 344个

财富等级: 日进斗金

发表于 2013-8-15 18:50:15 | 显示全部楼层
q3_2006 发表于 2013-8-15 18:06
楼主要的是跟BO命令一样,用“拾取点”的方式形成边界,贴图里,只是在线内点击了一下,就形成边界了,这 ...

  1. ;;(c:MyJoin)模糊串线,By Gu_xl 2013.08.15
  2. ;;点选方式
  3. (defun c:MyJoin  (/   *error* CMDECHO PEDITACCEPT   SS
  4.      SSL   PL   LST   LL   UR   CIR
  5.      CP   PTS1   PTS2 pt
  6.     )
  7.   (defun *error* (s)
  8.     (setvar 'peditaccept peditaccept)
  9.     (setvar 'cmdecho cmdecho)
  10.     (princ s)
  11.   )
  12.   (setq cmdecho (getvar 'cmdecho))
  13.   (setvar 'cmdecho 0)
  14.   (setq peditaccept (getvar 'peditaccept))
  15.   (setvar 'peditaccept 1)
  16.   ;(setq ss (ssget '((0 . "line,arc,*polyline"))))
  17.   (setq pt (getpoint "\n选取点:"))
  18.   (setq ss (gxl-sel-ssgetByptray (trans pt 1 0) '((0 . "line,arc,*polyline"))))
  19.   (if ss
  20.     (progn
  21.       (setq ssl (GXL-SEL-SS->LIST ss))
  22.       (setq
  23.   pl (apply 'append
  24.       (setq  lst (mapcar '(lambda (a)
  25.                (list (vlax-curve-getStartPoint a)
  26.                (vlax-curve-getendPoint a)
  27.                )
  28.              )
  29.             ssl
  30.           )
  31.       )
  32.      )
  33.       )
  34.       (setq ll (apply 'mapcar (cons 'min pl))
  35.       ur (apply 'mapcar (cons 'max pl))
  36.       )
  37.       (command "_circle"
  38.          "2p"
  39.          "_non"
  40.          (trans ll 0 1)
  41.          "_non"
  42.          (trans ur 0 1)
  43.       )
  44.       (setq cir (entlast))
  45.       (setq cp (cdr (assoc 10 (entget cir))))
  46.       (setq lst
  47.     (mapcar
  48.       '(lambda (x)
  49.          (if (apply 'gxl-Clockwise-p (cons cp x))
  50.            (reverse x)
  51.            x
  52.          )
  53.        )
  54.       lst
  55.     )
  56.       lst
  57.     (vl-sort
  58.       lst
  59.       '(lambda (a b)
  60.          (<  (vlax-curve-getParamAtPoint
  61.         cir
  62.         (vlax-curve-getclosestpointto cir (car a))
  63.       )
  64.       (vlax-curve-getParamAtPoint
  65.         cir
  66.         (vlax-curve-getclosestpointto cir (car b))
  67.       )
  68.          )
  69.        )
  70.     )
  71.       )
  72.       (setq pts1 (car lst)
  73.       lst   (append (cdr lst) (list pts1))
  74.       )
  75.       (while lst
  76.   (setq pts2 (car lst)
  77.         lst  (cdr lst)
  78.   )
  79.   (if (not (equal (cadr pts1) (car pts2) 1e-3))
  80.     (progn
  81.       (command "_line"
  82.          "_non"
  83.          (trans (cadr pts1) 0 1)
  84.          "_non"
  85.          (trans (car pts2) 0 1)
  86.          ""
  87.       )
  88.       (ssadd (entlast) ss)
  89.     )
  90.   )
  91.   (setq pts1 pts2)
  92.       )

  93.       (command "pedit" "m" ss "" "j" 1e-3 "")
  94.       (setvar 'peditaccept peditaccept)
  95.       (setvar 'cmdecho cmdecho)
  96.       (entdel cir)
  97.     )
  98.   )
  99.   (princ)
  100. )


  101. ;;;选择集转为图元列表
  102. (defun gxl-Sel-SS->List (ss / i s)
  103.   (if ss
  104.     (repeat (setq i (sslength ss))
  105.       (setq s (cons (ssname ss (setq i (1- i))) s))
  106.       )
  107.     )
  108.   )
  109. ;;(gxl-Clockwise-p p1 p2 p3)判断三点是否顺时针
  110. (defun gxl-Clockwise-p ( p1 p2 p3 )
  111.     (<
  112.         (* (- (car  p2) (car  p1)) (- (cadr p3) (cadr p1)))
  113.         (* (- (cadr p2) (cadr p1)) (- (car  p3) (car  p1)))
  114.     )
  115. )
  116. ;;pt = wcs
  117. ;;(setq ss (GXL-SEL-SSGETBYPTRAY (getpoint) '((0 . "line,arc,*polyline"))))
  118. (defun gxl-sel-ssgetByptray (PT  FILTER      /    VIEWSIZE    LEN
  119.         P0    P2    P1    P3  ANG   DA
  120.         SS    PT1   PT2    S
  121.              )
  122.   (command "_ucs" "_w")
  123.   (setq  viewsize (gxl-Sys-GetViewSize)
  124.   len   (apply 'distance viewsize)
  125.   p0   (car viewsize) ;_ 左下
  126.   p2   (cadr viewsize) ;_ 右上
  127.   p1   (list (car p0) (cadr p2) ) ;_ 左上
  128.   p3   (list (car p2) (cadr p0) ) ;_ 右下
  129.   ang   0
  130.   da   (/ pi 15)
  131.   ss   (ssadd)
  132.   )
  133.   (repeat 30
  134.     (setq pt1 (polar pt ang len))
  135.     (vl-some '(lambda (a) (setq pt2 (inters pt pt1 (car a) (cadr a))))
  136.        (list (list p0 p1) (list p1 p2) (list p2 p3) (list p3 p0))
  137.     )
  138.     (setq s (ssget "F" (list pt pt2) filter))
  139.     (if  s
  140.       (ssadd (cadar (ssnamex s)) ss)
  141.     )
  142.     (setq ang (+ ang da))
  143.   )
  144.   (command "_ucs" "_p")
  145.   (if (> (sslength ss) 0) ss)
  146. )
  147. (defun gxl-Sys-GetViewSize (/ pc vh sc vw vh pmin pmax)
  148.   (setq pc (getvar "viewctr")
  149.                  vh (getvar "viewsize")
  150.                  sc (getvar "screensize")
  151.                 vw (* vh (/ (car sc) (cadr sc)))
  152.                 pmin (list (- (car pc) (* 0.5 vw)) (- (cadr pc) (* 0.5 vh)))
  153.                 pmax (list (+ (car pc) (* 0.5 vw)) (+ (cadr pc) (* 0.5 vh)))
  154.            )
  155.   (list pmin pmax)
  156.   )

点评

感谢万能的顾版,试用了下,对简单的非常好用,同时碰到了一些问题,顾版能否帮忙看看,谢谢  详情 回复 发表于 2013-8-15 20:37
这个方式太厉害了,要学,谢谢G版!  详情 回复 发表于 2013-8-15 19:43
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2013-8-15 19:43:58 | 显示全部楼层

这个方式太厉害了,要学,谢谢G版!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-15 20:37:42 | 显示全部楼层
本帖最后由 chenjian2159 于 2013-8-15 21:03 编辑


感谢万能的顾版,试用了下,对简单的非常好用,同时碰到了一些问题,顾版能否帮忙看看,谢谢
QQ图片20130815210124.jpg


MyJoin碰到的几个问退.rar

182.58 KB, 下载次数: 5, 下载积分: D豆 -1 , 活跃度 1

点评

遇到的问题,还是最好直接把图片贴上来,不是谁都有时间下载附件的,很多时候看图片就知道问题在哪了。  详情 回复 发表于 2013-8-15 20:44
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-15 20:44:35 | 显示全部楼层
chenjian2159 发表于 2013-8-15 20:37
感谢万能的顾版,试用了下,对简单的非常好用,同时碰到了一些问题,顾版能否帮忙看看,谢谢

遇到的问题,还是最好直接把图片贴上来,不是谁都有时间下载附件的,很多时候看图片就知道问题在哪了。

点评

谢谢斑竹提醒,当时想DWG文件好测试,图片的话不能对程序进行测试,而且截图怕是看不清楚  详情 回复 发表于 2013-8-15 20:47
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-8-15 20:45:47 来自手机 | 显示全部楼层
尽可能缩小时也可以完成BO来自: Android客户端

点评

请问道友你的手机客户端怎么弄的?  详情 回复 发表于 2013-11-19 00:13
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-15 20:47:20 | 显示全部楼层
newer 发表于 2013-8-15 20:44
遇到的问题,还是最好直接把图片贴上来,不是谁都有时间下载附件的,很多时候看图片就知道问题在哪了。

谢谢斑竹提醒,当时想DWG文件好测试,图片的话不能对程序进行测试,而且截图怕是看不清楚

点评

图片,DWG同时提供。很多时候看到你的图片,图都不用测试。我这样说,是希望你的问题能尽可能快的解决。  详情 回复 发表于 2013-8-15 20:52
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-15 20:52:51 | 显示全部楼层
chenjian2159 发表于 2013-8-15 20:47
谢谢斑竹提醒,当时想DWG文件好测试,图片的话不能对程序进行测试,而且截图怕是看不清楚

图片,DWG同时提供。很多时候看到你的图片,图都不用测试。我这样说,是希望你的问题能尽可能快的解决。

点评

恩,可惜图片看不到清楚哦,晓东家园的氛围真好!谢谢各位!希望能顾版能解决!谢谢顾版!  详情 回复 发表于 2013-8-15 21:05
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-15 21:05:07 | 显示全部楼层
newer 发表于 2013-8-15 20:52
图片,DWG同时提供。很多时候看到你的图片,图都不用测试。我这样说,是希望你的问题能尽可能快的解决。
...

恩,可惜图片看不到清楚哦,晓东家园的氛围真好!谢谢各位!希望能顾版能解决!谢谢顾版!

点评

建议你还是放弃选点自动找边界那种方式,这种方式出错概率很大。 还是你先选择好要处理的线,让程序去处理选择集。  详情 回复 发表于 2013-8-15 21:24
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-15 21:24:37 | 显示全部楼层
chenjian2159 发表于 2013-8-15 21:05
恩,可惜图片看不到清楚哦,晓东家园的氛围真好!谢谢各位!希望能顾版能解决!谢谢顾版!

建议你还是放弃选点自动找边界那种方式,这种方式出错概率很大。

还是你先选择好要处理的线,让程序去处理选择集。

点评

面对复杂的地形图,选择好处理的线的话是不是太麻烦了呢,个人感觉选点自动找边界的这种方式最适用了,不过可能就是程序比较麻烦  详情 回复 发表于 2013-8-15 21:36
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-15 21:36:46 | 显示全部楼层
newer 发表于 2013-8-15 21:24
建议你还是放弃选点自动找边界那种方式,这种方式出错概率很大。

还是你先选择好要处理的线,让程序去 ...

面对复杂的地形图,选择好处理的线的话是不是太麻烦了呢,个人感觉选点自动找边界的这种方式最适用了,不过可能就是程序比较麻烦

点评

程序不能解决一切问题! 在程序开始可以先用Bpoly点选,若生成边界则结束,没有生成边界,则采用上述程序生成边界,可解决多数问题!任何程序很难解决所有问题!上述程序的多边形越接近凸多边形,成功率越高!对于  详情 回复 发表于 2013-8-15 22:12
实际上,你窗选一下,就给你封闭一个房子是最好不过的了,没选上的,你就单独给补上,你不希望程序出错给你乱生成吧,不要指望你点一个点,然后就出去抽烟等着了。  详情 回复 发表于 2013-8-15 21:54
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-15 21:54:54 | 显示全部楼层
chenjian2159 发表于 2013-8-15 21:36
面对复杂的地形图,选择好处理的线的话是不是太麻烦了呢,个人感觉选点自动找边界的这种方式最适用了,不 ...

实际上,你窗选一下,就给你封闭一个房子是最好不过的了,没选上的,你就单独给补上,你不希望程序出错给你乱生成吧,不要指望你点一个点,然后就出去抽烟等着了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 344个

财富等级: 日进斗金

发表于 2013-8-15 22:12:12 | 显示全部楼层
chenjian2159 发表于 2013-8-15 21:36
面对复杂的地形图,选择好处理的线的话是不是太麻烦了呢,个人感觉选点自动找边界的这种方式最适用了,不 ...

程序不能解决一切问题!
在程序开始可以先用Bpoly点选,若生成边界则结束,没有生成边界,则采用上述程序生成边界,可解决多数问题!任何程序很难解决所有问题!上述程序的多边形越接近凸多边形,成功率越高!对于凹凸不平、狭长拐弯的多边形,上述算法则很难成功!

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6468个

财富等级: 富甲天下

发表于 2013-8-16 00:43:42 | 显示全部楼层
好像院长写过一个这样的程式。

点评

G版的程序适合我,哈哈。虽然晓东家园有些功能做不到完美的地方,但是至少能达到百分之七八十的满意。这就是CAD更新多少年都做不到的成绩,感谢晓东论坛,还要感谢这些高手们的付出!  详情 回复 发表于 2013-11-19 00:53
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-25 04:37 , Processed in 0.417829 second(s), 57 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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