util.js 1007 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { max, min } from '@antv/util';
  2. /**
  3. * 两点之间的距离
  4. * @param {number} x1 起始点 x
  5. * @param {number} y1 起始点 y
  6. * @param {number} x2 结束点 x
  7. * @param {number} y2 结束点 y
  8. * @return {number} 距离
  9. */
  10. export function distance(x1, y1, x2, y2) {
  11. var dx = x1 - x2;
  12. var dy = y1 - y2;
  13. return Math.sqrt(dx * dx + dy * dy);
  14. }
  15. export function isNumberEqual(v1, v2) {
  16. return Math.abs(v1 - v2) < 0.001;
  17. }
  18. export function getBBoxByArray(xArr, yArr) {
  19. var minX = min(xArr);
  20. var minY = min(yArr);
  21. var maxX = max(xArr);
  22. var maxY = max(yArr);
  23. return {
  24. x: minX,
  25. y: minY,
  26. width: maxX - minX,
  27. height: maxY - minY,
  28. };
  29. }
  30. export function getBBoxRange(x1, y1, x2, y2) {
  31. return {
  32. minX: min([x1, x2]),
  33. maxX: max([x1, x2]),
  34. minY: min([y1, y2]),
  35. maxY: max([y1, y2]),
  36. };
  37. }
  38. export function piMod(angle) {
  39. return (angle + Math.PI * 2) % (Math.PI * 2);
  40. }
  41. //# sourceMappingURL=util.js.map