Jump to content

fillet with square corners instead of arc?


Recommended Posts

Hello.

 

Is there a command or routine that can be used to create corners of two lines/arcs, just like the fillet command does, but square instead?

 

acad_square_fillet.PNG

 

What I'm looking for is a way add that red line by specifying how long it should be and between what lines (perpendicular to the first picked line or equal angle between two)

 

Any ideas?

 

Thank you.

Link to comment
Share on other sites

Fillet with a Radius of 0, what red line?

Ok now that you edit your image, NO unless you use the line command with osnaps "Perpendicular and end"

Link to comment
Share on other sites

fillet with radius 0 will just extend the lines until they meet, or use arc if lines are parallel.

 

The red line is on attached screenshot - right corner of blue triangle.

Link to comment
Share on other sites

Using lisp a couple of answers if two lines then there is a simple mathematical answer, I would expect arc also, an alterntive PRE 2000 Autocad is using TRIM draw a vertical line and trim using the arc and line check its length if less than then undo all move a tiny amount and redo until tolerance is achieved, The math method is best will need to find a formula for an arc. Need some time to work out how to iterate through to achieve desired length.

TRIANGLES.jpg

Edited by BIGAL
Link to comment
Share on other sites

I think we all overlooked the simple manual answer offset the line and use trim arc add line trim again erase line. I did get a lisp to work but cheated in the testing it just drew a perp point from the intersection pt of the arc and repeated till correct length with tolerance. Will see if I can find time to put code together.

Link to comment
Share on other sites

Had a play and problem is with arc and line need say 4 versions so it runs in correct direction, this will work with top example in your post but not bottom left, maybe a macro would be easiest if you only have a few.

 

(setq dist (getdist "\nEnter distance required"))

(setq obj1 (entsel "\nPick line"))
(setq obj2 (entsel "\nPick arc so anti clockwise"))

(setq ent1 (entget (car obj1)))
(setq ent2 (entget (car obj2)))

(setq pt1 (cdr (assoc 10 ent1)))      
(setq pt2 (cdr (assoc 11 ent1)))      
(setq pt3 (cadr obj1))
(setq d1 (distance pt1 pt3))
(setq d2 (distance pt2 pt3))
(if (> d1 d2)
   (progn 
     (setq temp pt1)
     (setq pt1 pt2)
     (setq pt2 temp)
   )
)


(setq cen (list (cadr (assoc 10 ent2))(caddr (assoc 10 ent2))))
(setq rad (cdr (assoc 40 ent2)))

(setq ang (angle cen pt1))
(setq ang2 (+ (angle pt1 pt2) (+ pi (/ pi 2.0))))

(setq angint 0.00001)
(setvar "osmode" 0)
(setq x 0)

(repeat 50000
(setq x (+ x 1))
(setq pt3 (polar cen (setq ang (+ angint ang)) rad))
(setq pt4 (polar pt3 ang2 100))
(setq pt5 (inters pt4 pt3 pt1 pt2))
(if (< dist (distance pt5 pt3))
(progn 
(command "break" pt3 pt1)
(command "break" pt5 pt1)
(command "line" pt3 pt5 "")
(exit)
)
)
)

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...