找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: hphkjz

[编程申请] 墙长统计

[复制链接]

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-31 06:46:16 | 显示全部楼层
hphkjz 发表于 2014-3-31 06:15
大哥,是不是lisp数据库还不全呢,我运行时出现no function definition: VLAX-ENAME->VLA-OBJECT        ...

(vl-load-com)
  1. (vl-load-com)
  2. (defun c:tt (/ ss el ll i)
  3.   (defun _getwalllength        (e / el _HasWindows len)
  4.     (defun _HasWindows (el)
  5.       (assoc 330 (cdr (member (assoc 330 el) el)))
  6.     )
  7.     (setq el  (entget e)
  8.           len (apply 'distance (xdrx_entity_getstretchpoint e))
  9.     )
  10.     (if        (_HasWindows el)
  11.       (- len
  12.          (apply
  13.            '+
  14.            (mapcar '(lambda (a)
  15.                       (cdr (assoc 40 (entget a))) ;_门窗洞开尺寸
  16.                     )
  17.                    (mapcar
  18.                      'cdr
  19.                      (vl-remove-if-not
  20.                        '(lambda        (x)
  21.                           (and (= (car x) 330)
  22.                                (/= (cdr (assoc 0 (entget (cdr x))))
  23.                                    "BLOCK_RECORD"
  24.                                )
  25.                           ) ;_门窗
  26.                         )
  27.                        el
  28.                      )
  29.                    )
  30.            )
  31.          )
  32.       )
  33.       len
  34.     )
  35.   )
  36.   (if (setq ss (ssget '((0 . "TCH_WALL"))))
  37.     (progn
  38.       (setq el
  39.                (mapcar
  40.                  '(lambda (x)
  41.                     (list (vlax-get (vlax-ename->vla-object x) 'TotalWidth) ;_墙厚
  42.                           x
  43.                     )
  44.                   )
  45.                  (xdrx_pickset->ents ss)
  46.                )
  47.             el (XD::List:GroupByIndex el 1e-3)
  48.       )
  49.       (setq ll (mapcar '(lambda        (x)
  50.                           (list        (car x)
  51.                                 (apply '+
  52.                                        (mapcar '(lambda        (a)
  53.                                                   (_getwalllength a)
  54.                                                 )
  55.                                                (cdr x)
  56.                                        )
  57.                                 )
  58.                           )
  59.                         )
  60.                        el
  61.                )
  62.             i 0
  63.       )
  64.       (if (setq p (getpoint "\nOutput Point: "))
  65.         (XD::Table:Make
  66.           (cons
  67.             '("序号" "墙厚" "总长度")
  68.             (mapcar '(lambda (x)
  69.                        (list (itoa (setq i (1+ i)))
  70.                              (rtos (car x) 2 0)
  71.                              (rtos (cadr x) 2 0)
  72.                        )
  73.                      )
  74.                     ll
  75.             )
  76.           )
  77.           p
  78.           800.
  79.           250.
  80.         )
  81.         ll
  82.       )      
  83.     )
  84.   )(princ)
  85. )

walltable.gif

点评

大哥,我看你操作的挺好的,为什么我加载后命令行出现了 “读入的 (八进制) 字符不正确: 0” 这个该怎么解决哇。输入 tt提示选择对象,可是框选后没有选中任何对象。  详情 回复 发表于 2014-3-31 14:28
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

大哥,我看你操作的挺好的,为什么我加载后命令行出现了 “读入的 (八进制) 字符不正确: 0”   这个该怎么解决哇。输入 tt提示选择对象,可是框选后没有选中任何对象。

点评

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

使用道具 举报

 楼主| 发表于 2014-4-1 19:24:21 来自手机 | 显示全部楼层
hphkjz 发表于 2014-3-31 14:28
大哥,我看你操作的挺好的,为什么我加载后命令行出现了 “读入的 (八进制) 字符不正确: 0”   这个该怎 ...

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 08:48 , Processed in 0.308593 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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