EdgeNodingValidator.js 885 B

12345678910111213141516171819202122232425262728
  1. import BasicSegmentString from '../noding/BasicSegmentString'
  2. import FastNodingValidator from '../noding/FastNodingValidator'
  3. import ArrayList from '../../../../java/util/ArrayList'
  4. export default class EdgeNodingValidator {
  5. constructor() {
  6. EdgeNodingValidator.constructor_.apply(this, arguments)
  7. }
  8. static constructor_() {
  9. this._nv = null
  10. const edges = arguments[0]
  11. this._nv = new FastNodingValidator(EdgeNodingValidator.toSegmentStrings(edges))
  12. }
  13. static toSegmentStrings(edges) {
  14. const segStrings = new ArrayList()
  15. for (let i = edges.iterator(); i.hasNext(); ) {
  16. const e = i.next()
  17. segStrings.add(new BasicSegmentString(e.getCoordinates(), e))
  18. }
  19. return segStrings
  20. }
  21. static checkValid(edges) {
  22. const validator = new EdgeNodingValidator(edges)
  23. validator.checkValid()
  24. }
  25. checkValid() {
  26. this._nv.checkValid()
  27. }
  28. }