设为首页收藏本站

晓东CAD家园-论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 416|回复: 12

[图块] 有计算功能的属性块

[复制链接]

已领礼包: 97个

财富等级: 招财进宝

发表于 2019-3-22 07:33:50 来自手机 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 王鹏_pBZlo 于 2019-3-22 15:14 编辑

在属性块内增加一些有特定名字的属性定义,给这些有特定名字的属性定义赋值(内容是一些计算表达式,当然表达式的格式是有讲究的,可以通过执行这个表达式达到获取已知属性值,计算,赋值给其他的属性,并规定计算精度) 这样,修改部分属性值后,就可以自动计算出其他属性的值了。
  需首先依次添加属性定义"FORMULA","FORMULA1","FORMULA2",...,程序会依次计算
  添加的各属性定义中赋值内容应包含多项,要求如下:
  1. 各项以";"分割
  2. 第1项为已知变量列表,各变量间以","分割,字母均取大写;
  3. 第2项至倒数第2项为计算过程表达式,计算过程表达式中对应属性定义的变量必须大写,具体见第5条;
  4. 最后1项为计算结果变量列表,各变量间以","分割,对应属性定义的变量必须大写;
   4.1 各变量表达格式为"变量名+@+保留小数位数",如"A@2",也可仅仅写变量名,如"A".
   4.2 分割变量名和保留小数位数的符号为"$"时,若变量值为"0",则"0"不显示.
  5. 计算过程表达式均以"变量+等于号"开头(例如: "A="),等号后的表达式分下述2种:
   5.1 仅一项,用"+,-,*,/"连接各变量或常数,计算顺序从左到右, 如"B+2*C*d-E/f"; 或者
   5.2 含多项,用","分割,首项为计算函数名称,其余各项为变量(或常数,或如5.1所述的表达式),可用函数如下:
       "min"  - 求后续各项的最小值,如"min,A,2*B,c";
       "max"  - 求后续各项的最大值,如"max,A,2*B,c";
       "sin"  - 求第2项角度(以弧度表示)的正弦值,如"sin,2*A";
       "cos"  - 求第2项角度(以弧度表示)的余弦值,如"cos,2*A";
       "tan"  - 求第2项角度(以弧度表示)的正切值,如"tan,2*A";
       "ctan" - 求第2项角度(以弧度表示)的余切值,如"ctan,2*A";
       "atan" - 求第2项的反正切值(以弧度表示),如"atan,2*A";
       "expt" - 求以第2项为底,第3项为指数的幂,如"expt,2*A,B+c";
       "log"  - 求第2项的自然对数值,如"log,A+2";
       "abs"  - 求第2项的绝对值,如"abs,A+2";
       "fix"  - 仅返回第2项的整数部分,如"fix,A+2";
       "if>"  - 当第2项的值大于第3项的值时,返回第4项的值,否则返回第5项的值;
       "if<"  - 当第2项的值小于第3项的值时,返回第4项的值,否则返回第5项的值;
       "if~"  - 当第2项的值等于第3项的值时,返回第4项的值,否则返回第5项的值;
       "+"    - 求后续各项连续相加值,如"+,A+d,B-3,c";
       "-"    - 求后续各项连续相减值,如"-,A+d,B-3,c";
       "*"    - 求后续各项连续相乘值,如"*,A+d,B-3,c";
       "/"    - 求后续各项连续相除值,如"/,A+d,B-3,c";
   5.3 为方便计算,表达式中可添加一些临时变量,临时变量中的字母必须小写;
   5.4 对于每个属性定义的名称,均可以代表一个变量,其值即输入的数值或计算出的数值;
   5.5 所有变量及参与计算的属性定义名称均不能以数字开头.
  6. 字符串的表达式形如: "A,B;C=str,A,+,B,is OK!;C",若A=1,B=2,则C为"1+2is OK!".


来自: 微社区
cal.gif

test.zip

21.5 KB, 下载次数: 35, 下载积分: D豆 -1 , 活跃度 1

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

已领礼包: 19个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 7个

财富等级: 恭喜发财

发表于 2019-3-22 13:07:33 | 显示全部楼层
增强属性块里边加入字段公式计算
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 97个

财富等级: 招财进宝

 楼主| 发表于 2019-3-22 15:18:08 来自手机 | 显示全部楼层
插件及测试文件已上传
来自: 微社区
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3425个

财富等级: 富可敌国

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

使用道具 举报

已领礼包: 333个

财富等级: 日进斗金

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

使用道具 举报

已领礼包: 97个

财富等级: 招财进宝

 楼主| 发表于 2019-3-26 18:14:14 来自手机 | 显示全部楼层
xudi1234 发表于 2019-3-26 09:27
那不就是Excel类似了吗?

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

使用道具 举报

已领礼包: 1527个

财富等级: 堆金积玉

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

使用道具 举报

已领礼包: 6039个

财富等级: 富甲天下

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

使用道具 举报

发表于 2019-4-30 13:32:35 | 显示全部楼层
不错,很有帮助,能不能把调用的TT改长点,覆盖了我常用的快捷键。感恩感谢。

点评

(defun c:calblk() (blk-cal-hint) (setq att (car (entsel "\n选择含计算功能的属性块:"))) (command "ddatte" att) (edit-blk-cal att) (princ) ) 找不到原来的lsp文件了,你加  详情 回复 发表于 2019-4-30 14:08
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 97个

财富等级: 招财进宝

 楼主| 发表于 2019-4-30 14:08:26 | 显示全部楼层
本帖最后由 王鹏_pBZlo 于 2019-4-30 14:22 编辑
fzhougeng 发表于 2019-4-30 13:32
不错,很有帮助,能不能把调用的TT改长点,覆盖了我常用的快捷键。感恩感谢。

(defun c:blkcal()
        (blk-cal-hint)
        (setq att (car (entsel "\n选择含计算功能的属性块:")))
        (command "ddatte" att)
        (edit-blk-cal att)
        (princ)
)

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

使用道具 举报

已领礼包: 97个

财富等级: 招财进宝

 楼主| 发表于 2019-4-30 14:20:57 | 显示全部楼层
附件不是压缩文件,请修改附件扩展名为fas后使用
加载blkcal.fas
命令为blkcal

blkcal.zip

11.57 KB, 下载次数: 7, 下载积分: D豆 -1 , 活跃度 1

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2019-7-21 05:59 , Processed in 0.219527 second(s), 54 queries , Gzip On, WinCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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