circle.d.ts 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. import AxisBase from './base';
  2. import type { CircleAxisCfg, Point } from '../types';
  3. declare class Circle extends AxisBase<CircleAxisCfg> {
  4. getDefaultCfg(): {
  5. type: string;
  6. locationType: string;
  7. center: any;
  8. radius: any;
  9. startAngle: number;
  10. endAngle: number;
  11. name: string;
  12. ticks: any[];
  13. line: {};
  14. tickLine: {};
  15. subTickLine: any;
  16. title: any;
  17. label: {};
  18. verticalFactor: number;
  19. verticalLimitLength: any;
  20. overlapOrder: string[];
  21. tickStates: {};
  22. optimize: {};
  23. defaultCfg: {
  24. line: {
  25. style: {
  26. lineWidth: number;
  27. stroke: string;
  28. };
  29. };
  30. tickLine: {
  31. style: {
  32. lineWidth: number;
  33. stroke: string;
  34. };
  35. alignTick: boolean;
  36. length: number;
  37. displayWithLabel: boolean;
  38. };
  39. subTickLine: {
  40. style: {
  41. lineWidth: number;
  42. stroke: string;
  43. };
  44. count: number;
  45. length: number;
  46. };
  47. label: {
  48. autoRotate: boolean;
  49. autoHide: boolean;
  50. autoEllipsis: boolean;
  51. style: {
  52. fontSize: number;
  53. fill: string;
  54. fontFamily: string;
  55. fontWeight: string;
  56. };
  57. offset: number;
  58. offsetX: number;
  59. offsetY: number;
  60. };
  61. title: {
  62. autoRotate: boolean;
  63. spacing: number;
  64. position: string;
  65. style: {
  66. fontSize: number;
  67. fill: string;
  68. textBaseline: string;
  69. fontFamily: string;
  70. textAlign: string;
  71. };
  72. iconStyle: {
  73. fill: string;
  74. stroke: string;
  75. };
  76. description: string;
  77. };
  78. tickStates: {
  79. active: {
  80. labelStyle: {
  81. fontWeight: number;
  82. };
  83. tickLineStyle: {
  84. lineWidth: number;
  85. };
  86. };
  87. inactive: {
  88. labelStyle: {
  89. fill: string;
  90. };
  91. };
  92. };
  93. optimize: {
  94. enable: boolean;
  95. threshold: number;
  96. };
  97. };
  98. theme: {};
  99. container: any;
  100. shapesMap: {};
  101. group: any;
  102. capture: boolean;
  103. isRegister: boolean;
  104. isUpdating: boolean;
  105. isInit: boolean;
  106. id: string;
  107. offsetX: number;
  108. offsetY: number;
  109. animate: boolean;
  110. updateAutoRender: boolean;
  111. animateOption: {
  112. appear: any;
  113. update: {
  114. duration: number;
  115. easing: string;
  116. };
  117. enter: {
  118. duration: number;
  119. easing: string;
  120. };
  121. leave: {
  122. duration: number;
  123. easing: string;
  124. };
  125. };
  126. events: any;
  127. visible: boolean;
  128. };
  129. protected getLinePath(): any[];
  130. protected getTickPoint(tickValue: any): Point;
  131. protected getSideVector(offset: number, point: Point): [number, number];
  132. protected getAxisVector(point: Point): [number, number];
  133. private getCirclePoint;
  134. /**
  135. * 是否可以执行某一 overlap
  136. * @param name
  137. */
  138. private canProcessOverlap;
  139. protected processOverlap(labelGroup: any): void;
  140. private autoProcessOverlap;
  141. }
  142. export default Circle;