模具论坛

 找回密码
 注册

扫一扫,微信登录

QQ登录

只需一步,快速开始

搜索
热搜: 冲压 注塑 求助
    回车查看更多
    论坛可能已存在您要发布的主题帖 关闭
      查看: 3982|回复: 2

      [讨论结束] [autolisp]刚学,试编个画五角星的lip,但不成功,求解,谢

      [复制链接]
      发表于 2010-5-2 20:55:14 | 显示全部楼层
      (defun c:wu()
      (setq os (getvar"osmode"))
      ;以下p1值须由使用者输入,p2、p3、p4、p5自动运算
      (setq p1 (getpoint "\n请输入第一点:"))
      (setq l (getreal "\n请输入五角星每边长度:"))
      (setq p2 (polar p1 (* pi (/ -36.0 180)) l))
      (setq p3 (polar p2 (* pi (/ 108.0 180)) l))
      (setq p4 (polar p3 (* pi (/ -108.0 180)) l))
      (setq p5 (polar p4 (* pi (/ 36.0 180)) l))
      ;按p1、p2、p3、p4、p5画线
      (setvar"osmode" 0)
      (command "pline" p1 p2 p3 p4 p5 "c")
      (setvar"osmode" os)  
      (princ)
      )
      发表于 2011-1-25 20:23:03 | 显示全部楼层
      俺也来凑个热闹
      (defun c:wu()
      (setq os (getvar "osmode"))
      (setvar "osmode" 0)
      (setq pt_center (getpoint "\n请指定五角星的中心点"))
      (setq r (getint "\n请输入五角星的外接圆半径"))
      (setq ang (angtof "90.00"))
      (setq a(/ 720 5))
      (setq aa (rtos a))
      (setq ang_add (angtof aa))
      (setq ent (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity")
                            (cons 100 "AcDbPolyline") (cons 90 5) (cons 70 1)
                   )
         )
      (setq i 1)
      (while i
         (setq pt (polar pt_center ang r))
        (setq ent(append ent (list(cons 10 pt))))
         (setq ang (+ ang_add ang))
         (setq i (+ 1 i))
         (print i)
         (if (= i (+ 1 5))
           (setq i nil)
         )
      )
      (entmake ent)
      (setvar "osmode" os)
      (princ)
      )
      您需要登录后才可以回帖 登录 | 注册

      本版积分规则

      关闭

      招聘信息 上一条 /5 下一条

      关闭

      求职信息 上一条 /5 下一条

      关闭

      技术求助 上一条 /5 下一条

      QQ|小黑屋|手机版|模具论坛 ( 浙ICP备15037217号 )

      GMT+8, 2025-6-6 19:53

      Powered by Discuz! X3.4

      © 2001-2013 Comsenz Inc.

      快速回复
      返回顶部
      返回列表
       
      客服电话:0577-61318188
      模具论坛交流群:
      模具论坛交流群
      工作时间:
      08:30-17:30