Jump to content

use "leader" replace " lwpolyline "


DuanJinHui

Recommended Posts

Hello friends

 

This is a simple lead dimension, use "LWPOLYLINE" .

Can use "leader" to do like this ? 2 point create a leader and with grread .;)

 

 

(defun c:test (/ *error* dd dimtxt gr kd mode name1 name2 name3 p1 pt1 pt2 pt3 tbl txt ty val)
(defun *error* (msg) 
	(entdel name1) 
	(entdel name2) 
	(if name3 (entdel name3))
	(princ "error: ")
	(princ msg)
) 
(setq ty (getvar "TEXTSTYLE"))
(setq txt "t=")
(setq val (getdist "\nSpecify the thickness: "))
(setq dimtxt (strcat txt (vl-princ-to-string val)))
(setq tbl (caadr (textbox (list '(0 . "text")(cons 1 dimtxt)(cons 40 2.5)(cons 41 0.7)(cons 7 ty)))))
;;(setq pt1 (cadr (entsel "\nPick the obj:")))
;;(setq pt1 (getpoint "\nEnter the base point:"))
(if (not (setq pt1 (cadr (entsel "\nPick the obj:"))))
	(setq pt1 (cadr (grread t 15 0)))
)
(setq dd t)
(while dd
	(setq gr (grread t 4 1) 
		mode (car gr) 
		pt2 (cadr gr)
	)
	(setq kd (+ tbl 2))
	(if (and (listp pt2) (>= (car pt2) (car pt1))) 
		(progn
			(setq pt3 (polar pt2 0 kd))
			(setq p1 (polar pt2 0 (/ (- kd tbl) 2)) p1 (polar p1 (angtof "90") 1))
		)
	)
	(if (and (listp pt2) (< (car pt2) (car pt1))) 
		(progn
			(setq pt3 (polar pt2 pi kd))
			(setq p1 (polar pt3 0 (/ (- kd tbl) 2)) p1 (polar p1 (angtof "90") 1))
		)
	)
	(if (= mode 5) 
		(progn
			(if name1 (entdel name1))
			(entmake 
				(list 
					'(0 . "LWPOLYLINE")
					'(100 . "AcDbEntity")
					'(100 . "AcDbPolyline")
					'(90 . 3)
					(cons 10 pt1)
					(cons 10 pt2)
					(cons 10 pt3)
				)
			)
			(setq name1 (entlast))
			(if name2 (entdel name2))
			(entmake 
				(list 
					'(0 . "text")
					(cons 1 dimtxt) 
					(cons 40 2.5)
					(cons 41 0.7)
					(cons 10 p1) 
					(cons 7 ty) 
				)
			)
			(setq name2 (entlast))
			(if name3 (entdel name3))
		);_end_progn
	);_end_if
	(if (= mode 3) 
		(setq dd nil)
	)
	(if (or (= mode 2) (= mode 25)) 
		(progn 
			(setq dd nil) 
			(entdel name1) 
			(entdel name2) 
			(if name3 (entdel name3))
		)
	)
);_end_while
(princ)
)


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