找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 941|回复: 6

[LISP程序]:救命呀!老婆要求一周内解决,否则杀了我!!!

  [复制链接]
发表于 2006-4-11 20:33:10 | 显示全部楼层 |阅读模式

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

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

×
用LISP程序绘制图形,并指定一个插入点,当在Auto CAD窗口中执行包含此段程序的函数时,在需要指定插入点时,要能象插入块一样同时动态地显示所绘图形,直至指定了插入点。简单地说,就是能够象插入块一样地显示图形。如何编这个LISP程序?
各位大侠,救命呀!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 488个

财富等级: 日进斗金

发表于 2006-4-11 20:56:15 | 显示全部楼层
除非用arx

用grread也可以,但不好

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

使用道具 举报

发表于 2006-4-11 21:12:00 | 显示全部楼层
用"ACET-SS-DRAG-MOVE "函数,需要装"express tools",给你个简单的例子,可以参考一下.
[PHP]

;;;绘制竖直构造线
(DEFUN C:H (/ LOOP_ID PT SS)
  (SETQ LOOP_ID T)
  (IF (= (TBLOBJNAME "LAYER" "辅助线") NIL)
    (PROGN
      (ENTMAKE (LIST
                 '(0 . "LAYER")
                 '(100 . "AcDbSymbolTableRecord")
                 '(100 . "AcDbLayerTableRecord")
                 '(6 . "CONTINUOUS")        ;线型
                 '(62 . 2)                ;颜色
                 '(70 . 0)                ;图层状态
                 (CONS 2 "辅助线")        ;图层名
               )
      )
    )
  )
  (SETVAR "CLAYER" "辅助线")
  (PRINC "\n***  竖直构造线,长度为300 ***")
  (WHILE LOOP_ID
    (COMMAND "_.LINE" '(-20000 0 0) '(-20300 0 0) "")
    (SETQ SS (SSADD))
    (SETQ SS (SSADD (ENTLAST) SS))
    (SETVAR "CURSORSIZE" 1)
    (SETVAR "OSMODE" (+ 1 2 4 8 32 512))
    (SETQ PT (ACET-SS-DRAG-MOVE SS '(-20150 0 0) "插入点:"))
    (SETVAR "OSMODE" 0)
     (IF PT
       (COMMAND "_.MOVE" SS "" '(-20150 0 0) PT)
       (PROGN
         (COMMAND "_.ERASE" SS "")
         (SETQ LOOP_ID NIL)
         )
     )
    (SETVAR "CURSORSIZE" 5)
  )
  (PRINC)
)
[/PHP]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-11 22:16:59 | 显示全部楼层
3楼做得烦琐了。可用entmake直接做线,直接定义图层颜色,如果本图内无此层则自动建层。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-11 23:41:34 | 显示全部楼层
要是你老婆看了这个帖子,会不会甩了你,而投奔Dallas_whu 呢?

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

使用道具 举报

发表于 2006-4-12 10:16:20 | 显示全部楼层
找一个懂Arx的帮你做一个:)
前几天倒是做了一个,不过是用.net做的,只有2007可以用:)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-12 15:38:32 | 显示全部楼层
我编的动态插入文字,你参考下
(defun d-text (txt / tmp a)
  (setq tmp t)
  (entmake txt)
  (princ "\n选择点:")
  (while tmp
    (setq a (grread t 4 0))
    (cond
      ((= (car a) 3)
       (entdel (entlast))
       (setq txt (subst (cons 10 (cadr a)) (assoc 10 txt) txt)
             tmp nil
       )
       (entmake txt)
       (redraw)
      )
      ((= (car a) 5)
       (entdel (entlast))
       (setq txt (subst (cons 10 (cadr a)) (assoc 10 txt) txt))
       (entmake txt)
       (redraw (entlast) 3)
      )
      ((or (= (car a) 12) (= (car a) 25))
       (entdel (entlast))
       (setq txt (subst (cons 10 (cadr a)) (assoc 10 txt) txt))
       (entmake txt)
      )
    )
  )
  (princ)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-29 07:11 , Processed in 0.175421 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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