CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2024 开发者帮助

DIESEL 函数参考

2024-5-18 19:02| 发布者: admin| 查看: 169| 评论: 0|原作者: admin|来自: AutoCAD

DIESEL 函数参考

状态的检索、计算和显示均由 DIESEL 函数执行。

所有函数最多只能包含 10 个参数,包括函数名本身。

函数 说明/样例
+(加)

返回数字 val1val2、…、val9 之和。

$(+, val1 [, val2, …, val9])

如果当前厚度设置为 5,则以下 DIESEL 字符串返回 15。

$(+, $(getvar, thickness), 10)
-(减)

返回从 val1 中减去数字 val2val9 的结果。

$(-, val1 [, val2 , …, val9])
*(乘)

返回数字 val1val2、…、val9 相乘的结果。

$(*, val1 [, val2, …, val9])
/(除)

返回数字 val1 除以 val2、…、val9 的结果。

$(/, val1 [, val2, …, val9])
=(等于)

如果数字 val1val2 相等,则字符串返回 1;否则,返回 0。

$(=, val1, val2)
<(小于)

如果数字 val1 小于 val2,则字符串返回 1;否则,返回 0。

$(<, val1, val2)

以下表达式会获取 HPANG 的当前值;如果该值小于系统变量 USERR1 中存储的值,则返回 1。如果 USERR1 中存储的值为 10.0 且 HPANG 的当前设置为 15.5,则以下字符串返回 0。

$(<, $(getvar, hpang), $(getvar, userr1))
>(大于)

如果数字 val1 大于 val2,则字符串返回 1;否则,返回 0。

$(>, val1, val2)
!=(不等于)

如果数字 val1val2 不相等,则字符串返回 1;否则,返回 0。

$(!=, val1, val2)
<=(小于或等于)

如果数字 val1 小于或等于 val2,则字符串返回 1;否则,返回 0。

$(<=, val1, val2)
>=(大于或等于)

如果数字 val1 大于或等于 val2,则字符串返回 1;否则,返回 0。

$(>=, val1, val2)
and

返回整数 val1val9 的按位逻辑与。

$(and, val1 [, val2,…, val9])
angtos

按指定的格式和精度返回角度值。

$(angtos, value [, mode, precision])

按照为类似 AutoLISP 函数定义的 modeprecision 指定的格式,将给定的 value 作为角度进行编辑。如果省略 modeprecision,则使用由 UNITS 命令选择的当前值。

注: AutoLISP 在 AutoCAD LT for Mac OS 中不可用。
可以应用以下 mode 值:
  • 0,表示度
  • 1,表示度/分/秒
  • 2,表示百分度
  • 3,表示弧度
  • 4,表示勘测单位
Edtime

返回基于给定图片的格式化日期和时间。

$(edtime, time, picture)

编辑由 time 给定的 Julian 日期(例如,根据给定的 picture$(getvar,date) 获取)。picture 由替换为具体日期和时间的格式短语组成。无法解释为格式短语的字符会完整地复制到 $(edtime) 的结果中。格式短语的定义如下表中所示。

例如,假定日期为 1998 年 9 月 5 日星期六,时间为 4:53:17.506,则 edtime 的相应格式短语和输出样例如下所示:
  • D - 5
  • DD - 05
  • DDD - Sat
  • DDDD - Saturday
  • M - 9
  • MO - 09
  • MON - Sep
  • MONTH - September
  • YY - 98
  • YYYY - 1998
  • H - 4
  • HH - 04
  • MM - 53
  • SS - 17
  • MSEC - 506
  • AM/PM - AM
  • am/pm - am
  • A/P - A
  • a/p - a

如上表所示,输入完整的 AM/PM 短语。如果仅使用 AM,则 A 将按字面读取,而 M 将返回当前月份。

如果图片中出现任何 AM/PM 短语,则 HHH 短语将按 12 小时国内时钟 (12:00-12:59 1:00-11:59) 编辑时间,而不是按 24 小时时钟 (00:00-23:59) 编辑时间。

下面的样例使用上表中的日期和时间。请注意,由于逗号会读取为参数分隔符,因此必须将它括在引号中。

$(edtime, $(getvar,date), DDD"," DD MON YYYY - H:MMam/pm)

该表达式返回以下结果:

Sat, 5 Sep 1998 - 4:53am

如果 time 为 0,则使用执行最外层宏时的时间和日期。这避免了对 $(getvar,date) 进行长时间而费时的多次调用,并保证由多个 $(edtime) 宏组成的字符串全都使用相同的时间。

eq

如果字符串 val1val2 相同,则字符串返回 1;否则,返回 0。

$(eq, val1, val2)

以下表达式会获取当前图层的名称;如果该名称与 USERS1 (USERS1-5) 系统变量中存储的字符串值相匹配,则返回 1。假定字符串“PART12”存储在 USERS1 中,并且当前图层相同。

注: USERS1-5 系统变量在 AutoCAD LT for Mac OS 中不可用。
$(eq, $(getvar, users1), $(getvar, clayer))

该表达式返回以下结果:

1

Eval

将字符串 str 传递给 DIESEL 计算器,并返回求值结果。

$(eval, str)
fix

通过舍弃任何小数部分,将实数 value 截断为整数。

$(fix, value)
Getenv

返回环境变量 varname 的值。

$(getenv, varname)

如果未定义具有该名称的变量,则返回空字符串。

Getvar

返回具有给定 varname 的系统变量的值。

$(getvar, varname)
if

根据条件计算表达式。

$(if, expr, dotrue [, dofalse])

如果 expr 为非零,则计算并返回 dotrue。否则,计算并返回 dofalse。请注意,不会计算 expr 未选择的分支。

Index

返回以逗号分隔的字符串中的指定成员。

$(index, which, string)

假定 string 参数包含一个或多个由宏参数分隔符字符(逗号)分隔的值。which 参数选择要提取的值之一,第一项编号为 0。此函数通常用于从 $(getvar) 返回的点坐标中提取 XYZ 坐标值。

应用程序可以使用此函数来从 USERS1-5 系统变量中检索存储为以逗号分隔的字符串的值。

注: USERS1-5 系统变量在 AutoCAD LT for Mac OS 中不可用。
nth

计算并返回由 which 选定的参数。

$(nth, which, arg0 [, arg1,…, arg7])

如果 which 为 0,则 nth 返回 arg0,依此类推。请注意 $(nth)$(index) 之间的区别;$(nth) 会将一系列参数之一返回给函数,而 $(index) 会从作为单个参数传递的以逗号分隔的字符串中提取值。不会计算 which 未选择的参数。

or

返回整数 val1val9 的按位逻辑或。

$(or, val1 [, val2,…, val9])
rtos

按指定的格式和精度返回实数值。

$(rtos, value [, mode, precision])

modeprecision 指定的格式,将给定的 value 作为实数进行编辑。如果省略 modeprecision,则使用由 UNITS 命令选择的当前值。

strlen

返回 string 的字符长度。

$(strlen, string)
substr

返回 string 的子字符串,该子字符串从字符 start 开始,长度为 length 个字符。

$(substr, string, start [, length])

字符串中的字符从 1 开始编号。如果省略 length,则返回字符串的所有其余字符。

upper

根据当前区域设置的规则,返回转换为大写的 string

$(upper, string)
xor

返回整数 val1val9 的按位逻辑异或。

$(xor, val1 [, val2,…, val9])

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2025-3-28 17:20

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部