找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: abc498091367

[求助] 生成

[复制链接]

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-9 14:23:31 | 显示全部楼层

现在程序正常执行,可以统计出来,但是统计出来的ABC这样的符号在一起. QQ图片20140309142318.jpg

点评

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-9 14:55:11 来自手机 | 显示全部楼层
写字语句少了一个
(setq p (mapcar '+ p v))

点评

[attachimg]7970[/attachimg] 程序可能还要优化一下 分出来的效果是这样的. AB是一样,CDE都是一样的,现在分开了. 右边的统计有问题.麻烦ST788796了.  详情 回复 发表于 2014-3-9 18:01
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-9 18:01:21 | 显示全部楼层
st788796 发表于 2014-3-9 14:55
写字语句少了一个
(setq p (mapcar '+ p v))

QQ图片20140309175911.jpg
程序可能还要优化一下

分出来的效果是这样的.

AB是一样,CDE都是一样的,现在分开了.

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-9 18:30:38 来自手机 | 显示全部楼层
abc498091367 发表于 2014-3-9 18:01
程序可能还要优化一下

分出来的效果是这样的.

调整分组精度试试 把1e-3 改成 1

点评

[attachimg]7973[/attachimg] ST大,我把1e-3 改成 1了,结果是这样的,下面应该3个一样,上面2个一样.  详情 回复 发表于 2014-3-10 08:57
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-10 08:57:06 | 显示全部楼层
st788796 发表于 2014-3-9 18:30
调整分组精度试试 把1e-3 改成 1

QQ图片20140310085627.jpg

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-10 09:04:32 | 显示全部楼层
abc498091367 发表于 2014-3-10 08:57
ST大,我把1e-3 改成 1了,结果是这样的,下面应该3个一样,上面2个一样.

发个图上来,另外你的图形肯定是复制的?

点评

图形肯定复制,你可以下载下面的文件,看看!!!  详情 回复 发表于 2014-3-10 09:14
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-10 09:14:22 | 显示全部楼层
st788796 发表于 2014-3-10 09:04
发个图上来,另外你的图形肯定是复制的?

图形肯定复制,你可以下载下面的文件,看看!!!
请点击此处下载

查看状态:需购买或无权限

您的用户组是:游客

文件名称:Drawing2.zip 
下载次数:2  文件大小:89.68 KB 
下载权限: 不限 以上  [免费赚D豆]


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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-10 09:26:48 | 显示全部楼层
abc498091367 发表于 2014-3-10 09:14
图形肯定复制,你可以下载下面的文件,看看!!!

累计位置搞错了
  1. (defun c:tt (/ ss lst i)
  2.   (if (setq ss (ssget '((0 . "*polyline"))))
  3.     (progn
  4.       (setq lst        (mapcar        '(lambda (x / bp)
  5.                            (setq bp (car (xdrx_entity_box x)))
  6.                            (list (mapcar '(lambda (p)
  7.                                             (mapcar '- p bp)
  8.                                           )
  9.                                          (xdrx_entity_getstretchpoint x)
  10.                                  )
  11.                                  x
  12.                            )
  13.                          )
  14.                         (xdrx_pickset->ents ss)
  15.                 )
  16.             lst        (xd::list:groupbyindex lst 1)
  17.             lst        (mapcar 'cdr lst)
  18.             i        64 ;_编号数量不大於 52 个 A-Z a-z
  19.             lst        (mapcar        '(lambda (x / box p)
  20.                            (if (> 97 i 90)
  21.                              (setq i 96)
  22.                            )
  23.                            (setq i (1+ i))
  24.                            (mapcar '(lambda (a)
  25.                                       (setq box        (xdrx_entity_box a)
  26.                                             p        (xdrx_line_midp (car box) (caddr box))
  27.                                       )
  28.                                       (xdrx_text_make
  29.                                         p
  30.                                         (chr i)
  31.                                         (getvar "textsize")
  32.                                         0.
  33.                                       )
  34.                                     )
  35.                                    x
  36.                            )
  37.                            (list (chr i) (length (cdr x)))
  38.                          )
  39.                         lst
  40.                 )
  41.       )
  42.       (if (setq p (getpoint "\nOutput Point: "))
  43.         (progn
  44.           (setq v (list 0. (- (* 1.5 (getvar "textsize"))) 0.))
  45.           (mapcar '(lambda (x)
  46.                      (xdrx_text_make
  47.                        p
  48.                        (vl-string-trim "()" (vl-princ-to-string x))
  49.                        (getvar "textsize")
  50.                        0.
  51.                      )
  52.                      (setq p (mapcar '+ p v))
  53.                    )
  54.                   lst
  55.           )
  56.         )
  57.         (foreach x lst
  58.           (princ "\n")
  59.           (princ x)
  60.         )
  61.       )
  62.     )
  63.   )
  64.   (princ)
  65. )

点评

现在符号这边没问题,统计出来的数量,还有错误。你看看图片!!! 全部都少1个 [attachimg]7976[/attachimg]  详情 回复 发表于 2014-3-10 09:31
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-10 09:31:26 | 显示全部楼层

现在符号这边没问题,统计出来的数量,还有错误。你看看图片!!!  全部都少1个
QQ图片20140310093031.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-10 10:19:58 | 显示全部楼层
(list (chr i) (length (cdr x)))
=>
(list (chr i) (length  x))

点评

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

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-10 10:43:26 | 显示全部楼层
st788796 发表于 2014-3-10 10:19
(list (chr i) (length (cdr x)))
=>
(list (chr i) (length  x))

现在程序OK,非常感谢ST

点评

[attachimg]7978[/attachimg]还请ST大帮下,现在我把符号和数量加上去了.再原来的程序怎么加几个格式? 对好上面的的数量,在一排直线上  详情 回复 发表于 2014-3-10 15:56
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-10 15:56:45 | 显示全部楼层
abc498091367 发表于 2014-3-10 10:43
现在程序OK,非常感谢ST

QQ图片20140310155538.jpg 还请ST大帮下,现在我把符号和数量加上去了.再原来的程序怎么加几个格式?
对好上面的的数量,在一排直线上
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-10 16:20:28 | 显示全部楼层
abc498091367 发表于 2014-3-10 15:56
还请ST大帮下,现在我把符号和数量加上去了.再原来的程序怎么加几个格式?
对好上面的的数量,在一排直线上 ...

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-10 17:44:00 | 显示全部楼层
  1. ;;str -- string
  2. ;;h   -- height
  3. ;;scl -- 宽度比例
  4. (defun XD::String:ActualWidth (str sty h scl)
  5.   (and
  6.     (or        (not sty)
  7.         (= sty "")
  8.         (not (tblsearch "style" sty))
  9.     )
  10.     (setq sty (getvar "textstyle"))
  11.   )
  12.   (abs (car (apply
  13.               'mapcar
  14.               (cons '-
  15.                     (textbox (list (cons 1 str)
  16.                                    (cons 7 sty)
  17.                                    (cons 40 h)
  18.                                    (cons 41 scl)
  19.                              )
  20.                     )
  21.               )
  22.             )
  23.        )
  24.   )
  25. )
  26. (defun XD::String:MaxActualWidth (strl sty h scl)
  27.   (apply 'max
  28.          (mapcar '(lambda (x)
  29.                     (XD::String:ActualWidth x sty h scl)
  30.                   )
  31.                  strl
  32.          )
  33.   )
  34. )
  35. (defun XD::Table:Make (lst         p           RowHeight height
  36.                        /         tb           i             _ColumnWidths
  37.                        _widthL         _spa
  38.                       )
  39.   (defun _ColumnWidths (lst h / mL nl)
  40.     (setq mL (apply 'max (mapcar 'length lst))
  41.           nL (mapcar '(lambda (x)
  42.                         (XD::List:FillGap x " " mL)
  43.                       )
  44.                      lst
  45.              )
  46.     )
  47.     (mapcar '(lambda (x)
  48.                (XD::String:MaxActualWidth x "" h 1.)
  49.              )
  50.             (apply 'mapcar (cons 'list nL))
  51.     )
  52.   )
  53.   (if (or (null height) (= height ""))
  54.     (setq height (* RowHeight 0.4))
  55.   )
  56.   (setq        tb        (xdrx_table_make
  57.                   p
  58.                   (1+ (length lst))
  59.                   RowHeight
  60.                   (apply 'max (mapcar 'length lst))
  61.                   10.
  62.                 )
  63.         _WidthL        (_ColumnWidths lst height)
  64.         _spa        (* 4 (xdrx_table_horzCellMargin tb))
  65.   )
  66.   (XD::Table:Begin tb)
  67.   (xdrx_entity_scale tb p 0.1)
  68.   (setq i -1)
  69.   (mapcar '(lambda (x)
  70.              (xdrx_table_setcolumnwidth tb (setq i (1+ i)) x)
  71.            )
  72.           (mapcar '(lambda (a) (+ _spa a)) _WidthL)
  73.   )
  74.   (xdrx_table_setrowheight tb RowHeight)
  75.   (xdrx_table_settextheight tb 7 height)
  76.   (xdrx_table_setalignment tb 1 5)
  77.   (xdrx_table_SetGridVisibility tb 2 41 nil)
  78.   (setq i 0)
  79.   (mapcar
  80.     '(lambda (x / j)
  81.        (setq j -1
  82.              i (1+ i)
  83.        )
  84.        (mapcar '(lambda        (a)
  85.                   (xdrx_table_settextstring tb i (setq j (1+ j)) a)
  86.                 )
  87.                x
  88.        )
  89.      )
  90.     lst
  91.   )
  92.   (XD::Table:End tb)
  93.   tb
  94. )
  95. (defun c:tt (/ ss lst i)
  96.   (princ "\n选择多义线.....")
  97.   (if (setq ss (ssget '((0 . "*polyline"))))
  98.     (progn
  99.       (setq lst        (mapcar        '(lambda (x / bp)
  100.                            (setq bp (car (xdrx_entity_box x)))
  101.                            (list (mapcar '(lambda (p)
  102.                                             (mapcar '- p bp)
  103.                                           )
  104.                                          (xdrx_entity_getstretchpoint x)
  105.                                  )
  106.                                  x
  107.                            )
  108.                          )
  109.                         (xdrx_pickset->ents ss)
  110.                 )
  111.             lst        (xd::list:groupbyindex lst 1)
  112.             lst        (mapcar 'cdr lst)
  113.             i        64 ;_编号数量不大於 52 个 A-Z a-z
  114.             lst        (mapcar        '(lambda (x / box p)
  115.                            (if (> 97 i 90)
  116.                              (setq i 96)
  117.                            )
  118.                            (setq i (1+ i))
  119.                            (mapcar '(lambda (a)
  120.                                       (setq box        (xdrx_entity_box a)
  121.                                             p        (xdrx_line_midp (car box) (caddr box))
  122.                                       )
  123.                                       (xdrx_text_make
  124.                                         p
  125.                                         (chr i)
  126.                                         (getvar "textsize")
  127.                                         0.
  128.                                       )
  129.                                     )
  130.                                    x
  131.                            )
  132.                            (list (chr i) (length x))
  133.                          )
  134.                         lst
  135.                 )
  136.       )
  137.       (if (setq p (getpoint "\n插入点<回车显示>: "))
  138.         (XD::Table:make
  139.           (cons        '("编号" "数量")
  140.                 (mapcar '(lambda (x) (mapcar 'vl-princ-to-string x)) lst)
  141.           )
  142.           p
  143.           8.
  144.           3.
  145.         )
  146.         (foreach x lst
  147.           (princ "\n")
  148.           (princ x)
  149.         )
  150.       )
  151.     )
  152.   )
  153.   (princ)
  154. )

点评

插入点: ; 错误: no function definition: XDRX_TABLE_MAKE XDRX_TABLE_MAKE函数没有?  详情 回复 发表于 2014-3-10 19:40
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 60个

财富等级: 招财进宝

 楼主| 发表于 2014-3-10 19:40:50 | 显示全部楼层

插入点<回车显示>: ; 错误: no function definition: XDRX_TABLE_MAKE


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-25 00:38 , Processed in 0.481614 second(s), 58 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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