与条件规则类似,CGA 形状语法允许随机规则,即使用随机性创建变化。

PredecessorShape --> 
                     percentage% : Successor1 
                     percentage% : Successor2
                     ...
                     else : SuccessorN

 

所有百分比的总和不得大于 100。

示例 1

Lot -->
	30%  : Lot("residential")
	20%  : Lot("retail")
	else : Lot("industrial")

 

在这个例子中,有 30% 的机会选择第一个继任者并生成一个带有参数“住宅”的新地块形状,有 20% 的机会选择第二个继任者,50% 的机会选择最后一个继任者。

所有随机数以及上述百分比的选择都取决于当前形状的种子(种子形状属性)。

示例 2

同样,条件块可以嵌套:

Lot -->
	30%  : 
	              50%  : Lot("residential")
	              else : NIL 
	20%  : Lot("retail")
	else : Lot("industrial")

 

笔记:

条件块总是需要用else:语句结束,百分比和后继不能混淆。