乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
楼主: Brett_omega

[编程交流] 2D Ele的文字高度标记

[复制链接]

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 09:36:25 | 显示全部楼层
 
高度当前由TEXTSIZE系统变量控制-也许DIMTXT系统变量更好?
 
 
*咳嗽*在我的网站上捐赠按钮*咳嗽*
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:37:34 | 显示全部楼层
好的,你说得对,这很有效。我们可以跳过一个点后的2个零,然后它就完美了(很抱歉,在最后一个点中,我确实更改了它)。如果我有要求,你能为cad做一些其他定制Lsp吗?给我写封私人信件
回复

使用道具 举报

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 09:41:02 | 显示全部楼层
回复

使用道具 举报

0

主题

2

帖子

2

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 09:44:05 | 显示全部楼层
I apologize for my bad English, I wrote this lisp
 
I hope it will be useful.
SimbQuota9-EN.lsp
回复

使用道具 举报

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 09:49:20 | 显示全部楼层
Thank you for your help. Unfortunately it makes only one measuring and then you need to replay command (or I'm doing something wrong). I need to make couple measuring's on one drawing just like LSP from Lee Mac does.
But one more time MANY THANKS !!!
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:52:39 | 显示全部楼层
Hi Barteek,
 
Give the following a try:
 
  1. ([color=BLUE]defun[/color] c:em ( [color=BLUE]/[/color] *error* nm p1 p2 p3 p4 ts tx xa ) [color=GREEN];; Elevation Marker[/color] [color=GREEN];; © Lee Mac 2011  -  www.lee-mac.com[/color] ([color=BLUE]defun[/color] *error* ( msg )   ([color=BLUE]if[/color] ([color=BLUE]not[/color] ([color=BLUE]wcmatch[/color] ([color=BLUE]strcase[/color] msg) [color=MAROON]"*BREAK,*CANCEL*,*EXIT*"[/color]))     ([color=BLUE]princ[/color] ([color=BLUE]strcat[/color] [color=MAROON]"\n** Error: "[/color] msg [color=MAROON]" **"[/color]))   )   ([color=BLUE]princ[/color]) ) ([color=BLUE]setq[/color] ts ([color=BLUE]getvar[/color] 'TEXTSIZE)       nm ([color=BLUE]trans[/color] '(0.0 0.0 1.0) 1 0 [color=BLUE]t[/color])       xa ([color=BLUE]angle[/color] '(0.0 0.0 0.0) ([color=BLUE]trans[/color] ([color=BLUE]getvar[/color] 'UCSXDIR) 0 nm [color=BLUE]t[/color])) ) ([color=BLUE]terpri[/color]) ([color=BLUE]while[/color] ([color=BLUE]setq[/color] p1 ([color=BLUE]getpoint[/color] [color=MAROON]"\rPick Elevation Line Point: "[/color]))   ([color=BLUE]setq[/color] tx ([color=BLUE]rtos[/color] ([color=BLUE]cadr[/color] p1))         p2 ([color=BLUE]polar[/color] p1 ([color=BLUE]/[/color] [color=BLUE]pi[/color] 2.) ([color=BLUE]*[/color] ts ([color=BLUE]/[/color] ([color=BLUE]sqrt[/color] 3.0) 2.0)))         p3 ([color=BLUE]polar[/color] p2 [color=BLUE]pi[/color] ([color=BLUE]*[/color] ts ([color=BLUE]strlen[/color] tx)))         p4 ([color=BLUE]polar[/color] ([color=BLUE]polar[/color] p2 [color=BLUE]pi[/color] ([color=BLUE]*[/color] ts 0.5 ([color=BLUE]strlen[/color] tx))) ([color=BLUE]/[/color] [color=BLUE]pi[/color] 2.) ts)   )   ([color=BLUE]foreach[/color] sym '(p1 p2 p3 p4) ([color=BLUE]set[/color] sym ([color=BLUE]trans[/color] ([color=BLUE]eval[/color] sym) 1 nm)))   ([color=BLUE]entmakex[/color]     ([color=BLUE]list[/color]       ([color=BLUE]cons[/color] 0 [color=MAROON]"LWPOLYLINE"[/color])       ([color=BLUE]cons[/color] 100 [color=MAROON]"AcDbEntity"[/color])       ([color=BLUE]cons[/color] 100 [color=MAROON]"AcDbPolyline"[/color])       ([color=BLUE]cons[/color] 90 3)       ([color=BLUE]cons[/color] 70 0)       ([color=BLUE]cons[/color] 38 ([color=BLUE]caddr[/color] p1))       ([color=BLUE]cons[/color] 10 p1)       ([color=BLUE]cons[/color] 40 0.0)       ([color=BLUE]cons[/color] 41 ts)       ([color=BLUE]cons[/color] 10 p2)       ([color=BLUE]cons[/color] 40 ([color=BLUE]*[/color] ts 0.05))       ([color=BLUE]cons[/color] 41 ([color=BLUE]*[/color] ts 0.05))       ([color=BLUE]cons[/color] 10 p3)       ([color=BLUE]cons[/color] 210 nm)     )   )   ([color=BLUE]entmakex[/color]     ([color=BLUE]list[/color]       ([color=BLUE]cons[/color] 0 [color=MAROON]"TEXT"[/color])       ([color=BLUE]cons[/color] 7 ([color=BLUE]getvar[/color] 'TEXTSTYLE))       ([color=BLUE]cons[/color] 1  tx)       ([color=BLUE]cons[/color] 50 xa)       ([color=BLUE]cons[/color] 40 ts)       ([color=BLUE]cons[/color] 10 p4)       ([color=BLUE]cons[/color] 72 1)       ([color=BLUE]cons[/color] 73 2)       ([color=BLUE]cons[/color] 11 p4)       ([color=BLUE]cons[/color] 210 nm)     )   ) ) ([color=BLUE]princ[/color]))
回复

使用道具 举报

54

主题

208

帖子

46

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
386
发表于 2022-7-6 09:53:41 | 显示全部楼层
Dear Sir,
program by mr. lee mac
its very use full
http://www.cadtutor.net/forum/showthread.php?31363-floor-amp-height-lsp
  1. ; Multiple Floor Height by Lee McDonnell 14th January 2009; Places Height and Floor Text above Midpoint on Floor Level Line.; [if Polyline, Assumes only two Vertices.]; [Assumes Lines are Parallel](defun c:fht (/ varlist oldvars cCurve cVlist cAng cMpt cStpt cEnpt dCurve fStr dVlist dStpt dEnpt dAng)      (vl-load-com)   (setq varlist (list "CMDECHO" "CLAYER")     oldvars (mapcar 'getvar varlist))   (setvar "CMDECHO" 0)  (if (and (setq cCurve (car (entsel "\nSelect Ground Floor >   ")))        (member (cdr (assoc 0 (entget cCurve)))           '("LINE" "LWPOLYLINE")))      (progn      (if (not (tblsearch "LAYER" "TEXT"))          (vl-cmdf "-layer" "M" "TEXT" "C" "2" "TEXT" ""))      (cond ((= "LWPOLYLINE" (cdr (assoc 0 (entget cCurve))))         (setq cVlist (mapcar 'cdr (vl-remove-if '(lambda (x) (/= 10 (car x))) (entget cCurve)))           cAng (angle (nth 0 cVlist)(nth 1 cVlist))           cMpt (polar (nth 0 cVlist) cAng (/ (distance (nth 0 cVlist)(nth 1 cVlist)) 2)))         (if (>= cAng pi) (setq cAng (- cAng pi)))         (Make_Text (polar cMpt (+ cAng (/ pi 2)) 2.0) "%%P0.00 Mt.  Gr. Level" cAng))        ((= "LINE" (cdr (assoc 0 (entget cCurve))))         (setq cStpt (cdr (assoc 10 (entget cCurve)))           cEnpt (cdr (assoc 11 (entget cCurve)))            cAng (angle cStpt cEnpt)           cMpt (polar cStpt cAng (/ (distance cStpt cEnpt) 2)))         (if (> cAng pi) (setq cAng (- cAng pi)))         (if (= cAng pi) (setq cAng 0.0))         (Make_Text (polar cMpt (+ cAng (/ pi 2)) 2.0) "%%P0.00 Mt.   Gr. Level" cAng)))      (while (and (setq dCurve (car (entsel "\nSelect a Floor >   ")))               (member (cdr (assoc 0 (entget dCurve)))                   '("LINE" "LWPOLYLINE"))              (/= (setq fStr (getstring t "\nSpecify Name of Floor >   ")) ""))          (cond ((= "LWPOLYLINE" (cdr (assoc 0 (entget dCurve))))             (setq dVlist (mapcar 'cdr (vl-remove-if '(lambda (x) (/= 10 (car x))) (entget dCurve)))               dAng (angle (nth 0 dVlist)(nth 1 dVlist))       cdDist (distance (vlax-curve-getClosestPointto dCurve cMpt T) cMpt))       (cond ((> (/ (* 3 pi) 2) dAng (/ pi 2)) (setq dAng (- dAng pi)))             ((= dAng pi) (setq dAng 0.0)))             (Make_Text (polar cMpt (+ dAng (/ pi 2)) (+ cdDist 2))               (strcat "+" (rtos cdDist 2 2) " Mt.   " fStr) dAng))            ((= "LINE" (cdr (assoc 0 (entget dCurve))))             (setq dStpt (cdr (assoc 10 (entget dCurve)))               dEnpt (cdr (assoc 11 (entget dCurve)))                dAng (angle dStpt dEnpt)       cdDist (distance (vlax-curve-getClosestPointto dCurve cMpt T) cMpt))          (cond ((> (/ (* 3 pi) 2) dAng (/ pi 2)) (setq dAng (- dAng pi)))             ((= dAng pi) (setq dAng 0.0)))             (Make_Text (polar cMpt (+ dAng (/ pi 2)) (+ cdDist 2))                 (strcat "+" (rtos cdDist 2 2) " Mt.   " fStr) dAng)))))      (princ "\n No Floor Selected  "))   (mapcar 'setvar varlist oldvars)   (princ))(defun Make_Text (txt_pt txt_val txt_ang)   (entmake (list '(0 . "TEXT") '(8 . "TEXT") (cons 10 txt_pt) (cons 40 (max 2.5 (getvar "TEXTSIZE")))   (cons 1 txt_val) (cons 50 txt_ang) '(7 . "STANDARD") '(71 . 0) '(72 . 1) '(73 . 2) (cons 11 txt_pt))))
回复

使用道具 举报

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 09:59:00 | 显示全部楼层
This one is looking fantastic only thing is can you put in a scale option like you had it before because they are very small. Let me know how can I repay  You are doing fantastic job.
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:01:21 | 显示全部楼层
 
The height is currently controlled by the TEXTSIZE System Variable - perhaps the DIMTXT System Variable may be better?
 
 
*cough* donate buttons on my site *cough*
回复

使用道具 举报

0

主题

5

帖子

5

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 10:02:52 | 显示全部楼层
Ok you are right that works. Just small change can we skip those 2 zeros after a dot and then its perfect(sorry for that in last one i did change it)  . Can you do some other custom Lsp's for cad If I will have a request ? just wright me on my private mail
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-7 06:17 , Processed in 0.597519 second(s), 81 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表