elements-class-enum.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * iGeom by LInE
  3. * Definitions of ID to Geometric Objects
  4. * www.matematica.br/igeom
  5. * ./app/core/enums/elements-class-enum.js
  6. * @version 2020/11/02: Implemented Line instersection
  7. */
  8. export const ELEMENTS_CLASS = {
  9. POINT: 0,
  10. INTERSECTION_POINT: 1,
  11. CIRCUMFERENCE: 3,
  12. LINE: 4,
  13. LINE_SEGMENT: 6,
  14. // TO: PONTO = 0;
  15. // TO: PONTO_INTERSECAO = 1;
  16. // TO: PONTO_SOBRE = 2;
  17. // TO: CIRCUNFERENCIA = 3;
  18. // TO: RETA = 4;
  19. // TO: SEMIRETA = 5;
  20. // TO: SEGMENTO = 6;
  21. // TO: MED_DISTANCIA = 7; // Script: MEDIDA = 7
  22. // TO: MED_AREA = 8;
  23. // TO: PARALELA = 9;
  24. // TO: PERPENDICULAR = 10;
  25. // TO: MED_ARCO = 11;
  26. // TO: MED_EXPR = 12;
  27. // TO: PONTO_MEDIO = 13;
  28. // TO: CIRC_RAIO = 14;
  29. // TO: POLIGONO = 15;
  30. // TO: PONTO_SOBRE_DIST = 16;
  31. // TO: LOCUS = 17;
  32. // TO: MED_TEXTO = 20; // para textos
  33. // TO: CIRCUNFERENCIA_INT = 21; // [11/01/2006] estava 56, mas este num. e de rotacao
  34. };
  35. // @param {number} code
  36. export function fromCodeToClass(code) {
  37. switch (code) {
  38. case 0:
  39. return ELEMENTS_CLASS.POINT;
  40. case 1:
  41. return ELEMENTS_CLASS.INTERSECTION_POINT;
  42. case 6:
  43. return ELEMENTS_CLASS.LINE_SEGMENT;
  44. case 3:
  45. return ELEMENTS_CLASS.CIRCUMFERENCE;
  46. default:
  47. return ELEMENTS_CLASS.POINT;
  48. }
  49. }