symbol.js 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.button = exports.vhv = exports.hvh = exports.vh = exports.hv = exports.smooth = exports.dash = exports.dot = exports.hyphen = exports.plus = exports.tick = exports.cross = exports.line = exports.bowtie = exports.hexagon = exports.triangleDown = exports.triangle = exports.diamond = exports.square = exports.point = exports.circle = void 0;
  4. /**
  5. * ○
  6. */
  7. var circle = function (x, y, r) {
  8. return [['M', x - r, y], ['A', r, r, 0, 1, 0, x + r, y], ['A', r, r, 0, 1, 0, x - r, y], ['Z']];
  9. };
  10. exports.circle = circle;
  11. /**
  12. * Cname circle to point.
  13. */
  14. exports.point = exports.circle;
  15. /**
  16. * □
  17. */
  18. var square = function (x, y, r) {
  19. return [['M', x - r, y - r], ['L', x + r, y - r], ['L', x + r, y + r], ['L', x - r, y + r], ['Z']];
  20. };
  21. exports.square = square;
  22. /**
  23. * ◇
  24. */
  25. var diamond = function (x, y, r) {
  26. return [['M', x - r, y], ['L', x, y - r], ['L', x + r, y], ['L', x, y + r], ['Z']];
  27. };
  28. exports.diamond = diamond;
  29. /**
  30. * △
  31. */
  32. var triangle = function (x, y, r) {
  33. var diffY = r * Math.sin((1 / 3) * Math.PI);
  34. return [['M', x - r, y + diffY], ['L', x, y - diffY], ['L', x + r, y + diffY], ['Z']];
  35. };
  36. exports.triangle = triangle;
  37. /**
  38. * ▽
  39. */
  40. var triangleDown = function (x, y, r) {
  41. var diffY = r * Math.sin((1 / 3) * Math.PI);
  42. return [['M', x - r, y - diffY], ['L', x + r, y - diffY], ['L', x, y + diffY], ['Z']];
  43. };
  44. exports.triangleDown = triangleDown;
  45. /**
  46. * ⬡
  47. */
  48. var hexagon = function (x, y, r) {
  49. var diffX = (r / 2) * Math.sqrt(3);
  50. return [
  51. ['M', x, y - r],
  52. ['L', x + diffX, y - r / 2],
  53. ['L', x + diffX, y + r / 2],
  54. ['L', x, y + r],
  55. ['L', x - diffX, y + r / 2],
  56. ['L', x - diffX, y - r / 2],
  57. ['Z'],
  58. ];
  59. };
  60. exports.hexagon = hexagon;
  61. /**
  62. * ▷◁
  63. */
  64. var bowtie = function (x, y, r) {
  65. var diffY = r - 1.5;
  66. return [['M', x - r, y - diffY], ['L', x + r, y + diffY], ['L', x + r, y - diffY], ['L', x - r, y + diffY], ['Z']];
  67. };
  68. exports.bowtie = bowtie;
  69. /** -- 非闭合图形 ------------------------------------------------------------------------------- */
  70. /**
  71. * |
  72. */
  73. var line = function (x, y, r) {
  74. return [
  75. ['M', x, y + r],
  76. ['L', x, y - r],
  77. ];
  78. };
  79. exports.line = line;
  80. /**
  81. * ✕
  82. */
  83. var cross = function (x, y, r) {
  84. return [
  85. ['M', x - r, y - r],
  86. ['L', x + r, y + r],
  87. ['M', x + r, y - r],
  88. ['L', x - r, y + r],
  89. ];
  90. };
  91. exports.cross = cross;
  92. /**
  93. * 工
  94. */
  95. var tick = function (x, y, r) {
  96. return [
  97. ['M', x - r / 2, y - r],
  98. ['L', x + r / 2, y - r],
  99. ['M', x, y - r],
  100. ['L', x, y + r],
  101. ['M', x - r / 2, y + r],
  102. ['L', x + r / 2, y + r],
  103. ];
  104. };
  105. exports.tick = tick;
  106. /**
  107. * +
  108. */
  109. var plus = function (x, y, r) {
  110. return [
  111. ['M', x - r, y],
  112. ['L', x + r, y],
  113. ['M', x, y - r],
  114. ['L', x, y + r],
  115. ];
  116. };
  117. exports.plus = plus;
  118. /**
  119. * -
  120. */
  121. var hyphen = function (x, y, r) {
  122. return [
  123. ['M', x - r, y],
  124. ['L', x + r, y],
  125. ];
  126. };
  127. exports.hyphen = hyphen;
  128. /** -- 用于图例的 marker ------------------------------------------------------------------------------- */
  129. /**
  130. * ---
  131. */
  132. var dot = function (x, y, r) {
  133. return [
  134. ['M', x - r, y],
  135. ['L', x + r, y],
  136. ];
  137. };
  138. exports.dot = dot;
  139. exports.dash = exports.dot;
  140. var smooth = function (x, y, r) {
  141. return [
  142. ['M', x - r, y],
  143. ['A', r / 2, r / 2, 0, 1, 1, x, y],
  144. ['A', r / 2, r / 2, 0, 1, 0, x + r, y],
  145. ];
  146. };
  147. exports.smooth = smooth;
  148. var hv = function (x, y, r) {
  149. return [
  150. ['M', x - r - 1, y - 2.5],
  151. ['L', x, y - 2.5],
  152. ['L', x, y + 2.5],
  153. ['L', x + r + 1, y + 2.5],
  154. ];
  155. };
  156. exports.hv = hv;
  157. var vh = function (x, y, r) {
  158. return [
  159. ['M', x - r - 1, y + 2.5],
  160. ['L', x, y + 2.5],
  161. ['L', x, y - 2.5],
  162. ['L', x + r + 1, y - 2.5],
  163. ];
  164. };
  165. exports.vh = vh;
  166. var hvh = function (x, y, r) {
  167. return [
  168. ['M', x - (r + 1), y + 2.5],
  169. ['L', x - r / 2, y + 2.5],
  170. ['L', x - r / 2, y - 2.5],
  171. ['L', x + r / 2, y - 2.5],
  172. ['L', x + r / 2, y + 2.5],
  173. ['L', x + r + 1, y + 2.5],
  174. ];
  175. };
  176. exports.hvh = hvh;
  177. function vhv(x, y) {
  178. // 宽 13px,高 8px
  179. return [
  180. ['M', x - 5, y + 2.5],
  181. ['L', x - 5, y],
  182. ['L', x, y],
  183. ['L', x, y - 3],
  184. ['L', x, y + 3],
  185. ['L', x + 6.5, y + 3],
  186. ];
  187. }
  188. exports.vhv = vhv;
  189. /** --------------------------------------------------------------------------------- */
  190. var button = function (x, y, r) {
  191. return [['M', x - r, y - r], ['L', x + r, y], ['L', x - r, y + r], ['Z']];
  192. };
  193. exports.button = button;
  194. //# sourceMappingURL=symbol.js.map