每个公式由以下列表中的一个或多个表达式组成。表达式在本节的其余部分中有更详细的说明。
表达式 |
说明 |
常量 |
数据类型,如整数、布尔常量、数字和文本常量 |
固定值 |
文本字符串、数字和逻辑值等 |
运算符 |
加法、减法、比较等 |
变量 |
Vectorworks 数据源,如对象参数、样式信息、类名 |
函数 |
数学函数、字符串处理、条件函数等 |
ELSE |
添加替代数据映射的方法,如果前一个产生空值 |
常量 |
说明 |
示例 |
布尔 |
值用于布尔参数,可以是真或假,写成撇号内的字符串常量 |
‘FALSE’ ‘TRUE’ |
整数 |
正数或负数和 0,写成没有小数点或撇号的数字 |
4 125 |
有理数 |
实数值,写成带小数点的数字,不带撇号 |
3.14 -12.0 248.141539 |
文本 |
用撇号括起来的字符串值 |
‘Unstyled Wall’ “INTERNAL” “NOTDEFINED” |
经营者 |
说明 |
+ |
一元加号 |
- |
一元减号 |
+ |
二元加号,加法,连接 |
- |
二元减号,减法 |
* |
乘法 |
/ |
除法 |
= |
逻辑EQUALS |
! |
逻辑 NOT |
| |
逻辑 OR |
& |
逻辑 AND |
!= |
逻辑 NOT EQUAL |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
变量代表 Vectorworks 的数据源。它们可以通过使用运算符与常量、函数结果和其他变量相结合。变量类型(名称)与数据源类型相同。变量用方括号括起来,名称中允许有空格。
变量 |
格式 |
示例 |
来自对象的参数 |
[Object.NameOfTheParameter] 如果参数是弹出字段,则变量返回本地化值。如果您需要通用值,在字段名称后面添加一个星号。 |
[Object.Config] [Object.Column ID] [Object.Struct Type] [Object.structuralUse*] |
Vectorworks 名称 |
[Object.VW_Name] |
[Object.VW_Name] |
来自记录格式的记录字段数据 |
[Record.NameOfTheRecord.NameOfTheField] 如果该名称的记录没有附加到该对象,则将记录字段的默认值作为该变量的值。 |
[Record.MyRecord.Price] [Record.Plant Record.Latin Name] |
来自样式的数据 |
[Style.NameOfTheField] 当前支持的数据字段是:名称(样式名称)、标记、功能、说明、室外(布尔)、承重(布尔)、防火等级、可燃构造(布尔)、分区(布尔)、U 值、声学评级、成本指数系统、成本指数代码、型号、制造商。 |
[Style.Function] [Style.Name] [Style.Fire Rating] |
组件 |
[Component.NameOfTheField] 当前支持的数据字段是:名称(组件的名称)、功能、类、厚度、Lambda、U 值。如果未使用“按组件导出”选项,则这些变量对应于核心组件。 |
[Component.Function] [Component.Thickness] |
材料 |
[Material.NameOfTheField] 当前支持的数据字段是:Name、Description、Mark、Keynote、IsVolumatic、Category、Standard、ReferenceID、ClassificationDescription、Manufacturer、ProductModel、ProductName、ProductDescription、ProductURL、ProductSource、ProductFinish、ProductCost, |
[Material.Mark] [Material.Category] [Material.Lambda] |
附加到一种材料的记录中的字段数据 |
[Material Record.NameOfTheField] |
[Material Record.CastInPlace] [Material Record.TimeToDry] |
类名称 |
[ClassName] |
[ClassName] |
图层名称 |
[LayerName] |
[LayerName] |
楼层名称 |
[StoryName] |
[StoryName] |
函数 |
说明 |
PI ( ) |
返回数字 Π |
SIN (弧度) |
返回正弦 |
COS (弧度) |
返回余弦 |
ABS (number) |
返回绝对值 |
SQRT (数字) |
返回平方根 |
INT (数字) |
返回转换后的整数值 |
REAL (数字) |
返回转换后的实数值 |
IF (logical_expression, value_expression1, value_expression2) |
计算 logical_expression,如果 TRUE,则返回 value_expression1 的计算值,否则返回 value_expression2 的值 |
SELECT1 (number_expression, value_expression1, value_expression2, …, value_expressionN) |
计算 number_expression,如果结果为 0,则返回 value_expression1 的计算值;如果结果为 1,则返回 value_expression2 的值,以此类推。如果结果大于 N-1,则返回最后一个表达式的值。函数参数个数必须是 3 个或 3 个以上。 |
SELECT2 (logical_expression1, value_expression1, logical_expression2, value_expression2, …, logical_expressionN, value_expressionN) |
计算第一个逻辑表达式,如果结果是TRUE,则返回 value_expression1 的计算值;否则,继续计算下一个逻辑表达式和值表达式对。函数参数个数必须是偶数,且大于 2。 |
COUNTER (“name”) |
返回自动递增的值(用于生成唯一值) |
BOUNDS (“name”) |
返回对象的 X-,Y-,Z- 或宽度/高度/深度尺寸 |
LEFT (text, count) |
返回字符串的左侧,使用指定的字符计数。如果计数值不正确,则返回空字符串。 |
RIGHT (text, count) |
返回字符串的右侧,使用指定的字符计数。如果计数值不正确,则返回空字符串。 |
MID (text, index, count) |
返回字符串的右侧,由位置索引分开(0 是第一个字符的位置)并使用指定的字符计数。如果索引或计数值不正确,则返回空字符串。 |
FIND (subtext, text) |
如果找到,则返回文本中潜文本从零开始的位置;如果未找到,则返回 -1。 示例:FIND (‘fo’, ‘foo’) 返回 0,FIND (‘oo’,‘foo’) 返回 1。 |
LEN (string) |
返回字符串的长度 |
INSERT (string1, index, string2) |
在 string1 中的给定位置索引处插入 string2 |
DELETE (string, index, count) |
删除字符串的右侧,由位置索引分开并具有指定的字符计数 |
REPLACE (string1, string2, string3) |
在 string1 中,将所有出现的 string2 替换为 string3 |
TRIMLEFT (字符串) |
返回空格左边修剪过的字符串 |
TRIMRIGHT (字符串) |
返回空格右边修剪过的字符串 |
MAKEUPPER (字符串) |
返回大写字符串 |
MAKELOWER (字符串) |
返回小写字符串 |
GETCOMPONENTINFO (index, selector) |
返回所选组件(墙/楼板)的有关信息,其中 index 是该组件的编号,selector 是以下其一: 1(组件名称) 2(组件函数) 3(组件类) 4(组件厚度) |
ISFLIPPED( ) |
返回对象是否被执行镜像操作 |
GETOBJECTVARIABLE(选择器)
|
返回 Vectorworks 对象特性的值。有关特定的对象选择器值,请参阅 VectorScript 函数引用中的附录 G。 developer.vectorworks.net/index.php/VS:Function_Reference_Appendix#appx_g. |
~~~~~~~~~~~~~~~~~~~~~~~~~