明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2992|回复: 7

文字随曲线移动

[复制链接]
发表于 2011-11-1 21:17:40 | 显示全部楼层 |阅读模式
本帖最后由 uditx 于 2011-11-1 21:19 编辑

大家好,我想编一个文字随曲线移动的程序,要求文字与曲线有一定的距离,且垂直于曲线,下面一个牛人编的类似的程序,供参考,先谢谢大家了
;;需配合"123"图块(附件)
(defun C:BB (/ ANG BOOLEAN CODE CURVE-OBJ ENT MOTION PT PT1 PT2)
  (vl-load-com)
  (setq CURVE-OBJ (vlax-ename->vla-object
      (car (setq ENT (entsel "\nSelect Curve: ")))
    )
  )
  (setq ANG (angle '(0 0 0)
     (vlax-curve-getfirstderiv
       CURVE-OBJ
       (vlax-curve-getparamatpoint
         CURVE-OBJ
         (setq PT2 (osnap (cadr ENT) "NEA"))
       )
     )
     )
  )
  (command "_.INSERT" "BB" PT2 "10" "" (/ (* ANG 180) pi))
  (setq BOOLEAN t)
  (setq ENT (entget (entlast)))
  (while BOOLEAN
    (setq MOTION (grread t 15 0))
    (setq CODE (car MOTION))
    (cond
      ((= CODE 5)   ;滑鼠遊移
       (setq PT (cadr MOTION))
       (if (not (equal PT PT2))
  (progn
    (setq PT1 (vlax-curve-getclosestpointto CURVE-OBJ PT))
    (setq ENT (subst (cons 10 PT1) (assoc 10 ENT) ENT))
    (setq ANG (+ (* 1.5 pi) (angle PT1 PT)))
    (setq ENT (subst (cons 50 ANG) (assoc 50 ENT) ENT))
    (setq ENT (entmod ENT)
   PT2 PT
    )
  )
       )
      )
      ((= CODE 3)   ;滑鼠左鍵按下
       (setq BOOLEAN NIL)
      )
    )
  )
  (princ)


)


这是最终的效果呀


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

点评

牛人的程序就是牛  发表于 2011-11-1 21:57
发表于 2011-11-1 21:24:23 | 显示全部楼层
参见这个网站,有你想要的。
http://www.lee-mac.com/curvealignedtext.html
发表于 2011-11-1 21:33:22 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2011-11-1 21:34:47 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2011-11-1 22:09:58 | 显示全部楼层
在这里就是能学到东西,顶一个!
发表于 2012-7-25 20:03:33 | 显示全部楼层
学习了~~
发表于 2012-7-26 07:57:12 | 显示全部楼层
学习了~~学习了~~
发表于 2013-5-8 23:06:10 | 显示全部楼层
有点意思,作记号
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-30 02:56 , Processed in 0.175142 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表