All Activity
- Past hour
-
Creating a surface model in Civil 3D from existing 3D polylines, lines and points
CyberAngel replied to 0misclose's topic in Civil 3D & LDD
"CyberAngle" is me- 4 replies
-
- surface modelling
- civil 3d
-
(and 2 more)
Tagged with:
- Today
-
Pathfinding in AutoCAD with the A-Star Algorithm (A*)
marko_ribar replied to heschr's topic in AutoLISP, Visual LISP & DCL
I'll attach *.DWG on which I tested path finding... Network was generated from Polygon Mesh... Mesh was exploded into 3DFACE entities and then those 3DFACEs extracted LINEs in 3D... Along with *.DWG, I'll post short *.lsp for extracting LINEs from 3DFACEs... (defun c:3dfs2lins ( / ch ss i 3df x p1 p2 p3 p4 lil ) (initget "Yes No") (setq ch (getkword "\nDo you want to keep 3DFACE(s) (No - deletion), or remove (Yes - deletion) [Yes/No] <Yes> : ")) (if (not ch) (setq ch "Yes") ) (prompt "\nSelect 3DFACE(s) on unlocked Layer(s) to extract lines from reference edges...") (if (setq ss (ssget "_:L" (list (cons 0 "3DFACE")))) (repeat (setq i (sslength ss)) (setq 3df (ssname ss (setq i (1- i)))) (setq p1 (cdr (assoc 10 (setq x (entget 3df))))) (setq p2 (cdr (assoc 11 x))) (setq p3 (cdr (assoc 12 x))) (setq p4 (cdr (assoc 13 x))) (if (not (vl-some (function (lambda ( x ) (or (equal (list p1 p2) x 1e-6) (equal (list p2 p1) x 1e-6)))) lil)) (progn (entmake (list (cons 0 "LINE") (cons 10 p1) (cons 11 p2))) (setq lil (cons (list p1 p2) lil)) ) ) (if (not (vl-some (function (lambda ( x ) (or (equal (list p2 p3) x 1e-6) (equal (list p3 p2) x 1e-6)))) lil)) (progn (entmake (list (cons 0 "LINE") (cons 10 p2) (cons 11 p3))) (setq lil (cons (list p2 p3) lil)) ) ) (if (not (vl-some (function (lambda ( x ) (or (equal (list p3 p4) x 1e-6) (equal (list p4 p3) x 1e-6)))) lil)) (progn (entmake (list (cons 0 "LINE") (cons 10 p3) (cons 11 p4))) (setq lil (cons (list p3 p4) lil)) ) ) (if (not (vl-some (function (lambda ( x ) (or (equal (list p4 p1) x 1e-6) (equal (list p1 p4) x 1e-6)))) lil)) (progn (entmake (list (cons 0 "LINE") (cons 10 p4) (cons 11 p1))) (setq lil (cons (list p4 p1) lil)) ) ) (if (= ch "Yes") (entdel 3df) ) ) ) (princ) ) A-star.dwg -
I'm sure these can be improved, I'll check more into things when I have more time. As is, hopefully they are useful to others. Many of our drawings follow the standard M-XX-001 for Mechanical, G-XX-001 for General, E-XX-001 for Electrical, etc. occasionally we have just drawings with descriptive names, so having the -1, -2, etc. works, if I have M-10-001 and several sheets, so M-10-001-1, -2, etc. works. usually my G-10-001, drawing would have tabs, G-10-001, G-10-002, and so on in order, so I need some options depending. Now you have me thinking on something.
-
help with extracting text from one dimension....
Nikon replied to leonucadomi's topic in AutoLISP, Visual LISP & DCL
How can I convert the text size for insertion to the number x by 0.001, that is, if the size is 4250, then we get 4.250 when inserting? Thanks! -
Penn Foster Drafting With AutoCAD Structural Drafting Project Sheets 1-7
ReMark replied to CADLEARNER1234's topic in Student Project Questions
There are several posted images of Plate 2 for this particular project available for viewing in related threads. Have you checked any of them out? What, specifically, seems to be the problem? -
If you do a search of this forum using the phrase "Penn Foster structural" you will find several threads containing information (text & images) pertaining to this project.
-
Reduce file size.
SLW210 replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
Are you the only that works on these drawings? -
Pathfinding in AutoCAD with the A-Star Algorithm (A*)
GLAVCVS replied to heschr's topic in AutoLISP, Visual LISP & DCL
I’m not aware of all the possible situations. I was thinking of a scenario like the one shown in the drawings attached so far. But are you sure the modifications you’re suggesting are really necessary? If you attach a drawing showing the situation you’re referring to, I’ll understand it better. In any case, considering 3D linear objects has some interesting implications, because it introduces an additional variable into the cost (the elevation difference) … What if we want to add more variables to the cost of each segment? Encoding them through some property like color, thickness, etc.? And replacing the function "distance" as the central cost estimator with another one ("valuate", for example) that also weighs additional variables? -
(defun c:mahi (/ pt p1 p2) (setq p1 (getpoint)) ; point from the file (while (setq p2 (getpoint)) ; point from the file ;;;; code point extration from txt or excel (command "line" p1 p2 "") (setq p1 p2) ) (princ) ) Extract a point from the txt file, then draw a line in AutoCAD point.txt
-
lisp to find convert all unexplodable blocks within a file to explodable blocks
Nikon replied to Elektrik's topic in AutoLISP, Visual LISP & DCL
@ronjonp It's a great code! The program performs permission to explode for all blocks of the same name. Is it possible to perform permission to explode only for one (2, 3...) the selected block? Is it possible to leave the other blocks of the same name unchanged? Allow permission to explode for one of the block occurrences. -
marko_ribar started following Pathfinding in AutoCAD with the A-Star Algorithm (A*)
-
Pathfinding in AutoCAD with the A-Star Algorithm (A*)
marko_ribar replied to heschr's topic in AutoLISP, Visual LISP & DCL
Hi... I've seen @GLAVCVS code and found that it had some lacks... I've debugged it and make it work for lines and path in 3d... Path is now 3D POLYLINE and selection of network edges are lines in 3D... I've shortened complete code and left only necessary subs and comments... So, this is my revision and I hope it could also be beneficial... ;; Pathfinding with the A* algorithm by ymg 22/07/2024 ; ;; ; ;; Revised a prog by HELMUT SCHRÖDER - heschr@gmx.de - 2014-09-14 ; ;; found at Cadtutor.net ; ;; ; ;; Kept the same format for edges list but added lines as valid choice ; ;; Format: (((x1 y1 z1) (x2 y2 z2)) ((x2 y2 z2) (x3 y3 z3))....(xn yn zn))) ; ;; ; ;; The user is asked to pick a start and an endpoint. ; ;; The program will find the shortest path in a network of connected ; ;; lines and draw a new 3dpolyline representing the result. ; ;; ; ;; Two lists of nodes openlst and closelst are created from the above ; ;; mentionned edges list. The format of a node list is: ; ;; (((Point) (Prev Point) Cumulated_Distance Estimated_Total_Distance)...) ; ;; ; ;; Main change from origina are: ; ;; - cons the list instead of append ; ;; - vl-sort the openlist instead of the quicksort ; ;; - Replaced and renamed some vars and subroutine. ; ;; - Added fuzz 1e-4 to all points comparison ; ;; - Change the get_path function ; ;; - Added line as possible edges ; ;; - Added an error handler ; ;; - Added a timer to the search portion of the program ; ;; ; ;; The above changes amounted to an acceleration of about 4x from the ; ;; original program. ; ;; : ;; If you compile this program to a .fas you'll get more than 10x faster. ; ;; ; ;| Added or modified code by GLAVCVS (january 2026) -All set are grouped into one -An associative sparse matrix cell->handles is created for faster cell querying (using new 'addToDict' and 'getCell' functions) -The "edges" list is replaced with the local search retourned by 'getCell' T E S T S ===== fas: 4-5 x faster than previous fas lsp: 7-8 x faster than previous lsp |; (defun c:A* (/ *error* addToDict getCell upd_openlst in_openlst get_path memberfuzz mk_3dpl set_errhandler ssl i startp endp 3dpl openlst closelst found acdoc lstClvs Pathlay Pathcol Pathlwt varl node ti ) (or (not (vl-catch-all-error-p (vl-catch-all-apply (function vlax-get-acad-object) nil))) (vl-load-com)) (defun *error* (msg) (if 3dpl (if command-s (command-s "_.draworder" 3dpl "" "_f") (vl-cmdf "_.draworder" 3dpl "" "_f") ) ) (mapcar (function eval) varl) (if (and msg (not (wcmatch (strcase msg) "*BREAK*,*CANCEL*,*EXIT*"))) (princ (strcat "\nError: " msg)) ) (vla-endundomark acdoc) (princ) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;ADDED by GLAVCVS ;;;Create dictionary (defun addToDict (en / i id p val clv) (setq i -1 id (cdr (assoc 5 (entget en)))) (while (and (/= (setq i (1+ i)) 2) (if (= i 0) (setq p (vlax-curve-getStartPoint en)) (setq p (vlax-curve-getEndPoint en)))) (if (setq val (assoc (setq clv (strcat (rtos (car p) 2 4) "-" (rtos (cadr p) 2 4) "-" (rtos (caddr p) 2 4))) lstClvs)) (setq lstClvs (subst (append val (list (cons id i))) val lstClvs)) (setq lstClvs (cons (list clv (cons id i)) lstClvs)) ) ) ) ;;;return list cell ;;*** Modified to access the new dictionary format *** (defun getCell (pt / val clv par e lr) (if (setq val (assoc (setq clv (strcat (rtos (car pt) 2 4) "-" (rtos (cadr pt) 2 4) "-" (rtos (caddr pt) 2 4))) lstClvs)) (foreach par (cdr val) (setq e (handent (car par))) (setq lr (cons (list (vlax-curve-getStartPoint e) (vlax-curve-getEndPoint e)) lr)) ) ) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ; ;; upd_openlst ; ;; ; ;; Each node of the openlst is passed to this sub and we scan the edges list ; ;; to find the corresponding edges. Then both points of the edges are tested ; ;; for equality to the nodes. The fixed cost (distance) is updated and so is ; ;; the estimated total distance. Updates are first put in a temporary node. ; ;; ; ;; We then proceed to test if the temp variable is already in the closelst ; ;; and proceed to the next edge. ; ;; ; ;; If temp is true and temp is not in closelst we go to the recursive sub ; ;; in_openlst which adjust the values and return the updated openlst ; ;; ; ;; Upon return we sort the openlst on smallest estimated distance ; ;; and return the openlst to the main routine ; ;; ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun upd_openlst (node endp openlst closelst / lEdges pt fcost p1 p2 d temp) (setq pt (car node) fcost (caddr node) ) (setq lEdges (getCell pt)) (foreach edge lEdges (setq p1 (car edge) p2 (cadr edge) d (distance p1 p2) temp nil ) (cond ((equal pt p1 1e-4) (setq temp (list p2 p1 (+ fcost d) (+ fcost d (distance p2 endp)))) ) ((equal pt p2 1e-4) (setq temp (list p1 p2 (+ fcost d) (+ fcost d (distance p1 endp)))) ) ) (if (and temp (not (memberfuzz (car temp) closelst))) (setq openlst (in_openlst temp openlst)) ) ) (vl-sort openlst (function (lambda (a b) (< (cadddr a) (cadddr b))))) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun in_openlst (node lst) (cond ((not lst) (list node)) ((equal (car node) (caar lst) 1e-4) (if (< (cadddr node) (cadddr (car lst))) (cons node (cdr lst)) lst ) ) (t (cons (car lst) (in_openlst node (cdr lst)))) ) ) ;; ; ;; get_path ; ;; ; ;; Returns The list of points of shortest path found from closelst. ; ;; ; (defun get_path (lst / path) (setq path (list (caar lst)) prev (cadar lst) lst (cdr lst) ) (while (setq lst (memberfuzz prev lst)) (setq prev (cadar lst) path (cons (caar lst) path) ) ) path ) ;; ; ;; memberfuzz by Gile Chanteau ; ;; ; ;; Modified to work with nodes list ; ;; ; (defun memberfuzz (p lst) (while (and lst (not (equal p (caar lst) 1e-4))) (setq lst (cdr lst)) ) lst ) ;; ; ;; mk_3dpl ; ;; ; ;; Draw an 3dpolyline given a point list ; ;; ; ;; Will be drawn on layer, lineweight and color defined by Variables ; ;; at beginnung of program. ; ;; ; (defun mk_3dpl (pl / 3dpl) (setq 3dpl (entmakex (list (cons 0 "POLYLINE") (cons 100 "AcDbEntity") (cons 8 Pathlay) (cons 370 Pathlwt) (cons 100 "AcDb3dPolyline") (cons 66 1) (list 10 0.0 0.0 0.0) (cons 70 8) (cons 40 0.0) (cons 41 0.0) (list 210 0.0 0.0 1.0) (cons 71 0) (cons 72 0) (cons 73 0) (cons 74 0) (cons 75 0) (cons 62 Pathcol) ) ) ) (foreach p pl (entmake (list (cons 0 "VERTEX") (cons 100 "AcDbEntity") (cons 8 Pathlay) (cons 100 "AcDbVertex") (cons 100 "AcDb3dPolylineVertex") (cons 10 p) (cons 40 0.0) (cons 41 0.0) (cons 42 0.0) (cons 70 32) (cons 50 0.0) (cons 71 0) (cons 72 0) (cons 73 0) (cons 74 0) ) ) ) (entmake (list (cons 0 "SEQEND") (cons 100 "AcDbEntity") (cons 8 Pathlay) (cons -2 3dpl) ) ) 3dpl ) ;; Error Handler by Elpanov Evgenyi ; (defun set_errhandler (l) (setq varl (mapcar (function (lambda (a) (list (quote setvar) a (getvar a)))) l)) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MAIN ROUTINE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Change values of following 3 variables to suit your need. ; (setq Pathlay "0" Pathcol 3 ; 1=Red 2=Yellow 3=Green etc. ; Pathlwt 30 ; lineweight for path 0.3 mm ; ) (or acdoc (setq acdoc (vla-get-activedocument (vlax-get-acad-object)))) (set_errhandler (list "clayer" "osmode" "cmdecho")) (setvar (quote cmdecho) 0) (setvar (quote osmode) 1) (setvar (quote lwdisplay) 1) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (prompt "\nSelect LINE network entities...") (if (setq ssl (ssget (list (cons 0 "LINE")))) (foreach en (vl-remove-if (function listp) (mapcar (function cadr) (ssnamex ssl))) (addToDict en) ) ) (initget 1) (setq startp (getpoint "\nPick or specify Start Point : ")) (initget 1) (setq endp (getpoint "\nPick or specify End Point : ")) (setq openlst (list (list startp (list 0.0 0.0 0.0) 0.0 (distance startp endp)))) (vla-startundomark acdoc) (setq ti (getvar (quote millisecs))) (while (and openlst (not found)) (setq node (car openlst)) (if (equal (car node) endp 1e-4) (setq found t closelst (cons node closelst)) (setq closelst (cons node closelst) openlst (upd_openlst node endp (cdr openlst) closelst)) ) ) (if found (setq 3dpl (mk_3dpl (get_path closelst))) (alert "No path was finded...") ) (princ (strcat "\nExecution time : " (itoa (- (getvar (quote millisecs)) ti)) " milliseconds...")) (*error* nil) ) HTH. Regards, M.R. -
cobraisan80 joined the community
-
Penn Foster Structural Drafting
CADLEARNER1234 replied to Vdietz's topic in Student Project Questions
hello, I am looking for help on plate 2 so if you happen to have already completed it, or have any visuals, it would be greatly appreciated -
CADLEARNER1234 joined the community
-
Penn Foster Drafting With AutoCAD Structural Drafting Project Sheets 1-7
CADLEARNER1234 posted a topic in Student Project Questions
Hello, I am currently struggling through this project, I managed to get through sheet 1 but i need help with sheet 2, as the instructions given by Penn Foster are useless, difficult to understand, frankly I feel like the quality of the program has failed to match the cost. I'll upload a picture to show where I am at in the project thusfar. I am in sheet 2 and this is what I have thus far -
PVPC joined the community
-
Another been using for years, pads dwg number. We named our layouts as D01, D02 etc. ; if less than 10 (if (< dwgnum 10.0) (setq newstr2 (strcat dwgname "-D0" (rtos dwgnum 2 0))) (setq newstr2 (strcat dwgname "-D" (rtos dwgnum 2 0))) ) ; can add more "0" to get "001" etc. use a cond. (cond ((< dwgnum 10) (setq newstr2 (strcat dwgname "-D00" (rtos dwgnum 2 0)))) ((< dwgnum 100) (setq newstr2 (strcat dwgname "-D0" (rtos dwgnum 2 0)))) ((>= dwgnum 100)(setq newstr2 (strcat dwgname "-D" (rtos dwgnum 2 0)))) ) Maybe a bit shorter than the Vl string trim.
- Yesterday
-
Thanks @Nikon for the improvements to the code. Have saved the new version.
-
Reduce file size.
Bandido replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
No, id don't use any of those. Many thanks. -
Reduce file size.
SLW210 replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
Verticals are Civil 3D, AutoCAD Map 3D, AutoCAD Mechanical, AutoCAD Architectural, etc. I'm busy at work start to finish these days, if I get time I'll see if I can discover the issue. -
I had these for a bit and figured I'd share. I was surprised I couldn't find anything to rename the layout tab automatically, I am probably the only person too lazy to type them in, if there are some LISPs out there I couldn't find them. They do what I need, but I am sure more options could be added and most likely improved so feel free to comment or ask, no guarantee I can get time to work on them in the near future. I am busy busy at work right now. I use the first and last one the most. I have them set for drag and drop, just comment or delete the (c:---------) at the bottom to not run on load. The first I had for a bit, I just drag and drop into a drawing with a single tab and the tab name is the drawing name. ;;; Layout tab with drawing name. (Works with only one layout tab) ;;; ;;; By SLW210 (a.k.a. Steve Wilson) ;;; (defun c:DwgNameLayTab () (setq dName (vl-filename-base (getvar "DWGNAME"))) (setq lout (vla-get-ActiveLayout (vla-get-ActiveDocument (vlax-get-acad-object)))) (vla-put-Name lout dName) ) (c:DwgNameLayTab) Another one I did, does same as above, but if more than one tab adds -1, -2, etc. ;;; Adds suffix to drawing name in layout tabs, if one tab dwgname only. ;;; ;;; By SLW210 (a.k.a. Steve Wilson) ;;; (defun c:LayoutNameFromDWG ( / dwgName layouts layCount addSuffix idx doc layObj) (vl-load-com) ;; Get drawing name without extension (setq dwgName (vl-filename-base (getvar "DWGNAME"))) ;; Get list of layouts excluding Model (setq layouts (vl-remove "Model" (layoutlist))) (setq layCount (length layouts)) ;; Determine suffix behavior (cond ;; Only one layout no suffix ((= layCount 1) (setq addSuffix nil) ) ;; More than one layout suffix REQUIRED ((> layCount 1) (setq addSuffix T) ) ) ;; Get active document (setq doc (vla-get-ActiveDocument (vlax-get-acad-object))) ;; Rename layouts (setq idx 1) (foreach lay layouts (setq layObj (vla-item (vla-get-Layouts doc) lay)) (vla-put-Name layObj (if addSuffix (strcat dwgName "-" (itoa idx)) dwgName ) ) (setq idx (1+ idx)) ) (princ "\nLayout tabs renamed successfully.") (princ) ) (c:LayoutNameFromDWG) This does the exact same as the LayoutNameFromDWG.lsp , I think I had lost it and rewrote it, I don't see any advantage in one over the other, maybe someone else can tell. ;;; Layout tab with drawing name adds suffix if more than one tab (-1, -2). ;;; ;;; By SLW210 (a.k.a. Steve Wilson) ;;; (defun c:DwgNameLayTab1 ( / dName doc layouts layCount idx lout) (vl-load-com) ;; Drawing name (no extension) (setq dName (vl-filename-base (getvar "DWGNAME"))) ;; Get document and layouts (setq doc (vla-get-ActiveDocument (vlax-get-acad-object))) (setq layouts (vl-remove "Model" (layoutlist))) (setq layCount (length layouts)) ;; Rename layouts (setq idx 1) (foreach lay layouts (setq lout (vla-item (vla-get-Layouts doc) lay)) (vla-put-Name lout (if (> layCount 1) (strcat dName "-" (itoa idx)) dName ) ) (setq idx (1+ idx)) ) (princ) ) (c:DwgNameLayTab1) This one does a bit more, first tab is the DwgName, if more than one tab it adds a suffix to the second, third, etc. but first tab is still DwgName only, if as is often my case the DwgName ends in a number like I often have M-10-001, it just adds 1 to each of the next tabs. Example, M-10-001,M-10-002, M-10-003, M-10-004, etc. ;;; Layout tab drawing name to first tab, more than one tab adds suffix after first tab (-1, -2), if ends in numbers adds 1 to number ;;; for example M-10-001,M-10-002, M-10-003, M-10-004. ;;; ;;; By SLW210 (a.k.a. Steve Wilson) ;;; (defun c:DwgNameLayTab2 ( / dName doc layouts idx lout baseName numStr startNum numLen pos) (vl-load-com) ;; Drawing name (no extension) (setq dName (vl-filename-base (getvar "DWGNAME"))) ;; Get layouts (exclude Model) (setq layouts (vl-remove "Model" (layoutlist))) ;; Extract trailing number (with padding) --- (setq pos (strlen dName)) (while (and (> pos 0) (<= 48 (ascii (substr dName pos 1)) 57)) (setq pos (1- pos)) ) (if (< pos (strlen dName)) (progn (setq baseName (substr dName 1 pos)) (setq numStr (substr dName (1+ pos))) (setq startNum (atoi numStr)) (setq numLen (strlen numStr)) ;; number of digits ) (setq baseName dName startNum 1 numLen 0) ) ;; Get document (setq doc (vla-get-ActiveDocument (vlax-get-acad-object))) ;; Rename layouts (setq idx 0) (foreach lay layouts (setq lout (vla-item (vla-get-Layouts doc) lay)) (vla-put-Name lout (cond ;; First layout: exact drawing name ((= idx 0) dName) ;; Subsequent layouts (T (if (> numLen 0) ;; DWG ends with number increment & pad (strcat baseName (vl-string-right-trim " " (strcat (substr "0000000000" 1 (- numLen (strlen (itoa (+ startNum idx))))) (itoa (+ startNum idx)) ) ) ) ;; No trailing number add -1, -2, ... (strcat dName "-" (itoa idx)) ) ) ) ) (setq idx (1+ idx)) ) (princ) ) (c:DwgNameLayTab2)
-
Reduce file size.
Bandido replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
Hi SLW210. No. I only use AutoCAD 2014. What is Verticals? It seems that there are too many tag-alongs in your drawings, even when they are visibly empty. Export to DXF? Thank you. -
Reduce file size.
SLW210 replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
Are any of your drawings coming from or being worked on in AutoCAD Verticals or other CAD programs? It seems as though there are a lot of excessive tag-alongs in your drawings even when visibly empty. You might also try a DXFOUT and DXFIN to a new drawing. -
Thank you. It's a very useful application. I'm also trying to improve something like this with artificial intelligence. @Nikon
-
hyoun joined the community
-
Wait, does the same thing happen in 2021 and 2021F? If the system has updated, maybe the plotters have too. Or you just need to configure them. If you're in a hurry, is there some other app that can import a file type that AutoCAD exports? Doesn't have to be DWG. Then the other app can print to PDF. Problem (temporarily) solved.
-
srleone joined the community
-
Creating a surface model in Civil 3D from existing 3D polylines, lines and points
srleone replied to 0misclose's topic in Civil 3D & LDD
What is CyberAngle? Thanks, Su Leone, PLS Raleigh NC- 4 replies
-
- surface modelling
- civil 3d
-
(and 2 more)
Tagged with:
-
Reduce file size.
Bandido replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
I tried something. Just import a word from the old design into these new ones and the weight immediately rises to the value of the originals! Thanks again. -
Reduce file size.
Dahzee replied to Bandido's topic in AutoCAD 2D Drafting, Object Properties & Interface
Hi Bandido, I have no idea if it is different as I don't have Autocad. But I'm glad it seemed to have worked for you.
