找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: netbee

[分享]:[蜜蜂软体]坐标标注----新(源码)[2005.2.17更新]

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

使用道具 举报

发表于 2005-2-21 16:35:40 | 显示全部楼层
楼主你好,我加载了主程序后怎么显示不出“坐标标注设置”的对话框?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2005-2-21 20:37:26 | 显示全部楼层
最初由 JH9981 发布
[B]楼主你好,我加载了主程序后怎么显示不出“坐标标注设置”的对话框? [/B]

你的对话框文件及幻灯片文件要放在CAD的支持目录下,最好是复制到Support目录中。
----------
呵呵,掉了三个函数,这里补上。一楼的也已经补上了。
2005.2.24补:

  1. ;;坐标转换
  2. ;;A=(X-X0)cosA+(Y-Y0)sinA+A0
  3. ;;B=(Y-Y0)cosA-(X-X0)sinA+B0
  4. ;;ptu_ab:点ptu在AB坐标系中的坐标;
  5.  
  6. ;;ptu_xy:点ptu在xy坐标系中的坐标;
  7. ;;ang1:两坐标系的夹角(ab坐标系在xy坐标系中的方位角)
  8. ;;pt:需要转换的点
  9. (defun pt_xy->ab (ptu_xy ptu_ab ang1 pt /)
  10.   (list        (+ (* (- (car pt) (car ptu_xy)) (cos ang1))
  11.            (* (- (cadr pt) (cadr ptu_xy)) (sin ang1))
  12.            (car ptu_ab)
  13.         )
  14.         (+ (* (- (cadr pt) (cadr ptu_xy)) (cos ang1))
  15.            (- 0.0 (* (- (car pt) (car ptu_xy)) (sin ang1)))
  16.            (cadr ptu_ab)
  17.         )
  18.         (caddr pt)
  19.   )
  20. )
  21. ;;坐标转换
  22. ;;X=(A-A0)cosA-(B-B0)sinA+X0
  23. ;;Y=(B-B0)cosA+(A-A0)sinA+Y0
  24. ;;ptu_ab:点ptu在AB坐标系中的坐标;
  25.  
  26. ;;ptu_xy:点ptu在xy坐标系中的坐标;
  27. ;;ang1:两坐标系的夹角(ab坐标系在xy坐标系中的方位角)
  28. ;;pt:需要转换的点
  29. (defun pt_ab->xy (ptu_xy ptu_ab ang1 pt /)
  30.   (list        (+ (* (- (car pt) (car ptu_ab)) (cos ang1))
  31.            (- 0.0 (* (- (cadr pt) (cadr ptu_ab)) (sin ang1)))
  32.            (car ptu_xy)
  33.         )
  34.         (+ (* (- (cadr pt) (cadr ptu_ab)) (cos ang1))
  35.            (* (- (car pt) (car ptu_ab)) (sin ang1))
  36.            (cadr ptu_xy)
  37.         )
  38.         (caddr pt)
  39.   )
  40. )
  41. ;;;==================================================================
  42. ;;; (StrParse Str Delimiter)
  43. ;;;                将具有分隔符的字符串解析为列表
  44. ;;;------------------------------------------------------------------
  45. ;;; 参数:
  46. ;;;                Str                        要解析的字符串
  47. ;;;                Delimiter        要搜索的分隔符
  48. ;;;------------------------------------------------------------------
  49. ;;;        返回:
  50. ;;;                一个字符串列表。
  51. ;;;                示例:
  52. ;;;                (setq a "Harp,Guiness,Black and Tan")
  53. ;;;                (StrParse a ",")
  54. ;;;                返回:
  55. ;;;                ("Harp" "Guiness" "Black and Tan")
  56. ;;;------------------------------------------------------------------
  57. ;;; 相关主题: (StringToList)
  58. ;;;------------------------------------------------------------------
  59. (defun strParse        (Str Delimiter / SearchStr StringLen return n char)
  60.   (setq SearchStr Str)
  61.   (setq StringLen (strlen SearchStr))
  62.   (setq return '())
  63.   (while (> StringLen 0)
  64.     (setq n 1)
  65.     (setq char (substr SearchStr 1 1))
  66.     (while (and (/= char Delimiter) (/= char ""))
  67.       (setq n (1+ n))
  68.       (setq char (substr SearchStr n 1))
  69.     ) ;_ end of while
  70.     (setq return (cons (substr SearchStr 1 (1- n)) return))
  71.     (setq SearchStr (substr SearchStr (1+ n) StringLen))
  72.     (setq StringLen (strlen SearchStr))
  73.   ) ;_ end of while
  74.   (reverse return)
  75. ) ;_ end of defun
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-2-27 17:54:04 | 显示全部楼层
跟以下这个有什么不一样呢
http://www.xdcad.net/forum/showt ... 1684088#post1684088
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2005-2-27 18:04:22 | 显示全部楼层
最初由 li809 发布
[B]跟以下这个有什么不一样呢
http://www.xdcad.net/forum/showt ... 1684088#post1684088 [/B]

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

使用道具 举报

发表于 2005-2-28 11:36:40 | 显示全部楼层
一个非常强大的工具,可否把這坐标标注工具多加一個選項,把它變成英文版本,因為我用的是繁體字,坐标标注工具介面上的文字變成亂碼,煩請樓主可否修改一下,
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-4 01:30:30 | 显示全部楼层
命令: (LOAD "Dimzb.lsp")
测量坐标标注程序:ZBBZnil

命令: zbbz
参数类型错误: stringp nil
命令:
命令: zbbz

{坐标系:当前\比例:1.00000\前缀:Xy\图层:专用\坐标互换:是}标注基点或[选项(
O)]<退出>:o 参数类型错误: stringp nil
命令:
命令:  ZBBZ
{坐标系:当前\比例:1.00000\前缀:Xy\图层:专用\坐标互换:是}标注基点或[选项(
O)]<退出>:o 参数类型错误: stringp nil
命令:

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2005-3-4 17:41:59 | 显示全部楼层
这里Netbee_Lisp_Dir 变量是我的程序目录。
  1.     (if
  2.       (< (setq
  3.            Dcl_id (load_dialog (strcat Netbee_Lisp_Dir "Dim_zb.dcl"))
  4.          )
  5.          ;;(< (setq Dcl_id (load_dialog "Dimzb.dcl"))
  6.          0
  7.       ) ;_ 结束<
  8.        (exit)
  9.     ) ;_ 结束if

改为这样就行了。
  1.    
  2. (if
  3.       (< (setq
  4.            Dcl_id (load_dialog  "Dim_zb.dcl")
  5.          )
  6.          0
  7.       ) ;_ 结束<
  8.        (exit)
  9.     ) ;_ 结束if

你若不熟悉LISP,且不会用VL编辑器来跟踪调试的话,最好使用我已经编译好的VLX程序。里面已经全部搞定。
http://www.xdcad.net/forum/showt ... 1678748#post1678748
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-3-5 02:29:44 | 显示全部楼层
最初由 netbee 发布
[B]这里Netbee_Lisp_Dir 变量是我的程序目录。
[code]    (if
      (< (setq
           Dcl_id (load_dialog (strcat Netbee_Lisp_Dir "Dim_zb.dcl"))
         )
         ;;(< (setq Dcl_id (load_dialog "Dimzb.dcl"))
         0
     ... [/B]


不是这个的原因,因为程序中已经修改了,对话框也已经加载,只是由于某个变量为空,对话框不能初始化罢了。

另外问个问题:
用“VL”调试,应该是执行到哪里,哪里就应该高亮显示(即有个反亮框随者语句的执行而移动。我只碰到过两次,其余都是没有什么变化,不知你们的是怎样的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-6 23:08:28 | 显示全部楼层
已经搞定了,原来是你的那个存放程序目录的变量在作怪。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2005-3-22 09:20:59 | 显示全部楼层
很好用,谢谢。可是在CAD2005里不能用,Netbee,能否提供个2005的扩展函数?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 05:18 , Processed in 0.178866 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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