Struct CorridorShare

Struct Documentation

struct CorridorShare

One shared border between two cells, and how the corridor over it is split.

A pair of touching cells gives two of these, one seen from each cell. The pair that shares the border evenly gives 0.5 twice; otherwise the smaller cell gives the whole corridor and the larger one keeps a row with a share of 0, so a report can tell which side of the border the corridor came from.

Public Members

size_t cell_i = {0}

Cell the corridor is taken out of.

size_t cell_k = {0}

Neighbour on the other side of the border.

double perimeter_i = {0.0}

Perimeter of cell cell_i, the size the rule compares.

double perimeter_k = {0.0}

Perimeter of cell cell_k.

bool same_size = {false}

True when both perimeters are equal up to the tolerance of the rule.

double share = {0.0}

Part of the corridor width taken out of cell_i: 0, 0.5 or 1.

double shared_length = {0.0}

Length of the border the two cells share.

F2CMultiLineString shared_border

Border segments the corridor is opened along.