Node.d.ts 976 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import Edge from "./Edge";
  2. /**
  3. * Node
  4. */
  5. export default class Node {
  6. static buildId(coordinates: number[]): string;
  7. id: string;
  8. coordinates: number[];
  9. innerEdges: Edge[];
  10. private outerEdges;
  11. private outerEdgesSorted;
  12. constructor(coordinates: number[]);
  13. removeInnerEdge(edge: Edge): void;
  14. removeOuterEdge(edge: Edge): void;
  15. /**
  16. * Outer edges are stored CCW order.
  17. *
  18. * @memberof Node
  19. * @param {Edge} edge - Edge to add as an outerEdge.
  20. */
  21. addOuterEdge(edge: Edge): void;
  22. /**
  23. * Sorts outer edges in CCW way.
  24. *
  25. * @memberof Node
  26. * @private
  27. */
  28. sortOuterEdges(): void;
  29. /**
  30. * Retrieves outer edges.
  31. *
  32. * They are sorted if they aren't in the CCW order.
  33. *
  34. * @memberof Node
  35. * @returns {Edge[]} - List of outer edges sorted in a CCW order.
  36. */
  37. getOuterEdges(): Edge[];
  38. getOuterEdge(i: number): Edge;
  39. addInnerEdge(edge: Edge): void;
  40. }