Virtools脚本语言(VSL)教程 - 语句

<p>
</p>
<h3>条件语句</h3>
<h4>
<a name="TOC-if-else-"></a>if else 语句</h4>
<p>如果一个逻辑条件为true,使用if 语句来执行特定的语句,你可以可选择性使用else子句来执行其它语句如果条件为false。if语句看起来如下:</p>
<p>if (<em>condition</em>) {<em>statements1</em>}[else {<em>statements2</em>}]</p>
<p>实例:</p>
<pre>bool CheckTextureSquare(Texture tex)<br>{<br> if (tex.GetHeight() == tex.GetWidth())<br> {<br> bc.OutputToConsole("Texture ok.");<br> return true;<br> }<br> else<br> {<br> bc.OutputToConsole("Error, texture is not square.");<br> return false;<br> }<br>}
<h4>
<a name="TOC-switch-"></a>switch 语句</h4>
<p>switch语句运行程序判断表达式并试图去将表达式的值与case标签进行匹配。如果找到匹配,程序执行相关语句。表达式必须是判断整数类型。switch语句的语法如下:</p>
<p>switch (<em>expression</em>){ case<em>label</em>:<em>statement</em>; [break;] case<em>label</em>:<em>statement</em>; [break;]... [default :<em>statement</em>;] }</p>
<p>实例:</p>
<pre>void GetVectorDirection(int direction, Vector vec)<br>{<br> switch(direction)<br> {<br> case 0 :<br><span>// North</span>
vec.Set(0,1,0);
break;<br><br> case 1 :<br><span>// East</span>
vec.Set(1,0,0);
break;<br>
case 2 :
<span>// South</span>
vec.Set(0,-1,0);
break;<br>
case 3 :
<span>// West</span>
vec.Set(-1,0,0);
break;<br>
default :
bc.OutputToConsole("error, bad direction number.");
break;
}
}

<h3>
<a name="TOC-2"></a>循环语句</h3>
<h4>
<a name="TOC-for-"></a>for 语句</h4>
<p>for语句的语法如下:</p>
<p>for ([<em>initialExpression</em>]; [<em>condition</em>]; [<em>updateExpression</em>]) {<em>statement block</em>}</p>
<p>for语句重复执行语句块(statement block),直到条件(<em>condition</em>)判断值为0。初始表达式(initialExpression)、条件(condition)及更新表达式(updateExpression)字段均为可选。</p>
<p>initialExpression在for语句的其它元素之前被执行,常用来初始化循环的索引。它可以包含声明或赋值。<br><br>condition在该循环的给定迭代执行之前被执行,包括第一次迭代。它是一个判断整数类型的表达式。<br><br>updateExpression在循环每一次迭代结束时被判断。它经常是一个赋值或增值表达式。</p>
<p>实例:</p>
<pre>float Average(IntArray array)<br>{<br> float total = 0;<br> int arraySize = array.Size();<br><span>// Add all integers</span>
for (int i = 0; i < arraySize; ++i)
total += array[i];

return total/arraySize;
}

<h4>
<a name="TOC-do-while-"></a>do-while 语句</h4>
<p>do-while语句重复执行直到指定的条件被判断为false。do-while语句的语法如下:</p>
<p>do {<em>statement</em>} while (<em>condition</em>);</p>
<p>语句在条件被检测之前就执行了一次。如果条件返回true,语句再执行一次。</p>
<p>实例:</p>
<pre>void MakeItAtLeastOnce(int i)<br>{<br> do<br> {<br> --i;<br><span>// MakeIt ...</span>
}
while (i > 0);
}

<h4>
<a name="TOC-while-"></a>while 语句</h4>
<p>while语句让你重复一段语句直到指定的条件被判断为false。while语句的语法如下:</p>
<p>while (<em>condition</em>) {<em>statements</em>}</p>
<p>实例:</p>
<pre>int Factorial(int n)<br>{<br> int res = 1;<br> while (n > 1)<br> {<br> res *= n--;<br> }<br> return res;<br>}
<h4>
<a name="TOC-break-"></a>break 语句</h4>
<p>使用break语句来终止一个循环或switch语句。</p>
<p>实例:</p>
<pre>void FindIndex(IntArray array, int value)<br>{<br> int size = array.Size();<br> int i = 0;<br> for (;i < size; ++i)<br> if (array[i] == value)<br> break; <span>// We don't have to search anymore ...<br> // exit the for loop<br></span>

<span>// And continue processing here...</span> <br>}
<h4>
<a name="TOC-continue-"></a>continue 语句</h4>
<p>你只能在循环语句内使用continue语句。执行continue语句停止当前循环,并从该循环的起点处继续程序流程。</p>
<p>实例:</p>
<pre>struct person<br>{<br> bool men;<br> int age;<br>};<br><br>float AverageMenAge(person parray[3])<br>{<br> int nbMen = 0;<br> float averageAge = 0;<br> for (int i = 0; i < 3; ++i) <br> {<br> person p = parray[i];<br> if (!p.men)<br> continue; <span>// Go to next iteration</span>

++nbMen;
averageAge += p.age;
}
if (nbMen)
return averageAge/nbMen;
return -1;
}

</pre></pre></pre></pre></pre></pre></pre>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Virtools是一个开发虚拟现实(VR)和增强现实(AR)应用程序的集成开发环境(IDE)。它提供了丰富的工具和资源,帮助开发者创建交互式和高度定制化的虚拟现实应用。 Virtools教程是一种学习资源,用于教授如何使用Virtool开发VR和AR应用。教程通常包含以下内容: 1. Virtools基础知识:教程会逐步介绍Virtools的基本功能和工具。学习者将了解Virtools的界面、工具栏和资源管理器等组件的功能和用途。 2. 脚本编程:Virtools允许开发者使用脚本编程语言来创建自定义的交互逻辑和行为。教程将教授如何编写Virtools脚本以实现应用程序的特定功能。 3. 场景构建:Virtools教程将指导学习者如何创建虚拟场景、导入和操控模型、设置灯光和相机等。学习者将学会使用Virtools的工具来构建逼真的虚拟环境。 4. 交互设计:教程将教授如何设计交互性,例如如何使用按钮、手势和语音命令等方式与虚拟环境进行交互。 5. 增强现实:Virtools还支持增强现实应用的开发。教程将指导学习者如何将虚拟内容与现实世界中的图像或物体相结合,创造出引人入胜的增强现实体验。 通过学习Virtools教程,开发者可以掌握使用Virtools开发VR和AR应用所需的技能和知识。这些应用可以在游戏、教育、建筑、仿真等领域中得到广泛应用。同时,掌握Virtools的开发技能还可以为开发者提供在虚拟现实和增强现实领域中的职业机会。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值