Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Yesterday
  3. As the OSMODE system variable is saved in the Registry, it will always be available when you start CAD. If it is on when you finish CAD, it will always be on when you next start CAD. Therefore something is happening to stop it. Perhaps an App is stopping it, or you are pressing some keys. It may be easier to find out WHY Osnap is turning off, because you are obviously having problems with the solutions proposed.
  4. Hello everyone, I've already checked the web, as well as the reddit page. The only similar problem with solution I found ended up not working for me, which was to change view with the side bar rather than the cube. My issue is simple. I'm trying to cut a plane while looking at it from the left in ortographic realistic view. If I look at it at an angle I can cut it any way I want, as well as in perspective mode. But directly from the left and the cut tool seems to either start from a vertice at the bottom of the plane, from the centerpoint of the grid, or from the middle of one of the edges. However it still won't cut, it just seems to imply that I'm able to.
  5. Hi BIGAL The first script works and creates the text file. But I don't think I understand what the second script is supposed to do....and it is not working (file nil it says)? I could now create a text file (master list) with row 1 (Name of the block --> thanks to script one) and row 2 (price for this particular block --> manually). So all I need is a script which I can run in any drawing I like, and this script will add the new attribute PRICE to every block in the drawing which matches the master list. And it should get the actual price for each blog in that list.. So, check for every block in drawing for each blog that is also in the master list add attribute price add price from master list for this block name something like that..
  6. Curious, Isn't that feature available with out-of-the-box Civil 3D?
  7. similar to LM (Defun _maxpercol_r (d / m n) (if d (cons (apply 'max (mapcar 'strlen (mapcar 'car d))) (_maxpercol_r (vl-remove-if 'null (mapcar 'cdr d)) ) ) ) )
  8. The ACADDOC.LSP is saved in the directory you suggested, however, each time I start CAD , I need to load it! actually even if I load ACADDOC, the osnap don't get turned on. I need to load the (setvar "osmode" 167) lisp..... but for crying out loud, isn't it possible to have this OSNAP always on, each time I start CAD?
  9. Hello each time I publish a DWG I always need to reload the settings, even though I do this action 10 times per day. I didn't see any save setting option in the window, Publish: and then I always need to select the page setup from an older DWG ... is there a way to save the settings?
  10. What you want is very easy and a good task for learning say lisp. If you look at any tutorials for lisp they should have one about getting properties. I would go down the VL lisp path as length is a supported value you can get. Here is an example of what you can get ; Property values : ; Area (RO) = 8113640.30496858 ; Closed = 0 ; color = 256 ; ConstantWidth = 0.0 ; Elevation = 0.0 ; EntityName (RO) = "AcDbPolyline" ;; Layer = "063" ; Length (RO) = 19800.0 ; Linetype = "ByLayer" ; LinetypeGeneration = 0 ; LinetypeScale = 1.0 ; Lineweight = -1 ; ObjectName (RO) = "AcDbPolyline" ; Thickness = 0.0
  11. Google land survey formulas or just clothoid curves.
  12. Glad you found it better to understand the rtos options than just give 2 3 .
  13. Last week
  14. If you are only looking to present the user with a single List Box as an interface, below are two ready-made functions that you may wish to call from your program: List Box List Box with Filter Or at least, you could look at the code to see how the selections are handled - essentially the same technique as @ronjonp Hope this helps!
  15. no idea what adersheets are but have your tried the (gc) command yet (garbage collection) , you may have to use after every use of the command. else maybe some good old vanilla (https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/how-to-clear-selection-sets/td-p/904012) (defun c:ssclean () (setq ctr 0) (setq lst (atoms-family 1)) (foreach sym lst (if (= (type (eval (read sym))) 'PICKSET) (progn (setq ctr (1+ ctr)) (eval (read (strcat "(setq " sym " nil)"))) (princ (strcat "\nNullified (" (itoa ctr) "): " sym)) ) ) ) (gc) (princ) )
  16. BTW, I found no solution to this mess. It seems impossible to free up the selection sets used up by adersheet, as they aren't even present in the selectionsets object of currentrawing. if I query the count of selectionsets it returns 0 all the time. Had I known autodesk was so lousy I'd have done this in vba and not lisp. But I always prefer lisp for "easy" tasks. Now I had to figure out a workaround, which took me half a day, and will result in the process running 10 times slower. The only solution I could come up with that actually works is that I removed the loop from the lisp and made it a simple procedure that runs once on one set of control points. This way I can use a script to close and re-open the drawing before each iteration, which frees up sset slots in autocad.
  17. I think you are the one misunderstanding the goal. I don't want to compare existing points to each other. What would that even achieve? Compare how? I want to calculate deviations between neighbouring control points for transformation. So I transform the point in question using the neighbouring points with rubber sheet and then check how well it fits it's control coordinate after transformation. The distance between the transformed point and the control point will give me the deviation of that point compared to it's neighbours. The end result are the deviation numbers, nothing else. This is to check if all points are within tolerances before transforming a Raster image the points correspond to.
  18. Not sure how much your boss is paying you Lee but its not nearly enough
  19. Late to the party - (defun cmaxstrlen ( l ) (if (apply 'or l) (cons (apply 'max (mapcar 'strlen (subst "" nil (mapcar 'car l)))) (cmaxstrlen (mapcar 'cdr l)) ) ) ) _$ (cmaxstrlen lst) (15 2 4 5 2)
  20. hello, I need to apply properties and add a letter to the remaining part of this depth axis, as follow:, please refer to the screenshots: the properties and the "-" and the letter "m" shall be substituted to the rest of the depth axes, using the ones in the yellow rectangle. I can do it manually but it will take ages, is there a quick way? - dwg attached - editing depth axes.dwg
  22. Can anybody please help me with the simple LISP file that labels the polyline as per the attached image below. Please see the 3 highlighted boxes i have shown, Colored polylines are my pipeline networks. (∅63) is the diameter of pipe and (98m) is its length. I want LISP file to pick up the diameter number from the layer name, and length as per the properties/geometry as highlighted. (∅,m Want these symbols to remain contant on their places) ASAP help will be highly appreciated, Thank You.
  23. Dear Jacques, I am looking for a clothoid Lisp to do some spirals and stumbled upon yours. Looks great. Thank you very much. I want to research further to see how I can get to use this and understand more. BTW, do you have the text reference for the equations you used in the Lisp.? For example, I need to know more how to set the parameter A and the length, grad setting etc? Best Regards Rakesh Rao
  24. drafting1768

    Bearing and Dimension lisp routine questions

    Changed (rtos d 2 2) to (rtos d 2 3) solved my precision issue. Thanks!
  25. drafting1768

    Bearing and Dimension lisp routine questions

    Thanks BIGAL! I'll get started on your suggestions and let you know how I make out.
  26. Found this fairly recent post sounds like what you want.
  27. I think you miss understood me you want to compare pair of points even if all points are on 1 layer you can do it, its a recursive process, take point 1 compare to all points re distance between, if within tolerance do compare, remove point from master list, get new 1st point and repeat. The code has been done before. I will try to find. For big point numbers a .net style program working on a text file may be a better way to go. Using vlsort you can sort a list of xy co-ord points so comparing two points becomes much easier. A list does have a maximum number it can hold but you could array massive points into smaller lists to get around this problem. Just did a quick test in Briscad and did 100000 items in a list. Can you post a text file of points csv ok, and what tolerance to use. ?
  28. I use the (setq lst '()) to reset it in routines where repeat/while etc are involved probably not needed in code example above. I have not had problems using, if setting to nil is better happy to take that advice.
  1. Load more activity
  • Newsletter

    Want to keep up to date with all our latest news and information?

    Sign Up
  • Create New...