SU动态组件
一、各种函数认识
(一)数学函数
ABS(number)求整数的绝对值
1
alert(abs(-127))

CEILING(number,significance)将参数
number向上(沿绝对值增大方向)取值,取到最接近significance的倍数。比如:1
2
3
4CEILING(-2.5,-2);
//输出为-4!
CEILING(3.14159,100);
//输出为100!注:两个参数符号必须一致!
DEGREES(number)将弧度值转换为角度值,如:
1
2alert(degrees(pi()));
//输出180
EVEN(number)将参数
number向上(沿绝对值增大方向)取值,取到最接近的偶数。比如:1
2EVEN(5)
//输出6EXP(number)exp(x)表示的是e的x次方,x可以是一个函数。
FLOOR(number,significance)将参数
number向下(沿绝对值减小方向)取值,取到最接近significance的倍数。比如:1
2
3
4FLOOR(-2.56,-2)
//返回-2
FLOOR(99.99,20)
//返回80INT(number)舍去小数,向下取整。
ISEVEN(NUMBER)判断参数是否为偶数,是则返回
1,否则返回0。ISODD(number)判断参数是否为奇数,是则返回
1,否则返回0。LN(number)计算参数的自然对数,与
EXP()互为反函数。LOG10(number)计算以10为底、输入参数的对数。
ODD(number)将一个不是奇数的数值向上舍入为最接近的奇数:
1
2alert(odd(10));
//输出11POWER(base,power)计算
base的power次幂的值:1
2
3
4
5
6power(5,2);
//5的2次方,返回25
power(6.6,2.5);
//6.6的2.5次方,返回111.9.7666
power(6.6,1/4);
//6.6的1/4次方,返回1.602825PI()返回圆周率π的值,精确到小数点后6位:3.141593
RADIANS(number)将角度转换为弧度。
RAND()返回范围在
[0,1)的随机实数,一般小数点后保留6位。RANDBETWEEN(bottom,top)返回自定义范围内的随机数,范围为
[bottom,top)。ROUND(number,decimal_places)四舍五入函数,操作目标为
number参数,decimals_places为保留的位数。decimals_places参数,应填入整数,值大于0表示保留的小数位数有几个,等于0表示不保留小数,小于0表示将整数部分的后几位四舍五入,如:1
2
3
4
5
6round(123.14159,2);
//保留两位小数,结果为123.14
round(123.14159,0);
//不保留小数,结果为123
round(123.14159,-2);
//将整数部分的后两位四舍五入,结果为100注:在Excell里以上表述完全生效,但是在SU里第二个参数填写负数和0的作用一样,都是取整!
SIGN(number)返回参数的符号,参数大于0返回1,等于0返回0,小于0返回-1。
SQRT(number)对参数开二次根号。
(二)SketchUp函数
CHOOSE(index,value1,value2,......valueN)第一个参数为索引值(从
1开始,0会报错),后面的值都是筛选数据,从一组数据中返回第index个数据:1
2alert(choose(1,9,8,7,6,5));
//输出为9CURRENT("attributeName")EDGES()FACEAREA("materialName")FACES()LARGEST(value1,value2,......valueN).LAT()LNG()NEAREST(originalValue,value1,value2,......valueN)OPTIONINDEX("attributeName")OPTIONLABLE("attributeName")SMALLEST(value1,value2,......valueN)SUNANGLE()SUNELEVATION()
(三)文字函数
CHAR(number)CODE(text)CONCATENATE(text1,text2,......textN)DOLLAR(value,decimals)EXACT(text1,text2)FIND(findText,text,position)LEFT(text,number)LEN(text)LOWER(text)MID(text,start,number)PROPER(text)REPLACE(text,position,length,new)REPT(text,number)RIGHT(text,number)SUBSTITUTE(text,searchText,newText,occurrence)TRIM(text)UPPER(text)VALUE(text)
(四)三角函数
ACOS(number)ACOSH(number)ASIN(number)ASINH(number)ATAN(number)ATANH(number)COS(number)COSH(number)SIN(number)SINH(number)TAN(number)TANH(number)
(五)逻辑函数
AND(logicalValue1,logicalValue2,...logicalValueN)FALSE()IF(test,thenValue,elseValue)NOT(logicalValue)OR(logicalValue1,logicalValue2,...logicalValueN)TRUE()
(六)onClick函数
ALERT("message")ANIMATE("attribute",state1,state2...stateN)ANIMATEFAST("attribute",state1,state2...stateN)ANIMATECUSTOM("att",时间,缓慢进入,缓慢移出,状态1,状态2,...状态N)ANIMATESLOW("attribute",state1,state2...stateN)GOTOSCENE("sceneName",time,easein,easeout)REDRAW()SET("attribute",state1,state2...stateN)