明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2166|回复: 9

[基础] 请高手来检查我画垂线的lisp语句哪儿有错

[复制链接]
发表于 2011-3-27 13:45:54 | 显示全部楼层 |阅读模式
(defun c:cx ()
   (setvar "cmdecho" 0)
   (if (setq en (entsel "选择一条直线:"))
     (if (setq pp (getpoint "选择垂线经过的点"))
       (if (setq l (getreal "输入垂线的长度"))
  (progn
    (setq en_data (entget (car en)))
    (setq pts (CDR (assoc 10 en_data)))
    (setq pte (CDR (assoc 11 en_data)))
    (setq Perpt (vlax-curve-getClosestPointTo (car en) pp T));找出垂点
    (setq a (angle pts pte))
    (setq pppp (polar Perpt (+ (* pi 0.5) a) l))
    (setq ppp (polar Perpt (+ (* pi 1.5) a) l))
    (entmake (APPEND '((0 . "LINE")
         (100 . "AcDbEntity")
         (100 . "AcDbLine")
         (8 . "0")
        )
       (LIST (CONS 10 pppp) (CONS 11 ppp))
      )
    )
  )
       )
     )
   )
   (princ)
)
发表于 2011-3-27 14:20:57 | 显示全部楼层
Ok Here
您的错误讯息是什么?
发表于 2011-3-27 20:53:05 | 显示全部楼层
没问题呀??
 楼主| 发表于 2011-3-28 08:20:34 | 显示全部楼层
no function definition: VLAX-CURVE-GETCLOSESTPOINTTO
这个是错误信息
发表于 2011-3-28 08:59:52 | 显示全部楼层
(vl-load-com)        ; 加这列   (帮助内详)
(defun c:cx ()
 楼主| 发表于 2011-3-30 15:13:23 | 显示全部楼层
高手 Andyhon高手,谢谢
发表于 2011-3-30 19:48:22 | 显示全部楼层
选择一条直线:选择垂线经过的点输入垂线的长度123 ; 错误: 参数值错误:
AcDbCurve 2119234248
这是怎么回事?
发表于 2011-3-30 21:00:47 | 显示全部楼层
回复 Andyhon 的帖子

程序挺好的,要是能再加上中垂线就更好了
发表于 2011-10-29 14:36:54 | 显示全部楼层
如果是做多段线的垂线呢?程序应该怎么写?
发表于 2013-7-10 09:51:56 | 显示全部楼层
能不能选择其他线型啊,只是直线啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-28 01:08 , Processed in 0.150263 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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