用lisp程序查询视口比例。比如比例是1:15,查询后是显示1:15,不要显示成0.0667
用lisp程序查询视口比例。比如比例是1:15,查询后是显示1:15,不要显示成0.0667(defun c:tt5 (/ ent)
(setqent (entget (car (entsel "\n选择视口:"))))
(princ (strcat "\n[视口比例为:1:" (rtos (/ (cdr(assoc 45 ent)) (cdr(assoc 41 ent))) 2 0) "]\n")) (princ)
)
本帖最后由 李青松 于 2019-4-16 09:27 编辑
start4444 发表于 2019-4-15 22:58
(defun c:tt5 (/ ent)
(setqent (entget (car (entsel "\n选择视口:"))))
(princ (strcat "\n[视口 ...很好,程序简单实用明经币怎样给你
本帖最后由 李青松 于 2019-4-16 09:56 编辑
start4444 发表于 2019-4-15 16:44
(defun c:tt5 (/ ent)
(setqent (entget (car (entsel "\n选择视口:"))))
(princ (strcat "\n[视口 ...
若是改成框选就更好了。框选中有其它的线也不要影响查询比例 本帖最后由 start4444 于 2019-4-16 10:16 编辑
李青松 发表于 2019-4-16 09:54
若是改成框选就更好了。框选中有其它的线也不要影响查询比例
框选其实意义不大,这种快速操作就要简单直接,如果要每一个单独显示那又要编号对应,这样就变得繁琐了,如果单单为了选择方便那就用ssget来选定
(defun c:tt5 (/ ent)
(prompt "选择视口:")
(setqent (entget (ssname (ssget ":S" '((0 . "viewport"))) 0)))
(princ (strcat "\n[视口比例为:1:" (rtos (/ (cdr(assoc 45 ent)) (cdr(assoc 41 ent))) 2 0) "]\n")) (princ)
)
如果多选就以第一个为准
start4444 发表于 2019-4-16 10:00
框选其实意义不大,这种快速操作就要简单直接,如果要每一个单独显示那又要编号对应,这样就变得繁琐了, ...
新程序非常好,多谢。牛逼 start4444 发表于 2019-4-16 10:00
框选其实意义不大,这种快速操作就要简单直接,如果要每一个单独显示那又要编号对应,这样就变得繁琐了, ...
命令行需要三行才能看得到参数,能不能只有两行的情况下显示 本帖最后由 1291500406 于 2019-5-26 18:30 编辑
KO你 发表于 2019-5-26 16:28
命令行需要三行才能看得到参数,能不能只有两行的情况下显示
(prompt "选择视口:")一行
(ssget)一行
(princ (strcat "\n[视口比例为:1:" (rtos (/ (cdr(assoc 45 ent)) (cdr(assoc 41 ent))) 2 0) "]\n")) 一行
你把(prompt "选择视口:") 删掉
(princ (strcat "[视口比例为:1:" (rtos (/ (cdr(assoc 45 ent)) (cdr(assoc 41 ent))) 2 0) "]"))
能把查询的文字直接写入到属性块上才完美 1291500406 发表于 2019-5-26 18:28
(prompt "选择视口:")一行
(ssget)一行
(princ (strcat "\n[视口比例为:1:" (rtos (/ (cdr(assoc 4 ...
可不可以 修改成直接输入数字就把比例设置好了并且锁定视口 比如输入20就是1:20
页:
[1]
2