明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 964|回复: 6

[提问] 中心标记LISP问题?

[复制链接]
发表于 2021-11-10 12:37:12 | 显示全部楼层 |阅读模式
各位大师你们好!麻烦帮我看下下面的lisp是在那个地方出错了,现在是程序能加载,运行选择圆与圆弧都没什么反应。麻烦各位大师啦!谢谢!

;批量添加圆(圆弧)中心标记(同心保留半径较大者)
(defun c:vvv()(setq cmd(getvar "cmdecho"))(setq glb_sc(getvar "ltscale"))
  (setq scl_val (remedy_scl "PX-CEN1" 1.125))
  (setq obj_sel(ssget ":s" ' ((-4 . "<or")(0 . "CIRCLE")(0 . "ARC")(-4 . "or>")(-4 . ">=")(40 . 0.75))))  
  (while obj_sel
    (setq cab_list(esame_center obj_sel))
    (setq number(length cab_list))(setq jump 0)(command "undo" "BE")   
    (while (< jump number)
      (setq jump_sublist(nth jump cab_list))
      (setq radius(car jump_sublist))
      (setq circle_cen(list (nth 2 jump_sublist)(nth 3 jump_sublist)))
      (setq linetype_scale (* (* (* radius 0.8) (/ 1 glb_sc)) scl_val))
      (setq length_exceed(* radius 0.12))
      (setq point[1](polar circle_cen pi (+ radius length_exceed)))
      (setq point[2](polar circle_cen 0 (+ radius length_exceed)))
      (setq point[3](polar circle_cen (* 0.5 pi) (+ radius length_exceed)))
      (setq point[4](polar circle_cen (* 1.5 pi) (+ radius length_exceed)))
      (command "line" "none" point[1] "none" point[2] "")
      (setq objects(entlast))      
      (command "line" "none" point[3] "none" point[4] "")
      (command "change"(entlast) objects "" "p" "LT" "PX-CEN1" "C" 3 "S" linetype_scale
               "LA" (cadr jump_sublist) "")
      (setq jump(+ 1 jump)))(command "undo" "E")
    (setq obj_sel(ssget ":s" ' ((-4 . "<or")(0 . "CIRCLE")(0 . "ARC")(-4 . "or>")(-4 . ">=")(40 . 1.0)))))
  (setvar "cmdecho" cmd)(princ)
  )

发表于 2021-11-11 08:03:33 | 显示全部楼层
本帖最后由 bssurvey 于 2021-11-11 08:07 编辑

esame_center及remedy_scl沒有這些函數或是定義
 楼主| 发表于 2021-11-12 15:30:41 | 显示全部楼层
bssurvey 发表于 2021-11-11 08:03
esame_center及remedy_scl沒有這些函數或是定義

你好我在AUTO cad 上面能用,现在改用中望CAD上面就用不了。
发表于 2021-11-12 16:11:59 | 显示全部楼层
希望的田野 发表于 2021-11-12 15:30
你好我在AUTO cad 上面能用,现在改用中望CAD上面就用不了。

應該是AUTOCAD 有掛載這些函數 中望CAD沒有,您可能要找一下AUTOCAD這邊還有哪個LISP是事先就掛載的
 楼主| 发表于 2021-11-12 17:59:38 | 显示全部楼层
bssurvey 发表于 2021-11-12 16:11
應該是AUTOCAD 有掛載這些函數 中望CAD沒有,您可能要找一下AUTOCAD這邊還有哪個LISP是事先就掛載的

您好!我们公司这边已经吧auto cad 全都卸载,换上国产中望CAD现在也找不到什么原因了?您能把我这个lisp改善下吗?
发表于 2021-11-12 18:51:59 | 显示全部楼层
esame_center及remedy_sc是自定义函数,是你的软件定义的,没有就不行。
发表于 2021-11-15 08:00:20 | 显示全部楼层
就像wudechao大大說的是自定義函數,有可能是之前您公司有外掛一些其他的軟件,像天正,秋楓...的工具箱內所存在的自定義函數,其實也可以用圖形或動畫的方式,請論壇的各位先進,是否可以達到效果。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-16 19:05 , Processed in 0.181770 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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