signwritingBox function

Tuple2<int, int> signwritingBox(
  1. Sign sign
)

Recomputes a sign's bottom-right box corner (maxX, maxY) from its symbols' rendered sizes — the tight box used when trustBox is off.

Mirrors Python signwriting.visualizer.visualize.signwriting_box.

Implementation

Tuple2<int, int> signwritingBox(Sign sign) {
  int maxX = 0;
  int maxY = 0;
  for (final symbol in sign.symbols) {
    final size = getSymbolSize(symbol.symbol);
    maxX = max(maxX, symbol.position.item1 + size.item1);
    maxY = max(maxY, symbol.position.item2 + size.item2);
  }
  return Tuple2(maxX, maxY);
}