linshucai 发表于 2007-8-27 16:54:00

发个移动文字并旋转指定方向的程序

<p>;小林电气---林树才</p><p>(vl-load-com)<br/>;(getstr str1)取得文字<br/>(defun getstr(str1 / e obj col )<br/>(initget 1 )<br/>(setq e (entsel (strcat "\n" str1 ":")))<br/>&nbsp; (setq obj (vlax-ename-&gt;vla-object (car e)))<br/>&nbsp; (if (&gt;= (vla-get-color obj ) 256)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq col 1)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq col (+ 1 (vla-get-color obj )))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );end if<br/>&nbsp;(vla-put-color obj&nbsp; col )<br/>(princ (vla-get-textstring obj))<br/>)<br/>(defun rtd (angg)<br/>&nbsp; (/ (* angg 180.0) pi))<br/>&nbsp; <br/>(defun movejxbz( pt1 pangle str )<br/>&nbsp; (command "color" "6")<br/>&nbsp; (setvar "TEXTSIZE" 25)<br/>&nbsp; (command "style" "" "" 25 "" "" "" "" nil)<br/>&nbsp; (IF (&gt; (CDR (ASSOC 40 (TBLSEARCH "STYLE" (GETvar "TEXTSTYLE")))) 0.0)<br/>&nbsp; (VL-CMDF "TEXT" PT1 (rtd pangle) str)<br/>&nbsp; (VL-CMDF "TEXT" PT1 25 (rtd pangle) str)<br/>&nbsp; )<br/>&nbsp;(command "color" "BYLAYER") <br/>(princ)<br/>)<br/>(defun c:222( / pangle pt1 str)<br/>&nbsp;&nbsp; (setq str (getstr "选取要移动的文本"))<br/>&nbsp;&nbsp; (setq pt1 (getpoint "\n新的放置点"))<br/>&nbsp;&nbsp; (setq pangle (getangle pt1 "\n方向"))<br/>&nbsp;&nbsp; (movejxbz pt1 pangle&nbsp; str)<br/>&nbsp;&nbsp; )&nbsp;&nbsp;</p>

carrot1983 发表于 2007-8-27 17:52:00

<p>看不懂...楼主说的功能,应该几句就可以搞定的,用alisp 就行了</p><p>搞什么...没必要用到vl</p><p>还用到vla-get-textstring obj</p><p>哪里抄的吗???呵呵</p>

linshucai 发表于 2007-9-12 14:29:00

代码不重要,重要的是思想,不管什么途径得来的代码,取之于"明",用之于"明".在写程序时尽量使用通用的函数,比较方便.

zml84 发表于 2007-9-12 15:15:00

是的,代码不重要,重要的是思想。
可无论如何为了一个小功能而去写一大堆的所谓通用函数,我是看不出有什么思想。
(defun C:222 (/ SS ENT PT1 PT2)
    (and
    (setq SS (entsel "\n点取要移动的文本"))
    (setq ENT (entget (car SS)))
    (= (cdr (assoc 0 ENT)) "TEXT")
    (setq PT1 (getpoint "\n新的放置点: "))
    (entmod (setq ENT (subst (cons 10 PT1) (assoc 10 ENT) ENT)))
    (setq PT2 (getpoint PT1 "\n方向: "))
    (entmod    (subst (cons 50 (angle PT1 PT2)) (assoc 50 ENT) ENT))
    )
    (princ)
)

edoumxx 发表于 2012-4-24 18:41:37

zml84 发表于 2007-9-12 15:15 static/image/common/back.gif
是的,代码不重要,重要的是思想。
可无论如何为了一个小功能而去写一大堆的所谓通用函数,我是看不出有什么 ...

zml84的程序很实用,改图相当方便。只是欠缺对多行文字的修改,希望能补充和完善一下就更好用了

梦醒才知原是梦 发表于 2012-5-4 11:07:51

恩恩。。确实没必要这么厂~~~~~

QWQWQWQ 发表于 2012-9-2 09:51:28

好东东,下载了
页: [1]
查看完整版本: 发个移动文字并旋转指定方向的程序