Polyline.d.ts 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import type { DisplayObjectConfig } from '../dom';
  2. import { Point } from '../shapes';
  3. import type { BaseStyleProps, ParsedBaseStyleProps } from '../types';
  4. import type { DisplayObject } from './DisplayObject';
  5. import { Polygon } from './Polygon';
  6. export interface PolylineStyleProps extends BaseStyleProps {
  7. points: [number, number][];
  8. /**
  9. * marker will be positioned at the first point
  10. */
  11. markerStart?: DisplayObject;
  12. /**
  13. * marker will be positioned at the last point
  14. */
  15. markerEnd?: DisplayObject;
  16. markerMid?: DisplayObject;
  17. /**
  18. * offset relative to original position
  19. */
  20. markerStartOffset?: number;
  21. /**
  22. * offset relative to original position
  23. */
  24. markerEndOffset?: number;
  25. }
  26. export interface ParsedPolylineStyleProps extends ParsedBaseStyleProps {
  27. points: {
  28. points: [number, number][];
  29. segments: [number, number][];
  30. totalLength: number;
  31. };
  32. markerStart?: DisplayObject;
  33. markerMid?: DisplayObject;
  34. markerEnd?: DisplayObject;
  35. markerStartOffset?: number;
  36. markerEndOffset?: number;
  37. }
  38. /**
  39. * Polyline inherits the marker-related capabilities of Polygon.
  40. */
  41. export declare class Polyline extends Polygon {
  42. constructor({ style, ...rest }?: DisplayObjectConfig<PolylineStyleProps>);
  43. getTotalLength(): number;
  44. getPointAtLength(distance: number, inWorldSpace?: boolean): Point;
  45. getPoint(ratio: number, inWorldSpace?: boolean): Point;
  46. getStartTangent(): number[][];
  47. getEndTangent(): number[][];
  48. }
  49. //# sourceMappingURL=Polyline.d.ts.map