vanowm Posted March 7, 2015 Posted March 7, 2015 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? 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. Quote
Murph_map Posted March 7, 2015 Posted March 7, 2015 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" Quote
vanowm Posted March 7, 2015 Author Posted March 7, 2015 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. Quote
BIGAL Posted March 7, 2015 Posted March 7, 2015 (edited) 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. Edited March 8, 2015 by BIGAL Quote
BIGAL Posted March 8, 2015 Posted March 8, 2015 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. Quote
vanowm Posted March 8, 2015 Author Posted March 8, 2015 Offsetting lines and use it's crossovers seems to produce satisfied results (at least for my application) Drawing2.dwg Quote
BIGAL Posted March 9, 2015 Posted March 9, 2015 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) ) ) ) Quote
Recommended Posts
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.