All Activity
- Past hour
-
While it is not incorrect to use single lines to indicate beams, be they I-beams or channels, most students tend to use double lines. If you want to depict the structural steel with single lines, then label them with the correct type/size (ex. - W12x45 and C9x20).
- Today
-
EmeraldSynth started following Penn Foster Structural Drafting
-
Hello! I've moved on from being confused on the Oleson subdivision to being confused on the Structural Drafting project lol. So far I've made the W12x52 columns, the footers, and the girders. But I'm having trouble with placing the channels. (the C9x20 beams) So I drew them according to the AISC database, but how do I draw them as a beam running across the structure, versus how I have it in the photo circled in blue. I hope that's not a stupid question, but it's just not making sense in my head.
-
b15063368 joined the community
-
You received that error because without Map 3D you don't have any ADE functions like the ones that start with "mapexp-" in the posted lisp. With just AutoCAD there isn't anyway to use any of those functions. ArcGIS for AutoCAD is an option. In the United States anyone with a subscription to AutoCAD can install Map 3D for free. You would have to check to see if it works the same way in China. Map 3D is simply AutoCAD with added mapping tools and functions.
-
i don't have the MAP 3D on my computer , and don't known what software is MAP 3D , i never used it .I just try to use your code to export SHP from CAD2010,and load it on my arcmap, sorry , i am from China, and poor in Engish, i hope you known what i mean. thank you all the same.
- Yesterday
-
tombu started following Export layers with objectdata to GIS format
-
AutoCAD Map 3D To Export SHP Files: https://help.autodesk.com/view/MAP/2025/ENU/?guid=GUID-55FE7920-51ED-42AB-B52C-0AC25C198E46 You cannot export SHP files with or without lisp from AutoCAD without Map 3D which is a free install if you have AutoCAD.
-
shamshod joined the community
-
offmean joined the community
-
aliyd joined the community
-
Need more information. What exactly are you doing, step by step? Do you have MAP 3D?
-
malintzin joined the community
-
error: no function definition: ADE_ODGETTABLES
- Last week
-
Emmanuel Delay started following select text as block name
-
Based of this code by Lee Mac. I changed it to do what you ask for. - copy-paste this code to a file named select-text-as-block.lsp (or whatever, just make sure it has the .lsp extension), - Drag this file to your drawing - type command otbs, press enter, then follow the instructions. (select the objects; select the text object, select a point on screen) (I hope you don't need attributes; they seem to be somewhat of a problem with this code) ;; Objects to Block - Lee Mac ;; Converts a selection of objects to a block reference. ;; adapted by Emmanuel Delay : obj2blk separated from c:obj2blk (defun add_attdef ( / ip tag prmpt dfault) (entmake (list (cons 0 "ATTDEF") (cons 8 "0") (cons 10 '(0.3 4.3 0.0)) (cons 70 0) (cons 1 "") (cons 2 "NUM") (cons 3 "Number: ") (cons 40 2.0) ) ) ) ;; @params: s: selection, n: name, p: point (defun obj2blk (s n p / e i l s x ) (if (and s (progn (while (not (or (= "" n) (and (snvalid n) (null (tblsearch "BLOCK" n)) ) ) ) (princ "\nBlock name invalid or already exists.") ) (if (= "" n) (setq n "*U") ) p ) ) (progn (entmake (list '(0 . "BLOCK") (cons 10 (trans p 1 0)) (cons 02 n) (cons 70 (if (wcmatch n "`**") 1 0)) ) ) (repeat (setq i (sslength s)) (entmake (entget (setq e (ssname s (setq i (1- i)))))) (if (= 1 (cdr (assoc 66 (entget e)))) (progn (setq x (entnext e) l (entget x) ) (while (/= "SEQEND" (cdr (assoc 0 l))) (entmake l) (setq x (entnext x) l (entget x) ) ) (entmake l) ) ) (entdel e) ) ;;(add_attdef) (if (setq n (entmake '((0 . "ENDBLK")))) (entmake (list '(0 . "INSERT") (cons 02 n) (cons 10 (trans p 1 0)) ) ) ) ) ) (princ "\nBlock made: ") (princ n) ) (defun c:otb ( / s n p) (setq s (ssget "_:L" '((-4 . "<NOT") (0 . "ATTDEF,VIEWPORT") (-4 . "NOT>")))) ;;(setq s (ssget "_:L" '((-4 . "<NOT") (0 . "VIEWPORT") (-4 . "NOT>")))) (setq n (getstring t "\nSpecify Block Name <Anonymous>: ")) (setq p (getpoint "\nSpecify Base Point: ")) (obj2blk s n p) (princ) ) (defun c:otbs ( / s n p) (setq s (ssget "_:L" '((-4 . "<NOT") (0 . "ATTDEF,VIEWPORT") (-4 . "NOT>")))) ;;(setq s (ssget "_:L" '((-4 . "<NOT") (0 . "VIEWPORT") (-4 . "NOT>")))) ;;; (setq n (cdr (assoc 1 (entget (car (entsel "\nSelect a text object that holds the name of the block: ")))))) (setq p (getpoint "\nSpecify Base Point: ")) (obj2blk s n p) (princ) )
-
Gian75 joined the community
-
Amdghedy joined the community
-
It's a very interesting topic that has gone unresolved for far too long. At least I never found one. But that solution should also consider any piece of land in the middle of the water. In my opinion, the criterion for defining a centerline depends on the physical property that needs to be preserved. For a river, the property that seems most convenient to preserve is equidistance. However, in a wall, the properties to preserve are angular symmetry and structural direction. Therefore, I agree with GP_ and Dexus. But perhaps for this reason, the tools mentioned in this thread won't be able to correctly calculate the centerline of a wall.
-
You would probably need a LISP. Maybe this one... I have moved your thread to the AutoLISP, Visual LISP & DCL Forum.
-
Wanner joined the community
-
Hana-m joined the community
-
I’m working on part nesting in AutoCAD and I need to save each part as a block named after the part. Is there a way to create a block and automatically use a selected text object as the block name, instead of typing the name manually?
-
Srini_30 joined the community
-
Use the BATTMAN command to edit the MText color. After changing the color, click Sync and Apply. Only then will the updated MText color be applied to all instances of the block throughout the entire drawing.
-
paperspace/wireframe issue
CyberAngel replied to Alona's topic in AutoCAD Drawing Management & Output
What you'll probably need to do is set the proper coordinate system in your viewport. To make things simpler, you can create the proper view with UCS, give it a name, and save it. That way you can use it as many times as you need to. To prepare your plan, go to paper space, open the viewport, and "restore" the view. Once you have your linework at the right scale, angle, and location, lock the viewport. If your model is not supposed to look like a wireframe, check the properties for the Visual Style while in model space. If this doesn't help, please give us more information. -
Viewport Inset Generator
CivilTechSource replied to CivilTechSource's topic in AutoLISP, Visual LISP & DCL
Hi @troggarf, Lee Mac's VPOutline is a great start! I am having difficulty understanding your lisp. ssget "_:L" will prompt the user to select items using window selection? Could we pass a filter to only select the latest created VPOutlines and just select the Key Plan Viewport? My aspiration is to combine Lee Mac VPOutline with your suggestion. But some further tweaking might be required. -
No - the messages printed by the (ssget) function ignore NOMUTT; there are likely many other commands/functions which ignore NOMUTT - it depends on how they were implemented and whether NOMUTT/CMDECHO was considered when outputting messages.
-
No - as you cannot intercept the evaluation of the (ssget) function.
-
Searching multiple dwg files for text
EleenD03 replied to clowe-thcp's topic in AutoCAD Drawing Management & Output
I've been down this rabbit hole before. Relying on Windows Explorer is so hit-or-miss since AutoCAD started compressing the files—it usually only works if you're strictly using TrueType fonts. If you don't want to mess with LISPs or expensive software, sometimes the easiest workaround is to just extract the data/images to a more searchable format. I found a site called https://wordimageextractor.com/ recently when I needed to pull assets out of a project doc to cross-reference things—it’s actually a pretty smooth way to handle those 'how do I find what's inside this file' moments without having to open everything one by one. For the DWGs specifically, though, Lee Mac’s BFIND is definitely the gold standard if you're comfortable loading a LISP routine! -
tombu started following paperspace/wireframe issue and cui panel image
-
cui panel image
tombu replied to mohammadreza's topic in The CUI, Hatches, Linetypes, Scripts & Macros
If you're going to share it having all the PNG files converted to transparent then add them to a custom DLL file. I'd recommend copying Acad.dll to the same name as your custom CUI file with the DLL extension instead as that's where the CUI file will look first for the icon. That way you can add all your PNG files into it for you new commands and still reference AutoCAD commands in your custom CUI file as well. Much easier to share a single DLL file than a folder full of PNG files. Changes to Using Resource DLLs with CUIx Files https://help.autodesk.com/view/OARX/2025/ENU/?guid=GUID-7103E61A-8317-4834-BB00-0FE23AEB020F If you're going to share any customization files it's best to make sure all those files are in both the proper Support and Trusted paths. That way all users can access them, and you never have to include paths to them in any of your customization files. That way if you had it installed both in your office and at home where your (Support and Trusted) file folders would have different paths everything would still work the same. Lots of free online tools for converting images to PNG files with transparent backgrounds like: https://www1.lunapic.com/editor/?action=transparent -
You're going to need a different layout for that. Most important thing to learn is creating layouts with templates you can import into other drawings. Once you have them you'll be able to drawings much faster since you shouldn't ever need to do it again. The link to AutoCAD Foundations in AutoCAD Help below is the best place to start. Organize and Output a Design with Layouts (AutoCAD Foundations) https://help.autodesk.com/view/ACD/2026/ENU/?guid=ACD_FOUNDATIONS_MAIN12 AutoCAD provides the best help of any software I know of but as it's hundreds of commands, settings and features that are added to every year you need to dedicate time every day to go through all the help and tutorials you can. Most of us that have spent decades using AutoCAD and it's verticals still don't claim to know it entirely, it's a journey that keeps gets more comfortable as you go along.
-
A wrapper for ssget function
NirantarVidyarthee replied to samifox's topic in AutoLISP, Visual LISP & DCL
Thank you Lee Mac for prompt response. Any thoughts about 3? -
(vl-catch-all-apply) is used to catch the error when the user presses Esc during the selection prompt, ensuring NOMUTT is set back to 0.
-
NirantarVidyarthee started following A wrapper for ssget function
-
A wrapper for ssget function
NirantarVidyarthee replied to samifox's topic in AutoLISP, Visual LISP & DCL
I am aware that I am reviving a decade old post. But I found it helpful in understanding the wrapper function. As an example of good programming technique I am studying and exploring this function in more details. As a result, I have some doubts that I need to be cleared as part of my learning process: 1. What is the purpose of using (vl-catch-all-apply) function? I believe there are no errors that cause the (ssget) function to abort. So what error is this function handling? I am not very experienced user, so I may be missing some situations. 2. If I use (apply) instead of (vl-catch-all-apply) and comment the statement (vl-catch-all-error-p), I do not see any difference in the output. Am I missing something? Here is the modified function. (defun M:LM:ssget ( msg params / sel ) (princ msg) (setvar 'nomutt 1) (setq sel (apply 'ssget params)) ; (vl-catch-all-apply) replaced with (apply) (setvar 'nomutt 0) ;;; - Commented (if (not (vl-catch-all-error-p sel)) sel) sel ; Added to ensure return value ) 3. there is one minor problem. When using (ssget) if you start window selection and press enter without clicking second corner point an error message is displayed and select object prompt is repeated. In this function, the error message is displayed but prompt is not repeated causing confusion if the command has ended although selection cursor is displayed to know that the selection is continuing. Is there a way to re-display the msg AFTER the error message to avoid confusion? 4. A related question: I believe problem 3 is because the function (vl-catch-all-error-p) ignores NOMUTT. What are other commands / functions that are not affected by NOMUTT? -
Isaac26a started following Select all points on polyline
-
Select all points on polyline
Isaac26a replied to Kevin Malone's topic in AutoLISP, Visual LISP & DCL
I know this is an old thread but here it is my fifty cents attempt, I was looking for a created solution but had to complete it, thanks to all ;;; By Isaac A. 20251219 ;;; https://www.cadtutor.net/forum/topic/73414-select-all-points-on-polyline/ ;;; Point on Polyline 'ptopl' (vl-load-com) (defun c:ptopl (/ a b c d dw l oc os) (vla-startundomark (setq dw (vla-get-activedocument (vlax-get-acad-object)))) (setq oc (getvar 'cmdecho) os (getvar 'osmode) ) (setvar 'cmdecho 0) (setvar 'osmode 0) (princ "\nSelect the polylines that touch the points") (setq l (ssget (list (cons 0 "LWPOLYLINE")))) (if l (progn (setq a 0 ) (while (< a (sslength l)) (setq b (entget (ssname l a)) c (append c (mapcar 'cdr (vl-remove-if-not '(lambda (x) (= (car x) 10)) b))) a (1+ a) ) (setq d (ssget "F" c (list (cons 0 "Point")))) (sssetfirst nil d) ) ) (princ "\nThere are no selected polylines") ) (setvar 'cmdecho oc) (setvar 'osmode os) (vla-endundomark dw) (princ) ) ;;; End ptopl -
Associative Textbox (Lee Mac)
SANDIP PAITAL replied to sachindkini's topic in AutoLISP, Visual LISP & DCL
Dear Sir, one request AssociativeTextboxV1-3 programming two modification required , Select Text or Mtext (Option required Select all text (A) or Single text pick) and all text or single text are layer name TBOX. -
Cleaning up the file
BIGAL replied to Discus84's topic in AutoCAD 2D Drafting, Object Properties & Interface
I have seen a dwg with a complete project inside the current dwg which had nothing to do with the dwg being worked on. Look for $AC.... blocks these can be very extensive in size. You need to insert explode erase then can purge. Do you get a blank screen with Zoom Extents ? This is indicating that something is way out there normally in a corner and can be a complete dwg. The only real way to fix is to look at the dwg, understand company copy right problem but you can PM or email via a PM to people here who will look at the dwg and let you know what they find.
