找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3962|回复: 16

[已解决] 【已解决】多段线上方创建多行文字,求大神帮助!

[复制链接]

已领礼包: 20个

财富等级: 恭喜发财

发表于 2017-8-5 21:50:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 wbf424069638 于 2018-5-18 21:31 编辑

如图我想在距多段线10的上方创建多行文字,多行文字内容为多段线的长度,多行文字与多段线平行,并且位于多段线正中,晓东工具箱里有个沿线写字功能,但是无法实现我现在的要求,求大神解答,非常感谢!! QQ截图20170805214507.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-6 00:09:39 | 显示全部楼层
本帖最后由 newer 于 2017-8-6 00:51 编辑

改个批量的,选择的多段线,全部标注出长度

搜狗截图20170806000657.png

  1. (defun c:tt ()
  2.   (defun _process (e)
  3.     (setq segs (xdrx_polyline_numverts e))
  4.     (setq inx 0)
  5.     (repeat segs
  6.       (if (setq g (xdrx_polyline_getlinesegat e inx t))
  7.         (progn
  8.           (xdge::getpropertyvalue g "length" "midpoint" "angle")
  9.         )
  10.         (progn
  11.           (setq g (xdrx_polyline_getarcsegat e inx t))
  12.           (xdge::getpropertyvalue g "length" "midpoint")
  13.           (setq v (xdrx_curve_getfirstderiv e #midpoint)
  14.                 #angle (xdrx_vector_angle v))
  15.         )
  16.       )
  17.       (setq #angle (xd::geom:angleformat #angle)
  18.             p1           (trans (polar #midpoint
  19.                                  (+ #angle (/ pi 2.0))
  20.                                  (/ #txt_height 2.0))
  21.                                  e
  22.                                  0
  23.                           )
  24.                    )
  25.       (xdrx_text_make
  26.         p1
  27.         (rtos #length 2 #txt_bit)
  28.         (getvar "textstyle")
  29.         #txt_height
  30.         #angle
  31.       )
  32.       (xd::text:setalignment (entlast) p1 "BC")
  33.       (setq inx (1+ inx))
  34.     )
  35.     (xdge::free g)
  36.   )
  37.   (if (not #txt_height)
  38.     (setq #txt_height 3.5)
  39.   )
  40.   (if (not #txt_bit)
  41.     (setq #txt_bit 1)
  42.   )
  43.   (if (setq val (getint (xdrx_prompt "\n保留位数<" #txt_bit ">:" t)))
  44.     (setq #txt_bit val)
  45.   )
  46.   (if (setq val (getreal (xdrx_prompt "\n字高<" #txt_height ">:" t)))
  47.     (setq #txt_height val)
  48.   )
  49.   (xdrx_begin)
  50.   (xdrx_sysvar_push '("dimzin" 0))
  51.   (if (and (xdrx_initssget "\n选择多段线<退出>:")
  52.            (setq ss (xdrx_ssget '((0 . "LWPOLYLINE"))))
  53.       )
  54.     (progn
  55.       (xd::text:init 1)
  56.       (mapcar '(lambda (x) (_process x)) (xdrx_pickset->ents ss))
  57.     )
  58.   )
  59.   (xdrx_sysvar_pop)
  60.   (xdrx_end)
  61.   (princ)
  62. )


评分

参与人数 1D豆 +5 收起 理由
wbf424069638 + 5 及时回复奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 1 反对 0

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-5 22:49:53 | 显示全部楼层
本帖最后由 newer 于 2017-8-6 00:53 编辑

搜狗截图20170805231524.png

试试

  1. (defun c:tt ()
  2.   (if (not #txt_height)
  3.     (setq #txt_height 3.5)
  4.   )
  5.   (if (not #txt_bit)
  6.     (setq #txt_bit 1)
  7.   )
  8.   (if (setq val (getint (xdrx_prompt "\n保留位数<" #txt_bit ">:" t)))
  9.     (setq #txt_bit val)
  10.   )
  11.   (if (setq val (getreal (xdrx_prompt "\n字高<" #txt_height ">:" t)))
  12.     (setq #txt_height val)
  13.   )
  14.   (xdrx_begin)
  15.   (xdrx_sysvar_push '("dimzin" 0))
  16.   (while
  17.     (and (setq e (xdrx_entsel "\n拾取多段线<退出>:" '((0 . "LWPOLYLINE"))))
  18.          (setq pt (cadr e))
  19.          (setq e (car e))
  20.          (setq inx (xd::polyline:onsegat e pt))
  21.          (setq g (xdrx_polyline_getlinesegat e inx t))
  22.          (xdge::getpropertyvalue g "length" "midpoint" "angle")
  23.     )
  24.      (setq #angle (xd::geom:angleformat #angle)
  25.            p1          (trans
  26.                     (polar #midpoint (+ #angle (/ pi 2.0)) (/ #txt_height 2.0))
  27.                     e
  28.                     0
  29.                   )
  30.      )
  31.      (xd::text:init 1)
  32.      (xdrx_text_make
  33.        p1
  34.        (rtos #length 2 #txt_bit)
  35.        (getvar "textstyle")
  36.        #txt_height
  37.        #angle
  38.      )
  39.      (xdrx_setpropertyvalue
  40.        (entlast)
  41.        "HorizontalMode"
  42.        1
  43.        "verticalmode"
  44.        1
  45.        "AlignmentPoint"
  46.        p1
  47.      )
  48.      (xdge::free g)
  49.   )
  50.   (xdrx_sysvar_pop)
  51.   (xdrx_end)
  52.   (princ)
  53. )

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 1 反对 0

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-5 21:54:37 | 显示全部楼层
用 工具箱 的  随线平齐

搜狗截图20170805215153.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-8-5 22:47:07 | 显示全部楼层

这个也很麻烦的的,我得先每条线上复制一个多行文字,一个一个将文字平行于线,我想实现直接选择多段线,就在平行于文字上方创建文字,文字内容为多段线的长度
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-8-5 23:23:20 | 显示全部楼层

谢谢,不过我用的时候,出现错误了,如图 QQ截图20170805232133.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-5 23:33:45 | 显示全部楼层

你重新拷贝下代码, 刚才编辑了,可能你拷贝的是修改前的。
测试了,没问题。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-8-5 23:50:41 | 显示全部楼层

刚才试了可以了,谢谢,不过我想再请教个问题,由于我没有学习过晓东的函数库,所以好多代码看不懂你的代码里,所以哪个是设置文字和多段线的距离我用的时候离得太远了,还有字体能否在创建的时候就以 “宋体”创建。谢谢!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-6 00:11:59 | 显示全部楼层

API和晓东工具箱安装目录有 函数用户手册,多看看就知道了,函数名字都是有意义的,好懂。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-6 00:14:56 | 显示全部楼层

(/ #txt_height 2.0)

距离是字高的一半。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-8-6 00:24:15 | 显示全部楼层

非常谢谢,你早点休息!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-6 00:54:35 | 显示全部楼层
本帖最后由 newer 于 2017-8-6 01:40 编辑

你说的距离很远,和你当前的字体设置有关,你改成宋体试试。

上面两个代码都修改了,使用宋体,重新拷贝下。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 403个

财富等级: 日进斗金

发表于 2017-8-6 05:06:26 | 显示全部楼层
不错,这个可以有
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 50个

财富等级: 招财进宝

发表于 2017-11-16 11:56:40 | 显示全部楼层
no function definition: XDRX_PROMPT
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-12-17 23:52:29 | 显示全部楼层

安装了最新的XDAPI ,如图,测试卡在那个函数这,这里不知道什么问题,老版XDAPI没问题,求大神解决下,谢谢
QQ截图20171217234919.png
QQ截图20171217234940.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-14 20:03 , Processed in 0.200598 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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