coordinate.d.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import { CoordinateComponent } from '../runtime';
  2. import { CoordinateTransform } from './coordinateTransform';
  3. export type Coordinate = PolarCoordinate | HelixCoordinate | ThetaCoordinate | CustomCoordinate | CartesianCoordinate | ParallelCoordinate | RadialCoordinate | RadarCoordinate | GeoCoordinate;
  4. export type CoordinateTypes = 'polar' | 'helix' | 'transpose' | 'theta' | 'cartesian' | 'parallel' | 'fisheye' | 'radial' | 'radar' | string;
  5. export type BaseCoordinate<T> = T & {
  6. transform?: CoordinateTransform[];
  7. };
  8. export type PolarCoordinate = BaseCoordinate<{
  9. type?: 'polar';
  10. startAngle?: number;
  11. endAngle?: number;
  12. innerRadius?: number;
  13. outerRadius?: number;
  14. }>;
  15. export type HelixCoordinate = BaseCoordinate<{
  16. type?: 'helix';
  17. startAngle?: number;
  18. endAngle?: number;
  19. innerRadius?: number;
  20. outerRadius?: number;
  21. }>;
  22. export type RadarCoordinate = BaseCoordinate<{
  23. type?: 'radar';
  24. startAngle?: number;
  25. endAngle?: number;
  26. innerRadius?: number;
  27. outerRadius?: number;
  28. }>;
  29. export type ThetaCoordinate = BaseCoordinate<{
  30. type?: 'theta';
  31. startAngle?: number;
  32. endAngle?: number;
  33. innerRadius?: number;
  34. outerRadius?: number;
  35. }>;
  36. export type RadialCoordinate = BaseCoordinate<{
  37. type?: 'radial';
  38. startAngle?: number;
  39. endAngle?: number;
  40. innerRadius?: number;
  41. outerRadius?: number;
  42. }>;
  43. export type CartesianCoordinate = BaseCoordinate<{
  44. type?: 'cartesian';
  45. }>;
  46. export type ParallelCoordinate = BaseCoordinate<{
  47. type?: 'parallel';
  48. }>;
  49. export type GeoCoordinate = BaseCoordinate<{
  50. type: string;
  51. [key: string]: any;
  52. }>;
  53. export type CustomCoordinate = BaseCoordinate<{
  54. type: CoordinateComponent;
  55. [key: string]: any;
  56. }>;