skia2/tools
Cary Clark cadc5063c0 fix pathops stitching bug
Tight data generates intersections that are currently
unsortable. Edges that can be sorted are added; simple
connected edges need to be added as well.

Look for output edges with gaps and add simple edges that
continue at the ends to reduce the gap size.

Extended tests with region check (pathops_unittest -V -x)
pass in debug and release.

TBR=reed@google.com

Bug: skia:8223
Change-Id: Ib0f22061ae3676e1a3b94574516a61cbbea2948f
Reviewed-on: https://skia-review.googlesource.com/145644
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
2018-08-06 21:50:43 +00:00
..
android Reuse more upload_to_android and allow removing flag on Android 2017-10-31 14:37:14 +00:00
bookmaker add more fiddle hash checks 2018-07-18 19:42:52 +00:00
calmbench Add name field to calmbench json 2018-05-03 15:18:02 +00:00
copyright Fix pylint check in presubmit 2018-06-22 14:38:28 +00:00
debugger Hide SkTextBlob::GlyphPositioning from public API 2018-07-27 14:10:17 +00:00
fiddle Dest color space no longer impacts mipmaps or texture sampling 2018-06-01 17:00:26 +00:00
flags Add kAAHairline to GpuPathRenderers 2018-07-27 13:30:17 +00:00
fonts SkUTF 2018-07-31 20:11:19 +00:00
gdb Update gdb bitmap viewer. 2018-06-20 21:24:27 +00:00
gpu Support using vulkan 1.1. 2018-08-02 18:37:02 +00:00
lottiecap [lottiecap] Fix timestamp calculation to exactly match skottie in DM. 2018-03-20 21:02:57 +00:00
lua Make iOS main() functions normal. 2017-02-06 18:02:41 +00:00
mdbviz Remove carriage returns. 2017-10-09 20:41:14 +00:00
rebaseline Change add to toggle in the comments 2017-11-10 17:19:07 +00:00
sk_app Start adding support for some base extensions which others build on. 2018-08-06 14:26:15 +00:00
skdiff Add color space logic to skdiff 2018-07-18 17:13:46 +00:00
skiaserve Remove SK_SUPPORT_GPU checks in tool-only code 2018-05-31 18:59:44 +00:00
skp Omit "espn" from key_mobile_sites_smooth in RecreateSKPs bot 2018-05-20 14:53:16 +00:00
skpbench Fix !defined(SK_XML) builds 2018-08-01 14:28:56 +00:00
skqp sk_tool::Registry: make an iterator. 2018-08-01 16:59:19 +00:00
svg Remove internal files from externally visible markdown documentation 2018-01-10 13:25:19 +00:00
timer Fix MSAN compile error 2017-09-20 19:42:09 +00:00
trace Optimize the size of our JSON 2017-08-17 11:51:26 +00:00
viewer Fix GUI windows not appearing on first key in viewer 2018-08-03 18:21:32 +00:00
__init__.py Add bench_pictures config 2012-12-12 20:13:26 +00:00
add_codereview_message.py Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
AndroidSkDebugToStdOut.cpp Change how SkDebugf is sent to stdout on Android. 2014-12-10 10:23:06 -08:00
BigPathBench.inc Factor out VisualBench timing code into a helper class 2015-10-05 07:23:30 -07:00
bisect_roll Add bisect_roll tool 2018-01-11 19:42:55 +00:00
bisect_roll.bat Add bisect_roll tool 2018-01-11 19:42:55 +00:00
bisect_roll.go Add bisect_roll tool 2018-01-11 19:42:55 +00:00
build_command_buffer.py Improvements to build_command_buffer.py 2016-11-04 10:54:54 -07:00
BUILD_simulator.py Fix Google3 fonts. Use fontconfig rather than custom_directory_factory. Add Google3 font caching. 2015-12-01 11:12:05 -08:00
build_workaround_header.py Add CheckGeneratedFiles recipe check for gpu workarounds 2018-04-25 19:26:27 +00:00
check-headers-self-sufficient C++14 2018-06-04 13:22:49 +00:00
chrome_fuzz.cpp Fix SkFILEStream. 2017-03-10 19:58:46 +00:00
compare_codereview.py Further tweak compare_codereview.py. 2014-03-25 18:02:17 +00:00
CrashHandler.cpp GOOGLE3 -> SK_BUILD_FOR_GOOGLE3 2017-12-19 14:42:16 +00:00
CrashHandler.h rewrite ambiguous comment 2015-02-10 07:47:31 -08:00
DDLPromiseImageHelper.cpp implemented getting format from texture as virtual in gpu caps 2018-06-28 20:21:17 +00:00
DDLPromiseImageHelper.h implemented getting format from texture as virtual in gpu caps 2018-06-28 20:21:17 +00:00
DDLTileHelper.cpp Pull non-substantive changes out of omnibus CL 2018-06-13 18:07:58 +00:00
DDLTileHelper.h Remove SK_SUPPORT_GPU checks in tool-only code 2018-05-31 18:59:44 +00:00
doxygen_footer.txt Fix update-doxygen, which fails when skia-autogen is reset 2012-09-26 16:09:43 +00:00
dump_record.cpp clean up SkDeferredCanvas 2017-11-27 21:31:26 +00:00
DumpRecord.cpp clean up SkPicture include 2018-06-12 13:56:33 +00:00
DumpRecord.h Factor out DumpRecord method from dump_record tool for later use 2014-05-15 16:10:37 +00:00
embed_resources.py Add option to embed font data into executable. 2015-03-30 12:53:48 -07:00
find_run_binary.py Create a common utility for finding and running binaries in out/ 2014-02-07 18:41:49 +00:00
fix_pythonpath.py Use new common tools in Python scripts 2014-06-25 11:13:27 -04:00
gcov_shim add a way to get code coverage 2013-09-13 19:32:43 +00:00
get_current_monitor_profile.cpp Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
get_images_from_skps.cpp Use SkJSONWriter for get_images_from_skps stats reporting 2018-06-19 20:06:36 +00:00
git-sync-deps tools/git-sync-deps: fix 2018-06-20 14:38:34 +00:00
gyp GN 2016-06-23 10:29:30 -07:00
hello-opencl.cpp add hello-opencl 2018-06-20 21:50:47 +00:00
imgblur.cpp Make iOS main() functions normal. 2017-02-06 18:02:41 +00:00
imgcvt.cpp add imgcvt 2018-07-27 15:11:17 +00:00
imgslice.cpp Make iOS main() functions normal. 2017-02-06 18:02:41 +00:00
install_dependencies.sh Add header file installation tips for building skia 2018-02-14 13:07:27 +00:00
ios_utils.h Fix bugs with fence sync API on iOS devices 2017-10-10 19:05:13 +00:00
ios_utils.m iOS: cd into Documents folder at startup 2017-02-06 15:06:45 +00:00
jsondiff.py Fix pylint check in presubmit 2018-06-22 14:38:28 +00:00
list_gms.cpp sk_tool::Registry: make an iterator. 2018-08-01 16:59:19 +00:00
list_gpu_unit_tests.cpp sk_tool::Registry: make an iterator. 2018-08-01 16:59:19 +00:00
LsanSuppressions.cpp Test GrContextOptions persistent cache on linux/quadrop400 bots. 2018-07-16 19:09:19 +00:00
merge_static_libs.py Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
milestone.py SkPDF: milestone in metadata, also SkMilestone.h 2016-03-29 09:09:29 -07:00
mirror-dev.sh Update mirror-dev for *-dev:amd64 packages. 2017-11-09 22:44:57 +00:00
misc_utils.py Whitespace fixes for Python tools 2014-06-25 08:40:58 -07:00
OverwriteLine.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
parse_llvm_coverage.py Walk through files in parse_llvm_coverage.py instead of using 'git ls-files' 2016-04-18 04:18:56 -07:00
pathops_sorter.htm handle degenerate cubic loops 2018-02-02 20:39:09 +00:00
pathops_visualizer.htm fix pathops stitching bug 2018-08-06 21:50:43 +00:00
picture_utils.cpp remove append_from_srgb() 2017-12-18 19:48:43 +00:00
picture_utils.h Move DM png code to picture_utils, for use by other tools. 2016-04-19 09:18:11 -07:00
ProcStats.cpp eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
ProcStats.h DM+nanobench: print both current and max RSS. 2015-04-30 07:11:22 -07:00
public_headers_warnings_check.cpp GN: add public headers warnings check. 2016-11-16 19:27:29 +00:00
random_parse_path.cpp Add unit test to feed valid SVG sequences to make sure that 2016-02-09 10:30:22 -08:00
random_parse_path.h Add unit test to feed valid SVG sequences to make sure that 2016-02-09 10:30:22 -08:00
reformat-json.py add reformat-json.py script 2013-07-19 15:45:22 +00:00
Registry.h sk_tool::Registry: make an iterator. 2018-08-01 16:59:19 +00:00
remote_demo.cpp fonts: Reland push font remoting. 2018-05-02 18:39:31 +00:00
ResourceFactory.h SkQP: ResourceFactory 2018-01-29 21:23:33 +00:00
Resources.cpp sk_tools/Resources: optional SK_TOOLS_REQUIRE_RESOURCES flag 2018-04-24 18:08:06 +00:00
Resources.h Revert "Revert "resources: remove most uses of GetResourcePath()"" 2017-12-09 01:27:50 +00:00
retrieve_from_googlesource.py Fix submit_try 2014-06-05 07:32:15 -07:00
sanitize_source_files.py Clean up more references to GYP. 2017-02-06 17:55:35 +00:00
sk_pixel_iter.h handle clipping large triangles 2018-01-30 15:56:35 +00:00
sk_tool_utils.cpp Restore SkLightingShader and associated classes 2018-07-17 17:24:50 +00:00
sk_tool_utils.h Restore SkLightingShader and associated classes 2018-07-17 17:24:50 +00:00
skhello.cpp Make iOS main() functions normal. 2017-02-06 18:02:41 +00:00
SkJSONCPP.h GOOGLE3 -> SK_BUILD_FOR_GOOGLE3 2017-12-19 14:42:16 +00:00
skp_parser.cpp Remove code that was only used by the old debugger 2018-04-09 13:30:54 +00:00
skpinfo.cpp Revert "Revert "SkTypes: extract SkTo"" 2018-06-14 14:55:17 +00:00
skpmaker.cpp Make iOS main() functions normal. 2017-02-06 18:02:41 +00:00
Stats.h Consolidate SK_CRASH and sk_throw into SK_ABORT 2016-01-29 08:51:04 -08:00
test_all.py skimage, die die die 2014-12-15 12:47:52 -08:00
test_pdfs.py Add an SKP to PDF rendered. test_pdfs.py will be hooked up in buildbot testing later. 2012-10-10 15:20:34 +00:00
UrlDataManager.cpp Create image cache for use by json canvas 2016-02-08 07:08:21 -08:00
UrlDataManager.h Use sse4.2 CRC32 instructions to hash when available. 2016-08-08 09:06:28 -07:00
using_skia_and_harfbuzz.cpp Make SkShaper a module 2018-05-30 04:04:07 +00:00
valgrind.supp Add valgrind suppression for leak in libGLX_nvidia when caching program binaries 2018-07-18 16:43:51 +00:00
whitelist_typefaces.cpp Make iOS main() functions normal. 2017-02-06 18:02:41 +00:00
win_dbghelp.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
win_dbghelp.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
win_lcid.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00