getCellEntry function

List<double> getCellEntry(
  1. Direction direction,
  2. double cellSize,
  3. double padding,
  4. double cellX,
  5. double cellY,
  6. double distance,
  7. AnchorMargin margin,
  8. MatrixOrientation orientation,
)

Implementation

List<double> getCellEntry(
    Direction direction,
    double cellSize,
    double padding,
    double cellX,
    double cellY,
    double distance,
    AnchorMargin margin,
    MatrixOrientation orientation) {
  switch (direction) {
    case Direction.top:
      var x = getCellCenter(
          cellSize, padding, cellX, cellY, distance, margin, orientation)[0];
      var y = cellY * cellSize + padding;
      return [x, y];
    case Direction.bottom:
      var x = getCellCenter(
          cellSize, padding, cellX, cellY, distance, margin, orientation)[0];
      var y = cellY * cellSize + (cellSize - padding);
      return [x, y];
    case Direction.right:
      var y = getCellCenter(
          cellSize, padding, cellX, cellY, distance, margin, orientation)[1];
      var x = cellX * cellSize + (cellSize - padding);
      return [x, y];
    case Direction.left:
      var y = getCellCenter(
          cellSize, padding, cellX, cellY, distance, margin, orientation)[1];
      var x = cellX * cellSize + padding;
      return [x, y];
  }
  return [cellX, cellY];
}