明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2324|回复: 6

[求助感谢danxingpen,已完成更改坐标标注程序

[复制链接]
发表于 2008-6-16 16:26:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2008-6-18 9:21:47 编辑

 danxingpen朋友,本人电脑崩溃,该坐标标注程序丢失,你那里是否有备份呀

另外哪位朋友下载了,能否提供该坐标标注程序(改写后的)

原本程序在3楼

谢谢

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2008-6-16 18:52:00 | 显示全部楼层

传了一个。

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-6-16 19:10:00 | 显示全部楼层
本帖最后由 作者 于 2008-6-16 19:12:31 编辑

谢谢黑侠yxp,朋友的程序功能很好,但我那个简单的更适合我的常用设置

请大家帮助我改改上面的程序,要求输入1次比例,然后即可多点随意标注坐标,直至结束

再次感谢

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-6-17 12:44:00 | 显示全部楼层

danxingpen朋友的方法思路好像是利用while if判断"osmode" 4271,然后循环执行,
大家能帮我解决这个问题吗

谢谢

 楼主| 发表于 2008-6-18 07:52:00 | 显示全部楼层
本帖最后由 作者 于 2008-6-18 7:53:11 编辑

早上再顶一次

要求输入1次比例,然后即可多点随意标注坐标,直至结束

原程序在3楼

发表于 2008-6-18 08:23:00 | 显示全部楼层
我从来不用坐标标注的,以前的那个帖子怎么删除了?我灌水???怀疑中!
改为如下程序即可

(defun zz_err (s)
(if (/= s "Function cancelled")
(princ (strcat "\nError: " s))
)
(setvar "osmode" os)
(if dis (setvar "dimzin" dis))
(setvar "cmdecho" cmd)
(command "_.UNDO" "_E")
)

;;=============== Main program ============


(defun c:zz (/ cmd os pt x y pt1 x1 y1 xx2 pt2 dis)
(setq *error* zz_err)
(setq cmd (getvar "cmdecho") )
(setvar "cmdecho" 0)
(setq os (getvar "osmode"))
(setq dis (getvar "dimzin"))
(setvar "osmode" 4271)
;请注以下三行
(command "_.undo" "be")
(setq blx (getreal "\n请输入打印的比例<默认为1>:"))
(if (= blx nil)(setq blx 1.0))
(setvar "dimzin" 1)
(setq blc (/ blx ))
(while (and (setvar "osmode" 4271)
        (setq pt (getpoint "\n拾取需要标注的点:"))
        (setq pt1(getpoint pt "\n拾取标注线起点:"))
        )
  (setq y (strcat "Y=" (rtos (car pt) 2 3))
x (strcat "X=" (rtos (cadr pt) 2 3))
x1 (car pt1) y1 (cadr pt1)
y2 y1
dxy (textbox (list (cons 1 x) (cons 40 (* 3.5 blc))))
dl1 (car (mapcar '- (cadr dxy) (car dxy)))
dxy (textbox (list (cons 1 y) (cons 40 (* 3.5 blc))))
dl2 (car (mapcar '- (cadr dxy) (car dxy)))
ddd dl1
)
  (if (> dl2 dl1) (setq ddd dl2))
(if (> x1 (car pt))
(setq x2 (+ x1 ddd 0.5) xx2 (+ x1 0.5))
(setq x2 (- x1 ddd 0.5) xx2 (+ x2 0.5))
)
(setvar "osmode" 0)
(setq pt2 (list x2 y2))
(command "line" pt pt1 pt2 "")
(command "_style"  "Standard"  "txt" "0" "1" "0" "n" "N" "")
(setvar "textSTYLE" "Standard")
;请注意以下两行
(command "text" "ml" (list xx2 (+ y1 (* 2.625 blc))) (* 3.5 blc) 0 x)
(command "text" "ml" (list xx2 (- y1 (* 2.625 blc))) (* 3.5 blc) 0 y)
)
(command "_.UNDO" "_E")
(setvar "osmode" os)
(setvar "dimzin" dis)
(setvar "cmdecho" cmd)
(princ)
)
发表于 2008-9-27 10:54:00 | 显示全部楼层
yxp发表于2008-6-16 18:52:0041494传了一个。

感谢你的BZD.VLX坐标标注程序,非常好,不知能否提供源码,非常想学习一下!谢谢!

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-12-26 04:37 , Processed in 0.169171 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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