childEdge method

EdgeShape childEdge(
  1. int index
)

Get a child edge.

Implementation

EdgeShape childEdge(int index) {
  assert(0 <= index && index < vertexCount - 1);
  final edge = EdgeShape();

  edge.radius = radius;
  final v0 = vertices[index + 0];
  final v1 = vertices[index + 1];
  edge.vertex1.x = v0.x;
  edge.vertex1.y = v0.y;
  edge.vertex2.x = v1.x;
  edge.vertex2.y = v1.y;

  if (index > 0) {
    final v = vertices[index - 1];
    edge.vertex0.x = v.x;
    edge.vertex0.y = v.y;
    edge.hasVertex0 = true;
  } else {
    edge.vertex0.x = _prevVertex.x;
    edge.vertex0.y = _prevVertex.y;
    edge.hasVertex0 = _hasPrevVertex;
  }

  if (index < vertexCount - 2) {
    final v = vertices[index + 2];
    edge.vertex3.x = v.x;
    edge.vertex3.y = v.y;
    edge.hasVertex3 = true;
  } else {
    edge.vertex3.x = _nextVertex.x;
    edge.vertex3.y = _nextVertex.y;
    edge.hasVertex3 = _hasNextVertex;
  }
  return edge;
}