找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 543|回复: 7

[求助]:关于坐标标注问题

[复制链接]
发表于 2005-3-26 14:46:10 | 显示全部楼层 |阅读模式

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

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

×
以前曾见过别人用CAD2000以上版本画图,在坐标标注时可以同时出现XY坐标,自己试了试,却不行,是不是要用到命令参数还是需要外部加载什么工具?
请指教。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-3-26 15:39:00 | 显示全部楼层
到论坛中找一些辅助工具,用LISP编写的,有许多!建议有晓东工具箱.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2005-3-27 22:02:57 | 显示全部楼层
问题解决了。
转载:aqaz[原创]
;============================== 开始 ==============================

(defun c:zbbz ()

;============================== 设置 ==============================

  (prompt "\n输入字高:<") (princ (getvar "textsize")) (princ ">")
  (setq 输入字高 (getreal))
  (if (not 输入字高)
      (setq 字高 (getvar "textsize"))
      (setq 字高 输入字高)
  )
  (setq old_dimzin (getvar "dimzin"))
  (setvar "dimzin" 1)
  (setq 精度 3)                     
  (setvar "cmdecho" 0)
  (标注)
)


;====================== 取起点的位置及数值 ======================

  (defun 标注()
    (setq 标注点 (getpoint "\n点取标注点:"))
    (if 标注点 (继续) (退出))
  )

  (defun 继续()
    (setq 绝对标注点 (trans 标注点 1 0))
    (setq x_坐标值 (rtos (car   绝对标注点) 2 精度))
    (setq y_坐标值 (rtos (nth 1 绝对标注点) 2 精度))


;=================== 取标注引线位置及长度和角度 ===================

    (setq 临时起点 (getpoint 标注点 "\n点取标注位置:"))
    (setq 引线长度 (distance 标注点 临时起点))
    (setq 临时角度 (atof (angtos (angle 标注点 临时起点 ) 0 3)))
  

;================= 检查标注引线的角度并设为标准值 =================

    (setq 标准角度 (cond ((<= 临时角度    15)   0)
                         ((<= 临时角度  37.5)  30)
                         ((<= 临时角度  52.5)  45)
                         ((<= 临时角度  67.5)  60)
                         ((<= 临时角度   105)  90)
                         ((<= 临时角度 127.5) 120)
                         ((<= 临时角度   141) 135)
                         ((<= 临时角度   165) 150)
                         ((<= 临时角度   195) 180)
                         ((<= 临时角度 217.5) 210)
                         ((<= 临时角度 232.5) 225)
                         ((<= 临时角度   255) 240)
                         ((<= 临时角度   285) 270)
                         ((<= 临时角度 307.5) 300)
                         ((<= 临时角度 322.5) 315)
                         ((<= 临时角度   345) 330)
                         (0)
                   )
    )





;======================= 设标注引线终点的位置 =======================

    (setq 起点 (polar 标注点 (angtof (itoa 标准角度) 0) 引线长度))
  

;===================== 设标注线终点的位置及方向 ===================

    (setq x_字符数 (strlen  x_坐标值))
    (setq y_字符数 (strlen  y_坐标值))
    (if (> x_字符数 y_字符数)
        (setq 坐标字符数 x_字符数)
        (setq 坐标字符数 y_字符数)
    )
  
    (setq 坐标字符长 (* 坐标字符数 字高))  
    (if (and (< 标准角度 270) (> 标准角度 90))
        (setq 标注方向 180)
        (setq 标注方向 0)
    )
  
    (if (= 标注方向 180)
        (setq 终点 (list (- (car 起点) 坐标字符长)  (nth 1 起点)))
        (setq 终点 (list (+ (car 起点) 坐标字符长)  (nth 1 起点)))
    )


;======================== 设标注数字的起点 ========================

    (if (= 标注方向 0) (setq 文字开始点 起点) (setq 文字开始点 终点))  
    (setq 起点_x (list (car 文字开始点)
                       (+ (nth 1 文字开始点) (/ 字高 3.5))))
    (setq 起点_y (list (car 文字开始点)
                       (- (nth 1 文字开始点) 字高 (/ 字高 3.5))))
  

;======================= 使两个坐标字符等长 =======================

    (setq 相差字符数 (abs(- x_字符数 y_字符数)))
    (setq 补充空格数 "")
    (repeat 相差字符数 (setq 补充空格数 (strcat 补充空格数 " ")))
    (if (= 相差字符数 0)
        (setq x_c (strcat "Y=" x_坐标值) y_c (strcat "X=" y_坐标值)))
  
    (if (and (/= l 0) (> x_字符数 y_字符数))  
        (setq x_c (strcat "Y=" x_坐标值)
              y_c (strcat "X="  补充空格数 y_坐标值)))
  
    (if (and (/= l 0) (< x_字符数 y_字符数))  
        (setq x_c (strcat "Y="  补充空格数 x_坐标值)
              y_c (strcat "X=" y_坐标值)))

  
;============================= 标注 ===============================

    (setq old_osmode (getvar "osmode"))
    (setvar "osmode" 0)
    (command "line" 标注点 起点 终点)
    (command "")
    (command "text" 起点_x 字高 "0" y_c)
    (command "text" 起点_y 字高 "0" x_c)
    (setvar "osmode" old_osmode)
    (标注)
  )

;============================== 还原 ==============================

  (defun 退出()
    (setvar "dimzin" old_dimzin)
    (setvar "cmdecho" 1)
    (princ)
  )


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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-20 14:45 , Processed in 0.442667 second(s), 52 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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