bios 发表于 2005-4-28 23:35:00

[求助这样一个程序。

能够对文字也可以使用offset程序。


就相当于offset直线一样,平行于原文字方向copy一定距离复制文字


由于图形中文字经常不是垂直相交,我现在采用复制文字的方式是先旋转坐标轴,ucs后让坐标轴平行于文字后在复制,感觉很麻烦,希望能有朋友帮助编辑这样一个程序,提高效率

ZZXXQQ 发表于 2005-4-29 10:32:00

试一下下面的程序:[ code];明经 2005.4.29 --- ZZXXQQ(DEFUN C:TXTOF ()
(SETVAR "CMDECHO" 0)
(SETQ OF (GETVAR "USERR3"))
(PRINC "\nOffset distance or Through <")
(PRINC (IF (= OF 0) "Trough" OF))
(INITGET "Trough" 0)
(SETQ D (GETDIST "> :")
             D (IF (= D nil) OF D)
             OF (IF (= D "Trough") 0.0 D))
(SETVAR "USERR3" OF)
(IF (SETQ S1 (ENTSEL "\nSelect Text to offset : ")) (PROGN
   (COMMAND ".UNDO" "BE")
   (SETQ SS (CAR S1)
               PT1 (CADR S1)
               OLDOS (GETVAR "OSMODE"))
   (SETVAR "OSMODE" 0)
   (SETQ ENT (ENTGET SS))
   (WHILE (/= (CDR (ASSOC 0 ENT)) "TEXT")
   (PRINC "\nCannot offset that object.")
   (IF (SETQ S1 (ENTSEL "\nSelect Text to offset : "))
       (SETQ SS (CAR S1) PT1 (CADR S1) ENT (ENTGET SS))
   )
   )
   (REDRAW SS 3)
   (SETQ PT (GETPOINT (IF (= OF 0) "\nThrough point:" "\nSide to offset?")))
   (IF PT (PROGN
   (SETQ TB   (CADR (TEXTBOX (LIST (ASSOC 1 ENT))))
               ANG (CDR (ASSOC 50 ENT))
               ANG (IF (> ANG PI) (- ANG PI PI) ANG)
               A1   (+ (* PI 0.5) ANG)
               A3   (- ANG (* PI 0.5))
               AN1 (ANGLE PT1 PT))
   (IF (= OF 0)
       (SETQ PT1 (CDR (ASSOC 10 ENT))
                   AN2 (ANGLE PT1 PT)
                   DS (* (SIN (- AN2 ANG)) (DISTANCE PT1 PT))
                   PT (POLAR PT1 (IF (EQUAL AN2 A1 (* PI 0.5)) A1 A3) DS))
       (SETQ PT (POLAR PT1 (IF (EQUAL AN1 A1 (* PI 0.5)) A1 A3) OF))
   )
   (COMMAND "COPY" SS "" PT1 PT)
   ))
   (SETVAR "OSMODE" OLDOS)
   (REDRAW SS 4)
   (COMMAND ".UNDO" "E")
))
(PRINC)
)

bios 发表于 2005-4-30 00:46:00

非常感谢zzxxqq,这个问题解决了


希望继续来个另外的功能,就是垂直于文字方向移动


起目的就是ofset后删除原来的那个文字,就达到移动的目的了

ZZXXQQ 发表于 2005-4-30 08:08:00

您只要将2楼程序中的COPY命令改为MOVE命令即可达到移动的目的了。

TANJUN-999 发表于 2005-5-17 21:05:00

能说说把这些程序放哪里吗

ZZXXQQ 发表于 2005-5-18 11:59:00

放在磁盘上的任何地方。只要文件扩展名为.LSP就行。

Forestbfq 发表于 2005-6-8 19:56:00

呵呵


同意楼上做法
页: [1]
查看完整版本: [求助这样一个程序。