All Activity
- Past hour
-
ronjonp started following How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
-
How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
ronjonp replied to CivilTechSource's topic in AutoLISP, Visual LISP & DCL
You described my exact process! Great minds and all : ) - Today
-
Yes, that's OK, though it looks like the 2 threads are crossing each other a little.... might be that one follows the link you posted to see the other half of the story.
-
LISP to Remove Unreferenced PDFUNDERLAYs
OriginalRob2 replied to OriginalRob2's topic in AutoLISP, Visual LISP & DCL
thanks, good advice -
BLOCK ISSUES - The selected block has no editable attributes
ColinPearson replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
10-4, I thought that thread was on the AUGI forums, I was planning to go look there later this morning. Since then, I have found that IT put 2025 on my machine, and even though all the setting are completely cattywompus, both the regular DDEDIT works when I double click dimensions, and BEDIT runs when I double click a block. I make just start in changing all my setting on 2025 and go forward with my life. Thank you for your help everyone, I appreciate y'all taking some time to help. This place is a great resource. -
BlackBox started following How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
-
How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
BlackBox replied to CivilTechSource's topic in AutoLISP, Visual LISP & DCL
I prefer to use NETLOGON (the BAT, etc script configured in Active Directory that runs when a Domain user logs in) to copy from network to workstations, so when user starts CAD everything is already there. That way, when we update something in our setup, and that gets pushed to network, a notification goes out to everyone and it's up to users to restart or log out/in as they need, based on their project deadlines. This gives us the speed of having everything local to the workstation, no (additional) user action required to sync, and we still have everything backed up on the network. HTH -
BLOCK ISSUES - The selected block has no editable attributes
SLW210 replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
Power Dimensioning - AutoCAD 2D Drafting, Object Properties & Interface - AutoCAD Forums -
BLOCK ISSUES - The selected block has no editable attributes
ColinPearson replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
@SLW210 WHOAAAAAAAAAAAAAAAAAAAA THERE, I think you're onto something. I had previously just switched to the VANILLA profile b/c I thought that's what you meant. After your follow up, I opened some dwgs in the non-Mech version and the double click on the blocks now behaves as expected. One weird thing is that in plain ACAD, when I double click on dimensions, I get the Power Dimensioning dialog popping up which I fought for a while ... I can't recall what I did before to just have the dimension text open in a Text Editor instead of the Power Dim. -
BLOCK ISSUES - The selected block has no editable attributes
SLW210 replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
It seems you have something redefining this action. I would reset to defaults and run like that to see if the problem is still there, then slowly redo my settings, though it's strange it happens in both. Did you actually try AutoCAD or just switched profiles? Try a new instance of actual AutoCAD if you can. Windows updates? Which OS are you using? -
BLOCK ISSUES - The selected block has no editable attributes
ColinPearson replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
@SLW210 I'm on 2023. My Attribute Blocks and Attribute Dynamic Blocks have the same as you I'm pretty sure. I just switched to Vanilla and it acts the same. If I restore defaults, I forget how offhand, but I know I can reload my CUI to get the workspace/toolbars/keyboard shortcuts/etc all back, but I wonder if that would bring the same problem back? Thank you! -
You really should have asked this in a new thread or your original. If @Steven P is okay with it, I can leave it here, but it looks to be headed off topic. For the record, here is the original... Extracting block data to a report - AutoLISP, Visual LISP & DCL - AutoCAD Forums
-
BLOCK ISSUES - The selected block has no editable attributes
SLW210 replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
Which AutoCAD Mechanical version are you using? Does this happen in Vanilla AutoCAD? My Double-Click Dynamic Block has the same thing and works fine. Both AutoCAD 2026 and AutoCAD Mechanical 2026. Attribute blocks and attribute dynamic blocks have ^C^C_eattedit. My command line... Command: ampoweredit Command: Command: Command: Command: _bedit Regenerating model. Regenerating model. Sounds like you need to reset to defaults, if that doesn't work a repair or report issue to Autodesk. -
the clean up routine is here:- ;;////////////////////////////////////////////////// ;; checkcolor (defun CheckEntColor (ent / entData color layer layerData layerColor) (setq entData (entget ent)) (setq color (cdr (assoc 62 entData))) (cond ((and color (/= color 256) (>= color 5)) T) ((or (not color) (= color 256)) (setq layer (cdr (assoc 8 entData))) (setq layerData (tblsearch "LAYER" layer)) (setq layerColor (cdr (assoc 62 layerData))) (if (and layerColor (>= layerColor 5)) T nil)) (T nil) ) ) (defun c:dpsr (/ doc ms result layers-ok ltypes-ok ents-ok props-ok layer-errors ltype-errors enttype-errors prop-errors csv-line ename clr lt lyr ) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (setq ms (vla-get-modelspace doc)) (setq *audit-csv-path* (strcat (getvar "DWGPREFIX") "DWG_Audit_Report.csv")) ;; CSV functions (defun append2csv (line / file) (setq file (open *audit-csv-path* "a")) (if file (progn (write-line line file) (close file)) (prompt "\nERROR: Cannot write to audit CSV.") ) ) (defun writecsvheader () (if (not (findfile *audit-csv-path*)) (append2csv "DWGNAME,LAYERSTATES,LINETYPES,ENTITYTYPES,ENTITYDEF,LAYER-ERRS,LT-ERRS,TYPE-ERRS,PROP-ERRS" ) ) ) ;;//////////////////////////////////////////////////////// ;; Create or set a layer (defun makelayer (name color lw tran ltype) (if (not (tblsearch "layer" name)) (vla-add (vla-get-layers doc) name) ) (vla-put-color (vla-item (vla-get-layers doc) name) color) (vla-put-lineweight (vla-item (vla-get-layers doc) name) lw) (command "-layer" "tr" (rtos tran 2 0) name "") (command "-layer" "l" ltype name "") ) ;; Explode blocks ;;(vlax-for ent ms ;; (if (and (= "AcDbBlockReference" (vla-get-objectname ent)) ;; (vlax-method-applicable-p ent 'explode) ;;) ;;(vla-explode ent) ;;) ;;) (defun explodeall ( / explode layouts ) (setq layouts (vla-get-layouts (vla-get-activedocument (vlax-get-acad-object))) explode t ) (while explode (setq explode nil) (vlax-for layout layouts (vlax-for obj (vla-get-block layout) (and (= "AcDbBlockReference" (vla-get-objectname obj)) (not (vl-catch-all-error-p (vl-catch-all-apply 'vla-explode (list obj)))) (not (vl-catch-all-error-p (vl-catch-all-apply 'vla-delete (list obj)))) (setq explode t) ) ) ) ) ;(princ) ) (explodeall) ;; Create layers (makelayer "D-3D-SOL" 7 30 0 "Continuous") (makelayer "D-3D-CLG" 1 18 0 "Center") (makelayer "D-3D-CLM" 5 18 0 "Center") (makelayer "0" 7 -1 0 "Continuous") ;; catch all to make sure everything is set ok if not created by makelayer fuction ;; Set current layer to sol (command "_.layer" "_set" "D-3D-SOL" "") (command "_.layer" "_c" "7" "" "") (command "_.layer" "_tr" "0" "" "") (command "_.layer" "_lw" "0.3" "" "") (command "_.layer" "_l" "Continuous" "" "") ;; Set current layer to clm (command "_.layer" "_set" "D-3D-CLM" "") (command "_.layer" "_c" "5" "" "") (command "_.layer" "_tr" "0" "" "") (command "_.layer" "_lw" "0.18" "" "") (command "_.layer" "_l" "Center" "" "") ;; Set current layer to clg (command "_.layer" "_set" "D-3D-CLG" "") (command "_.layer" "_c" "1" "" "") (command "_.layer" "_tr" "0" "" "") (command "_.layer" "_lw" "0.18" "" "") (command "_.layer" "_l" "Center" "" "") ;; Set current layer to 0 (command "_.layer" "_set" "0" "") (command "_.layer" "_c" "7" "" "") (command "_.layer" "_tr" "0" "" "") (command "_.layer" "_lw" "0.25" "" "") (command "_.layer" "_l" "Continuous" "" "") ;; Error counters (setq layer-errors 0 ltype-errors 0 enttype-errors 0 prop-errors 0 ) ;; Process objects (vlax-for ent ms (setq ename (vla-get-objectname ent) clr (vla-get-color ent) lt (vla-get-linetype ent) lyr (vla-get-layer ent) ) ;; Classification and move to appropriate layer (cond ((wcmatch ename "AcDb3dSolid,AcDbSurface") (vla-put-layer ent "D-3D-SOL") ) ((and (member ename '("AcDbLine" "AcDbPolyline" "AcDbCircle" "AcDbArc")) (not (CheckEntColor (vlax-vla-object->ename ent))) ;; Was (not (CheckEntColor ent)) ) (vla-put-layer ent "D-3D-CLG") ) ((and (member ename '("AcDbLine" "AcDbPolyline" "AcDbCircle" "AcDbArc")) (CheckEntColor (vlax-vla-object->ename ent)) ) (vla-put-layer ent "D-3D-CLM") ) ) ;; Set ByLayer color and linetype (if (/= clr 256) (progn (vla-put-color ent 256) (setq prop-errors (1+ prop-errors)) ) ) (if (/= (strcase lt) "BYLAYER") (progn (vla-put-linetype ent "BYLAYER") (setq prop-errors (1+ prop-errors)) ) ) ;; Track invalid types and linetypes (if (not (member ename '("AcDbLine" "AcDbPolyline" "AcDbCircle" "AcDb3dSolid" "AcDbSurface" "AcDbArc" ) ) ) (setq enttype-errors (1+ enttype-errors)) ) (if (not (member (strcase lt) '("BYLAYER" "CONTINUOUS" "CENTER")) ) (setq ltype-errors (1+ ltype-errors)) ) ) ;; Delete entities on layer "0" (vlax-for ent ms (if (= (strcase (vla-get-layer ent)) "0") (vla-delete ent) ) ) ;; Set layer 0 current (vla-put-activelayer doc (vla-item (vla-get-layers doc) "0") ) ;;Remove duplicates (command "-OVERKILL" "ALL" "" "") ;; Purge all (repeat 3 (command "_.PURGE" "ALL" "*" "N")) (repeat 2 (command "_.PURGE" "Regapps" "*" "N")) ;; Set UCS/view (command "_.UCS" "_W") (command "_.-VISUALSTYLES" "C" "_CONCEPTUAL") ;; Fixed (command "_.VIEW" "_SWISO") (command "_.ZOOM" "_E") ;; Final checks (setq layers-ok (and (tblsearch "layer" "0") (tblsearch "layer" "D-3D-SOL") (tblsearch "layer" "D-3D-CLG") (tblsearch "layer" "D-3D-CLM") ) ) ;; Build CSV output (setq result (strcat (getvar "DWGNAME") "," (if layers-ok "PASS" "FAIL" ) "," (if (= ltype-errors 0) "PASS" "FAIL" ) "," (if (= enttype-errors 0) "PASS" "FAIL" ) "," (if (= prop-errors 0) "PASS" "FAIL" ) "," (itoa layer-errors) "," (itoa ltype-errors) "," (itoa enttype-errors) "," (itoa prop-errors) ) ) (writecsvheader) (append2csv result)
-
How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
Steven P replied to CivilTechSource's topic in AutoLISP, Visual LISP & DCL
Would it be easier to make each user set the server location as a trusted location or just link to that location in the startup suit from appload? -
asos2000 started following How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
-
How to deploy list of Lisps to everyone in the organisation - AutoCAD LT
asos2000 replied to CivilTechSource's topic in AutoLISP, Visual LISP & DCL
I do not know the ability for CADLT but what I am doing is - Create/update the DCL folder (containing DCL & all related files) - Copy on server. - Copy on each PC - Load on AutoCAD - When open AutoCAD Automatically copy DCL Folder from server (if available - may be the server is down) using this (Thanks ronjonp) http://www.theswamp.org/index.php?topic=39415.msg446782#msg446782 (rjp-xcopy "R:\\xxx_Standards\\AutoCAD\\Support\\xxx-Menu" "*.*" "C:\\xxx_Standards\\AutoCAD\\Support\\xxx-Menu" "/d/c/i/k/r/y/q/s/e") - That I am sure all PCs are updated daily. -
Tapered Offset/Stretch closed polyline shape
GLAVCVS replied to SLW210's topic in AutoLISP, Visual LISP & DCL
Another necessary question: Does the original code work as expected when selecting an arc segment flanked by other arc segments? Is it possible this isn't intended in the code? -
oh nice. ive got very similar setup. i just use layer/styles/properties toolbars though (i havent actually looked at the others properly in such a long time so i might check out some of those other ones you've called up) was going to copy some of this to my main lisp file but no need really as you would only need to run 1 time when you upgrade to new version or something. i'll set up a separate routine. thanks!
-
If I understand correct, like @BlackBoxas suggested, you can pick a line/pline near an end, this in turn can be used to determine a direction to extend in, ok it is not that straight forward, you would use say a dummy line and get objects that cross that say horizontal line, look for say closest using intersectwith, ask is this OK, then if you want a left and right repeat for other side. And draw your Red rectang. You would just limit the length of the dummy line so you don't get to many other objects. Ok for a line as it looks like you want a left and right easy draw a new line extending out from start and end points of the line picked. Then use (SSGET "F" pts... to get the other line/plines. You may get more than one but you can do a sort on the distance from a say end to the new points and use correct one. For a pline its a bit harder but you use get pline segment then again extend dummy line out from the two segment points. Again sort points. Yes it can be done, really need a real dwg to give more hints and maybe some code. MM or feet is important.
- Yesterday
-
Recommendations for Robust Software Management Systems?
BIGAL replied to oddssatisfy's topic in Design Software
Just some comments, I am in AUS and where i used to work we had a system that was based around an Access database, the nice thing about that was it did not use a proprietary database, it had functions like daily job details hours etc, Dwg naming with company details. It allowed us to monitor projects looking at costs and hours involved. It had extensive variables that could be entered. reports were very easy to produce by user, by project/s and so on. Just the Access part I considered very useful. https://latibiz.com/ an Australian company. You may want a local company for where you are in the world. -
Happy to help! TLDR; if you haven't already, post your code, as most of what you're wanting to do can be done using OOTB Commands via Core Console & .SCR file. Where that falls short, Core Console support NETLOAD & ARX Commands to load assemblies, which basically expose the entire .NET & ARX APIs. HTH
-
Lisp to extend lines to nearest.
BlackBox replied to Strydaris's topic in AutoLISP, Visual LISP & DCL
You cannot extend a line that doesn't exist - you can only create a new line and extend that, if needed. You've not posted any code, so hard to see where you're stuck. If P2 is on an existing vertical line, you can create a new line from P1 to P2 + 2" using polar and continue your routine. If P2 is on an existing vertical line, but not ortho-aligned with P1's Y, then after you prompt for P1, select the existing line using the above-mentioned ssget filters, calculate the point of intersection (P3) ** to create a line from P1 to P3 + 2" using polar and continue your routine. ** [Edit] - or just extract the P2 X and use the P1 Y to calculate P3 HTH -
Thank you BlackBox - it works! still doesn't like and visual lisp though
-
Tapered Offset/Stretch closed polyline shape
GLAVCVS replied to SLW210's topic in AutoLISP, Visual LISP & DCL
This is much better. After seeing your code, I think there's something I may have misunderstood or didn't consider important: the use of the chord as a control parameter. All along, I've been thinking that the main goal was to ensure the cursor was tangent to the curve at all times. But I see that using the chord is important. Clearly, these types of tasks were never part of my CAD menu. In any case, this forces me to change my approach somewhat: I'll try to make 'offsetea' versatile in this case. -
Lisp to extend lines to nearest.
Strydaris replied to Strydaris's topic in AutoLISP, Visual LISP & DCL
Hi @BlackBox I am not looking to extend an existing line. I want to extend TO an existing line. -
BLOCK ISSUES - The selected block has no editable attributes
ColinPearson replied to ColinPearson's topic in AutoCAD 2D Drafting, Object Properties & Interface
Thanks for the reply @Steven P. I had all those the same except QAFLAGS which was set to 16. Never heard of that one; I set to 0 but saw no change. I also have checked that nothing got wonky in the CUI, and for the Double Click Action for both Blocks and Dynamic Blocks, I have the same command. I have seen versions of advice that say it should read BEDIT, -BEDIT, and _BEDIT and have tried all of them with no effect. Also ran SYSVARMONITOR and changed PICKAUTO and SELECTIONPREVIEW to their preferred values, still no change. However, I expanded my command lines at the bottom and took a better look at what's happening. When I double click on a Block, I get the following, so it's actually trying to run TEXTEDIT, despite the fact that I have BEDIT set in the Double Click Action. Command: ampoweredit textedit Current settings: Edit mode = Multiple Select an annotation object or [Undo/Mode]: The selected block has no editable attributes. Select an annotation object or [Undo/Mode]: nil -
What happens when you invoke -PURGE instead?