孫學(xué)進(jìn) 王德貴
由于XRmaker官網(wǎng)遷移,前段時(shí)間有讀者遇到無法注冊新用戶無法訪問官網(wǎng)等問題,目前已解決。XRmaker是收費(fèi)軟件,免費(fèi)用戶使用的模型資源較少。
我們通過青蛙跳高案例學(xué)習(xí)變量與運(yùn)算。

1.常量
常量亦稱“常數(shù)”,一般是指在程序執(zhí)行過程中不能被改變的量。比如,π在計(jì)算時(shí),一般取3.1416,就可以定義PI=3.1416,在程序設(shè)計(jì)時(shí),使用PI即可。
2.變量
一般是指在程序運(yùn)行過程中可能會隨時(shí)變化的量。
變量必須先定義后使用。在定義時(shí)指定該變量的名字和類型。比如定義變量并初始化后,x=12,y=1.2345,在程序執(zhí)行時(shí),就可以直接用x,y表示相應(yīng)的值了,當(dāng)然程序運(yùn)行時(shí)。x,y的值也可能會發(fā)生變化。
3.XRmaker變量類型
變量設(shè)置在“數(shù)據(jù)”中,點(diǎn)擊“管理變量”,即可在窗口中對變量進(jìn)行添加、刪除等操作。

XRmaker變量類型有5種,分別是:
(1)文本:string,也稱為字符串。
(2)浮點(diǎn):float,有兩種表示方法。
①十進(jìn)制小數(shù)形式由數(shù)字和小數(shù)點(diǎn)組成。如:123.456,0.345,-56.79,0.0,12.0等。

XRmaker初始化浮點(diǎn)型數(shù)據(jù)時(shí),不能超過6個(gè)字符,包括小數(shù)點(diǎn)。
②科學(xué)計(jì)數(shù)法
科學(xué)記數(shù)法也稱指數(shù)形式,雖然初始化浮點(diǎn)型數(shù)據(jù)不能超過6位,但當(dāng)輸出計(jì)算的結(jié)果值超過6位時(shí),直接采用科學(xué)記數(shù)法,能精確到小數(shù)點(diǎn)后6位。
比如,12.34e3(代表12.34×10的3次方),-346.87e-25(代表-346.87×10的-25次方),0.145E25(代表0.145×10的25次方)等。由于在計(jì)算機(jī)輸入或輸出時(shí),無法表示上角或下角,故規(guī)定以字母e或E表示以10為底的指數(shù)。但應(yīng)注意:e或E之前必須有數(shù)字,且e或E后面必須為整數(shù)。如不能寫成e4,12e2.5。
(3)布爾:bool,只有兩個(gè)值:真和假。可以簡單理解為對與錯(cuò),1與0等等。真假測試程序:
(4)矢量:包括三個(gè)值,x,y,z,就是三維坐標(biāo)值,浮點(diǎn)型。
(5)顏色:定義顏色,三個(gè)值范圍均為[0,1],即大于等于0,小于等于1,浮點(diǎn)型。而且是用RGB構(gòu)成,即由紅色(R)、綠色(G)、藍(lán)色(B)構(gòu)成。顏色也可以在前面顏色框里使用鼠標(biāo)選取。

目前變量類型里沒有整型(int)數(shù)據(jù),給編程帶來了諸多不便。
4.變量初始化
定義變量時(shí)直接賦值。在使用中,變量可以進(jìn)行初始化,也可以不進(jìn)行初始化,這主要決定于設(shè)計(jì)者使用情況。
5.變量添加與刪除
輸入名字、選擇類型、初始化,然后點(diǎn)擊“添加”即可定義變量,如果不需要可直接刪除。
6.變量作用域
即變量的作用范圍,分為全局變量和私有變量。
全局變量是所有模型的程序中都可以使用或調(diào)用,而私有變量就只能在當(dāng)前模型中使用,其他程序不能調(diào)用。
7.變量的使用
添加變量后,有兩個(gè)模塊,一個(gè)是賦值模塊,一個(gè)是獲取值模塊,在程序運(yùn)行過程中,變量的值會隨著程序的運(yùn)行而發(fā)生變化。
在使用時(shí),運(yùn)算結(jié)合起來,才能發(fā)揮其更大的作用,在后面內(nèi)容中詳細(xì)說明。
運(yùn)算模塊,包括4個(gè)內(nèi)容:邏輯運(yùn)算(三角+六邊形)、關(guān)系運(yùn)算(三角+圓形)、算術(shù)運(yùn)算(圓形+圓形)和文本運(yùn)算(方形)。用運(yùn)算符將變量、常量結(jié)合而構(gòu)成的式子,稱為表達(dá)式。一個(gè)常數(shù)、一個(gè)變量都是表達(dá)式。
1.算術(shù)運(yùn)算與算術(shù)表達(dá)式
算術(shù)運(yùn)算是程序設(shè)計(jì)中應(yīng)用非常重要的知識點(diǎn),包括加減乘除、求余、隨機(jī)數(shù)、冪運(yùn)算、常數(shù)(π,e等)、絕對值、取整、四舍五入、平方根、三角函數(shù)、反三角函數(shù)、對數(shù)和指數(shù)等運(yùn)算,基本滿足所有的數(shù)學(xué)運(yùn)算。這里不一一舉例,有些涉及高中數(shù)學(xué)知識,后面用到的時(shí)候,我們再做敘述。例如:
x+y,a*x+b,3*a+b-2*c……都是算術(shù)表達(dá)式。
2.關(guān)系運(yùn)算與關(guān)系表達(dá)式
關(guān)系運(yùn)算,就是判斷兩個(gè)表達(dá)式的關(guān)系,也稱為比較運(yùn)算,其運(yùn)算結(jié)果為布爾值。主要包括大于、小于、等于、不等于四個(gè)運(yùn)算,“等于”和“不等于”是判斷兩個(gè)值是否相等或不相等,結(jié)果為布爾值,非真即假。
例如:“3>2”“3<4”都是成立的,為真。“1+4>8”“4<1-2”結(jié)果為假。
x==y,a>b,c
3.邏輯運(yùn)算與邏輯表達(dá)式
邏輯運(yùn)算包括與、或、非三種運(yùn)算。
(1)與:即是條件要同時(shí)滿足,才為真。即兩個(gè)條件皆為真,“與”運(yùn)算才為真,否則就是假。
“與”運(yùn)算可以理解為乘法運(yùn)算,即:
4.文本運(yùn)算
文本運(yùn)算也就是字符串運(yùn)算,包括數(shù)值轉(zhuǎn)換為文本、連接兩個(gè)文本、求文本長度和獲取文本第幾個(gè)字符。
求文本的長度和獲取文本中第幾個(gè)字符比較好理解,這里舉例說明數(shù)值轉(zhuǎn)換為文本問題,即如果數(shù)值12.34轉(zhuǎn)換為文本就是“12.34”,這里感覺沒有什么變化,但在運(yùn)算的時(shí)候,就完全不一樣了。例如,12.34+1.1=13.44,這是數(shù)值運(yùn)算,如果是文本運(yùn)算,“12.34”+“1.1”=“12.341.1”,就是直接連接兩個(gè)文本了,不做數(shù)值加法。
在運(yùn)算模塊里,算術(shù)運(yùn)算積木兩端是圓角,結(jié)果為數(shù)值,邏輯運(yùn)算和關(guān)系運(yùn)算積木兩端為尖角,結(jié)果為布爾值,而文本運(yùn)算積木是矩形,結(jié)果為文本或數(shù)值。
主要是應(yīng)用所學(xué)知識,模擬跳高。
2.青蛙動畫設(shè)置
(1)播放模式:Default
(2)跳起時(shí),動畫狀態(tài)為“move”,播放1秒,跳到最高時(shí)狀態(tài)為不動“ide”,關(guān)閉文字顯示,再落到地面,動畫狀態(tài)為“move”。
3.變量和隨機(jī)數(shù)
(1)添加變量
添加float型變量,保存青蛙跳起高度值,然后讓青蛙再向下回到原來位置。
(2)隨機(jī)數(shù)
運(yùn)算模塊里的隨機(jī)數(shù)積木產(chǎn)生的隨機(jī)數(shù)是浮點(diǎn)數(shù),值的范圍根據(jù)發(fā)布視角的情況取值,在發(fā)布視角能看到即可。
4.文本顯示
青蛙跳起后,在最高點(diǎn)顯示高度值,即顯示存儲的變量值,但需要轉(zhuǎn)換為文本,在青蛙落下時(shí),關(guān)閉顯示。
5.代碼
青蛙等待3秒后,繼續(xù)跳起。
6.學(xué)習(xí)三部曲:
(1)抄:作品基本內(nèi)容完全抄下來學(xué)習(xí)。
(2)改:在抄下來的作品理解以后,按自己的思路進(jìn)行修改,變成自己的創(chuàng)意。
(3)造:自行設(shè)計(jì)作品。
關(guān)于XRmaker變量與運(yùn)算就介紹到這,由于都是自己學(xué)習(xí)的感受和體會,難免有錯(cuò)誤或是理解不到位,請斧正。