Source: compute/types/typesGrid.js

  1. import * as typesGeoms from './typesGeoms.js'
  2. import * as typesPoints from './typesPoints.js'
  3. /**
  4. * @namespace typesGrid
  5. */
  6. /**
  7. * @typedef {grid1D | grid2D} grid - data for points on a grid
  8. */
  9. /**
  10. * @typedef {object} grid1D - data for points on a 1D grid
  11. * @property {number[]} x - x coordinates for grid points
  12. * @property {number[]} density - density for grid points
  13. * @property {typesPoints.point1D[]} voterPoints - grid points in point1D format
  14. * @property {number[]} voteCounts - voteCount for each grid point
  15. * @property {number} totalVotes - total number of votes
  16. * @property {typesGeoms.voterGeom1D} voterGeom - the geometry of a voter distribution in 1D
  17. * @memberof typesGrid
  18. */
  19. /**
  20. * @typedef {object} gridX
  21. * @property {number[]} gridX - x coordinates for grid points
  22. * @property {typesPoints.point1D[]} voterPoints - grid points in point1D format
  23. * @property {number} gridPointLength - size of grid point's region in policy space. density * length = count.
  24. * @memberof typesGrid
  25. */
  26. /**
  27. * @typedef {object} grid2D - data for points on a 2D grid
  28. * @property {number[]} x - x coordinates for grid points
  29. * @property {number[]} y - y coordinates for grid points
  30. * @property {number[]} density - density for grid points
  31. * @property {number[]} voteCounts - voteCount for each grid point
  32. * @property {number} totalVotes - total number of votes
  33. * @property {number} nx - number of x coordinates
  34. * @property {number} ny - number of y coordinates
  35. * @property {number} width - width and height of grid in pixels. grid is square.
  36. * @property {typesPoints.point2D[]} voterPoints - grid points in point2D format
  37. * @property {typesGeoms.voterGeom2D} voterGeom - the geometry of a voter distribution in 2D
  38. * @memberof typesGrid
  39. */
  40. export default {}