docs: void addConnectedSegment(RoadPolyline segment, boolean attachToStartPoint) {
  		if (segment == null) {
  			return;
  		}
  		if (this.connectedSegments.isEmpty()) {
  			this.connectedSegments.add(new Connection(segment, attachToStartPoint));
  		} else {
  			// Compute the angle to the unit vector for the new segment
  			final double newSegmentAngle = computeAngle(segment, attachToStartPoint);
  
  			// Search for the insertion index
  			final int insertionIndex = searchInsertionIndex(newSegmentAngle, 0, this.connectedSegments.size() - 1);
  			// Insert
  			this.connectedSegments.add(insertionIndex, new Connection(segment, attachToStartPoint));
  		}
  		fireIteratorUpdate();
  	}