找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2020|回复: 25

[求助] [求助]:這個問題,可能要版主們的水平才能搞定(XYP版主能出手麽?)

[复制链接]

已领礼包: 2个

财富等级: 恭喜发财

发表于 2005-11-3 13:10:24 | 显示全部楼层 |阅读模式

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

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

×
如附件,有N條不相交的封閉多義線,現設定目標值a,求:
1.將每條多義線寬度小於a的地方標示出來(畫個圓圈都行)
2.將相鄰多義線間距小於a的地方標示出來.(同樣,畫個圓圈都行)
請高手們幫忙寫個程序,謝謝!

(一天了,怎麽沒人理啊!版主們都忙什麽去了呀!XYP版主,好象沒有你搞不定的.幫幫忙啦!)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-11-4 13:43:21 | 显示全部楼层
发图的方法不错,但提供的文件没表示清楚。
先把图“说”清楚(哪儿画圈?),再出给你主意。……

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

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

 楼主| 发表于 2005-11-4 19:56:41 | 显示全部楼层
因为不会传象版主做的图片,还是附压缩档.
如果图中例子,假设我要找出图中<0.06mm的线宽和线间隙,我就在找出的地方画个圆标示出来.在宽度<0.06且连续的地方,只要标示一处即可,如果小于0.06的地方是分散的,则在每个小于0.06的地方都要标示出来.

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

使用道具 举报

发表于 2005-11-4 21:30:00 | 显示全部楼层
关注,看看xyp的绝学:P
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-4 23:54:46 | 显示全部楼层
不是很明白,还是请狂刀来指点一下吧!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-4 23:59:48 | 显示全部楼层
最初由 taner 发布
[B]因为不会传象版主做的图片,还是附压缩档.
如果图中例子,假设我要找出图中<0.06mm的线宽和线间隙,我就在找出的地方画个圆标示出来.在宽度<0.06且连续的地方,只要标示一处即可,如果小于0.06的地方是分散的,则在每个小... [/B]

附件加密后就更不明白了!呵呵……

★告知一个秘密★
加载xyp_lib.vlx
运行命令:gift
猜对密码(5位英文字母)就可以显示u系列自定义函数!
运行命令:xyp1964
猜对密码就可以显示xyp_lib的全部自定义函数!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-5 06:00:14 | 显示全部楼层
哇噻,xyp的函数集里面有复活节彩蛋阿!
楼主加密了文件,怎么看阿?
图片好像是电子钟屏幕阿。一楼的多义线都是0宽度。求每条多义线的统一宽度或分段宽度,直接看实体表或提取线段宽就可。
第二个问题,wkai和aeo以前写过,求两曲线间最小间距并在最近点画线条。直接可用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

 楼主| 发表于 2005-11-5 06:41:41 | 显示全部楼层
不好意思,用的別人的電腦.不知道人家的東西有加密.
密碼:342013794


重傳的附件沒密碼了!

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

使用道具 举报

发表于 2005-11-5 23:13:54 | 显示全部楼层
共有 10 个位置被标识!
(线较多,检测时间较长,程序有待改进)
  1. [FONT=courier new]
  2. (load "xyp_lib")
  3. ;|加载通用函数(可在签名栏直接下载)
  4. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  5. 利用以下任何一种方式(首选第一种)即可加载和运行通用函数内的所有子程序:
  6. ★1·在acad.lsp中增加(load"xyp_lib")
  7. ■2·在每个程序内增加(load"xyp_lib")
  8. ■3·在command下,输入(load"xyp_lib")
  9. ■4·在菜单.mnl中增加(load"xyp_lib")
  10. ■5·将xyp_lib.vlx文件直接拽到cad屏幕
  11. [COLOR=red] ★通用函数下载地址:[/COLOR]
  12. [url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]
  13. |;

  14. ;;;多义线间距小于a的地方标识出來
  15. (defun c:test ()
  16.   (CMDLA0)
  17.   (setvar "osmode" 0)
  18.   (if (null dist)
  19.     (setq dist 0.06)
  20.   )
  21.   (setq        dist (UREAL 7 "" "\n最小间距" dist)
  22.         ss   (ssget '((0 . "*LINE")))
  23.         i    -1
  24.         m    0
  25.   )
  26.   (mkla"标识"1)
  27.   (while (setq s1 (ssname ss (setq i (1+ i))))
  28.     (setq ptlst-1 (xyp-get-Vertexes s1 t))
  29.     (foreach pta ptlst-1 (inters-check))
  30.   )
  31.   (princ "\n共有 ")
  32.   (princ m)
  33.   (princ " 个位置被标识!")
  34.   (CMDLA1)
  35. )
  36. (defun inters-check ()
  37.   (command "circle" pta dist)
  38.   (setq        sn     (entlast)
  39.         K      -1
  40.         pt-tmp '()
  41.   )
  42.   (while (setq s2 (ssname ss (setq K (1+ K))))
  43.     (setq pt-tmp (append (xyp-get-Inters sn s2 0) pt-tmp))
  44.   )
  45.   (if (< (length pt-tmp) 4)
  46.     (entdel sn)
  47.     (setq m (1+ m))
  48.   )
  49. )[/FONT]

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

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

 楼主| 发表于 2005-11-5 23:20:43 | 显示全部楼层
老大,只是提示找到多少個,但是沒有標示出來.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-5 23:26:40 | 显示全部楼层
最初由 taner 发布
[B]老大,只是提示找到多少個,但是沒有標示出來. [/B]

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

使用道具 举报

发表于 2005-11-5 23:54:26 | 显示全部楼层
改进版
  1. [FONT=courier new]
  2. ;;;多义线间距小于a的地方标识出來
  3. (defun c:test ()
  4.   (CMDLA0)
  5.   (setvar "osmode" 0)
  6.   (if (null dist)
  7.     (setq dist 0.06)
  8.   )
  9.   (setq        dist (UREAL 7 "" "\n最小间距" dist)
  10.         ss   (ssget '((0 . "*LINE")))
  11.         i    -1
  12.         m    0
  13.         k-pt 0
  14.   )
  15.   (mkla "标识" 1)
  16.   (SET-START-TIME)
  17.   (while (setq s1 (ssname ss (setq i (1+ i))))
  18.     (setq ptlst-1 (xyp-get-Vertexes s1 t)
  19.           k-pt          (+ k-pt (length ptlst-1))
  20.     )
  21.     (foreach pta ptlst-1 (inters-check))
  22.   )
  23.   (PRINC-USED-TIME)
  24.   (princ "\n共检测 ")
  25.   (princ k-pt)
  26.   (princ " 个坐标点。")
  27.   (princ "\n共有 ")
  28.   (princ m)
  29.   (princ " 个位置被标识!")
  30.   (CMDLA1)
  31. )
  32. (defun inters-check ()
  33.   (command "circle" pta dist)
  34.   (setq        sn     (entlast)
  35.         pt0    (xyp-get-MinMaxPoint sn 0)
  36.         pt1    (xyp-get-MinMaxPoint sn 1)
  37.         ss1    (ssget "c" pt0 pt1)
  38.         ss2    (SSINTER SS SS1)
  39.         K      -1
  40.         pt-tmp '()
  41.   )
  42.   (while (setq s2 (ssname ss2 (setq K (1+ K))))
  43.     (setq pt-tmp (append (xyp-get-Inters sn s2 0) pt-tmp))
  44.   )

  45.   (if (< (length pt-tmp) 4)
  46.     (entdel sn)
  47.     (setq m (1+ m))
  48.   )
  49. )
  50. (princ)
  51. [/FONT]

前后运行时间对比:
用时 : 3分41.45秒
共有 8 个位置被标识!

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

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

 楼主| 发表于 2005-11-6 02:19:41 | 显示全部楼层
命令: (load "C:/Documents and Settings/yf/桌面/1.lsp") INTERS-CHECK

命令: test*取消*

命令:
命令:
命令: _appload 已成功加载 xyp_lib.VLX。


命令:
xyp_lib通用函数已加载。  E-mail : xyp@bsedi.com
命令:
命令: *取消*

命令: *取消*

命令: (load "C:/Documents and Settings/yf/桌面/1.lsp") INTERS-CHECK

命令: test


最小间距<0.0600>:

选择对象: 指定对角点: 找到 68 个(好象是說找到68個實體)

选择对象:

命令: select

选择对象: 指定对角点: 找到 69 个(而SELECT又找到69個)

选择对象:

結果,什麽都沒做!不知道爲什麽


老大,我知道問題出在哪裏了!原來是你老人家將通用函數更新了!
版主真是個牛人,Autocad公司沒找你去爲做開發,真是可惜了!謝謝了!

有一個問題,能否將你的通用函數不要放在一個文件裏,只有在需要時,有選擇性的調用?我不知道每次都將全部的通用函數都載入,是否影響運行速度.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-6 08:50:14 | 显示全部楼层
本帖最后由 xyp1964 于 2015-9-17 14:07 编辑
最初由 taner 发布
[B]命令: (load "C:/Documents and Settings/yf/桌面/1.lsp") INTERS-CHECK

命令: test*取消*

命令:
命令:
命令: _appload 已成功加载 xyp_lib.VLX。


命令:
xyp_lib通用函数已加载。  E-mail : [email] [/B]

全部xyp_lib通用函数不过30~50个自定义函数,比起vlisp的简直是“九牛一毛”,区区200k左右文件决不会让你感觉到所谓速度问题!可以放心加载,不过要定期重新下载更新,否则会报错或达不到预想的效果。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

 楼主| 发表于 2005-11-6 09:07:23 | 显示全部楼层
最初由 xyp1964 发布
[B][QUOTE]最初由 taner 发布
[B]命令: (load "C:/Documents and Settings/yf/桌面/1.lsp") INTERS-CHECK

命令: test*取消*

命令:
命令:
命令: _appload 已成功加载 xyp_lib.VLX。


命令:
xyp_lib... [/B]


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 19:06 , Processed in 0.185448 second(s), 58 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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