Jump to content

Search the Community

Showing results for tags 'lisp'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • CADTutor
    • News, Announcements & FAQ
    • Feedback
  • AutoCAD
    • AutoCAD Beginners' Area
    • AutoCAD 2D Drafting, Object Properties & Interface
    • AutoCAD Drawing Management & Output
    • AutoCAD 3D Modelling & Rendering
    • AutoCAD Vertical Products
    • AutoCAD LT
    • CAD Management
    • AutoCAD Bugs, Error Messages & Quirks
    • AutoCAD General
    • AutoCAD Blogs
  • AutoCAD Customization
    • The CUI, Hatches, Linetypes, Scripts & Macros
    • AutoLISP, Visual LISP & DCL
    • .NET, ObjectARX & VBA
    • Application Beta Testing
    • Application Archive
  • Other Autodesk Products
    • Autodesk 3ds Max
    • Autodesk Revit
    • Autodesk Inventor
    • Autodesk Software General
  • Other CAD Products
    • BricsCAD
    • SketchUp
    • Rhino
    • SolidWorks
    • MicroStation
    • Design Software
    • Catch All
  • Resources
    • Tutorials & Tips'n'Tricks
    • AutoCAD Museum
    • Blocks, Images, Models & Materials
    • Useful Links
  • Community
    • Introduce Yourself
    • Showcase
    • Work In Progress
    • Jobs & Training
    • Chat
    • Competitions


  • Programs and Scripts
  • 2D AutoCAD Blocks
  • 3D AutoCAD Blocks
  • Images
    • Backgrounds

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...

  1. Hello, I have some drawings containing 2D lines in multiple layers (by pipe diameter). Now I manually check each intersection or vertex and mark the right fittings needed. Is it possible to create a simple object (a circle or something) at each vertex/intersection in a layer named as for example "dia 315 Y" "dia 160 elbow".... it's only for informational purpose, the looks don't matter. I need to order the right pieces and that takes a hell of a lot of time.... example.dwg
  2. Hi. I am a newbie with Lisps. But was just wondering if there is an existing lisp out there to explode all blocks (both model space and paper space) except for blocks in this layer "A3_TT"? I am trying to look for a routine cause I need to apply it to almost thousands of drawings. Any help would be much appreciated. Best regards, William
  3. Dear team, I need a lisp program or tips tricks to draw a close polyline within PRoW for land acquisition plan and area for Road project. I want all at one click command. Currently I am using boundary command but is one by one clicking. Hatch for reference, need a close polyline. See attached image And cad file. LAP-CLOSE PL.dwg
  4. There are multiple attributes that I want to be able to increment by 1. However there are a couple of problems, there are different attributes but I want to be able to select all of them and I the value that I want to increment by 1 has a letter before it.
  5. Hello. In my drawing, there are many blocks around and it says how many floors they are inside. I want to extrude these blocks. But since they are so numerous, it takes a long time to do it one by one. I'm looking for a lisp to extrude these blocks according to the numbers written in them. It also works to select polylines based on the numbers inside I'm sorry for my bad english. http://prntscr.com/yz55au
  6. Hi all, I have written a lisp that uses the vl-file-copy command to move this PDF to another folder. But this only works for the original pdf, not for the link! Does anyone know if I need to change something in the command to be able to move the link? The file name remains the same: "sheet_cover_building1".
  7. Hello, I am attempting to put together a LISP that creates a table of cumulative geometric properties of selected objects. I would like to be able to quantify Erosion and Sedimentation Control BMPs by layer for a cost estimation. Controls such as compost filter sock and orange construction fence are polylines, erosion control blanket is hatched, and inlet protection is a block. The controls are all on their own respective layers. The idea is that I would be able to select one occurrence of each of these controls (polyline, hatch, block), have the LISP apply the "select similar" command, and create a table that reports back the length of the polylines by layer, the cumulative area of the hatches by layer, and a count of the blocks by layer. Due to my inexperience with LISP, I am afraid that I am unable to create this app in time for when I need it. It would be greatly appreciated if someone could help out in creating this app. Thank you for your time.
  8. I got the Lisp from this Topic https://www.cadtutor.net/forum/topic/44246-measure-distance-between-polylines/page/2/ by Lee Mac but I want to use Lisp for tunnel work. The text must seperate by setting tolerance (Can set the tolerance for Overbreak and Underbreak) In tolerance (Green Text) ,Overbreak (Blue text) and Underbreak (Red text) Ps.1 Thank you for your help Ps.2 My English skill is bad
  9. Hi, I need a small lisp that opens and closes a file for me in the background. Nothing needs to be done. In this lisp the file is opened but not closed. (defun c:open_close_explorer () (setq Path "Y:\\Folder\\Data\\Test.txt") (setq File (StartAPP "Explorer.Exe" Path)) (close File) (princ) ) Does anyone have an idea?
  10. Hi, I'm trying to query the variable "Weight" and if it has the content "50" I want to define a new variable: "Stamp" with the content "internal". Is WCMATCH the right command for this? (if (= wcmatch Weight "50") (progn (setq stamp "intern"))) (princ)
  11. Hello Everyone, We are looking for a lisp that will delete objects on every layout in a drawing. I have seen a lisp that will delete objects of the same type and layer on every layout, but unfortunately that doesn't give us enough descriptiveness to only delete the objects we need to delete. The location of the objects we want to delete will be the same on every layout, so ideally the lisp will be able to take a selection window on one layout, and delete all the objects within that window location on every layout. If it is easier for coding purposes, we could even draw a box with lines/polylines on one layout and use that to define the selection window for all the other layouts, and then just delete the box at the end from the one layout. If anyone has any ideas, or if any more information would be helpful, please let me know! Thank you all, - Noah
  12. Hi, I'm working on a LISP that in part needs to grab the filename (without extension) for a command - I managed to do this using 'vl-filename-base' but since it needs to run in acoreconsole it can't use anything from the VL Library. Is there any way to either remove ".dwg" or remove the last 4 characters from a string in only vanilla LISP? Here's what I've got so far (defun C:PlotToLocation (/ filename) (vl-load-com) (setvar "cmdecho" 0) (setq filename (vl-filename-base (getvar 'dwgname))) (setq filename (strcat "A:\\X\\Y\\" (vl-filename-base (getvar 'dwgname))".pdf")) This sets the filename to "A:\X\Y\filename.pdf" I can currently get "A:\X\Y\filename.dwg.pdf" but since the PDFs have to follow a naming standard, I need a way to remove the ".dwg".
  13. Hello Community! I have been researching this for some time, I am trying to know if it is possible through a routine (lisp) to transfer / copy the information from LT (link template associated with a database in access) to the OD (object data) as I show in the image. So i need a very specific Lisp/VLisp/VBA/Dotnet routine who asks for : -- The Link Template DB name -- Which DB fields are you interested for -- Which OD Table MAP to fill -- Which OD Fields MAP to create or to use (if already existing) -- Selecting objects -- Retain only objects which the correct parameters -- ACTION ... Copy Data to OD fields ... append DWG & MDB files as example. thanks for the help you can give me, greetings EJEMPLO.zip
  14. Hi all, is it possible to read attributes or properties from the _DWGPROPS and list them in a Lisp e.g. as variables? I need the yellow marked attribute (OD2485), which always has a different number. (defun c:dropsforatts () (setq (vla-get-ActiveDocument (vlax-get-acad-object)) (vla-get-SummaryInfo doc) ) (setq i 0) (setq i 5) ) I would then like to insert this variable into a file path in a Lisp. (defun c:tempsave () (getvar "DWGNAME") (getvar "DWGPREFIX") (command "_+saveas" "G" "2018dwg" "2018(LT2018)" ("F:\\\\Clients\\CT2485\\OD2485\\Planning" ;i need the OD2485 as a variabel from the DWGPROPS (strcat (substr (getvar "DWGNAME") 1 8) "_temp") ) ) )
  15. Hi Guys, I have several layouts when drawing, which also have different names. I want to save in a Lisp all layouts that start with a specific name in a certain folder as PDF. I am new in lisp, but i have managed to write a lisp that selects the correct location for me. Unfortunately only all layouts are printed. (defun c:Dokument_Export () (command "-EXPORT" "PDF" "ALLE" (strcat (substr (getvar "DWGPREFIX") 1 70) "\\08_Auftragsbestätigung\\" (strcat (substr (getvar "DWGNAME") 1 8) "_Zeichnung") ) ) ) You have any idea? Thanks in advance.
  16. I came across the attached LISP routine that allows attribute information to be extracted into an excel document. Unfortunately this code searches the entire drawing for attributes, when I need only specific blocks to be selected. I am looking to modify the following code, so that it will prompt me for a selection window when extracting specific block attributes in a drawing. If anyone can help me with this I would appreciate, as I have no experience writing or modifying LISP. Thank You ATTOUT.LSP
  17. I'm looking for a lisp command that can quick swap text between two objects, be they text, mtext, or multi-leader text. So upon running, you click on the two objects, and the text from object A moves to object B, and the text from object B moves to object A, where object A and object B can be different object types.
  18. Hi, I've found the align object lisp from Lee Mac (thank you sir). I have a slope for an underground garage where a special type of car can't pass the entrance (hanging too low). They have given me a model of the car. I want to align the car to the curve i've created. The problem is that the car has two tires, represented by circles. The point where they hit the curve is somewhere along those circles and i should align with 2 points to the curve. Can you help me out? The blue line is a section i've taken from the DTM, The green line is a proposition i've made with trial and error. car align to curve.dwg
  19. need help from senior here, as my attachment file from cad to output excel table, i need to create report ( coordinate and area ) from all closed polyline has text as an ID thanks in advance AREA.dwg REPORT.xlsx
  20. Hello i have some problem with intersect point. I will upload dwg file. I dont know why when i try to get all intersect point from the red something go very wrong. I need all intersect point from the red lines. Thank you Try_5.dwg
  21. Hello, I'm searching to make a LISP, to change the layer of an attribute. Actually it in "TopoAlt" Layer, I like to change in "0" layer (or other) I thinked about DXF code but i don't find it with dumpallproperties. "Battman" command would be a good solution but I can't make script "-eattedit" command is pretty close but I'm stopped when It need " attribute selection". If i could scripting "-eattedit" with an automatic attribute selection (like an already made SSGET), I could change the layer, or other properties ! Any Idea ?
  22. The task is simple. I have a drawing containing various blocks and a folder containing those blocks that separate in each dwg file . I want to make an auto routine: list all blocks contained in opening dwg > searching them in the library folder > redefine all blocks that containing in the list from the library folder. Please help me, because I couldnt find any existing lisps that be able to solve this problem
  23. Hello! I have been getting suggestions and help from this forum for some time now, but have reached a point where I am currently at a loss. I am still relatively new to the topic of lisp and co, but I am trying to improve constantly. For my current problem, I am trying to select a block and insert a point into it. I have simplified my current lisp file into the function below so as not to go over the top. My problem is that I get back an empty selection set and thus can't execute the function from Lee Mac correctly. (defun TestFunction ( / ) (while (= ss NIL) (if (setq ss (ssget "_+.:S:E:L" '((0 . "INSERT")))) (progn (setq ent (ssname ss 0)) (setq Block (vla-item (vla-get-blocks (setq doc (vla-get-ActiveDocument (vlax-get-acad-object)))) (cdr (assoc 2 (entget (ssname ss 0)))))) (Insert_Point) ) ) ) ) (defun Insert_Point ( / ) ;; Block Einfügepunkt ermitteln (setq Message (strcat "\nEinfügepunkt wählen:")) (setq Pnt (getpoint Message)) (setq sel (ssadd)) (setq Point (vla-addpoint Block (vlax-3d-point Pnt))) (ssAdd (vlax-vla-object->ename Point) sel) ;; sel stays empty so the following line cant be executed properly (UpdateBlock doc ent sel) ) Many thanks for your help! Best regards Florian
  24. I want to create a polyline with pl command between points from 2 different layers. Sorry for the low-quality photo. Is there an easy way to create a LISP bc there are thousands of points I need to do manually? Any help would be appreciated.
  25. Dear Members! Problem part I I now turn to you with the question of how to extract certain data from the "_massprop" command and assign it to a variable immediately. I am working on an automation task where a cable cross section has to be pulled out on a given 3D polilyne path. I need to extract the volume of the resulting 3D solid to calculate the volume of the displaced top. Problem part II Similarly, I should extract the length of the extracted 3D tube from the property table. This data is available if I extract the cross section with the _extrude / path command. I have to assign the extracted data to a variable within the lisp program to perform a mathematical operation on it. As follows: (setq V (volume data from the _massprop command)) (setq Vm (/ V (1000 ^ 3)); converting the mm3 to m3 Problem part III I would like to write the obtained result in a table in the model space. Column 1: "Volume of ground displaced by the pipeline" Colum 2: "The result of the calculation (which will be the value of a variable Vm)" Here is my code for calculation the cross section of the cable and to extrude it. The polyline must to be placet at '(0 0 0) All help comes in handy: (defun c:kabel(/ K_A K_AKEM K_DKE K_DKEM K_H K_L K_PT0 K_PT1 K_PT2 K_PT3 K_PT4 K_PT5 K_RKE K_RKEM K_RTOT K_SS1 K_V PIR) (setq K_Dke (getreal "Adja meg a kábel ér külső átmérőjét:")); Give me the diameter of the subcable (setq K_Akem (getreal "Adja meg a kábel ér magjának keresztmetszet területét (mm2)-ben) :")); Give me the copper cross section area (setq K_L (getreal "Adja meg a beillesztett polilyne teljes hossszát m-ben:")); Give me the length of the cable route (setq pir 3.141592654) (setq K_Dkem (sqrt (/ (* K_Akem 4) pir))); The copper diameter (setq K_Rke (/ K_Dke 2)) (setq K_Rkem (/ K_Dkem 2)) (setq K_pt0 '(0 0 0)) ; The low right cable part (you have 3 of them) (setq K_pt1 (polar K_pt0 (* pi 0.666666666666) K_Dke )); The center position of the upper cable part (setq K_pt2 (polar K_pt0 pi K_Dke)); The center of the third cable part ( part 3 of 3) (setq K_h (* K_Dke (sin (/ pi 3)))) (setq K_pt3 (polar K_pt2 0 (/ K_Dke 2))) (setq K_pt4 (polar K_pt3 (/ pi 2) (* K_h 0.333333333333)));The outer circle center point calculated from 3 cabel parts which are 120 degree from each other, like a mercedes logo (setq K_Rtot (+ K_Rke (* K_h 0.666666666666666))); Radius of the cable pipe (setq K_pt5 (polar K_pt4 (/ pi 2) K_Rtot)) (command "_circle" K_pt4 K_Rtot "") (setq K_ss1 (ssget "_L")) (command "_extrude" "_Mode" "_solid" K_ss1 "" "_path" '(0 0 -0.1) "") (setq K_A (* (* (/ K_Rtot 1000) (/ K_Rtot 1000)) pir)) (setq K_V (* K_A K_L)) (alert (strcat "The volume of the cable=" (rtos K_V) "m3")) (princ) )
  • Create New...