生成街道网络

生成街道工具可用于生成典型街道网络。 可以任意组合三种街道模式(有机、栅格和径向)。 对话框具有许多设置,并允许用户根据需求生成街道网络。

该工具可通过以下方式使用:

  • 创建街道网络(取消全选并启动生成器)。
  • 通过在生成之前选择现有街道图层来扩展现有的街道网络。
  • 扩展现有街道网络的一部分(选择现有街道网络的某些街道并应用该工具)。

您可以通过在主菜单中单击图形 > 生成街道来访问生成街道工具。

注:

该算法可区分主要街道和次要街道。 基本上来说,系统将一直创建主要街道,直到这些街道围成一个区域为止(该区域被称为 1/4 地块)。 然后,1/4 地块将被次要街道细分。 该算法将继续创建主要街道,依此类推。

向导会按照用户所选数量创建街道。 系统会将每条新街道本地添加到现有街道网络中,具体取决于许多设置(其中街道模式可能是最重要的)。

  • 基本设置 - 包括要生成的街道数量和街道模式。
  • 模式特定设置 - 可以更为精确地定义街道模式。
  • 高级设置 - 可指定算法行为和算法约束。
  • 环境设置 - 包括多个障碍地图,用于限制生成区域和地形,以使所创建的街道适应高程。
  • 街道宽度设置 - 可定义所创建街道的街道宽度。

基本设置

基本设置包括街道数量、街道模式和街道长度。

有机主要街道模式和栅格次要街道模式
有机主要街道模式和栅格次要街道模式
主要街道和次要街道的径向模式
主要街道和次要街道的径向模式

街道模式需要两个街道长度:长长度和短长度。 有机模式仅需要一个长度(将使用短长度)。

基本设置包括以下参数:

街道数

将生成的总街道数。

主要街道模式

用于主要街道的街道模式:有机、栅格或径向。

次要街道模式

用于次要街道的街道模式:有机、栅格或径向。

长长度

长街道的平均长度(用于栅格和径向模式)。

长长度偏差

在 1/4 地块细分之前,长街道的长度将在 [长长度 - 长长度偏差,长长度 + 长长度偏差] 间隔内随机设置。 对于有机模式,此长度将为每个新街道随机设置。

短长度

短街道的平均长度(用于所有模式)。 请参阅“短长度偏差”。

短长度偏差

在 1/4 地块细分之前,短街道的长度将在 [短长度 - 短长度偏差,短长度 + 短长度偏差] 间隔内随机设置。 对于有机模式,此长度将为每个新街道随机设置。

模式特定设置

模式特定设置可以更为详细地指定街道模式。

最大弯角(有机)

有机街道的最大弯角。 新有机街道的角度将在 [指定角度 - 最大弯角,指定角度 + 最大弯角] 间隔内随机设置。 它将定义街道扩展的有效区域(下图中的绿色区域)。

有机模式的扩展功能

城市中心(径向)

用于径向模式的城市中心。 街道在中心周围或外部呈径向或向心状。

最大弯角(径向)

径向街道的最大弯角。 算法将尝试使指定街道适应径向或向心方向。 最大适应角度将受此参数限制。

街道对齐(径向)

径向街道有一个长长度和一个短长度。 该参数将决定长街道是沿径向对齐、向心对齐还是随机选择对齐方式;(左)径向街道对齐(右)向心街道对齐。

径向街道对齐
向心街道对齐

高级设置

高级设置可指定算法行为和算法约束。

捕捉距离

如果新街道节点与现有街道节点之间的距离小于此捕捉距离,则系统会将新节点捕捉到现有街道节点中。 这样,您即可控制街道网络中任意两个节点之间的最小距离。 请注意,如果次要街道与主要街道相交,则系统仅会应用此距离的一半(以实现更真实的 1/4 地块细分建模)。

最小角度

街道网络中任意两个相邻街道之间的最小角度。 系统将保证不会生成更小的角度。

交叉街道比率

使用交叉街道比率,您可以影响 1/4 地块的平均大小。 算法将尝试满足此比率(仅计入主要街道和主要十字路口!)。 如果此比率较大,则 1/4 地块将会较大;如果此比率较小,则 1/4 地块将会较小。 交叉街道比率 = #主要街道节点/#主要十字路口节点,其中街道节点是一个价(价 = 传出图表段数)等于 2 的街道节点,而十字路口节点是一个价大于 2 的十字路口节点。

开发中心首选项

如果数值较大,则中心附近的街道节点将比外面的节点更有可能得到开发。 中心将定义为所有选定节点的质心。 如果数值较小,则所有节点将有同样的几率得到开发。

主要街道的角度偏移

在创建主要街道之前,系统会将此偏移角度添加到指定街道角度中。

次要街道的角度偏移

在创建次要街道之前,系统会将此偏移角度添加到指定街道角度中。

环境设置

您可以使用环境地图定义地形或障碍地图等边界条件。

适应高程

启用或禁用对高程的适应。

临界坡度

系统仅适应坡度大于临界坡度的指定街道。

最大坡度

最大容许街道坡度。

适应角度

系统将适应指定街道的最大角度(绕 y 轴旋转)。

高度地图

如果选择了高度地图,则新街道将与高度地图对齐,且如果将其启用(请参见下文),则街道将适应高程。 在组合框中,系统列出了场景的所有地形。 地形是用于定义浮点型属性 elevation 的属性地图。

障碍地图

如果选择了障碍地图,则新的街道节点将避开障碍。 该街道算法能够规避和绕开障碍。 在组合框中,系统列出了所有障碍地图。 障碍地图是用于定义布尔型属性 obstacle 的属性地图。

使用障碍地图的街道发展

适应高程

如果选择了地形并启用了适应功能,则新街道对高程的适应将处于活动状态。 如果指定街道的长度接近于长长度,则系统将适应指定街道以便沿高程等值线行进,即目标为创建坡度为 0 的街道。

适应高程
适应高程

如果其长度接近于短长度,则系统将适应指定街道,以便最大程度地向上或向下沿高程行进。

街道宽度设置

系统会将街道和人行道宽度分配至新街道。 如果扩展现有街道,则系统会将其街道和人行道宽度复制到新街道。 否则,系统将根据以下参数随机设置街道和人行道宽度。

常规参数

使用街道集成来计算宽度

使用图形拓扑通过图形连通性来计算街道和人行道宽度(较慢),否则将使用随机分布的街道宽度(较快)。

街道集成参数

街道车道的最小数量

每条街道可能拥有的最小车道数。

街道车道的最大数量

每条街道可能拥有的最大车道数。

最小人行道宽度

每条街道人行道的最小宽度。

最大人行道宽度

每条街道人行道的最大宽度。

随机分布的街道宽度参数

主要街道宽度

主要街道的平均街道宽度。 请参阅“主要街道宽度偏差”。

主要街道宽度偏差

主要街道的街道宽度偏差。 系统将在 [主要街道宽度 - 主要街道宽度偏差,主要街道宽度 + 主要街道宽度偏差] 间隔内随机设置街道宽度。

主要街道人行道宽度

主要街道的平均人行道宽度。 请参阅“主要街道人行道宽度偏差”。

主要街道人行道宽度偏差

主要街道的人行道宽度偏差。 系统将在 [主要街道人行道宽度 - 主要街道人行道宽度偏差,主要街道人行道宽度 + 主要街道人行道宽度偏差] 间隔内随机设置人行道宽度。

次要街道宽度

次要街道的平均街道宽度。 请参阅“次要街道宽度偏差”。

次要街道宽度偏差

次要街道的街道宽度偏差。 系统将在 [次要街道宽度 - 次要街道宽度偏差,次要街道宽度 + 次要街道宽度偏差] 间隔内随机设置街道宽度。

次要街道人行道宽度

次要街道的平均人行道宽度。 请参阅“次要街道人行道宽度偏差”。

次要街道人行道宽度偏差

次要街道的人行道宽度偏差。 系统将在 [次要街道人行道宽度 - 次要街道人行道宽度偏差,次要街道人行道宽度 + 次要街道人行道宽度偏差] 间隔内随机设置人行道宽度。

街道模式示例

作为印象的工作流示例

  • 创建一条单独的街道。
    单条街道图像
  • 使用栅格模式的第一个生成阶段。
    使用栅格的第一个生成阶段图像
  • 使用栅格模式的第二个生成阶段。
    第二个生成阶段图像
  • 将连接两个网络。
    已连接两个网络的图像

参数集

  • 栅格模式。
    栅格模式
    栅格模式设置
  • 径向模式。
    径向模式
    径向模式设置
  • 有机模式。
    有机模式
    有机模式设置
  • 径向模式为主,栅格模式为辅的街道。
    径向模式为主,栅格模式为辅的街道
    径向模式为主,栅格模式为辅的街道设置
  • 有机圆形模式。
    有机圆形模式
    有机圆形模式设置
  • 蜂巢样式。
    蜂巢样式
    蜂巢样式设置
  • 眼镜样式。
    眼镜样式
    眼镜样式设置
  • 栅格的有机分布。
    栅格的有机分布
    栅格的有机分布设置