Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/06/2021 in all areas

  1. In case you want to restore association for one dimension, refer to this page. I did not know you could do that. In short, go to Annotate|Dimensions|Reassociate. Select the dimension and the object/points with which it should associate.
    1 point
  2. This lisp by ronjonp should do the trick: http://www.theswamp.org/index.php?topic=49865.msg550417#msg550417 I renamed the command as AddArcTangents and saved it as AddArcTangents.lsp then modified it to work with preselected objects as well including arcs & lwpolylines. Then added the macro ^P(or C:AddArcTangents (load "AddArcTangents.lsp"));AddArcTangents Named "Add Arc Tangents" with description "Add Tangent Lines to arc sections." to my "LWPline Object Menu" so I can add them simply by right-clicking on a lwpolyline and picking "Add Arc Tangents". ; by ronjonp ; modified it to work with preselected objects as well including arcs & lwpolylines - by Tom Beauford ; (load "AddArcTangents.lsp") AddArcTangents ; ^P(or C:AddArcTangents (load "AddArcTangents.lsp"));AddArcTangents ; http://www.theswamp.org/index.php?topic=49865.msg550417#msg550417 (defun c:AddArcTangents (/ _angle _line e ep p sp tmp) (defun _angle (ename pt / ang clpt e param) (if (and (not (vl-catch-all-error-p (vl-catch-all-apply 'vlax-curve-getendparam (list ename)))) (setq clpt (vlax-curve-getclosestpointto ename pt)) (setq param (vlax-curve-getparamatpoint ename clpt)) (setq ang (angle '(0 0) (vlax-curve-getfirstderiv ename param))) ) ang ) ) (defun _line (p1 p2 layer) (entmakex (list '(0 . "LINE") '(100 . "AcDbEntity") (cons 8 layer) (cons 10 p1) (cons 11 p2) ) ) ) (princ "\nSelect Arc or Polyline ") (setq tmp (ssget "+.:E:S" '((0 . "arc,lwpolyline")))) (if tmp (progn (setq e (ssname tmp 0) EnTyp (cdr (assoc 0 (entget e))) ) (if (= EnTyp "LWPOLYLINE") (setq tmp (vlax-invoke (vlax-ename->vla-object e) 'explode)) (setq tmp (list (vlax-ename->vla-object e))) ) ; (if (and (setq e (car (entsel))) (setq tmp (vlax-invoke (vlax-ename->vla-object e) 'explode))) (foreach o tmp (if (= "AcDbArc" (vla-get-objectname o)) (progn (setq sp (vlax-curve-getstartpoint o)) (setq ep (vlax-curve-getendpoint o)) (setq p (inters sp (polar sp (_angle o sp) 1) ep (polar ep (_angle o ep) 1) nil)) (_line sp p "Intersection") (_line ep p "Intersection") (if (= EnTyp "LWPOLYLINE")(vla-delete o)) ) (if (= EnTyp "LWPOLYLINE")(vla-delete o)) ) ) ) ) (princ) ) I've collected a lot of code and snippets from him over the years. Thanks again ronjonp.
    1 point
  3. Blender 3.0 was released yesterday and it's a major update. I don't see any reason to use those super expensive 3D programs anymore. Blender can do it all, for free.
    1 point
  4. Maybe it will run on my ancient computer.
    1 point
  5. Looks like you have a question also on Autodesk Forum. As was explained there, at one time it was annotative, you need to make it annotative again and set "Match orientation to layout" = NO. It will work then.
    1 point
  6. I thought you had enquired already about Civil Site Design ? If you want a full road design package then you will have to pay for it. Are you being paid for the project ? There was some software out there that looked at forward direction and match a slope. Civ3d does pick 2 points and label slope. A bit of trail and error then a final alignment.
    1 point
  7. If you look at this [CTONE(CHAIR-1)]^c^cINSERT ca3ch-1 DRAG \1;;DRAG it has the pick point and rotate, there is no reason why explode can not be added also just explode and use last. Just look at full sequence doing it manually so work out where ; is needed.
    1 point
  8. Thinking more about this maybe it would be better to let the user decide what to search for. or use both top for common terms and this for not so common terms. You also have to input the * for wild cards and use , if you going to search for more then one term. its also important to note when typing the search terms you can't use spaces. (defun C:selTxt (/ SS txt) (setq txt (getstring "\nSearch Text for Terms: ")) ;hit enter for defult options. (if (eq txt "") (setq txt "Area*,*m2") ;set defult search options here ) (if (setq SS (ssget "_X" (list '(0 . "*TEXT") (cons 1 txt) (cons 410 (getvar 'ctab))))) (sssetfirst nil ss) (prompt (strcat "\nText doesn't contain " txt)) ) (princ) ) Example Search Text for: area*,*m2 This would work like above lisp. Search Text for: *area* This would select text that has the word "area" in it. Search Text for: *door This would select text that ends with "door" Search Text for: area*,*m2,*area*,*door This would select all 3 examples text in one go.
    1 point
  9. @mhupp as long as you are highlighting objects then I believe it would be much better to get the ones in current active space only than selecting all matching objects in the other invisible spaces.
    1 point
  10. Hi @dan20047, Thank you, It's exactly what I needed. Good day. Eyal
    1 point
×
×
  • Create New...