Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/14/2022 in all areas

  1. To offer an alternative, consider the NBURST command defined by my Burst Upgraded application.
    3 points
  2. http://www.lee-mac.com/boxtext.html I made this using this code of lee mac. I've modified it a bit and most of it is his code. It was created to make it easy to create searchable pdf files. (In the shx state has some problem as we all know width limited to 1, or printing with PDFSHX as comments, or printing with microstation, or using adobe ocr. etc...) If the space occupied by the shx font and the space occupied by the ttf font match, there is no problem in most drawings, so I thought like this Create a bounding box in shx font, convert every STYLE to Arial ttf font, create a bounding box again, move the starting point (lower-left), and then adjust the height, and then adjust the width(scale factor). command : AUTOARIAL (defun C:AUTOARIAL ( / *error* text_ss text_ss_length text_ss_index text_data text_data_list text_ent text_height text_width text_box text_box_height text_box_width fontstyle text_box2 text_box3 text_box_height3 height_scale text_box4 text_box_width4 width_scale ) (LM:startundo (LM:acdoc)) (setvar "cmdecho" 0) (defun *error* ( msg ) (LM:endundo (LM:acdoc)) (if (not (wcmatch (strcase msg t) "*break,*cancel*,*exit*")) (princ (strcat "\nError: " msg)) ) (princ) ) (setq mtext_ss (ssget "X" '((0 . "MTEXT")) ) ) (command "_.explode" mtext_ss "") (command "_.regen") (setq text_ss (ssget "X" '((0 . "TEXT")) ) ) (setq text_ss_length (sslength text_ss)) (setq text_ss_index 0) (setq text_data_list nil) (setq text_ent nil) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_height (cdr (assoc 40 text_ent))) (setq text_width (cdr (assoc 41 text_ent))) (setq text_box (text-box-off text_ent 0)) (setq text_box_height (distance (car text_box) (cadddr text_box))) (setq text_box_width (distance (car text_box) (cadr text_box))) (setq text_data (list text_ent_name text_height text_width text_box_height text_box_width (car text_box))) (setq text_data_list (cons text_data text_data_list)) (setq text_ss_index (+ text_ss_index 1)) ) (setq text_data_list (reverse text_data_list)) ;(princ text_data_list) (setq fontstyle (tblnext "STYLE" T)) (while fontstyle (setq fontstyle (strcase (cdr (assoc 2 fontstyle)))) (command "style" fontstyle "arial.ttf" "0" "1" "0" "N" "N") (setq fontstyle (tblnext "STYLE")) ) (setq text_box2 nil) (setq text_ss_index 0) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box2 (text-box-off text_ent 0)) (vla-move text_obj (vlax-3d-point (car text_box2)) (vlax-3d-point (nth 5 (nth text_ss_index text_data_list)))) (setq text_ss_index (+ text_ss_index 1)) ) (setq text_box3 nil) (setq text_box_height3 0) (setq text_ss_index 0) (setq height_scale 0) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box3 (text-box-off text_ent 0)) (setq text_box_height3 (distance (car text_box3) (cadddr text_box3))) (if (= text_box_height3 0) (progn ) (progn (setq height_scale (/ (nth 3 (nth text_ss_index text_data_list)) text_box_height3) ) (vla-put-height text_obj (* (vla-get-height text_obj) height_scale)) ) ) (setq text_ss_index (+ text_ss_index 1)) ) (setq text_box4 nil) (setq text_box_width4 0) (setq text_ss_index 0) (setq width_scale 0) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box4 (text-box-off text_ent 0)) (setq text_box_width4 (distance (car text_box4) (cadr text_box4))) (if (= text_box_width4 0) (progn ) (progn (setq width_scale (/ (nth 4 (nth text_ss_index text_data_list)) text_box_width4)) (vla-put-scalefactor text_obj (* (vla-get-scalefactor text_obj) width_scale)) ) ) (setq text_ss_index (+ text_ss_index 1)) ) (LM:endundo (LM:acdoc)) (setvar "cmdecho" 1) (princ) ) ;; Text Box - gile / Lee Mac ;; Returns an OCS point list describing a rectangular frame surrounding ;; the supplied text or mtext entity with optional offset ;; enx - [lst] Text or MText DXF data list ;; off - [rea] offset (may be zero) (defun text-box-off ( enx off / bpt hgt jus lst ocs org rot wid ) (cond ( (= "TEXT" (cdr (assoc 00 enx))) (setq bpt (cdr (assoc 10 enx)) rot (cdr (assoc 50 enx)) lst (textbox enx) lst (list (list (- (caar lst) off) (- (cadar lst) off)) (list (+ (caadr lst) off) (- (cadar lst) off)) (list (+ (caadr lst) off) (+ (cadadr lst) off)) (list (- (caar lst) off) (+ (cadadr lst) off)) ) ) ) ( (= "MTEXT" (cdr (assoc 00 enx))) (setq ocs (cdr (assoc 210 enx)) bpt (trans (cdr (assoc 10 enx)) 0 ocs) rot (angle '(0.0 0.0) (trans (cdr (assoc 11 enx)) 0 ocs)) wid (cdr (assoc 42 enx)) hgt (cdr (assoc 43 enx)) jus (cdr (assoc 71 enx)) org (list (cond ((member jus '(2 5 8)) (/ wid -2.0)) ((member jus '(3 6 9)) (- wid)) (0.0)) (cond ((member jus '(1 2 3)) (- hgt)) ((member jus '(4 5 6)) (/ hgt -2.0)) (0.0)) ) lst (list (list (- (car org) off) (- (cadr org) off)) (list (+ (car org) wid off) (- (cadr org) off)) (list (+ (car org) wid off) (+ (cadr org) hgt off)) (list (- (car org) off) (+ (cadr org) hgt off)) ) ) ) ) (if lst ( (lambda ( m ) (mapcar '(lambda ( p ) (mapcar '+ (mxv m p) bpt)) lst)) (list (list (cos rot) (sin (- rot)) 0.0) (list (sin rot) (cos rot) 0.0) '(0.0 0.0 1.0) ) ) ) ) ;; Matrix x Vector - Vladimir Nesterovsky ;; Args: m - nxn matrix, v - vector in R^n (defun mxv ( m v ) (mapcar '(lambda ( r ) (apply '+ (mapcar '* r v))) m) ) ;; Start Undo - Lee Mac ;; Opens an Undo Group. (defun LM:startundo ( doc ) (LM:endundo doc) (vla-startundomark doc) ) ;; End Undo - Lee Mac ;; Closes an Undo Group. (defun LM:endundo ( doc ) (while (= 8 (logand 8 (getvar 'undoctl))) (vla-endundomark doc) ) ) (defun LM:acdoc nil (eval (list 'defun 'LM:acdoc 'nil (vla-get-activedocument (vlax-get-acad-object)))) (LM:acdoc) ) sorry for variable is not cleaned ======= updated code ========= (defun C:AUTOARIAL ( / *error* text_ss text_ss_length text_ss_index text_data text_data_list text_ent text_height text_width text_box text_box_height text_box_width fontstyle text_box2 text_box3 text_box_height3 height_scale text_box4 text_box_width4 width_scale ) (LM:startundo (LM:acdoc)) (setvar "cmdecho" 0) (defun *error* ( msg ) (LM:endundo (LM:acdoc)) (if (not (wcmatch (strcase msg t) "*break,*cancel*,*exit*")) (princ (strcat "\nError: " msg)) ) (princ) ) (princ "\n change every STYLE with shx fonts, to Arial ttf font.") (setq mtext_ss (ssget "X" '((0 . "MTEXT")) ) ) (command "_.explode" mtext_ss "") (command "_.regen") (setq text_ss (ssget "X" '((0 . "TEXT")) ) ) (setq text_ss_length (sslength text_ss)) (setq text_ss_index 0) (setq text_data_list nil) (setq text_ent nil) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_height (cdr (assoc 40 text_ent))) (setq text_width (cdr (assoc 41 text_ent))) (setq text_box (text-box-off text_ent 0)) (setq text_box_height (distance (car text_box) (cadddr text_box))) (setq text_box_width (distance (car text_box) (cadr text_box))) (setq text_data (list text_ent_name text_height text_width text_box_height text_box_width (car text_box))) (setq text_data_list (cons text_data text_data_list)) (setq text_ss_index (+ text_ss_index 1)) ) (setq text_data_list (reverse text_data_list)) ;(princ text_data_list) (setq fontstyle (tblnext "STYLE" T)) (while fontstyle (setq fontstyle (strcase (cdr (assoc 2 fontstyle)))) (command "style" fontstyle "arial.ttf" "0" "1" "0" "N" "N") (setq fontstyle (tblnext "STYLE")) ) (setq text_box2 nil) (setq text_ss_index 0) (cond ((= 6 (LM:popup "Move BasePoints." "You want to move BasePoint? \n General Case is [ No ]" 36)) (princ "\n Move BasePoints.") (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box2 (text-box-off text_ent 0)) (vla-move text_obj (vlax-3d-point (car text_box2)) (vlax-3d-point (nth 5 (nth text_ss_index text_data_list)))) (setq text_ss_index (+ text_ss_index 1)) ) ) (t (princ "\n Do not Move BasePoints.")) ) (setq text_box3 nil) (setq text_box_height3 0) (setq text_ss_index 0) (setq height_scale 0) (cond ((= 6 (LM:popup "Round Up the Height" "You want to Round Up the Height?" 36)) (princ "\n Round Up the Height.") (setq roundingh (getreal "\n Input Round Up Factor \n ex) h1500 - input100 / h1510 - input10 / h1511 - input1 ")) (if (= roundingh nil) (setq roundingh (/ 1 100))) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box3 (text-box-off text_ent 0)) (setq text_box_height3 (distance (car text_box3) (cadddr text_box3))) (if (= text_box_height3 0) (progn ) (progn (setq height_scale (/ (nth 3 (nth text_ss_index text_data_list)) text_box_height3) ) (vla-put-height text_obj (LM:roundup (* (vla-get-height text_obj) height_scale) roundingh)) ) ) (setq text_ss_index (+ text_ss_index 1)) );end of repeat );end of cond 6 (t (princ "\n no Round Up the Height.") (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box3 (text-box-off text_ent 0)) (setq text_box_height3 (distance (car text_box3) (cadddr text_box3))) (if (= text_box_height3 0) (progn ) (progn (setq height_scale (/ (nth 3 (nth text_ss_index text_data_list)) text_box_height3) ) (vla-put-height text_obj (* (vla-get-height text_obj) height_scale)) ) ) (setq text_ss_index (+ text_ss_index 1)) );end of repeat ) ) (setq text_box4 nil) (setq text_box_width4 0) (setq text_ss_index 0) (setq width_scale 0) (cond ((= 6 (LM:popup "Round Up the Width" "You want to Round Up the Width?" 36)) (princ "\n Round Up the Width.") (setq roundingw (getreal "\n Input Round Up Factor \n ex) w1.0 - input1 / w1.1 - input0.1 / w1.01 - input0.01 ")) (if (= roundingw nil) (setq roundingw (/ 1 100) )) (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box4 (text-box-off text_ent 0)) (setq text_box_width4 (distance (car text_box4) (cadr text_box4))) (if (= text_box_width4 0) (progn ) (progn (setq width_scale (/ (nth 4 (nth text_ss_index text_data_list)) text_box_width4)) (vla-put-scalefactor text_obj (LM:roundup (* (vla-get-scalefactor text_obj) width_scale) roundingw)) ) ) (setq text_ss_index (+ text_ss_index 1)) );end of repeat );end of cond 6 (t (princ "\n no Round Up the Width.") (repeat text_ss_length (setq text_ent (entget (ssname text_ss text_ss_index))) (setq text_ent_name (cdr (assoc -1 text_ent))) (setq text_obj (vlax-ename->vla-object text_ent_name)) (setq text_box4 (text-box-off text_ent 0)) (setq text_box_width4 (distance (car text_box4) (cadr text_box4))) (if (= text_box_width4 0) (progn ) (progn (setq width_scale (/ (nth 4 (nth text_ss_index text_data_list)) text_box_width4)) (vla-put-scalefactor text_obj (* (vla-get-scalefactor text_obj) width_scale)) ) ) (setq text_ss_index (+ text_ss_index 1)) );end of repeat ) ) (LM:endundo (LM:acdoc)) (setvar "cmdecho" 1) (princ) ) ;; Round Up - Lee Mac ;; Rounds 'n' up to the nearest 'm' (defun LM:roundup ( n m ) ((lambda ( r ) (cond ((equal 0.0 r 1e-8) n) ((< n 0) (- n r)) ((+ n (- m r))))) (rem n m)) ) ;; Round Multiple - Lee Mac ;; Rounds 'n' to the nearest multiple of 'm' (defun LM:roundm ( n m ) (* m (fix ((if (minusp n) - +) (/ n (float m)) 0.5))) ) ;; Round To - Lee Mac ;; Rounds 'n' to 'p' decimal places (defun LM:roundto ( n p ) (LM:roundm n (expt 10.0 (- p))) ) ;; Text Box - gile / Lee Mac ;; Returns an OCS point list describing a rectangular frame surrounding ;; the supplied text or mtext entity with optional offset ;; enx - [lst] Text or MText DXF data list ;; off - [rea] offset (may be zero) (defun text-box-off ( enx off / bpt hgt jus lst ocs org rot wid ) (cond ( (= "TEXT" (cdr (assoc 00 enx))) (setq bpt (cdr (assoc 10 enx)) rot (cdr (assoc 50 enx)) lst (textbox enx) lst (list (list (- (caar lst) off) (- (cadar lst) off)) (list (+ (caadr lst) off) (- (cadar lst) off)) (list (+ (caadr lst) off) (+ (cadadr lst) off)) (list (- (caar lst) off) (+ (cadadr lst) off)) ) ) ) ( (= "MTEXT" (cdr (assoc 00 enx))) (setq ocs (cdr (assoc 210 enx)) bpt (trans (cdr (assoc 10 enx)) 0 ocs) rot (angle '(0.0 0.0) (trans (cdr (assoc 11 enx)) 0 ocs)) wid (cdr (assoc 42 enx)) hgt (cdr (assoc 43 enx)) jus (cdr (assoc 71 enx)) org (list (cond ((member jus '(2 5 8)) (/ wid -2.0)) ((member jus '(3 6 9)) (- wid)) (0.0)) (cond ((member jus '(1 2 3)) (- hgt)) ((member jus '(4 5 6)) (/ hgt -2.0)) (0.0)) ) lst (list (list (- (car org) off) (- (cadr org) off)) (list (+ (car org) wid off) (- (cadr org) off)) (list (+ (car org) wid off) (+ (cadr org) hgt off)) (list (- (car org) off) (+ (cadr org) hgt off)) ) ) ) ) (if lst ( (lambda ( m ) (mapcar '(lambda ( p ) (mapcar '+ (mxv m p) bpt)) lst)) (list (list (cos rot) (sin (- rot)) 0.0) (list (sin rot) (cos rot) 0.0) '(0.0 0.0 1.0) ) ) ) ) ;; Popup - Lee Mac ;; A wrapper for the WSH popup method to display a message box prompting the user. ;; ttl - [str] Text to be displayed in the pop-up title bar ;; msg - [str] Text content of the message box ;; bit - [int] Bit-coded integer indicating icon & button appearance ;; Returns: [int] Integer indicating the button pressed to exit (defun LM:popup ( ttl msg bit / wsh rtn ) (if (setq wsh (vlax-create-object "wscript.shell")) (progn (setq rtn (vl-catch-all-apply 'vlax-invoke-method (list wsh 'popup msg 0 ttl bit))) (vlax-release-object wsh) (if (not (vl-catch-all-error-p rtn)) rtn) ) ) ) ;; Matrix x Vector - Vladimir Nesterovsky ;; Args: m - nxn matrix, v - vector in R^n (defun mxv ( m v ) (mapcar '(lambda ( r ) (apply '+ (mapcar '* r v))) m) ) ;; Start Undo - Lee Mac ;; Opens an Undo Group. (defun LM:startundo ( doc ) (LM:endundo doc) (vla-startundomark doc) ) ;; End Undo - Lee Mac ;; Closes an Undo Group. (defun LM:endundo ( doc ) (while (= 8 (logand 8 (getvar 'undoctl))) (vla-endundomark doc) ) ) ;; Active Document - Lee Mac ;; Returns the VLA Active Document Object (defun LM:acdoc nil (eval (list 'defun 'LM:acdoc 'nil (vla-get-activedocument (vlax-get-acad-object)))) (LM:acdoc) ) add move base point option (this option for characters that use below the baseline, like p, g, q, but I think it's unnecessary in general) add width & height round up options ex) autoarial - N - N - N make Text like 1921.123 Height & 0.8782 Width All text can have different values ex ) autoarial - N - Y - 100 - Y - 0.1 makes Text like 1900 Height & 0.9 Width Texts can have an organized values If you set the round up factor well, you can get a clean drawing.
    2 points
  3. This goes for anyone. please feel free to edit anything i post. I often come back and edit things after thinking about it for awhile. Nice to see whats its going to be if you just hit enter. (if (not(setq h (getreal (strcat "\nText Height ["(rtos (getvar 'textsize) 2 (getvar 'luprec)) "]: ")))) (setq h textsize) ) Text Height [0.2000]: No need to change osmode just put "_non" in front of pt. (vl-cmdf "_.-Boundary" "_non" PT "") This could give the wrong area if their is an island tho.
    2 points
  4. Very Strongest Protected lisp code funny result (eq "DD:13:EF:3D:95:AC" ret) ;; This is your Pc MAC (eq "BFEBFBFF040908EA" serx) ;; This is your Processor Id Licence.lsp
    2 points
  5. I am not sure if I am following this correctly, Like MHUPP says, maybe a sample drawing could help - even a small portion of one, perhaps with a 'before' and 'after' block from what you have now and what you want it to be. I might be confused you see. For plotting as a black and white plan, even to PDF I would control the colours with either a monochrome plot style table in the plotter dialogue or in the view ports select the layers and VP-Colour to be white, or both. Might be that you create a layout just for B&W plan, do it the VP-colour way then it looks B&W white on the screen in case you are showing anyone online. After that you can draw however you want and set up all the blocks to by layer colours or byblock. Below is a routine I copied years ago (and before I routinely noted the source, if the originator is reading this, let m know so I can credit you). Command is attnorm and it sets everything to by-block, near the end is a commented section, just comment out ( ;; ) anything you don't want to change. Set all blocks to byblock, or bylayer and you should be OK? ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun c:attnorm (/ myblocklayer myblockcolour myblocklineweight myblocklinetype) (setq myblocklayer "0") (setq myblockcolour 0) (setq myblocklineweight aclnwtbyblock) (setq myblocklinetype "byblock") (mynorm myblocklayer myblockcolour myblocklineweight myblocklinetype) (princ) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun mynorm (myblocklayer myblockcolour myblocklineweight myblocklinetype / *error* adoc lst_layer func_restore-layers) (defun *error* (msg) (func_restore-layers) (vla-endundomark adoc) (princ msg) (princ) ) ;_ end of defun (defun func_restore-layers () (foreach item lst_layer (vla-put-lock (car item) (cdr (assoc "lock" (cdr item)))) (vl-catch-all-apply '(lambda () (vla-put-freeze (car item) (cdr (assoc "freeze" (cdr item))) ) ;_ end of vla-put-freeze ) ;_ end of lambda ) ;_ end of vl-catch-all-apply ) ;_ end of foreach ) ;_ end of defun (vla-startundomark (setq adoc (vla-get-activedocument (vlax-get-acad-object))) ) ;_ end of vla-startundomark (if (and (not (vl-catch-all-error-p (setq selset (vl-catch-all-apply (function (lambda () (ssget '((0 . "INSERT"))) ) ;_ end of lambda ) ;_ end of function ) ;_ end of vl-catch-all-apply ) ;_ end of setq ) ;_ end of vl-catch-all-error-p ) ;_ end of not selset ) ;_ end of and (progn (vlax-for item (vla-get-layers adoc) (setq lst_layer (cons (list item (cons "lock" (vla-get-lock item)) (cons "freeze" (vla-get-freeze item)) ) ;_ end of list lst_layer ) ;_ end of cons ) ;_ end of setq (vla-put-lock item :vlax-false) (vl-catch-all-apply '(lambda () (vla-put-freeze item :vlax-false)) ) ;_ end of vl-catch-all-apply ) ;_ end of vlax-for (foreach blk_def (mapcar (function (lambda (x) (vla-item (vla-get-blocks adoc) x) ) ;_ end of lambda ) ;_ end of function ((lambda (/ res) (foreach item (mapcar (function (lambda (x) (vla-get-name (vlax-ename->vla-object x) ) ;_ end of vla-get-name ) ;_ end of lambda ) ;_ end of function ((lambda (/ tab item) (repeat (setq tab nil item (sslength selset) ) ;_ end setq (setq tab (cons (ssname selset (setq item (1- item)) ) ;_ end of ssname tab ) ;_ end of cons ) ;_ end of setq ) ;_ end of repeat tab ) ;_ end of lambda ) ) ;_ end of mapcar (if (not (member item res)) (setq res (cons item res)) ) ;_ end of if ) ;_ end of foreach (reverse res) ) ;_ end of lambda ) ) ;_ end of mapcar (vlax-for ent blk_def ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;Sets the block attributes ;;add in here other attributes to change (vla-put-layer ent myblocklayer) (vla-put-color ent myblockcolour) (vla-put-lineweight ent myblocklineweight) ;; (vla-put-linetype ent myblocklinetype) ;;end of setting up block attributes ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ) ;_ end of vlax-for ) ;_ end of foreach (func_restore-layers) (vla-regen adoc acallviewports) ) ;_ end of progn ) ;_ end of if (vla-endundomark adoc) (princ) ) ;_ end of defun
    1 point
  6. lol Alternative. that's a good one. @Elektrik use Lee Mac's
    1 point
  7. Also, Ctrl+Shift+Arrow will select whole words, and Ctrl+Bksp will delete whole words.
    1 point
  8. Sorry forgot the "C:" in the if statement should be working now. --Edit At my work computer now and might have to delete all attributes after burst command. seems to leaved the attribute in BricsCAD let me know if this is the same in AutoCAD.
    1 point
  9. I have moved your thread to the AutoCAD 2D Drafting, Object Properties & Interface Forum. It doesn't seem to be a LISP problem.
    1 point
  10. You're not following the math (i.e. - scale factor) I posted previously?
    1 point
  11. First off, the scales shown above are used in civil engineering drawings (ex. - site plans, road layouts), not architectural drawings (ex. - houses, industrial/commercial buildings). nzoro99 is using architectural scaling. Choose your scale. For example: 1/8” = 1' Invert the fraction and multiply by 12 to get: 8/1 x 12 = 96 Your scale factor is 96. It is not 24. That would be 1/2" = 1'
    1 point
  12. Or put a hidden file in the root directory, and check for its existence.
    1 point
  13. Simplest might be best then? Assuming that the other person is clever enough to open a plain LISP file, that you can compile your code to VLX why not go mega simple? (defun c:ThisIsMyLisp ( / ) (princ "\nEnter Password") (if (= (getstring) "APassword") (progn .. do lots of clever stuff ) ; end progn (progn (alert "Invalid Password") ) ; end progn ) ; end if ) Change the getsting to look at computer name or whatever you want
    1 point
  14. Or, you can use the arrow keys on the keyboard. Shift+Arrow key will select as you go.
    1 point
×
×
  • Create New...