Extra "ports" of juce-based plugins using the distrho build system
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

164 lines
6.0KB

  1. pPath Path_new();
  2. void Path_delete(pPath p);
  3. Rectangle_float Path_getBounds(pPath self);
  4. Rectangle_float Path_getBoundsTransformed (pPath self, AffineTransform transform);
  5. bool Path_contains (pPath self, float x, float y,
  6. float tolerance);
  7. bool Path_contains2 (pPath self, Point_float point,
  8. float tolerance);
  9. bool Path_intersectsLine (pPath self, Line_float line,
  10. float tolerance);
  11. Line_float Path_getClippedLine (pPath self, Line_float line, bool keepSectionOutsidePath);
  12. float Path_getLength (pPath self, AffineTransform transform);
  13. Point_float Path_getPointAlongPath (pPath self, float distanceFromStart,
  14. AffineTransform transform);
  15. float Path_getNearestPoint (pPath self, Point_float targetPoint,
  16. Point_float &pointOnPath,
  17. AffineTransform transform);
  18. void Path_clear(pPath self);
  19. void Path_startNewSubPath (pPath self, float startX, float startY);
  20. void Path_startNewSubPath2 (pPath self, Point_float start);
  21. void Path_closeSubPath(pPath self);
  22. void Path_lineTo (pPath self, float endX, float endY);
  23. void Path_lineTo2 (pPath self, Point_float end);
  24. void Path_quadraticTo (pPath self, float controlPointX,
  25. float controlPointY,
  26. float endPointX,
  27. float endPointY);
  28. void Path_quadraticTo2 (pPath self, Point_float controlPoint,
  29. Point_float endPoint);
  30. void Path_cubicTo (pPath self, float controlPoint1X,
  31. float controlPoint1Y,
  32. float controlPoint2X,
  33. float controlPoint2Y,
  34. float endPointX,
  35. float endPointY);
  36. void Path_cubicTo2 (pPath self, Point_float controlPoint1,
  37. Point_float controlPoint2,
  38. Point_float endPoint);
  39. Point_float Path_getCurrentPosition(pPath self);
  40. void Path_addRectangle (pPath self, float x, float y, float width, float height);
  41. void Path_addRectangle2 (pPath self, Rectangle_float rectangle);
  42. void Path_addRoundedRectangle2 (pPath self, float x, float y, float width, float height,
  43. float cornerSize);
  44. void Path_addRoundedRectangle3 (pPath self, float x, float y, float width, float height,
  45. float cornerSizeX,
  46. float cornerSizeY);
  47. void Path_addRoundedRectangle4 (pPath self, float x, float y, float width, float height,
  48. float cornerSizeX, float cornerSizeY,
  49. bool curveTopLeft, bool curveTopRight,
  50. bool curveBottomLeft, bool curveBottomRight);
  51. void Path_addRoundedRectangle5 (pPath self, Rectangle_float rectangle, float cornerSizeX, float cornerSizeY);
  52. void Path_addRoundedRectangle6 (pPath self, Rectangle_float rectangle, float cornerSize);
  53. void Path_addTriangle (pPath self, float x1, float y1,
  54. float x2, float y2,
  55. float x3, float y3);
  56. void Path_addQuadrilateral (pPath self, float x1, float y1,
  57. float x2, float y2,
  58. float x3, float y3,
  59. float x4, float y4);
  60. void Path_addEllipse (pPath self, float x, float y, float width, float height);
  61. void Path_addArc (pPath self, float x, float y, float width, float height,
  62. float fromRadians,
  63. float toRadians,
  64. bool startAsNewSubPath);
  65. void Path_addCentredArc (pPath self, float centreX, float centreY,
  66. float radiusX, float radiusY,
  67. float rotationOfEllipse,
  68. float fromRadians,
  69. float toRadians,
  70. bool startAsNewSubPath);
  71. void Path_addPieSegment (pPath self, float x, float y,
  72. float width, float height,
  73. float fromRadians,
  74. float toRadians,
  75. float innerCircleProportionalSize);
  76. void Path_addLineSegment (pPath self, Line_float line, float lineThickness);
  77. void Path_addArrow (pPath self, Line_float line,
  78. float lineThickness,
  79. float arrowheadWidth,
  80. float arrowheadLength);
  81. void Path_addPolygon (pPath self, Point_float centre,
  82. int numberOfSides,
  83. float radius,
  84. float startAngle);
  85. void Path_addStar (pPath self, Point_float centre,
  86. int numberOfPoints,
  87. float innerRadius,
  88. float outerRadius,
  89. float startAngle);
  90. void Path_addBubble (pPath self, Rectangle_float bodyArea,
  91. Rectangle_float maximumArea,
  92. Point_float arrowTipPosition,
  93. const float cornerSize,
  94. const float arrowBaseWidth);
  95. void Path_addPath (pPath self, pPath pathToAppend);
  96. void Path_addPath2 (pPath self, pPath pathToAppend,
  97. AffineTransform transformToApply);
  98. void Path_applyTransform (pPath self, AffineTransform transform);
  99. void Path_scaleToFit (pPath self, float x, float y, float width, float height,
  100. bool preserveProportions);
  101. AffineTransform Path_getTransformToScaleToFit (pPath self, float x, float y, float width, float height,
  102. bool preserveProportions,
  103. int justificationType);
  104. AffineTransform Path_getTransformToScaleToFit2 (pPath self, Rectangle_float area,
  105. bool preserveProportions,
  106. int justificationType);
  107. pPath Path_createPathWithRoundedCorners (pPath self, float cornerRadius);
  108. void Path_setUsingNonZeroWinding (pPath self, bool isNonZeroWinding);
  109. bool Path_isUsingNonZeroWinding(pPath self);
  110. void Path_toString(pPath self, char* dest, int bufSize);
  111. void Path_restoreFromString (pPath self, const char *src);