Select to view content in your preferred language

The new street config for pipes etc.

493
1
12-17-2025 11:11 AM
Kenneth-Lindhardt
New Contributor

Sorry I've been out for a year or so, and things have changed a lot, especially the streets. Usually I use the street network for all kinds of things, når only streets.

For example, if I wanted to create 3D underground pipes, I would use the street network. It seems to have complicated everything a lot if you are not working with streets. To remove lanes and such from a large pipe system crashes everything.

 

Am I the only one confused?

0 Kudos
1 Reply
ThomasFuchs
Esri Regular Contributor

Hello @Kenneth-Lindhardt 

Thank you for bringing up this topic. With the changes to street networks introduced in CityEngine 2025, most legacy rules continue to function as before. However, there is an important change in how street segments connect to nodes: transition shapes are now part of the node itself. Since the lane information is not available on those shapes, creation of pipe extensions for multiple lanes is not supported.

To help illustrate this, I created a simple pipe network rule that demonstrates how to handle pipe connections to nodes under the new system. 

version "2025.1"

attr shapeType = ""
@Distance
attr Height_Joint = 4
@File
attr pipeAsset = "assets/cylinder.hor.obj"
attr multiLanes = false

@StartRule
PipeNetwork -->
	case shapeType == "Sidewalk": NIL
	case shapeType == "Street": Pipe
	else: Connector
	
Pipe --> insertAlongUV(0, pipeAsset, geometry.dv(0,unitSpace)) Material

Connector --> extrude(Height_Joint) Material

ConnectorExt --> 
	split(v,uvSpace,0)
		{ -geometry.vMin: NIL			# the lanes start at v-coord 0 i.e. everything below can be splitted away
		| 1: ConnectorType(multiLanes)	# the lanes end at v-coord nLanesTotal
		| ~1			  : NIL }		# all remaining geometry beyond can be split away

ConnectorType(square) --> 
	case square: Connector
	else: Pipe

Material --> color("#ffae42") setNormals(auto)


The user needs to set the Start Rule "ConnectorExt" on the new node extension shapes. Additionally, the attribute "multiLanes" defines if a pipe or a square extension is created. 

ThomasFuchs_1-1771325007540.png