明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 563|回复: 4

[基础] 分享一个自己初学写的一个简单程序

[复制链接]
发表于 2024-3-10 20:09 | 显示全部楼层 |阅读模式
(DEFUN C:TT()
  (SETVAR "CMDECHO" 0)
(SETVAR "OSMODE" 0)
  (SETQ P1 (GETPOINT "\N 指定基点:"))
  (terpri)
  (SETQ X (GETREAL "\N 输入长度:"))
  (SETQ Y (GETREAL "\N 输入宽度:"))

  (IF
    (> X Y)
    (PROGN
    (SETQ D1 (- X Y))
    (SETQ  D2 Y)
    (SETQ P2 (POLAR P1 0 D1))
    (SETQ P3 (POLAR P2 (* 0.5 PI) D2))
    (SETQ P4 (POLAR P3 PI D1))
    (SETQ P1 (POLAR P4 (* 1.5 PI) D2))
    (COMMAND "PLINE" P1 P2 "A" P3 "L" P4 "A" P1 "")
                )
    (PROGN
    (SETQ D1 (- Y X))
    (SETQ D2 X)
    (SETQ P2 (POLAR P1 (* 1.5 PI) D1))
    (SETQ P3 (POLAR P2 0 D2))
    (SETQ P4 (POLAR P3 (* 0.5 PI) D1))
    (SETQ P1 (POLAR P4 PI D2))
    (COMMAND "PLINE" P1 P2 "A" P3 "L" P4 "A" P1 "")
     )
    )

  (SETVAR "OSMODE" 16383)
  (PRINC)
)

评分

参与人数 2明经币 +2 收起 理由
bssurvey + 1 赞一个!
tigcat + 1 很给力!

查看全部评分

发表于 2024-3-10 20:43 | 显示全部楼层
多谢分享,建议添加动图gif
发表于 2024-3-11 14:00 | 显示全部楼层
画腰形孔的
发表于 2024-3-11 22:24 | 显示全部楼层
感谢分享,好有用
发表于 2024-3-12 15:13 | 显示全部楼层
(DEFUN C:TT(/ d1 d2 p1 p2 p3 p4 x y)
  (SETQ P1 (GETPOINT "\N 指定基点:"))
        (SETVAR "CMDECHO" 0)
        (SETVAR "OSMODE" 0)
  (terpri)
  (SETQ X (GETREAL "\N 输入长度:"))
  (SETQ Y (GETREAL "\N 输入宽度:"))
       
        (cond                
                ((= X Y)
                        (progn(alert "\n输入有误,请重新输入")
                                (vl-exit-with-value 0))                       
                )               
               
                ((> X Y) (PROGN
                                                         (SETQ D1 (- X Y))
                                                         (SETQ  D2 Y)
                                                         (SETQ P2 (POLAR P1 0 D1))
                                                         (SETQ P3 (POLAR P2 (* 0.5 PI) D2))
                                                         (SETQ P4 (POLAR P3 PI D1))
                                                         (SETQ P1 (POLAR P4 (* 1.5 PI) D2))
                                                         (COMMAND "PLINE" P1 P2 "A" P3 "L" P4 "A" P1 "")
                                                 ))
               
                ((< X Y)        (PROGN
                                                                (SETQ D1 (- Y X))
                                                                (SETQ D2 X)
                                                                (SETQ P2 (POLAR P1 (* 1.5 PI) D1))
                                                                (SETQ P3 (POLAR P2 0 D2))
                                                                (SETQ P4 (POLAR P3 (* 0.5 PI) D1))
                                                                (SETQ P1 (POLAR P4 PI D2))
                                                                (COMMAND "PLINE" P1 P2 "A" P3 "L" P4 "A" P1 "")
                                                        ))               
        )
       
        (SETVAR "OSMODE" 16383)
        (PRINC)
)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-28 23:16 , Processed in 0.299229 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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