Jump to content

Insert Blocks on intersection lines then break/trim


VisDak

Recommended Posts

hi all,

 

Good day, i have some block that every time i insert it and position to the intersection lines and rotate the blocks to each direction block needed then trim,

 

any of those who have Lsp that will insert blocks on intersection then positioning the blocks (rotates) and automatically trimmed or breaks the intersection lines,:)

 

i just found out on the forum that block to be inserted then trim but this only for i line to be trimmed, i need is two line intersecting to be trimmed, Kindly please if u have,

 

Many Thanks

trim-break.jpg

Link to comment
Share on other sites

I believe this would be very block-specific - dependent on the size, base point, and name of the block as to what gets trimmed and by how much.

 

It is very difficult to create a LISP with the loose information you have provided.

Link to comment
Share on other sites

Hi Lee,

 

Here is a blocks that im using, fittings for plumbing,

 

previously im using an autolips that i just get here in forum, but this lisp only trim/break for one line only, i need is trim several intersection line that will insert an elbow fittings blocks, that i created,:(

 

how about an lsp that will create an elbow or tee fittings non-blocks to be insert by simple polyline route and automatically the edge will have fittings, is that possible:o

 

thanks

brtrim.dwg

fittings.dwg

Intrim.lsp

Link to comment
Share on other sites

You need the lines length or something? if not, why you don't make a "wipeout" with "no plot" config???

 

Anyway... i can't make it, it's so hard to me, i try 1 hour, but it's so complicated...

Link to comment
Share on other sites

This should give you (or others) a helping hand with this LISP...

 

It will break all lines within a Circle of specified radius. (restricted to maximum of two intersections).

 

[i][color=#990099];; Circle Break by Lee McDonnell (Lee Mac) 05.06.09[/color][/i]
[i][color=#990099];; Args:[/color][/i]
[i][color=#990099];; pt  ~ Centre of Circle [Point][/color][/i]
[i][color=#990099];; rad ~ Radius of Circle [Real][/color][/i]
[i][color=#990099];; (CirBrk '(1 2 3) 5)[/color][/i]
[i][color=#990099];; Restrictions:[/color][/i]
[i][color=#990099];; Only allows for < 3 intersections.[/color][/i]

[b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] CirBrk [b][color=RED]([/color][/b]pt rad [b][color=BLUE]/[/color][/b] doc spc Cir Minp Maxp
                       ptlst ss pts lst bPt[b][color=RED])[/color][/b]
 
 [b][color=RED]([/color][/b][b][color=BLUE]vl-load-com[/color][/b][b][color=RED])[/color][/b]
 
 [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] vlst [b][color=DARKRED]'[/color][/b][b][color=RED]([/color][/b][b][color=#ff00ff]"CMDECHO"[/color][/b] [b][color=#ff00ff]"OSMODE"[/color][/b][b][color=RED])[/color][/b]
       ovar [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]getvar[/color][/b] vlst[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]setvar[/color][/b] vlst [b][color=DARKRED]'[/color][/b][b][color=RED]([/color][/b][b][color=#009900]0[/color][/b] [b][color=#009900]0[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]

 [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] doc [b][color=RED]([/color][/b][b][color=BLUE]vla-get-ActiveDocument[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlax-get-Acad-Object[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
       spc [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]zerop[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-get-activespace[/color][/b] doc[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
             [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]=[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vla-get-mspace[/color][/b] doc[b][color=RED])[/color][/b] :vlax-true[b][color=RED])[/color][/b] [i][color=#990099]; Vport[/color][/i]
               [b][color=RED]([/color][/b][b][color=BLUE]vla-get-modelspace[/color][/b] doc[b][color=RED])[/color][/b]
               [b][color=RED]([/color][/b][b][color=BLUE]vla-get-paperspace[/color][/b] doc[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
             [b][color=RED]([/color][/b][b][color=BLUE]vla-get-modelspace[/color][/b] doc[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]

 [b][color=RED]([/color][/b][b][color=BLUE]vla-getBoundingBox[/color][/b] 
   [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] Cir
     [b][color=RED]([/color][/b][b][color=BLUE]vla-addCircle[/color][/b] spc
       [b][color=RED]([/color][/b][b][color=BLUE]vlax-3D-point[/color][/b] pt[b][color=RED])[/color][/b] rad[b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=DARKRED]'[/color][/b]Minp [b][color=DARKRED]'[/color][/b]Maxp[b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] ptlst [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]vlax-safearray->list[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]list[/color][/b] Minp Maxp[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
       ss [b][color=RED]([/color][/b][b][color=BLUE]ssget[/color][/b] [b][color=#ff00ff]"_C"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b] ptlst[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] ptlst[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]ssdel[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlax-vla-object->ename[/color][/b] Cir[b][color=RED])[/color][/b] ss[b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]<[/color][/b] [b][color=#009900]0[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]sslength[/color][/b] ss[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
   [b][color=RED]([/color][/b][b][color=BLUE]progn[/color][/b]
     [b][color=RED]([/color][/b][b][color=BLUE]foreach[/color][/b] Obj [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]vlax-ename->vla-object[/color][/b]
                          [b][color=RED]([/color][/b][b][color=BLUE]vl-remove-if[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]listp[/color][/b]
                            [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]cadr[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]ssnamex[/color][/b] ss[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
       [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] pts
                  [b][color=RED]([/color][/b]vlax-list->3D-point
                    [b][color=RED]([/color][/b][b][color=BLUE]vlax-invoke[/color][/b] Cir [b][color=DARKRED]'[/color][/b]IntersectWith Obj acExtendNone[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
         [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] lst
                [b][color=RED]([/color][/b][b][color=BLUE]cons[/color][/b]
                  [b][color=RED]([/color][/b][b][color=BLUE]cons[/color][/b]
                    [b][color=RED]([/color][/b][b][color=BLUE]list[/color][/b]
                      [b][color=RED]([/color][/b][b][color=BLUE]vlax-vla-object->ename[/color][/b] Obj[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b] pts[b][color=RED])[/color][/b][b][color=RED])[/color][/b] pts[b][color=RED])[/color][/b] lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
     [b][color=RED]([/color][/b][b][color=BLUE]vla-delete[/color][/b] Cir[b][color=RED])[/color][/b]
     [b][color=RED]([/color][/b][b][color=BLUE]foreach[/color][/b] Brk lst
       [b][color=RED]([/color][/b][b][color=BLUE]cond[/color][/b] [b][color=RED]([/color][/b][b][color=RED]([/color][/b][b][color=BLUE]<[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]length[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cdr[/color][/b] Brk[b][color=RED])[/color][/b][b][color=RED])[/color][/b] [b][color=#009900]2[/color][/b][b][color=RED])[/color][/b]
              [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] bPt
                [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b]
                  [b][color=RED]([/color][/b][b][color=BLUE]vl-sort[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]list[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vlax-curve-getStartPoint[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]caar[/color][/b] Brk[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
                             [b][color=RED]([/color][/b][b][color=BLUE]vlax-curve-getEndPoint[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]caar[/color][/b] Brk[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
                           [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b]
                             [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b]x1 x2[b][color=RED])[/color][/b]
                               [b][color=RED]([/color][/b][b][color=BLUE]<[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]distance[/color][/b] x1 [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] Brk[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
                                  [b][color=RED]([/color][/b][b][color=BLUE]distance[/color][/b] x2 [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] Brk[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
              [b][color=RED]([/color][/b][b][color=BLUE]vl-cmdf[/color][/b] [b][color=#ff00ff]"_.break"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b] Brk[b][color=RED])[/color][/b] [b][color=#ff00ff]"_F"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] Brk[b][color=RED])[/color][/b] bPt[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
             [b][color=RED]([/color][/b][b][color=BLUE]t[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]vl-cmdf[/color][/b] [b][color=#ff00ff]"_.break"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b] Brk[b][color=RED])[/color][/b] [b][color=#ff00ff]"_F"[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] Brk[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]caddr[/color][/b] Brk[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
   [b][color=BLUE]nil[/color][/b][b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]setvar[/color][/b] vlst ovar[b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]


[i][color=#990099];; List to 3D Point Recursive Convertor[/color][/i]

[b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] vlax-list->3D-point [b][color=RED]([/color][/b]lst[b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] lst
   [b][color=RED]([/color][/b][b][color=BLUE]cons[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]list[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b] lst[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] lst[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]caddr[/color][/b] lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
         [b][color=RED]([/color][/b]vlax-list->3D-point [b][color=RED]([/color][/b][b][color=BLUE]cdddr[/color][/b] lst[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]


[i][color=#990099]; Test Function[/color][/i]

[b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] c:test [b][color=RED]([/color][/b][b][color=BLUE]/[/color][/b] pt rad[b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]and[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] pt [b][color=RED]([/color][/b][b][color=BLUE]getpoint[/color][/b] [b][color=#ff00ff]"\nPoint: "[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
          [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] rad [b][color=RED]([/color][/b][b][color=BLUE]getdist[/color][/b] [b][color=#ff00ff]"\nRadius: "[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
   [b][color=RED]([/color][/b]CirBrk pt rad[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
 [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
     

Link to comment
Share on other sites

  • 5 years later...

lee

 

I'm having the save issue with the insertion of the block and the line not breaking.... I'm using AutCAD 2010

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...