Graphs

A graph consists basically of a group of points called nodes, segments that connect the nodes so that a mesh is formed, and blocks contained inside the enclosed graph network.

Segment Segment parameters

Segments can contain a street centerline, roadbed lanes, and sidewalk lanes. When a segment is highlighted or selected, you can work with street configurations.

Node Node parameters

Nodes create node shapes, such as node roadbeds and sidewalks.

Block Block

When a graph network is enclosed, a block is created which contains lots.

A graph can be drawn manually, generated procedurally, or by importing suitable data.

Graphs hold segments and nodes as well as shapes that are created automatically including lots, blocks, and street shapes:

Graph network and outputs
The input is a graph network and the output are lots, lanes, and nodes.

Segments, nodes, and blocks can have the following child elements:

Roadbed Lane Roadbed lane

Roadbed lanes are usually lanes adjacent to the centerline of a street.

Sidewalk LaneSidewalk lane

Sidewalk lanes are lanes outside of the roadbed lanes.

Node Roadbed Node Roadbed

Node roadbeds are roadbed shapes located within a node or intersection.

Node Sidewalk Node Sidewalk

Node sidewalks are sidewalk shapes located within a node or intersection.

Lot Lot

Lots are created within blocks.

To control the basic attributes of graph elements such as widths, use the Inspector window in ArcGIS CityEngine with the corresponding segment or node selected.

Also, you can work with street and intersection shape UV coordinates that are generated for each shape and can be used for UV splits and texturing.

Graph considerations

Consider the following when working with graphs:

  • As with any other shape in CityEngine, the shapes associated with graph elements can have a CGA rule assigned. You'll find a CGA rule that generates fully decorated street geometry in the rules/Streets folder in ESRI.lib.
  • To enable or disable shape creation, use the Create Shape parameter at the block, street, or node parameters in the Inspector window. By default, shape creation is enabled.
  • Additionally, you can use the Edit street/curves tool to edit the street curve handles.
  • For each loop in the graph network, a block is automatically created.
  • Shapes that are children of graph elements can't be copied or moved to a shape layer.
  • Consider the following when working with object attribute inheritance:
    • Lots inherit the attributes of the block.
    • Lanes inherit the attributes of the segment.
    • Node shapes inherit the attributes of the node.
    • New object attributes added onto lanes or node shapes are always added to their parent node or segment.
  • While street networks are the most common use case for graphs, CGA rules can be written to generate other linear features such as underground pipe networks, power lines, transportation lines, or even the walls of a medieval castle.


In this topic
  1. Graph considerations