×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Merry xmas

Merry xmas

Merry xmas

(OP)
Merry xmas and a peaceful 2004...

Lothar

;;AUTOCAD PROGRAMMING CHALLENGE NO. 2
;;C:XMASTREE
;;John F. Uhden, CADvantage Custom Utilities
;;CADvantage@compuserve.com
;;12-11-97
;;Note (12-08-02):
;;  Jim Fisher recalls better than I the rules of this
;;  programming challenge on the old ACAD Forum.
;;  Technically, this exceeded limitations and should
;;  have been disqualified.  Dietmar Rudolph's was
;;  technically correct and pretty darn nifty.  Too
;;  bad I don't have a copy to share.  In fact, we can
;;  thank Jim for retrieving this from his archives.
;;  Anyway, it's still cute.
;;Revised (12-08-02) for R15+
;;  Added vl-cmdf, UCSICON=0, and SHADE command only.
;;  Try setting SHADEMODE to different values before running,
;;  and then use the 3DORBIT command after.
;;  HAPPY HOLIDAYS!
(defun c:XMASTREE (/ rad R N Z dZ a da d H I J K +- s c)
  (setq    c (if (>= (getvar "acadver") "15")
        vl-cmdf
        command
      )
  )
  (setq    d distance
    s setvar
  )
  (s "CMDECHO" 0)
  (s "UCSICON" 0)
  (s "TILEMODE" 1)
  (s "UCSFOLLOW" 0)
  (s "HIGHLIGHT" 0)
  (s "REGENMODE" 1)
  (c "_.LINE" "0,0" "1,1" "")
  (c "_.ZOOM" "_E")
  (C "_.LAYER" "_U" "*" "")
  (C "_.ERASE" (ssget "X") "")
  (c "_.UCS" "_W")
  (C "_.VPOINT" "-3,-3,1.2")
  (C "_.ZOOM" "_C" "0,0,7" 15)
  (defun rad (Z) (* 0.75 (sqrt (- 12.0 Z))))
  (setq    N   25
    Z   1.0
    dZ  0.5
    a   0.0
    da  (/ pi N)
    hpi (* pi 0.5)
  )
  (while (< Z 12.0)
    (setq R (rad Z))
    (repeat N
      (setq +- (if (= +- -)
         +
         -
           )
        H  (list 0.0 0.0 (+- Z (* dz 0.25)))
        I  (polar H a R)
        a  (+ a da)
        I  (mapcar '+ I (list 0.0 0.0 (* dZ 0.5)))
        J  (polar H a (+ R R))
        a  (+ a da)
        J  (mapcar '+ J (list 0.0 0.0 dZ))
        K  (polar H a R)
        K  (mapcar '+ K (list 0.0 0.0 (* dZ 0.1)))
      )
      (entmake (list '(0 . "3DFACE")
             '(62 . 3)
             '(70 . 0)
             (cons 10 H)
             (cons 11 I)
             (cons 12 J)
             (cons 13 K)
           )
      )
      (if (and (zerop (rem (1- Z) 1)) (zerop (rem N 5)))
    (progn
      (entmake (list '(0 . "CIRCLE")
             (cons 10 J)
             '(40 . 0.07)
             '(39 . 0.35)
             '(62 . 255)
           )
      )
      (prompt " HO")
      (setq J (mapcar '+ J (list 0.0 0.0 0.4)))
      (entmake
        (list '(0 . "3DFACE")
          '(62 . 2)
          '(70 . 0)
          (cons 10 (polar J (+ a hpi) (* (d I K) 0.2)))
          (cons 11 (polar J (- a hpi) (* (d I K) 0.2)))
          (cons 12 (mapcar '+ J (list 0.0 0.0 (* dZ 0.5))))
          (cons 13 (mapcar '+ J (list 0.0 0.0 (* dZ 0.5))))
        )
      )
    )
      )
    )
    (terpri)
    (setq Z (+ Z dZ)
      a (+ a (/ da 2))
    )
  )
  (entmake '((0 . "3DFACE")
         (62 . 7)
         (10 -0.536 0.57073 13.225)
         (11 0.5123 -0.545566 13.225)
         (12 -0.011815 0.012582 12.6687)
         (13 -0.0118153 0.012582 12.6687)
         (70 . 0)
        )
  )
  (entmake '((0 . "3DFACE")
         (62 . 7)
         (10 -0.3357 0.3575 12.325)
         (11 -0.0118 0.01258 13.7813)
         (12 0.18839 -0.200611 12.8812)
         (13 0.188387 -0.200611 12.8812)
         (70 . 0)
        )
  )
  (entmake '((0 . "3DFACE")
         (62 . 7)
         (10 -0.536 0.57073 13.225)
         (11 0.31212 -0.33237 12.3249)
         (12 0.111916 -0.11918 13.225)
         (13 0.111916 -0.119179 13.225)
         (70 . 0)
        )
  )
  (c "_.SHADE")
  (setvar "cmdecho" 1)
  (alert "\nMerry Christmas!")
  (princ)
)

RE: Merry xmas

Merry Xmas and a Happy New Year to you too Exxit

Haggis

RE: Merry xmas

Exxit,

Thought you would have gotten more response to your posting.
I thought it was great...everyone in the office now has it.

Ah well.....!! Merry Xmas again.

Haggis

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources