Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/25/2024 in all areas

  1. @Steven P, it is great. thank you very much.
    1 point
  2. Isn't Object DBX a "third party tool"? Plus, you actually didn't detail how to do this method.
    1 point
  3. (princ (strcat "\nSHA-512 Hash: " (strcase hash-value T))) strcat and strcase is different
    1 point
  4. Just some comments, no code. Pline as rectang is ok Curvey pline is a problem as ssget "WP" does not support objects rather it uses object points. Revlcoud will ignore the curves so may miss an object that is inside a arc. But may be ok. A circle is not supported in Ssget "WP" but easy to make into multi chords of reasonable size. Given how old ssget is you would think the option OB would be added by now.
    1 point
  5. @Nikon Just a comment from like 30 years ago, draw a shape, ie pline, pick control point, overfill with required objects, change layer of objects within pline and turn off, erase the dummy layer of objects, turn objects back on. Then count. Hey that's the method ! Used this for concrete on ground slabs for the waffle panels did trim on waffles also.
    1 point
  6. (defun c:pp() (setq pl (car (entsel "select border polyline\n")) points (mapcar 'cdr (vl-remove-if-not '(lambda (x) (= (car x) 10)) (entget pl))) ) (strcat (itoa (sslength (ssget "cp" points))) " entities found") ) This will count the entities inside the polyline and also those crossing it. For the circle: convert it first to a closed polyline containing only line segments. Good luck!
    1 point
  7. ...or just forego the explicit Pythagorean calculation and use the distance function - (defun c:myFun001 ( / 2d p1 p2 ) (setq 2d (lambda ( x ) (list (car x) (cadr x)))) (if (and (setq p1 (getpoint "\n1st point: ")) (setq p2 (getpoint "\n2nd point: ")) ) (princ (strcat "\nDistance in XY-plane: " (rtos (distance (2d p1) (2d p2))))) ) (princ) )
    1 point
  8. You need to apply an ACTION to the PARAMETER. In this case STRECH. See attached file test.dwg
    1 point
  9. You're welcome! No, FILEDIA isn't similar with CMDECHO; it with will suppress usage of dialog box for some commands and interrogate user on command prompt instead. This way you will be able to provide information to that command by code, without user interaction. Regards,
    1 point
  10. This variable will allow (CMDECHO = 1) or prevent (CMDECHO = 0) display of commands prompts on AutoCAD text window. It is used in AutoLISP routines to don’t annoy user with a cascade of strings on command prompt. See examples below: (defun c:Test1() (setvar "CMDECHO" 1) (repeat 11 (command "_LINE" '(0 0) '(1 2) '(7 4) "") (command "_CIRCLE" '(0 0) 5.0) ) (princ) ) vs. (defun c:Test2() (setvar "CMDECHO" 0) (repeat 11 (command "_LINE" '(0 0) '(1 2) '(7 4) "") (command "_CIRCLE" '(0 0) 5.0) ) (princ) ) Regards,
    1 point
  11. Give this a try...the instructions are at the bottom. (defun rjp-rbnomovey (bnames / e n ss obj out rjp-bbleft) (vl-load-com) (defun rjp-bbleft (obj / ll ur) (vla-getboundingbox obj 'll 'ur) (vlax-safearray->list ll) ) (setq n -1) (foreach name bnames (if (setq ss (ssget "_x" (list (cons 0 "insert") (cons 2 name)))) (progn (while (setq e (ssname ss (setq n (1+ n)))) (setq obj (vlax-ename->vla-object e)) (setq out (cons (list obj (rjp-bbleft obj)) out)) ) (command ".-INSERT" (strcat name "=" name ".dwg") '(0 0 0) (command) ) (foreach block out (vla-move (car block) (vlax-3d-point (rjp-bbleft (car block))) (vlax-3d-point (cadr block)) ) ) ) ) ) (princ) ) ;;Enter the names of the block names you are using in a list, redefined block drawing must be in search path (rjp-rbnomovey '("blockname1" "blockname2" "blockname3"))
    1 point
×
×
  • Create New...