MarkHalfEdge.js 748 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import HalfEdge from './HalfEdge'
  2. export default class MarkHalfEdge extends HalfEdge {
  3. constructor() {
  4. super()
  5. MarkHalfEdge.constructor_.apply(this, arguments)
  6. }
  7. static constructor_() {
  8. this._isMarked = false
  9. const orig = arguments[0]
  10. HalfEdge.constructor_.call(this, orig)
  11. }
  12. static setMarkBoth(e, isMarked) {
  13. e.setMark(isMarked)
  14. e.sym().setMark(isMarked)
  15. }
  16. static isMarked(e) {
  17. return e.isMarked()
  18. }
  19. static setMark(e, isMarked) {
  20. e.setMark(isMarked)
  21. }
  22. static markBoth(e) {
  23. e.mark()
  24. e.sym().mark()
  25. }
  26. static mark(e) {
  27. e.mark()
  28. }
  29. mark() {
  30. this._isMarked = true
  31. }
  32. setMark(isMarked) {
  33. this._isMarked = isMarked
  34. }
  35. isMarked() {
  36. return this._isMarked
  37. }
  38. }