ChangeLog.txt 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. ============================================================
  2. Javascript Clipper Change Log
  3. ============================================================
  4. v6.4.2.2 (8 September 2017)
  5. * Added ClipperLib.version, which returns "6.4.2.2".
  6. * Main Demo -updates:
  7. - Main Demo is made to support IntPoint and FPoint version of
  8. Javascript Clipper.
  9. - Benchmark is now more complete. Nearly all possible combinations
  10. of various properties are covered. A new Random Benchmark is added,
  11. which covers Random Rectangles, Random Polygons and Random Grid -
  12. polygon types.
  13. - Polygons in Preview-window are now hoverable and clickable.
  14. - Polygon explorer shows now the clicked polygon in red color.
  15. v6.4.2.1 (3 September 2017)
  16. * Speedup: Overloading techique is changed regarding functions IntPoint,
  17. DoublePoint and SlopesEqual. This reduced execution time of intersection
  18. operation from 101 ms to 69 ms in solutions with 10k+ vertices.
  19. * Several bugfixes:
  20. #12 Union of polygons with colinear edges (2)
  21. #16 horizontal end segment of an open path gets reversed.
  22. #17 ClipperLib.JS.Lighten always returns a Paths
  23. #18 TypeError: this.ParseFirstLeft is not a function
  24. #19 ir is not defined
  25. #20 Undesired zero width bridge when performing difference operation
  26. * Updates from C# Clipper v6.4.2 (27 February 2017) Rev 512:
  27. - Several minor bugfixes: #152 #160 #161 #162
  28. * Updates from C# Clipper v6.4 (2 July 2015) Rev 495:
  29. - Numerous generally minor bugfixes
  30. v6.2.1.2 (27 November 2016)
  31. * use_xyz directive changed to ClipperLib.use_xyz and use_lines
  32. directive changed to ClipperLib.use_lines, so they can be set
  33. runtime.
  34. * use_int32 removed, because in Javascript there is no such integer.
  35. * When copying IntPoints, Z-member was missing when use_xyz is true.
  36. v6.2.1.1 (19 November 2016)
  37. * Line 3282: Changed ZFillFunction to this.ZFillFunction.
  38. v6.2.1.0 (17 June 2016)
  39. * Updates from C# Clipper upto 6.2.1 Rev 482 (31 October 2014).
  40. * Updates from C# Clipper v6.2.1 (31 October 2014) Rev 482:
  41. - Bugfix in ClipperOffset.Execute where the Polytree.IsHole property
  42. was returning incorrect values with negative offsets
  43. - Very minor improvement to join rounding in ClipperOffset
  44. * Updates from C# Clipper v6.2.0 (17 October 2014) Rev 477:
  45. - Numerous minor bugfixes, too many to list.
  46. (See revisions 454-475 in Sourceforge Repository)
  47. - The ZFillFunction (custom callback function) has had its parameters
  48. changed.
  49. - Deprecated functions have been removed.
  50. * Updates from C# Clipper v6.1.5 (26 February 2014) Rev 460
  51. - Improved the joining of output polygons sharing a common edge
  52. when those common edges are horizontal.
  53. - Fixed a bug in ClipperOffset.AddPath() which would produce
  54. incorrect solutions when open paths were added before closed paths.
  55. - Minor code tidy and performance improvement
  56. * Updates from C# Clipper v6.1.4 (6 February 2014)
  57. - Fixed bugs in MinkowskiSum
  58. - Fixed minor bug when using Clipper.ForceSimplify.
  59. - Modified use_xyz callback so that all 4 vertices around an
  60. intersection point are now passed to the callback function.
  61. v6.1.3.2 (1 February 2014)
  62. * Update: Unnecessary closures removed around ref/out calls and major
  63. speedup and code cleanliness achieved. Intersection operation speedup
  64. in newest Chrome is 2.3x (from 2530 ms to 1107 ms) and in newest
  65. Firefox 1.7x (from 7186 ms to 4164 ms).
  66. v6.1.3.1 (21 January 2014)
  67. * Fixed potential endless loop condition when adding open
  68. paths to Clipper.
  69. * Added PointInPolygon function.
  70. * Overloaded MinkowskiSum function to accommodate multi-contour
  71. paths.
  72. v6.1.2.1 (15 December 2013)
  73. * Minor improvement to joining polygons.
  74. v6.1.1.1 (13 December 2013)
  75. * Fixed a couple of bugs affecting open paths that could
  76. raise unhandled exceptions.
  77. * Fixed Uncaught ReferenceError: DistanceFromLineSqrd is not defined when
  78. using CleanPolygon or CleanPolygons
  79. * Fixed SimplifyPolygon calls in Main Demo
  80. v6.1.0.1 (12 December 2013)
  81. * Added: Info and Examples page: http://jsclipper.sourceforge.net/6.1.0.1/
  82. * Added: Clipper 6 documentation in
  83. https://sourceforge.net/p/jsclipper/wiki/documentation/
  84. * Migration guide for Clipper 5 users in
  85. https://sourceforge.net/p/jsclipper/wiki/migration5to6/
  86. * Modified: To accommodate open paths, several functions have been renamed:
  87. Polygon -> Path
  88. Polygons -> Paths
  89. AddPolygon -> AddPath
  90. AddPolygons -> AddPaths
  91. PolyTreeToPolygons -> PolyTreeToPaths
  92. ReversePolygons -> ReversePaths
  93. * Modified: OffsetPolygons function is replaced by ClipperOffset
  94. class, which is much more flexible. There is also now deprecated
  95. OffsetPaths function, which may be removed in future update.
  96. * Update: ExPolygons has been replaced with the PolyTree &
  97. PolyNode classes to more fully represent the parent-child
  98. relationships of the polygons returned by Clipper. There is
  99. for backward compatibility ClipperLib.JS.PolyTreeToExPolygons.
  100. * Added: Open path (polyline) clipping.
  101. * Update: Major improvement in the merging of
  102. shared/collinear edges in clip solutions (see Execute).
  103. * Added: The IntPoint structure now has an optional 'Z' member.
  104. (See the precompiler directive use_xyz.)
  105. * Added: New CleanPolygon and CleanPolygons functions.
  106. * Added: MinkowskiSum and MinkowskiDiff functions added.
  107. * Added: Several other new functions have been added including
  108. PolyTreeToPaths, OpenPathsFromPolyTree and ClosedPathsFromPolyTree.
  109. * Added: ReverseSolution, PreserveCollinear and StrictlySimple properties to Clipper class
  110. * Added: The Clipper constructor now accepts an optional InitOptions
  111. parameter to simplify setting properties.
  112. * Modified: The Clipper class has a new ZFillFunction property.
  113. * Deprecated: Version 6 is a major upgrade from previous versions
  114. and quite a number of changes have been made to exposed structures
  115. and functions. To minimize inconvenience to existing library users,
  116. some code has been retained and some added to maintain backward
  117. compatibility. However, because this code will be removed in a
  118. future update, it has been marked as deprecated and a precompiler
  119. directive use_deprecated has been defined.
  120. * Changed: The behaviour of the 'miter' JoinType has been
  121. changed so that when squaring occurs, it's no longer
  122. extended up to the miter limit but is squared off at
  123. exactly 'delta' units. (This improves the look of mitering
  124. with larger limits at acute angles.)
  125. * Bugfixes: Several minor bugs have been fixed including
  126. occasionally an incorrect nesting within the PolyTree structure.
  127. 5.0.2.3 - 27 November 2013
  128. * Added: Node.js compatibility.
  129. * Bugfix: jQuery's "event.returnValue is deprecated." warning is stripped.
  130. 5.0.2.2 - 11 September 2013
  131. * Bugfix: SlopesEqual() uses now big integers only when needed and causes speed improvements in certain cases.
  132. * Bugfix: Fixed inconsistent use of DV in jsbn.js, in function bnpFromInt() DV replaced with this.DV.
  133. * BugFix: ExPolygons structure is now working as expected.
  134. * Added: Main Demo has now Ex-button in Polygon Explorer, which shows Solution as ExPolygons structure.
  135. * Added: ExPolygons is now explained in wiki in https://sourceforge.net/p/jsclipper/wiki/ExPolygons/
  136. * Added: Web Workers compatibility
  137. * Added: Web Workers support page is available in https://sourceforge.net/p/jsclipper/wiki/Web%20Workers/
  138. 5.0.2.1 - 12 January 2013
  139. * Update: Clipper library updated to version 5.0.2. The Area algorithm has been updated and is faster.
  140. 'CheckInputs' parameter of the OffsetPolygons function has been renamed 'AutoFix'.
  141. * Added: ClipperLib.Clean(), which removes too near vertices to avoid micro-self-intersection-artifacts when offsetting.
  142. * Added: ClipperLib.Lighten(), which reduces count of vertices using perpendicular distance reduction algorithm.
  143. * Added: ClipperLib.Clone(), which make true clone of polygons.
  144. Several updates to the Main Demo:
  145. * Added: Clean, Simplify, Lighten buttons
  146. * Change: Custom Polygons: input boxes to textareas to allow more data
  147. * Added: Polygon Output Formats (Clipper, Plain, SVG)
  148. * Update: Polygon Explorer: Also multipolygon is clickable (on Points column)
  149. * Added: Polygon Explorer: When numbers on Points or Points in subpolygons are clicked, the area of multipolygon or subpolygon is shown
  150. * Update: Several updates to wiki in https://sourceforge.net/p/jsclipper/wiki/Home/
  151. 4.9.7.2 - 1 January 2013
  152. * Update: Browser specific speedup for ClipperLib.Clipper.Round(), ClipperLib.Cast_Int32() and ClipperLib.Cast_Int64().
  153. * Update: Major enhancements for Main Demo. Including benchmark, custom polygons and polygon importer.
  154. * Update: Documentation is updated with new screenshots of Main Demo. Browser speedtest is published in Wiki.
  155. 4.9.7.1 - 12 December 2012
  156. * Initial release