TheSwamp

Code Red => AutoLISP (Vanilla / Visual) => Topic started by: well20152016 on July 08, 2017, 07:39:21 PM

Title: Text alignment p0-p1,
Post by: well20152016 on July 08, 2017, 07:39:21 PM
Text alignment p0-p1,
Text and line p2-p1 do not collide,
Title: Re: Text alignment p0-p1,
Post by: ssdd on July 09, 2017, 12:11:54 AM
Code - Auto/Visual Lisp: [Select]
  1. (defun c:tt()
  2. (setq en (car (entsel)))
  3. (duiqi en (setq p0 (getpoint"\n p0"))  (setq p1 (getpoint"\n p1")) (setq p2 (getpoint"\n p2")))
  4.  
  5. (defun duiqi (en p0 p1 p2 / ang b1 b3 dd ent gd kd rot)
  6. (setq ent (entget en))
  7. (if (LM:Clockwise-p p0 p1 p2)
  8.     (setq ang (- (angle p0 p1)(angle p0 p2))
  9.           ent (entmod (subst (cons 10 (polar p0 (+ pi (angle p1 p0)) (+ (/ (cdr(assoc 40 ent)) (tan ang)) (caadr (textbox ent))))) (assoc 10 ent) ent))
  10.           ent (entmod (subst (cons 50 (+ pi (angle p0 p1))) (assoc 50 ent) ent)))
  11.    (setq  ang (- (angle p0 p2)(angle p0 p1))
  12.           ent (entmod (subst (cons 10 (polar p0 (angle p0 p1) (/ (cdr(assoc 40 ent)) (tan ang)))) (assoc 10 ent) ent))
  13.           ent (entmod (subst (cons 50 (angle p0 p1)) (assoc 50 ent) ent)))
  14.    
  15. )
  16. (entmod ent))
  17.  
  18. (defun LM:Clockwise-p ( p1 p2 p3 )
  19.       (<  (-  (* (- (car  p2) (car  p1)) (- (cadr p3) (cadr p1)))
  20.               (* (- (cadr p2) (cadr p1)) (- (car  p3) (car  p1)))
  21.           )
  22. 1e-8))
  23.  
  24. (defun tan (rad) (/ (sin rad) (cos rad)))
Title: Re: Text alignment p0-p1,
Post by: well20152016 on July 09, 2017, 01:10:52 AM
thank!
Red text is correct.
Yellow text error?
Title: Re: Text alignment p0-p1,
Post by: tombu on July 10, 2017, 10:50:44 AM
Try Lee Mac's Align Text to Curve http://www.lee-mac.com/curvealignedtext.html (http://www.lee-mac.com/curvealignedtext.html)
or With Automatic Re-Alignment http://www.lee-mac.com/dtcurve.html (http://www.lee-mac.com/dtcurve.html)
Title: Re: Text alignment p0-p1,
Post by: well20152016 on July 30, 2017, 11:08:53 AM
please help me!
thank!