340 lines
8.7 KiB
Plaintext
340 lines
8.7 KiB
Plaintext
;;; ACAD.MNL
|
|
;;; Copyright (C) 1993 by Autodesk, Inc.
|
|
;;;
|
|
;;; Permission to use, copy, modify, and distribute this software
|
|
;;; for any purpose and without fee is hereby granted, provided
|
|
;;; that the above copyright notice appears in all copies and that
|
|
;;; both that copyright notice and this permission notice appear in
|
|
;;; all supporting documentation.
|
|
;;;
|
|
;;; THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED
|
|
;;; WARRANTY. ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR
|
|
;;; PURPOSE AND OF MERCHANTABILITY ARE HEREBY DISCLAIMED.
|
|
;;;
|
|
;;; AutoLISP routines used by the AutoCAD Release 12 Standard Menu.
|
|
;;;
|
|
;;; This file is loaded automatically following ACAD.MNX. In turn,
|
|
;;; it sets up an autoloader and other routines by loading ACADR12.LSP.
|
|
|
|
(princ "\nAutoCAD Release 12 menu utilities ")
|
|
|
|
|
|
;;;=== Icon Menu Functions ===
|
|
|
|
;;; View -> Layout -> Tiled Viewports...
|
|
|
|
(defun ai_tiledvp_chk ()
|
|
(setq m:err *error* *error* *merrmsg*)
|
|
(if (= (getvar "TILEMODE") 0)
|
|
(progn
|
|
(princ "\n** Command not allowed unless TILEMODE is set to 1 (On) **")
|
|
(princ)
|
|
)
|
|
(progn
|
|
(menucmd "I=icon_vporti")
|
|
(menucmd "I=*")
|
|
)
|
|
)
|
|
(setq *error* m:err m:err nil)
|
|
(princ)
|
|
)
|
|
|
|
(defun ai_tiledvp (num ori / ai_tiles_g ai_tiles_cmde)
|
|
(setq m:err *error* *error* *merrmsg*
|
|
ai_tiles_cmde (getvar "CMDECHO")
|
|
ai_tiles_g (getvar "GRIDMODE")
|
|
)
|
|
(setvar "CMDECHO" 0)
|
|
(setvar "GRIDMODE" 0)
|
|
(cond ((= num 1)
|
|
(command "_.VPORTS" "_SI")
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
)
|
|
((< num 4)
|
|
(command "_.VPORTS" "_SI")
|
|
(command "_.VPORTS" num ori)
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
)
|
|
((= ori nil)
|
|
(command "_.VPORTS" "_SI")
|
|
(command "_.VPORTS" num)
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
)
|
|
((= ori "L")
|
|
(command "_.UNDO" "_M")
|
|
(command "_.VPORTS" "_SI")
|
|
(command "_.VPORTS" "2" "")
|
|
(setvar "CVPORT" (car (cadr (vports))))
|
|
(command "_.VPORTS" "2" "")
|
|
(command "_.VPORTS" "_J" "" (car (cadr (vports))))
|
|
(setvar "CVPORT" (car (cadr (vports))))
|
|
(command "_.VPORTS" "3" "_H")
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(setvar "CVPORT" (car (cadddr (vports))))
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(setvar "CVPORT" (car (cadddr (vports))))
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(setvar "CVPORT" (car (cadddr (vports))))
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(command "_.UNDO" "_E")
|
|
)
|
|
(T
|
|
(command "_.UNDO" "_M")
|
|
(command "_.VPORTS" "_SI")
|
|
(command "_.VPORTS" "2" "")
|
|
(command "_.VPORTS" "2" "")
|
|
(setvar "CVPORT" (car (caddr (vports))))
|
|
(command "_.VPORTS" "_J" "" (car (caddr (vports))))
|
|
(setvar "CVPORT" (car (cadr (vports))))
|
|
(command "_.VPORTS" "3" "_H")
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(setvar "CVPORT" (car (cadddr (vports))))
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(setvar "CVPORT" (car (cadddr (vports))))
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(setvar "CVPORT" (car (cadddr (vports))))
|
|
(setvar "GRIDMODE" ai_tiles_g)
|
|
(command "_.UNDO" "_E")
|
|
)
|
|
)
|
|
(setq *error* m:err m:err nil)
|
|
(setvar "CMDECHO" ai_tiles_cmde)
|
|
(princ)
|
|
)
|
|
|
|
;;;=== Tablet Swap Functions ===
|
|
|
|
(defun ai_tab1 ()
|
|
(if (null T_MENU)
|
|
(setq T_MENU 0)
|
|
)
|
|
(if (= (logand 1 T_MENU) 1)
|
|
(progn (setq T_MENU (- T_MENU 1))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 1 unloaded.")
|
|
)
|
|
(menucmd "T1=TABLET1")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nSelect from the AutoCAD AME menu and AutoShade tablet menus.\n")
|
|
)
|
|
)
|
|
(progn
|
|
(setq T_MENU (+ T_MENU 1))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 1 loaded. ")
|
|
)
|
|
(menucmd "T1=TABLET1ALT")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nThis area is for your personal applications and menu items.\n")
|
|
)
|
|
)
|
|
)
|
|
(menucmd (strcat "s=HEADER" (itoa T_MENU)))
|
|
(princ)
|
|
)
|
|
|
|
(defun ai_tab2 ()
|
|
(if (null T_MENU) (setq T_MENU 0))
|
|
(if (= (logand 2 T_MENU) 2)
|
|
(progn
|
|
(setq T_MENU (- T_MENU 2))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 2 unloaded. ")
|
|
)
|
|
(menucmd "T2=TABLET2")
|
|
(if old_wv (setvar "WORLDVIEW" old_wv))
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nCommands operate transparently: VPOINT and DVIEW in Worldview mode.\n")
|
|
)
|
|
)
|
|
(progn
|
|
(setq T_MENU (+ T_MENU 2))
|
|
(setq old_wv (getvar "WORLDVIEW"))
|
|
(setvar "WORLDVIEW" 0)
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 2 loaded. ")
|
|
)
|
|
(menucmd "T2=TABLET2ALT")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nZoom and other commands issue CTRL-C's: VPOINT and DVIEW in current UCS mode.\n")
|
|
)
|
|
)
|
|
)
|
|
(menucmd (strcat "s=HEADER" (itoa T_MENU)))
|
|
(princ)
|
|
)
|
|
|
|
(defun ai_tab3 ()
|
|
(if (null T_MENU)
|
|
(setq T_MENU 0)
|
|
)
|
|
(if (= (logand 4 T_MENU) 4)
|
|
(progn
|
|
(setq T_MENU (- T_MENU 4))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 3 unloaded. ")
|
|
)
|
|
(menucmd "T3=TABLET3")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nSelect American units from the Numeric menu.\n")
|
|
)
|
|
)
|
|
(progn
|
|
(setq T_MENU (+ T_MENU 4))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 3 loaded. ")
|
|
)
|
|
(menucmd "T3=TABLET3ALT")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nSelect Metric units from the Numeric menu.\n")
|
|
)
|
|
)
|
|
)
|
|
(menucmd (strcat "s=HEADER" (itoa T_MENU)))
|
|
(princ)
|
|
)
|
|
|
|
(defun ai_tab4 ()
|
|
(if (null T_MENU)
|
|
(setq T_MENU 0)
|
|
)
|
|
(if (= (logand 8 T_MENU) 8)
|
|
(progn
|
|
(setq T_MENU (- T_MENU 8))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 4 unloaded. ")
|
|
)
|
|
(menucmd "T4=TABLET4")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nObject snap modes issue overrides: commands do NOT repeat.\n")
|
|
)
|
|
)
|
|
(progn
|
|
(setq T_MENU (+ T_MENU 8))
|
|
(if (< (getvar "EXPERT") 4)
|
|
(princ "\nAlternate tablet area 4 loaded. ")
|
|
)
|
|
(menucmd "T4=TABLET4ALT")
|
|
(if (< (getvar "EXPERT") 1)
|
|
(princ "\nObject snap modes issue running modes: commands repeat.\n")
|
|
)
|
|
)
|
|
)
|
|
(menucmd (strcat "s=HEADER" (itoa T_MENU)))
|
|
(princ)
|
|
)
|
|
|
|
;;;=== General Utility Functions ===
|
|
|
|
(defun *merr* (msg)
|
|
(setq *error* m:err m:err nil)
|
|
(princ)
|
|
)
|
|
|
|
(defun *merrmsg* (msg)
|
|
(princ msg)
|
|
(setq *error* m:err m:err nil)
|
|
(princ)
|
|
)
|
|
|
|
(defun c:rectang ( / cmde pt1 pt2)
|
|
(setq m:err *error* *error* *merr*
|
|
cmde (getvar "CMDECHO")
|
|
)
|
|
(setvar "CMDECHO" 0)
|
|
(setq pt1 (getpoint "\nFirst corner: ")
|
|
pt2 (getcorner pt1 "\nOther corner: ")
|
|
)
|
|
(command "_.PLINE" pt1 "_non" (list (car pt1) (cadr pt2))
|
|
pt2 "_non" (list (car pt2) (cadr pt1))
|
|
"_C"
|
|
)
|
|
(setvar "CMDECHO" cmde)
|
|
(setq *error* m:err m:err nil)
|
|
(princ)
|
|
)
|
|
|
|
(defun c:ai_peditm (/ m:p0 m:p1)
|
|
(setq m:err *error* *error* *merr*)
|
|
(defun m:p0 (/ m:s1 m:e1 m:e2 m:e3)
|
|
(menucmd"S=X")
|
|
(menucmd"S=PSEL")
|
|
(while (not m:s1)
|
|
(if (setq m:s1 (ssget))
|
|
(progn
|
|
(setq m:e1 (ssname m:s1 0)
|
|
m:e2 (entget m:e1)
|
|
m:e3 (cdr (assoc 0 m:e2))
|
|
)
|
|
(if (= m:e3 "POLYLINE")
|
|
(m:p1)
|
|
(if (member m:e3 '("LINE" "ARC"))
|
|
(progn
|
|
(command "_.PEDIT" m:e1 pause)
|
|
(menucmd "S=X")
|
|
(menucmd "S=P0")
|
|
)
|
|
(progn
|
|
(terpri)
|
|
(princ "Entity selected is not a polyline.")
|
|
(terpri)
|
|
(setq m:s1 nil)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(defun m:p1 (/ m:a)
|
|
(menucmd"S=X")
|
|
(if (= (setq m:a (cdr (assoc 70 m:e2))) nil)
|
|
(menucmd"S=P0")
|
|
(progn
|
|
(setq m:a (/ m:a 2))
|
|
(if (>= m:a 8)
|
|
(menucmd"S=P16")
|
|
(if (< m:a 4)
|
|
(menucmd"S=P0")
|
|
(menucmd"S=P8")
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(command "_.PEDIT" m:e1)
|
|
)
|
|
(m:p0)
|
|
(setq *error* m:err m:err nil)
|
|
(princ)
|
|
)
|
|
|
|
;;;=== Menu Functions ===
|
|
|
|
(defun ai_rootmenus ()
|
|
(setq T_MENU 0)
|
|
(menucmd "S=X")
|
|
(menucmd "S=S")
|
|
(menucmd "T2=TABLET2")
|
|
(menucmd "T3=TABLET3")
|
|
(menucmd "T4=TABLET4")
|
|
(princ)
|
|
)
|
|
|
|
(if (not (load "acadr12.lsp" nil))
|
|
(progn
|
|
(princ "loading error.")
|
|
(princ "\nacadr12.lsp not found. AutoLoader is not enabled. ")
|
|
(princ "Other utilities ")
|
|
)
|
|
(progn
|
|
(ai_loadaverendr)
|
|
(ai_aloadame)
|
|
(ai_asegrey "~")
|
|
)
|
|
)
|
|
|
|
(setvar "MENUCTL" 1)
|
|
|
|
(princ "loaded.")
|
|
(princ)
|