Search the Community
Showing results for tags 'error checking'.
-
Hi, we work primarily in metric millimeters upto four decimal places, and our line/pline lengths are orthogonal, and mostly in multiples of 5 millimeters. is it possible to have an error checking routine to select a bunch of lines & plines in a window and identify all lines which are not in sync ??? While drafting, there may be errors where we draw strange lengths in fractions of millimeters and degrees which are not orthogonal by very very small fractional amounts. Similar in the case of polylines where some vertices could be off by a few millimeters or degrees. Is it possible to identify them in some way so we can edit them/ redraw them to make an accurate drawing ?? my knowledge is very basic in autolisp and zero in visual lisp is zero. thanks guys.
- 5 replies
-
- fractional lines plines
- error checking
-
(and 1 more)
Tagged with:
-
Hi all, I'm a casual basic lisper. Where in the code is wrong. I'm getting the ss with ssget. I want some error trapping to tell the users that nothing is selected. LISP selects all text regardless of layer. But this error I can't fix. I've tried looking at some examples but I can't get any to work. This works when objects are selected: (defun c:SEL_TEXT_ALL () (setq ss nil) (setq ss (ssget '((0 . "MTEXT,TEXT")))) (if (> (sslength ss) 0) (progn (command "Pselect" ss "") (princ (strcat "\nNumber of found Text objects : < " (itoa (sslength ss)) " >")) (setq ss nil) (princ) ) (princ (strcat "\n*** Nothing Selected ***")) ) ) Error I get when nothing selected: Select objects: ; error: bad argument type: lselsetp nil EDIT: Is it good practice to clear the selection set before the progn is run?
-
Adding Error Checking or Conditionals (and combining functions)?
ILoveMadoka posted a topic in AutoLISP, Visual LISP & DCL
I have a small app that (with the help of those here) I have pieced together. I don't know how to do add error checking (or conditionals) so that I don't get scrolling errors for the items that are not found. Also, I think some of the items could be combined for my (ssget "x") but I'm not clear on how that works either. Requesting tweaking of my code or guidance. Warning: I am still a novice... Here is my code: (DEFUN C:SW1 () (Prompt "SolidWorks DWG Cleanup:") (setq TEST (tblsearch "LAYER" "Dim")) (if (= TEST nil) (progn (Command "-layer" "n" "Dim" "C" "Red" "Dim" "") ) ) (setq ss1 (ssget "x" '((0 . "INSERT")(2 . "*SW_CENTERMARKSYMBOL_*")))) (Command "Erase" SS1 "") (setq ss2 (ssget "x" '((0 . "INSERT")(2 . "*SW_NOTE_1*")))) (Command "Erase" SS2 "") (setq ss3 (ssget "x" '((0 . "INSERT")(2 . "*SW_TABLEANNOTATION_0*")))) (Command "Erase" SS3 "") (Command "-style" "Romans" "romans" "" "0.9" "" "" "n" "n") (princ "\nRomans Text Style Created:") (command "dimstyle" "r" "standard") (command "dimtxsty" "romans") (Command "dimstyle" "s" "standard" "y" ) (if (setq ss (ssget "x" '((0 . "DIMENSION")))) (repeat (setq i (sslength ss)) (setq sset (ssname ss (setq i (1- i)))) (if (not (eq (cdr (assoc 3 (setq e (entget sset)))) "Standard")) (entmod (subst (cons 3 "Standard") (assoc 3 e) e)) ) ) (princ) ) (setq ss4 (ssget "x" '((0 . "DIMENSION")))) (Command "_CHANGE" SS4 "" "P" "LA" "DIM" "C" "BYLAYER" "") (Command "_LAYER" "C" "GREEN" "X50" "C" "yellow" "TEXT" "") (setq ss5 (ssget "x" '((6 . "PHANTOM")))) (Command "_CHANGE" SS5 "" "P" "LA" "X25" "C" "BYLAYER" "LT" "PHANTOM" "") (setq ss6 (ssget "x" '((6 . "HIDDEN")))) (Command "_CHANGE" SS6 "" "P" "LA" "X25" "C" "BYLAYER" "LT" "HIDDEN" "") (setq ss7 (ssget "x" '((6 . "DASHED")))) (Command "_CHANGE" SS7 "" "P" "LA" "X25" "C" "BYLAYER" "LT" "DASHED" "") (princ)) Thanks to all...