modeling/src/geometries/geom2/toString.js

  1. const vec2 = require('../../maths/vec2')
  2. const toSides = require('./toSides')
  3. /**
  4. * Create a string representing the contents of the given geometry.
  5. * @param {geom2} geometry - the geometry
  6. * @returns {String} a representative string
  7. * @alias module:modeling/geometries/geom2.toString
  8. *
  9. * @example
  10. * console.out(toString(geometry))
  11. */
  12. const toString = (geometry) => {
  13. const sides = toSides(geometry)
  14. let result = 'geom2 (' + sides.length + ' sides):\n[\n'
  15. sides.forEach((side) => {
  16. result += ' [' + vec2.toString(side[0]) + ', ' + vec2.toString(side[1]) + ']\n'
  17. })
  18. result += ']\n'
  19. return result
  20. }
  21. module.exports = toString