Jump to content

Search the Community

Showing results for tags 'multiple'.

  • 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 everyone. I am working with a code to copy object (s) and paste with rotation using the same base point as the axis of rotation. What I can't do is create a while cycle to be able to make multiple copies and rotate. I could only do it once. If someone helps me a little I would be very grateful. (defun c:cr (/ ss p1 p2 p3) (setq ss (ssget)) (command "copy" ss "" "0" "0") (setq p1 (getpoint "\n base Point: ")) (setq p2 (getpoint "\n destination point: ")) (command "move" ss "" p1 p2) (setq p3 (getpoint "\n reference point: ")) (command "rotate" ss "" p2 "R" "@" p3 pause) )
  2. Hi Guys, New to CAD Tutor. I came here looking for a lisp routine to do multiple copies at varying distances from a point relative to the last copy point. I found Lee Mac's Lisp Routine on an old post but I am having trouble with it. I am using AutoCAD 2018. (defun c:copyrel ( / b i l o p q s ) (if (and (setq s (ssget "_:L")) (setq p (getpoint "\nSpecify Base Point: ")) (setq b (vlax-3D-point (trans p 1 0))) ) (progn (repeat (setq i (sslength s)) (setq l (cons (vlax-ename->vla-object (ssname s (setq i (1- i)))) l)) ) (while (setq q (acet-ss-drag-move s p "\nSpecify Second Point: " 0 0)) (setq s (ssadd)) (foreach x l (vla-move (setq o (vla-copy x)) b (vlax-3D-point (trans q 1 0))) (ssadd (vlax-vla-object->ename o) s) ) (setq p q) ) ) ) (princ) ) (vl-load-com) (princ) So it seems to work up until the second copy. The issue I have is that I am unable to control the direction of the second copy. Also the distance is incorrect for the direction it does copy it to. I am trying to use it to quickly draw a column grid. I have orthomode on. My first copy is horizontal, the second is also to be horizontal and all visual cues show as if it will be copied horizontally, just like the other copy. However, the result is that it copies the object downward. And not even to the correct distance. For example I typed in 20'-8" and it copied it 7' something down on the Y-axis. This is exactly what I am looking for so if anyone can help me out with this it would be fantastic!!
  3. Hello, I'm just re-familiarizing myself with AutoCAD after a four year stint as a CNC operator, and I'm trying to remember a little trick I used to know. I would like to clip an image file with multiple polylines as the clipping boundaries. The problem I'm having, however, is that there doesn't seem to be an "all-in-one" solution for this task. XCLIP only handles a single clipping boundary. So I tracked down "XClipM.lsp", which covers multiple clipping boundaries, but not arcs, circles, splines, etc. Then I tried CLIPIT. That handles the arcs and circles, but NOT multiple clipping boundaries. Are the developers of AutoCAD "special needs" students, or what? It seems completely obvious to me that these functions should all be integrated into one command, and it seems completely obvious that if you want to clip something with one boundary of one shape, you're probably eventually going to want to clip something with multiple boundaries of multiple shapes. Duh. Does anyone know of a solution or a .lsp that can handle this? Your expertise is greatly appreciated. AutoCAD 2013, BTW.
  4. I know there's a bunch of posts on this but I could never find a lisp that could incorporate all, or multiple. lisps that can..auto run w/ ea. .dwg opened, redefine & replace multiple referenced blocks (about 10) keeping original location, & retaining attributes..w/o any prompts..I could be asking too much but any insight is greatly appreciated..I'm on hr 7 on this one..if it's easier..only one block has attributes and can make a separate lisp for that..or again if easier make a separate lisp for ea block..anything put together really that auto runs w/o prompts.. If u think I missed a post like this please let me know..again I really appreciate it
  5. Hello, I am new to the forum. Can anyone of you help me? I am a beginner in lisp codes. My problem is that I need to do multiple selection to change color. I can only do it once Also that you can select the objects and then apply the command:glare:
  6. Hello folks! I would like to know if you guys could help me to align multiple lines to an specific point. Take a look at this image. I want to align all color lines to the white one at the bottom. I tried to move them, but I need a reference point and I do not know how to do it. Ive been searching about it here, but also unsuccessful.
  7. Hi there all First post and it's a request for help (although been a long time lurker) I've got a 3d drawing that has a load of levels in 3d positions with text displaying the height value. These are all orientated and readable in plan view. I want to create some sections using the 3d information, and what I would like to work out is the best way to manipulate the level cross (block) and associated text so that it is rotated to a side on section view. (in model space not just in a paper space viewport) I've tried using the rotate3d command on mass and can't quite get the results I'm after, basically it rotates the text so that it is now readable in the section but when selecting multiple items it rotates the whole lot around one datum rather than rotating each item around it's own insertion / justification point. in the above image, to the left is what I'm starting with levels (red) in 3d - next is the result I get from using the command rotate3d (levels in white) when they are selected in one go. the text is rotated so that it's legible but has moved away from the 3d polyline - the 2 to the right show what i'm aiming for, having manually moved them to their representative points and then rotated, however there's gonna be quite a few to rotate and shift along different sections, so it would be good to have this a bit more automated any suggestions? am I not using rotate3d to it's full potential or is this something that would need to be solved with a lisp routine? picking a temp ucs along the section line and then selecting the relative objects to rotate thanks in advance
  8. I work with AutoCad Electrical. I've been using an amazing Lisp file by Alan J. Thompson (who is a frequent contributor) call Match Attributes Values and it has been a enormous time saver. However, with AutoCad Electrical, the electrical blocks called "components" have an attribute called Tag1 that gives the component its uniqueness. It is this (and only this) attribute that I DON'T want to change when I copy all attributes between these blocks. I attached the wonderful MAV code. (I hopes that's okay.) Can someone help me in modifying the code that would change all attributes except one labelled "TAG1". (and maybe one or two others possible additional tags--for future.) Thank you for any help. mav.lsp
  9. Okay, so i feel very stupid for asking for help with this but to save my life I cannot figure this out. We have anywhere from 30-50 sheets for site plans. Opening each sheet and plotting them takes anywhere from 30 min. to an hour. This is taking up too much time when I should be drafting instead of hitting the open, plot, close buttons. Can someone please explain to me from start to finish of how to, I guess, set up sheet sets to plot the whole set of plans at once? I think a sheet set would be used. Not sure about that though. I would GREATLY appreciate any help. Thanks everyone. Miller
  10. Hello, I have a Drawing in which I need to draw thousands of parallel lines (offset) on different distances. Is there anyway or Lisp Routine which can help me to Draw all the offsets at once for each line. see the screenshot below for reference. Thank You, Regards, Sidhu
  11. Hello, Is there anyway or LISP to use EXTrim between two Lines as shown in the following Screenshot. Thank you, Regards, Sidhu
  12. trmurphy

    creating families

    hi anyone know if it is possible to create a family using existing family members and not extrusions? what i need to do is create a family consisting of a single vertical plane unistrut frame that is copied along a bay of columns. however since the size of the unistrut can change i would rather be able to open the family and change the strut from a drop down menu from the unistrut family, then save the parent family and all change within that bay. hope thats clear! like in CAD where you create a block then you just have to change it once when there's multiple instances. i know this is similar to families but in cad you could make a block out of multiple blocks cant seem to do that in revit any help appreciated!
  13. I have created a view to zoom to my titleblock and plot stamp so that I may check revision dates. I then put this to a macro for easy access to the view (I keep the ribbon closed for maximum screen size most of the time). It seems that these saved views are only saved in the current drawing and I would need to save a view for each drawing file. This can be cumbersome for many drawings. Is there an easier way to view a certain area in paperspace? Or is there a lisp out there to create a saved view in multiple drawing files? Thanks for your time, -Nobull P.S. I also just realized this saved view not only goes to certain position but also switches to that specific layout. Is there a way to just save a position in paperspace to use on any layout?
  14. hi i am cleaning up a lot of old drawings each having multiple xrefs. however all are being moved to the current xref folder on the server so the xref path is messed up. we currently utilise a 'no path' xref setting on all drawings but these older ones all have saved paths. anyone know of a quicker way to convert all xrefs to no path as it's taking me all bloody day. thanks
  15. I'm trying to use a script to draw multiple lines (from one to the next) when I have the quadrants (1-4), bearings and distances in a file...but it doesn't resume the line command from the endpoint of the last drawn line--and therefore "tweeks" (at the * in the short sample script below). line 'bd 5000,1000 3 17.5057 164.71* 2 78.072 31 3 10.111 50 3 19.2147 116 4 66.215 297 Any hints on forcing it to keep drawing, as it does when I hand enter these commands? NOTE: The nice thing I DID learn is that you can bi-pass the [.P .N .G] choices by just putting in the x,y coordinates to start, "tricking" it to thinking you used your mouse. However, the script works for the beginning, but doesn't behave the same as my hand entered commands, but shows the following: Specify first point: 'bd >>Select starting point or [.P/.N/.G]: 5000,1000 Quadrants - NE = 1, SE = 2, SW = 3, NW = 4 >>Specify quadrant (1-4): 3 Current direction unit: degree, Input: DD° MM' SS.SS" (spaced) >>Specify bearing: 17.5057 >> >>Specify distance: 164.71 Resuming LINE command. Specify first point: Specify next point or [undo]: 2 Specify next point or [undo]: 78.072 Zero length line created at (5224.647, 81.665, 0.000) Specify next point or [Close/Undo]: 31 Zero length line created at (5224.647, 81.665, 0.000) Specify next point or [Close/Undo]: Enter BACKSPACE to interrupt script. Command: 3 Unknown command "3". Press F1 for help.
  16. Hello all, Could anyone tell me how to alter this code? It asks to pick a value then whether to apply it once or multiple times. In multiple mode, you still only choose one at a time. I would like to be able to apply to multiple objects at once, using a selection box. Thanks -Nobull ;;;;Realization {Smirnoff} ;;; TTCM - Text to Text copy whith Matchprop. Copy text from DIMENSION, TEXT, ;;;MTEXT, ATTRIB, ATTDEF, ACAD_TABLE to one (defun c:tt (/ actDoc vlaObj sObj sText curObj oldForm oType oldMode conFlag errFlag *error* prop) (vl-load-com) (setq actDoc(vla-get-ActiveDocument (vlax-get-acad-object))) (vla-StartUndoMark actDoc) (defun TTC_Paste(pasteStr / nslLst vlaObj hitPt hitRes Row Column) (setq errFlag nil) (if (setq nslLst(nentsel "\nPaste text >")) (progn (cond ( (and (= 4(length nslLst)) (= "DIMENSION"(cdr(assoc 0(entget(car(last nslLst)))))) ); end and (setq vlaObj (vlax-ename->vla-object (cdr(assoc -1(entget(car(last nslLst))))))) (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-put-TextOverride(list vlaObj pasteStr))) (progn (princ "\n Can't paste. Object may be on locked layer. ") (setq errFlag T) ); end progn ); end if ); end condition #1 ( (and (= 4(length nslLst)) (= "ACAD_TABLE"(cdr(assoc 0(entget(car(last nslLst)))))) ); end and (setq vlaObj (vlax-ename->vla-object (cdr(assoc -1(entget(car(last nslLst)))))) hitPt(vlax-3D-Point(trans(cadr nslLst)1 0)) hitRes(vla-HitTest vlaObj hitPt (vlax-3D-Point '(0.0 0.0 1.0)) 'Row 'Column) ); end setq (if(= :vlax-true hitRes) (progn (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-SetText(list vlaObj Row Column pasteStr))) (progn (princ "\n Can't paste. Object may be on locked layer. ") (setq errFlag T) ); end progn ); end if ); end progn ); end if ); end condition # 2 ( (and (= 4(length nslLst)) (= "INSERT"(cdr(assoc 0(entget(car(last nslLst)))))) ); end and (princ "\nCan't paste to block's DText or MText. Select Attribute ") (setq errFlag T) ); end condition #3 ( (and (= 2(length nslLst)) (member(cdr(assoc 0(entget(car nslLst)))) '("TEXT" "MTEXT" "ATTRIB" "ATTDEF")) ); end and (setq vlaObj (vlax-ename->vla-object(car nslLst))) (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-put-TextString(list vlaObj pasteStr))) (progn (princ "\nError. Can't pase text. ") (setq errFlag T) ); end progn ); end if ); end condition #4 (T (princ "\nCan't paste. Invalid object. ") (setq errFlag T) ); end condition #5 ); end cond (if (and (null errFlag) (= (type vlaObj) 'VLA-OBJECT)) (mapcar '(lambda (x y) (vlax-put-property vlaObj x y)) '(Linetype LineWeight Color Layer) prop ) ) T ); end progn nil ); end if ); end of TTC_Paste (defun TTC_MText_Clear(Mtext / Text Str) (setq Text "") (while(/= Mtext "") (cond ((wcmatch (strcase (setq Str (substr Mtext 1 2))) "[url="file://\\"]\\[/url][\\{}`~]") (setq Mtext(substr Mtext 3) Text(strcat Text Str) ); end setq ); end condition #1 ((wcmatch(substr Mtext 1 1) "[{}]") (setq Mtext (substr Mtext 2)) ); end condition #2 ( (and (wcmatch (strcase (substr Mtext 1 2)) "[url="file://\\P"]\\P[/url]") (/=(substr Mtext 3 1) " ") ); end and (setq Mtext (substr Mtext 3) Text (strcat Text " ") ); end setq ); end condition #3 ((wcmatch (strcase (substr Mtext 1 2)) "[url="file://\\"]\\[/url][LOP]") (setq Mtext(substr Mtext 3)) ); end condition #4 ((wcmatch (strcase (substr Mtext 1 2)) "[url="file://\\"]\\[/url][ACFHQTW]") (setq Mtext (substr Mtext (+ 2 (vl-string-search ";" Mtext)))) ); end condition #5 ((wcmatch (strcase (substr Mtext 1 2)) "[url="file://\\S"]\\S[/url]") (setq Str(substr Mtext 3 (- (vl-string-search ";" Mtext) 2)) Text(strcat Text (vl-string-translate "#^\\" " " Str)) Mtext(substr Mtext (+ 4 (strlen Str))) ); end setq (print Str) ); end condition #6 (T (setq Text(strcat Text(substr Mtext 1 1)) Mtext (substr Mtext 2) ) ); end condition #7 ); end cond ); end while Text ); end of TTC_MText_Clear (defun TTC_Copy (/ sObj sText tType actDoc) (if (and (setq sObj(car(nentsel "\nCopy text... "))) (member(setq tType(cdr(assoc 0(entget sObj)))) '("TEXT" "MTEXT" "ATTRIB" "ATTDEF")) ); end and (progn (setq actDoc(vla-get-ActiveDocument (vlax-get-Acad-object)) sText(vla-get-TextString (vlax-ename->vla-object sObj)) ); end setq (if(= tType "MTEXT") (setq sText(TTC_MText_Clear sText)) ); end if ); end progn ); end if (setq prop (mapcar '(lambda (x) (vlax-get-property (vlax-ename->vla-object sObj) x)) '(Linetype LineWeight Color Layer) ) ) sText ); end of TTC_Copy (defun CCT_Str_Echo(paseStr / comStr) (if(< 20(strlen paseStr)) (setq comStr (strcat (substr paseStr 1 17)"...")) (setq comStr paseStr) ); end if (princ (strcat "\nText = \"" comStr "\"")) (princ) ); end of CCT_Str_Echo (defun *error*(msg) (vla-EndUndoMark (vla-get-ActiveDocument (vlax-get-acad-object))) (princ "\nQuit TTCM") (princ) ); end of *error* (if(not ttc:Mode)(setq ttc:Mode "Multiple")) (initget "Multiple Pair-wise") (setq oldMode ttc:Mode ttc:Mode (getkword (strcat "\nSpecify mode [Multiple/Pair-wise] <" ttc:Mode ">: ")) conFlag T paseStr "" ); end setq (if(null ttc:Mode)(setq ttc:Mode oldMode)) (if(= ttc:Mode "Multiple") (progn (if(and(setq paseStr(TTC_Copy))conFlag) (progn (CCT_Str_Echo paseStr) (while(setq conFlag(TTC_Paste paseStr))T ); end while ); end progn ); end if ); end progn (progn (while (and conFlag paseStr) (setq paseStr(TTC_Copy)) (if(and paseStr conFlag) (progn (CCT_Str_Echo paseStr) (setq errFlag T) (while errFlag (setq conFlag(TTC_Paste paseStr)) );end while ); end progn ); end if ); end while ); end progn ); end if (vla-EndUndoMark actDoc) (princ "\nQuit TTCM") (princ) ); end c:ttc (princ "\n\t TTCM - Text to Text copy with matchprop.") (princ "\nCopy text from DIMENSION, TEXT, MTEXT, ATTRIB, ATTDEF, ACAD_TABLE to one")
  17. Hi Guys, I've seen that its possible to have multiple drop-down arrows (lookup/visibility states) within 1 block. How do I do that? I am redoing my title block & would find this extremely handy for all the different options I want to select. Please let me know if you don't understand what I mean.
  18. Maybe I'm just too new at the LISP thing but I've been through many forums and nothing really seems to spell it out for the layman, i.e. me. My company seems rather fresh to LISP as well but they have one "master" list of lisps they have used for some time. This list is loaded in everyone's CAD. I have several others that I have found that I would like to add to this master list but I don't see how they are separated and loaded. The idea is to update this master list with new commands and have others be able to simply have them available the next time CAD is started up again when the original lisp is loaded. Is there a quickie routine that loads other locations? I was given this style of line and told it would do such a thing but I must still be doing something wrong (load "brkblk") (load "BreakObjects18") (load "CCC") (load "Copy2DrawingsV1-2") (load "Copy2LayoutsV1-1") (load "DoubleOffsetV1-1") (load "Dynamic-Offset") (load "MCOPY") (load "QuickDimAligned-QDA") (load "ROT2ENT") (princ (load "BreakObjects18" "\nBreakObjects18.LSP file not loaded..")) (princ (load "CCC" "\nCCC.LSP file not loaded..")) (princ (load "Copy2DrawingsV1-2" "\nCopy2DrawingsV1-2.LSP file not loaded..")) (princ (load "Copy2LayoutsV1-1" "\nCopy2LayoutsV1-1.LSP file not loaded..")) (princ (load "DoubleOffsetV1-1" "\nDoubleOffsetV1-1.LSP file not loaded..")) (princ (load "Dynamic-Offset" "\nDynamic-Offset.LSP file not loaded..")) (princ (load "MCOPY" "\nMCOPY.LSP file not loaded...")) (princ (load "QuickDimAligned-QDA" "\nQuickDimAligned-QDA.LSP file not loaded...")) (princ (load "ROT2ENT" "\nROT2ENT.LSP file not loaded...")) Thanks for the patience, -Nobull
  19. Hi I searched the forum to find a solution to my material assigning problem.the only question similar to mine was answered by a person who indicated there were assets missing.I couldn't finds simple exact description of what assets are. My problem is: when I open a vray material in material editor I see a list of different materials some have (standard) in front of them and some not.what should I do when I see 5 names and which one should I double click on? this is confusing me so much and I just can't find the answer via experimental process....
  20. I have a .lsp file that mostly creates keyboard shortcuts for basic commands. My copy mode is set to default to "multiple" - and if I type "copy", it is indeed multiple. However, if I use my shortcut (just the "c" key), it is not. Here's the code: (defun c:c() (command "copy")) I don't think it gets much simpler than that... why would it not operate the same way as "copy"? Confused.
  21. Hi! I'm trying to find a way to plot multiple (over a thousand) DWG files to PDF without doing each one manually. I've played around a little bit but without any luck. I'm using AutoCAD 2002 LT. Is there any way to do this? I've also got little to no experience with the more complex settings and abilities of autocad so when explaining please do so in laymans terms. Thanks very much to anyone that can help in advance! PS. 2002 lt has no general publish (only publish to web) option and I have no idea how sheet sets work.
  22. My question: How do I change the font styles of multiple mtext's. My solution: Select all the boxes, type mo for properties, then change the style in the properties window. To make this simpler in the future I put all the text boxes in their own layer so I can use qselect to select them all quickly.
  23. Hi ALL, You know how when you offset a rectangle it it stay as a polyline? i need a lisp routine that i can use to offset the rectangle, set the new lines to current layer, and substract the offset distance from both end of the line. i know thats asking alot but has anyone seen a routine like this? Thanks, Brian
  24. Hi All I have been searching for a way of exporting multiple polyline or spline coordinates to txt file and all I can find is ones that write out as a single continuous list of coordinates with nothing denoting which one is which. I really need it to be able to export each polyline as a group, and I would also love for it to be able to include the number of points and name of the layer eg: polyline 'number of points' 'layername' 0.0 0.0 0.0 1.0 1.0 0.0 2.0 2.0 0.0 polyline 'number of points' 'layername' 0.0 0.0 0.0 1.0 4.0 0.0 2.0 8.0 0.0 and so on..... Any help with this would be much appreciated
  25. I use autocad 2000 at my job to create drawings for CAM. The machining paths are numbered between 521-850 (this is the block name) each time with numbers being used throughout this range, not nessecarily in order. What I want to do is get only these numbered blocks to insert all at once with one command at 0,0. Question one: Can I get a list of just the block names with autolisp? Question 2: Can I filter the block names with some sort of cond? or will I have to go about that another way?
  • Create New...