明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2069|回复: 4

帮忙啊!

[复制链接]
发表于 2002-5-28 21:36:00 | 显示全部楼层 |阅读模式
本帖最后由 弦 于 2011-10-18 15:45 编辑

我是建筑系的!
毕业设计是AutoCAD 的二次开发,就是用LISP语言。
发表于 2002-5-28 22:15:00 | 显示全部楼层

你至少要有个课题吧,什么样的课题?

 楼主| 发表于 2002-5-31 10:43:00 | 显示全部楼层

我的课题是,比较简单的

就是做个快捷键,在快捷键上添加新的功能。就象做个窗或其他什么建筑的一部分,使用快捷键(菜单),然后直接输入参数得出图形来,我其实对于LISP语言不太懂,但对AUTOCAD掌握得比较好所以选了它。希望能有人帮助我,即便是当一下我的启蒙老师就很感激了。`~



下面是我的设想


我想做个画窗体的命令。(设想入下图所示)我的想法是:第一步(a),先选一点做基点,然后选第二点(b),做出了一个矩形,(也就是定下了整个窗体的范围、大小)第三点(c)确定窗格交叉的中心点,如果窗格多的话可以和第三点一样的选定第四点(c')第五点(c'')第n 点(C’n )希望有大虾能给与指点,在下感激不尽。

本帖子中包含更多资源

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

x
发表于 2002-5-31 12:46:00 | 显示全部楼层

毕业作业要自已来做吧!!我先帮你画矩形,其余靠你自己了...

;;;毕业作业要自已来做吧!!我先帮你画矩形,其余靠你自己了...总要看些书...
(defun cRBT (/       pt1     pt2     HOLDECHO               HOLDBLIP
               HOLDOSMODE      ANG     DIST    H       W       CTR
               RT      LB      RB      LT      line1   line2   line3
               line3
              )
  (setq HOLDECHO (getvar "cmdecho"))
  (setq HOLDBLIP (getvar "blipmode"))
  (setq HOLDOSMODE (getvar "osmode"))
  (setvar "cmdecho" 0)
  (setvar "blipmode" 0)
  (setvar "osmode" 0)
  (SETQ PT1 (GETPOINT "\n第一点: "))
  (SETQ PT2 (GETPOINT PT1 "\n对角点: "))
  (setq ANG (angle PT1 PT2))
  (setq DIST (distance PT1 PT2))
  (setq H (abs (- (cadr PT1) (cadr PT2))))
  (setq W (abs (- (car PT1) (car PT2))))
  (setq CTR (polar PT1 ANG (/ DIST 2.0)))
  (setq        RT (list (+ (car CTR) (/ W 2))
                 (+ (cadr CTR) (/ H 2))
           )
  )
  (setq        LB (list (- (car CTR) (/ W 2))
                 (- (cadr CTR) (/ H 2))
           )
  )
  (setq        RB (list (+ (car CTR) (/ W 2))
                 (- (cadr CTR) (/ H 2))
           )
  )
  (setq        LT (list (- (car CTR) (/ W 2))
                 (+ (cadr CTR) (/ H 2))
           )
  )
  (command "_.line" lb rb "")
  (setq line1 (entlast))
  (command "_.line" rb rt "")
  (setq line2 (entlast))
  (command "_.line" rt lt "")
  (setq line3 (entlast))
  (command "_.line" lt lb "")
  (setq line4 (entlast))
  (setvar "blipmode" HOLDBLIP)
  (setvar "cmdecho" HOLDECHO)
  (setvar "osmode" HOLDOSMODE)
  (princ)
)

;;;以下参考
;|(defun C:RT (/ PT1 PT2 HOLDECHO HOLDBLIP HOLDOSMODE)
  (setq HOLDECHO (getvar "cmdecho"))
  (setq HOLDBLIP (getvar "blipmode"))
  (setq HOLDOSMODE (getvar "osmode"))
  (setvar "cmdecho" 0)
  (setvar "blipmode" 0)
  (setvar "osmode" 39)
  (SETQ PT1 (GETPOINT "\n第一点: "))
  (SETQ PT2 (GETPOINT PT1 "\n对角点: "))
  (setvar "osmode" 0)
  (command "_.rectang" pt1 pt2)
  (setvar "blipmode" HOLDBLIP)
  (setvar "cmdecho" HOLDECHO)
  (setvar "osmode" HOLDOSMODE)
  (princ)
)|;
ps:有问题再提出
 楼主| 发表于 2002-5-31 15:13:00 | 显示全部楼层

龙兄谢了!我会努力的!

我回去试一下。谢谢  啊

有空我再来!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 15:59 , Processed in 0.183728 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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