;;; ow-lisp.lsp ;;; ;;; Bestandteil des Menüs OW-CAD ;;; (c)2008 Andreas "Obi-Wahn" Kanobel ;;; www.obi-wahn.net.tc (defun C:BLATTRAHMEN( FMT / INSP OFANG_BAK) (setq INSP (getpoint "\nEinfügepunkt angeben <0,0>: ")) (if (= INSP nil)(setq INSP '(0 0 0))) (setq OFANG_BAK (getvar "OSMODE")) (setvar "OSMODE" 0) (command "_line" (mapcar '+ INSP '(0 68.5 0)) (mapcar '+ INSP '(10 68.5 0)) "") (command "_line" (mapcar '+ INSP '(0 148.5 0)) (mapcar '+ INSP '(20 148.5 0)) "") (command "_line" (mapcar '+ INSP '(0 228.5 0)) (mapcar '+ INSP '(10 228.5 0)) "") (if (/= FMT "A3") (command "_line" (mapcar '+ INSP '(0 297 0)) (mapcar '+ INSP '(20 297 0)) "") (command "_line" (mapcar '+ INSP '(210 0 0)) (mapcar '+ INSP '(210 5 0)) "") ) (if (= FMT "A0") (command "_rectang" (mapcar '+ INSP '(0 0 0)) (mapcar '+ INSP '(1189 841 0))) (command "_rectang" (mapcar '+ INSP '(20 5 0)) (mapcar '+ INSP '(1184 836 0))) (command "_line" (mapcar '+ INSP '(0 297 0)) (mapcar '+ INSP '(20 400.619 0)) "") (command "_line" (mapcar '+ INSP '(0 594 0)) (mapcar '+ INSP '(20 594 0)) "") (command "_line" (mapcar '+ INSP '(104.3495 836 0)) (mapcar '+ INSP '(105 841 0)) "") (command "_line" (mapcar '+ INSP '(210 836 0)) (mapcar '+ INSP '(210 841 0)) "") (command "_line" (mapcar '+ INSP '(319.5 836 0)) (mapcar '+ INSP '(319.5 841 0)) "") (command "_line" (mapcar '+ INSP '(429 836 0)) (mapcar '+ INSP '(429 841 0)) "") (command "_line" (mapcar '+ INSP '(619 836 0)) (mapcar '+ INSP '(619 841 0)) "") (command "_line" (mapcar '+ INSP '(809 836 0)) (mapcar '+ INSP '(809 841 0)) "") (command "_line" (mapcar '+ INSP '(999 836 0)) (mapcar '+ INSP '(999 841 0)) "") (command "_line" (mapcar '+ INSP '(1184 594 0)) (mapcar '+ INSP '(1189 594 0)) "") (command "_line" (mapcar '+ INSP '(1184 297 0)) (mapcar '+ INSP '(1189 297 0)) "") (command "_line" (mapcar '+ INSP '(999 0 0)) (mapcar '+ INSP '(999 5 0)) "") (command "_line" (mapcar '+ INSP '(809 0 0)) (mapcar '+ INSP '(809 5 0)) "") (command "_line" (mapcar '+ INSP '(619 0 0)) (mapcar '+ INSP '(619 5 0)) "") (command "_line" (mapcar '+ INSP '(429 0 0)) (mapcar '+ INSP '(429 5 0)) "") (command "_line" (mapcar '+ INSP '(319.5 0 0)) (mapcar '+ INSP '(319.5 5 0)) "") ) (if (= FMT "A1") (command "_rectang" (mapcar '+ INSP '(0 0 0)) (mapcar '+ INSP '(841 594 0))) (command "_rectang" (mapcar '+ INSP '(20 5 0)) (mapcar '+ INSP '(836 589 0))) (command "_line" (mapcar '+ INSP '(0 297 0)) (mapcar '+ INSP '(20 353.5714 0)) "") (command "_line" (mapcar '+ INSP '(103.2323 589 0)) (mapcar '+ INSP '(105 594 0)) "") (command "_line" (mapcar '+ INSP '(210 589 0)) (mapcar '+ INSP '(210 594 0)) "") (command "_line" (mapcar '+ INSP '(335.5 589 0)) (mapcar '+ INSP '(335.5 594 0)) "") (command "_line" (mapcar '+ INSP '(461 589 0)) (mapcar '+ INSP '(461 594 0)) "") (command "_line" (mapcar '+ INSP '(651 589 0)) (mapcar '+ INSP '(651 594 0)) "") (command "_line" (mapcar '+ INSP '(836 297 0)) (mapcar '+ INSP '(841 297 0)) "") (command "_line" (mapcar '+ INSP '(651 0 0)) (mapcar '+ INSP '(651 5 0)) "") (command "_line" (mapcar '+ INSP '(461 0 0)) (mapcar '+ INSP '(461 5 0)) "") (command "_line" (mapcar '+ INSP '(335.5 0 0)) (mapcar '+ INSP '(335.5 5 0)) "") ) (if (= FMT "A2") (command "_rectang" (mapcar '+ INSP '(0 0 0)) (mapcar '+ INSP '(594 420 0))) (command "_rectang" (mapcar '+ INSP '(20 5 0)) (mapcar '+ INSP '(589 415 0))) (command "_line" (mapcar '+ INSP '(0 297 0)) (mapcar '+ INSP '(20 320.4286 0)) "") (command "_line" (mapcar '+ INSP '(100.7317 415 0)) (mapcar '+ INSP '(105 420 0)) "") (command "_line" (mapcar '+ INSP '(210 415 0)) (mapcar '+ INSP '(210 420 0)) "") (command "_line" (mapcar '+ INSP '(402 415 0)) (mapcar '+ INSP '(402 420 0)) "") (command "_line" (mapcar '+ INSP '(589 297 0)) (mapcar '+ INSP '(594 297 0)) "") (command "_line" (mapcar '+ INSP '(402 0 0)) (mapcar '+ INSP '(402 5 0)) "") ) (if (= FMT "A3") (command "_rectang" (mapcar '+ INSP '(0 0 0)) (mapcar '+ INSP '(420 297 0))) (command "_rectang" (mapcar '+ INSP '(20 5 0)) (mapcar '+ INSP '(415 292 0))) (command "_line" (mapcar '+ INSP '(125 292 0)) (mapcar '+ INSP '(125 297 0)) "") (command "_line" (mapcar '+ INSP '(230 292 0)) (mapcar '+ INSP '(230 297 0)) "") (command "_line" (mapcar '+ INSP '(230 0 0)) (mapcar '+ INSP '(230 5 0)) "") (command "_line" (mapcar '+ INSP '(125 0 0)) (mapcar '+ INSP '(125 5 0)) "") ) (command "_zoom" "g") (setvar "OSMODE" OFANG_BAK) (princ) ) ; doubleprint (defun C:DBLPRNT (/ layout format_x format_y format ausrichtung hp_format ca_filename hp_filename ctb_path path) (vl-load-com) (setq layout (getvar "ctab")) (if (/= layout "Model") (progn (setq format_x (car (getvar "limmax"))) (setq format_y (cadr (getvar "limmax"))) (cond ((= format_x 210.0) (= format_y 297.0) (setq format "ISO A4") (setq ausrichtung "H")) ((= format_x 297.0) (= format_y 210.0) (setq format "ISO A4") (setq ausrichtung "Q")) ((= format_x 297.0) (= format_y 420.0) (setq format "ISO A3") (setq ausrichtung "H")) ((= format_x 420.0) (= format_y 297.0) (setq format "ISO A3") (setq ausrichtung "Q")) ((= format_x 420.0) (= format_y 594.5) (setq format "ISO A2") (setq ausrichtung "H")) ((= format_x 594.5) (= format_y 420.0) (setq format "ISO A2") (setq ausrichtung "Q")) ((= format_x 594.5) (= format_y 841.0) (setq format "ISO A1") (setq ausrichtung "H")) ((= format_x 841.0) (= format_y 594.5) (setq format "ISO A1") (setq ausrichtung "Q")) ((= format_x 841.0) (= format_y 1189.0) (setq format "ISO A0") (setq ausrichtung "H")) ((= format_x 1189.0) (= format_y 841.0) (setq format "ISO A0") (setq ausrichtung "Q")) ) (if (= ausrichtung "H") (setq hp_format (strcat "Übergröße: " format " (Hochformat)"))) (if (= ausrichtung "Q") (setq hp_format (strcat "Übergröße: " format " (Querformat)"))) (if (= format "ISO A0") (setq hp_format "Übergröße: ISO A0 ")) (setq ca_filename (strcat (getvar "dwgprefix") layout "_" (substr format 5 2) "_für_CW8400PG.plt")) (setq hp_filename (strcat (getvar "dwgprefix") layout "_" (substr format 5 2) "_für_HP1050C.plt")) (setq path (vla-get-printerstylesheetpath (vla-get-files (vla-get-preferences (vlax-get-acad-object))))) (setq ctb_path (getfiled "Plotstiltabelle auswählen" path "ctb" 0)) (command "-plot" "j" layout "Canon W8400PG" format "M" ausrichtung "N" "L" "1=1" "-6.00,-6.00" "J" ctb_path "J" "J" "N" "N" "J" ca_filename "N" "J" ) (command "-plot" "j" layout "HP DesignJet 1050C" hp_format "M" ausrichtung "N" "L" "1=1" "0.00,0.00" "J" ctb_path "J" "J" "N" "N" "J" hp_filename "N" "J" ) (princ) ) (print "FEHLER: Das Drucken mit 'DBLPRNT' ist nur im Layout möglich") (princ) ) ) ; Hatchgen (defun C:FISCHGRAT (/ L B C1 C2 C3 FIL FNAME) (setq L (getreal "\nLänge eines Bodenbretts: ")) (setq B (getreal "\nBreite eines Bodenbretts: ")) (setq C1 (+ L B)) (setq C2 (- L B)) (setq C3 (sqrt(/ (* L L) 2))) (setq FNAME (strcat "Fischgrat_" B "-" L)) (setq FIL (open (strcat FNAME ".pat") "a")) (write-line ";; Hatch Pattern created using HatchGen Ver. 0.1 coded by Obi-Wahn" FIL) (write-line ";; Download avaliable at www.securityvision.ch" FIL) (write-line (strcat "*" FNAME ", Parkettboden-Fischgrat " B " x " L " mm") FIL) (write-line (strcat "45, 0, 0, " B ", " B ", " C1 ", -" C2) FIL) (write-line (strcat "315, " C3 ", " C3 ", " B ", -" B ", " C1 ", -" C2) FIL) (close FIL) (princ) ) (defun C:SCHIFFBODEN (/ L B T C1 C2 FIL FNAME) (setq L (getreal "\nLänge eines Bodenbretts: ")) (setq B (getreal "\nBreite eines Bodenbretts: ")) (setq T (getreal "\nAnzahl der Stoßkanten pro Brettlänge: ")) (setq C1 (/ L T)) (setq C2 (* (- T 1) B)) (setq FNAME (strcat "Schiffboden_" B "-" L "-" T)) (setq FIL (open (strcat FNAME ".pat") "a")) (write-line ";; Hatch Pattern created using HatchGen Ver. 0.1 coded by Obi-Wahn" FIL) (write-line ";; Download avaliable at www.securityvision.ch" FIL) (write-line (strcat "*" FNAME ", Schiffboden " B " x " L " mit " T " Vertikalteilung(en)") FIL) (write-line (strcat "0, 0, 0, 0, " B) FIL) (write-line (strcat "90, 0, 0, " B ", -" C1 ", " B ", -" C2) FIL) (close FIL) (princ) ) (defun C:FLIESEN_GEREIHT (/ B H F C1 C2 FNAME FIL) (setq B (getreal "\nBreite einer Fliese: ")) (setq H (getreal "\nHöhe einer Fliese: ")) (setq F (getreal "\nFugenbreite: ")) (setq C1 (+ B F)) (setq C2 (+ H F)) (setq FNAME (strcat "Fliesen_G_" B "-" H "-" F)) (setq FIL (open (strcat FNAME ".pat") "a")) (write-line ";; Hatch Pattern created using HatchGen Ver. 0.1 coded by Obi-Wahn" FIL) (write-line ";; Download avaliable at www.securityvision.ch" FIL) (write-line (strcat "*" FNAME ", Gereiht Fliesen " B " x " H " mm mit " F "mm Fuge") FIL) (write-line (strcat "0, " F ", " F ", 0, " C2 ", " B ", -" F) FIL) (write-line (strcat "0, " F ", " C2 ", 0, " C2 ", " B ", -" F) FIL) (write-line (strcat "90, " F ", " F ", 0, -" C1 ", " H ", -" F) FIL) (write-line (strcat "90, " C1 ", " F ", 0, -" C1 ", " H ", -" F) FIL) (close FIL) (princ) ) (defun C:FLIESEN_VERSETZT (/ B H F C1 C2 C3 C4 FNAME FIL) (setq B (getreal "\nBreite einer Fliese: ")) (setq H (getreal "\nHöhe einer Fliese: ")) (setq F (getreal "\nFugenbreite: ")) (setq C1 (/ (+ B F) 2)) (setq C2 (+ H F)) (setq C3 (+ B F)) (setq C4 (+ C3 F)) (setq FNAME (strcat "Fliesen_V_" B "-" H "-" F)) (setq FIL (open (strcat FNAME ".pat") "a")) (write-line ";; Hatch Pattern created using HatchGen Ver. 0.1 coded by Obi-Wahn" FIL) (write-line ";; Download avaliable at www.securityvision.ch" FIL) (write-line (strcat "*" FNAME ", Versetzte Fliesen " B " x " H " mm mit " F "mm Fuge") FIL) (write-line (strcat "0, " F ", " F ", " C1 ", " C2 ", " B ", -" F) FIL) (write-line (strcat "0, " F ", " C2 ", " C1 ", " C2 ", " B ", -" F) FIL) (write-line (strcat "90, " F ", " F ", " C2 ", -" C1 ", " H ", -" C4) FIL) (write-line (strcat "90, " C3 ", " F ", " C2 ", -" C1 ", " H ", -" C4) FIL) (close FIL) (princ) )