造价通

反馈
取消

热门搜词

造价通

取消 发送 反馈意见

GlovePIE部分中文翻译

2018/06/19141 作者:佚名
导读: 文内符号说明:“[]”内是可用可不用的项,“|”两边是单选项。注释可以为以下几种// 注释' 注释REM 注释% 注释/* 多行注释 */建议用“//”debug=变量就能在调试窗口实时显示变量值---------------------------------------赋值语句有向前赋值和向后赋值两种形式,等价的。向前赋值语句如下变量名 = 表达式 [;]或变量名 := 表达式

文内符号说明:“[]”内是可用可不用的项,“|”两边是单选项。

注释可以为以下几种

// 注释

' 注释

REM 注释

% 注释

/* 多行

注释 */

建议用“//”

debug=变量

就能在调试窗口实时显示变量值

---------------------------------------

赋值语句

有向前赋值和向后赋值两种形式,等价的。

向前赋值语句如下

变量名 = 表达式 [;]

变量名 := 表达式 [;]

向后赋值语句如下

表达式 => 变量名 [;]

例如

Ctrl = var.a

Ctrl = var.b

它有类似的效果: Ctrl = var.a or var.b

------------------------------------------

IF语句

有以下句法

if 条件 then 语句 [;]

if (条件) [then] 语句 [;]

if 条件 [then] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end [if]] [;]

if 条件 [then] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end] else [begin] [{]

语句 [;]

语句 [;]

...

[}] [end [if]] [;]

if 条件 [then] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end] (else if|elseif) 条件2 [then] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end] (else if|elseif) 条件3 [then] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end] else [begin] [{]

语句 [;]

语句 [;]

...

[}] [end [if]] [;]

--------------------------------------------

WHILE循环语句

当条件为真则循环

有以下句法

while 条件 do 语句 [;]

while (条件) [do] 语句 [;]

while 条件 [do] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end [while]] [;]

任何循环最多只运行0.2秒,超过就强制中止。

--------------------------------------------

FOR循环语句

有以下句法

for 变量 (=|:=) 初始量 (to|downto) 结束量 [step 步长] do 语句 [;]

for 变量 (=|:=) 初始量 (to|downto) 结束量 [step 步长] [do] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end [for]]

for (赋初值 ; 条件 ; 增量) [do] 语句 [;]

for (赋初值 ; 条件 ; 增量) [do] [begin] [{]

语句 [;]

语句 [;]

...

[}] [end [for]]

任何循环最多只运行0.2秒,超过就强制中止。

--------------------------------------------

等待命令

有以下句法

wait 持续时间 [;]

wait(持续时间) [;]

通常为持续时间指定单位。有效的单位是:ms, s, minutes, hours, days

--------------------------------------------

增减语句

有以下句法

var.x++

++var.x

Inc(var.x)

var.x--

--var.x

Dec(var.x)

--------------------------------------------

位移语句

有以下句法

左移变量N位

shl var.x, N

右移变量N位

shr var.x, N

--------------------------------------------

“说”命令

Say "句子"

Say("句子")

发出合成语音

--------------------------------------------

其他命令

ExitScript

退出当前脚本运行

ExitPIE

退出GlovePIE软件

FlashPieWindow

闪GlovePIE的窗口

HidePie

隐藏GlovePIE

ShowPie

显示GlovePIE

RestorePie

复位GlovePIE的窗口

MinimizePie

最小化GlovePIE的窗口

MaximizePie

最大化GlovePIE的窗口

UnMinimizePie

反最小化GlovePIE的窗口

UnMaximizePie

反最大化GlovePIE的窗口

Execute(文件名)

执行外部程序

Chain(文件名)

调用运行另一脚本

PlaySound(文件名)

播放音频文件

Beep([频率, 持续时间])

响单频率声

BeepAsterisk

响*音效

BeepExclamation

响!音效

BeepHand

响!音效

BeepQuestion

响?音效BeepDefault

响缺省音效

Display(text)

输出信息

DebugPrint(text)

调试窗口输出信息

OutputToFile(text)

输出信息到文件里

AddCode(text)

不知道

Type(字符串)

模拟键盘打入字符串

TypeUnicode(字符串)

模拟键盘打入Unicode字符串

Press(键)

按下键

Release(键)

释放键

Toggle(键)

如果键当前是按下状态,则释放键,如果键当前是释放状态,则按下键。

SendOsc(ip, port, address, [p1, p2, p3…])

BroadcastOsc(port, address, [p1, p2, p3…])

这两个是网络发送信息的函数

ControlPanel, ControlPanelKeyboard, ControlPanelJoystick, ControlPanelMouse, ControlPanelP5, ControlPanelPPJoy, ControlPanelSpeech, ControlPanelMidi, ControlPanelDisplay这些都是打开各个设备的控制面板。

================================================================

GlovePIE内置函数

三角函数

单位是度

Standard trig functions: sin(x), cos(x), tan(x), sec(x), cosec(x), cotan(x)

Hyperbolic trig functions: SinH(x), CosH(x), TanH(x), SecH(x), CosecH(x), CotH(x)

Inverse trig functions: aSin(x), aCos(x), aTan(x), aSec(x), aCosec(x), aCotan(x)

Inverse Hyperbolic trig functions: aSinH(x), aCosH(x), aTanH(x), aSecH(x), aCosecH(x), aCotanH(x)

2D inverse tan function: atan2(x)

----------------------------------------------

舍入函数

ceil(x): 向正无穷方向取整

floor(x): 向负无穷方向取整

trunc(x), int: 向零方向取整

round(x): 四舍五入法取整 .5取最接近的偶数(银行家舍入法)

frac(x): 取小数部分。 例如 Frac(-1.32) = -0.32

RoundTo(x, 位): 如果“位”是负或零,则按位数使用银行家舍入法。如果“位”是正,则(rounds to that power of ten using Banker's Rounding.)

SimpleRoundTo(x [,位]): 和RoundTo函数基本一样,除了只四舍五入,不用银行家舍入法。位缺省值是-2。

--------------------------------------------------

正负函数

Sign(x): 如果x是正返回1,如果x是零返回0,如果x是负返回-1。

Abs(x): 返回x的绝对值。

--------------------------------------------------

指数和开方函数

sqr(x): x^2

sqrt(x): x^(1/2)

power(x,y): calculates x^y

intPower(x,y): x和y取整后算 x^y

exp(x): e^x. e is 2.71828

Ldexp(s,p): s * (2^p)

Poly(x, a0, [a1, [a2, [a3, [a4, [a5, [a6]]]]]]): a0 + a1*x + a2*(x^2) + a3*(x^3) + a4*(x^4) + ...

Log10(x): 10为底数的对数

Log2(x): 2为底数的对数

LogN(N, x): N为底数的对数

Ln(x): 自然对数

LnXP1(x): x+1的自然对数

--------------------------------------------------

比较函数

IsZero(x): 如果是0返回真

IsInfinite(x): returns true if x is infinite

IsNaN(x): 如果不是数字返回真

SameValue(a, b [, epsilon]): 如果a和b相等返回真, or differ by no more than epsilon

InSet(x,a,b,c,d,e,f,g,...): 如果x匹配后面任意一值,则返回真

max(a,b): 返回较大的值

min(a,b): 返回较小的值

--------------------------------------------------

范围函数

EnsureRange(x, a, b): 如果x在[a,b]区间,返回x,如果小于a则返回a,大于b则返回b。

InRange(x, a, b): 如果x在[a, b]区间内返回真

MapRange(x, a, b, c, d): 根据x在[a, b]范围的比例映射[c, d]范围。例如MapRange(2, 1, 3, 10, 30)返回20

EnsureMapRange(x, a, b, c, d): 和MapRange类似,只是当x超出[a,b]区间按EnsureRange反应。例如EnsureMapRange(4, 1, 3, 10, 30)返回30

--------------------------------------------------

随机函数

Random: 返回0到1间的随机数

Random(n): 返回0到n-1的随机整数

RandomRange(a,b): 返回a到b-1的随机整数

RandG(mean, StandDev): 返回高斯分布随机数

--------------------------------------------------

序数函数

odd(n): 如果是奇数返回真

pred(n): 返回 n-1

succ(n): 返回 n+1

--------------------------------------------------

时间函数

Now: 返回当前时间日期在1899.12.30之后多少天(非整数)

Time: 返回Now函数的小数部分

Date: 返回Now函数的整数部分

Tomorrow: 等于Date+1

Yesterday: 等于Date-1

CurrentYear: 返回当前年份

DateOf(x): 返回日单位。例如 DateOf(1999)返回1999 days

TimeOf(x): 返回日单位。例如 TimeOf(0.2)返回0.2 days

Dayofthemonth(x), dayoftheweek(x), dayoftheyear(x), dayofweek(x),

Daysbetween(x, y),

Daysinamonth(x, y), daysinayear(x), daysinmonth(x), daysinyear(x), DaySpan(x, y),

HourOfTheDay(x), HourOfTheMonth(x), HourOfTheWeek(x), HourOfTheYear(x),

HoursBetween(x, y), HourSpan(x, y),

IncDay(x, [y])

--------------------------------------------------

时序函数

Smooth(x, [额外桢数, [不工作区]])

根据x之前的额外桢数平滑之。不工作区缺省是0.

Pressed(键)按下就返回true。

Clicked(键)点击(压下松开算一次点击)就返回true,不论单击双击。

SingleClicked(键)单击返回true。

DoubleClicked(键)双击返回true。

HeldDown(x, MinTime)

x为真持续时间大于MinTime时返回true。

KeepDown(x, MinTime)

当x为真后,持续保持true输出MinTime时间。

================================================================

运算符

不同类型的量运算会自动转换

a%

百分比号

-b

负号

|b|

取绝对值,b可以是数字、向量或矩阵。

a + b

a plus b

如果a和b是数就加运算;如果a和b是字符串就连接起来;如果a和b是布尔量就等同于and运算符;如果a是向量,b不是,它将扩展长度但不改变方向。

a - b

a minus b

如果a和b是数就减运算;如果a和b是字符串就连接起来;如果a和b是布尔量就等同于and运算符;如果a是向量,b不是,它将扩展长度但不改变方向。

a x b

a * b

a times b

a multiplied by b

a cross b

乘运算

a . b

a dot b

如果a和b是向量就 点乘运算,其他数则等同普通乘运算。

a% of b

a % of b

a%乘以b

a / b

a divided by b

普通除法运算。如果a和b是布尔量就等同于or运算符

a div b

整数除法。(a或b可以是非整数)

*文章为作者独立观点,不代表造价通立场,除来源是“造价通”外。
关注微信公众号造价通(zjtcn_Largedata),获取建设行业第一手资讯

热门推荐

相关阅读