Should be faster in most practical cases, though can be slower if an inserted edge must cross a lot of existing edges.
#rb rinat.abdrashitov
#preflight 62845c74ac1a933d478fcc0b
[CL 20261922 by Jimmy Andrews in ue5-main branch]
Update Arrangement2d's triangulation functions to use that fill mode, and also to be explicit about whether the boundary group is expected or not
#rb david.hill
#rb rinat.abdrashitov
#preflight 6269606c8c2782e4f2327a34
[CL 19941732 by Jimmy Andrews in ue5-main branch]
Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().
Resubmission of CL# 19833778 with fixes for problematic Mac and Android toolchains, causing spurious errors while building PCHs.
#rb devin.doucette, charles.bloom, will.damon, chris.babcock
#jira UE-148435
#preflight 6260764d91376845adf9893f
[CL 19840896 by Steve Robb in ue5-main branch]
Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().
#rb devin.doucette, charles.bloom
#jira UE-148435
#preflight 625ece48f16e0d2accab15d9
[CL 19833778 by Steve Robb in ue5-main branch]
also fix handling of splitting into connected components when some of the components don't have a valid convex hull (by bailing on the component split in that case)
#rb rinat.abdrashitov
#preflight 6255ec9eef3d24a90eb4e00f
[CL 19730210 by Jimmy Andrews in ue5-main branch]
Works by trying a bunch of plane cuts to break reduce the volume of the convex pieces, then merging them back together to remove those that were not helpful. We need the merge step especially for meshes where it takes multiple plane cuts to start reducing the hull volumes, as the initial cuts in that case are not informed by the error metric.
#rb tyson.brochu
#rb matija.kecman
#preflight 624614b1b6084b98324d2059
[CL 19578614 by Jimmy Andrews in ue5-main branch]
- fix bug with detection of vertices on the solid segment of a ghost triangle
- detect when 'fill' of a triangulation is ambiguous under winding rules (e.g. due to open edges)
- optionally automatically track duplicate vertices and remap duplicate-vertex references to the vertex that was actually inserted
#rb rinat.abdrashitov
#preflight 623e11a9982d12a89973cdec
[CL 19521151 by Jimmy Andrews in ue5-main branch]
- Report failures to constrain edges, optionally detecting the case where the edge was flipped away by a subsequent constraint (happens if the constraint edges intersect)
- Add options to directly triangulation TPolygon2 and TGeneralPolygon2 (+ the supporting fill algorithms to be run on any array of edges)
- Add validation of Delaunay property for CDTs on all non-constrained edges
- Update edge cache (if enabled) on sub-triangulation append, improving perf on CDTs with many constrained edges
add corresponding test coverage, and change the test runner to always automatically run exact predicates globalinit
#preflight 62321d0fe2541b4ff3b35efd
#rb rinat.abdrashitov
[CL 19408363 by Jimmy Andrews in ue5-main branch]
Much faster and usable from non-plugin code
#rb rinat.abdrashitov
#rb tyson.brochu
#preflight 622a6e9632749f363c5a22ba
[CL 19341780 by Jimmy Andrews in ue5-main branch]
- Support InCircle
- Support float as well as double
- Add safer, templated versions that specify whether float or double is to be used (for TVector/TVector2)
#rb rinat.abdrashitov
#preflight 62277e1e7077eb04cf6db63d
[CL 19309153 by Jimmy Andrews in ue5-main branch]
#rb rinat.Abdrashitov
#preflight 61b10e7ce01bc44973f94e8b
#ROBOMERGE-AUTHOR: david.hill
#ROBOMERGE-SOURCE: CL 18413789 in //UE5/Release-5.0/... via CL 18413818
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)
[CL 18413827 by david hill in ue5-release-engine-test branch]
#rb rinat.abdrashitov
#preflight 61b0c8525c61dba07bf4b2f5
#ROBOMERGE-AUTHOR: david.hill
#ROBOMERGE-SOURCE: CL 18406239 in //UE5/Release-5.0/... via CL 18406245
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)
[CL 18406254 by david hill in ue5-release-engine-test branch]
Add test coverage for polygon triangulation functions to ensure they create triangulations with the expected orientations
#jira UE-133286
#rb rinat.abdrashitov
#rnx
#preflight 6181fc82612e950001c9b4ee
#ROBOMERGE-AUTHOR: jimmy.andrews
#ROBOMERGE-SOURCE: CL 18032811 in //UE5/Release-5.0/... via CL 18032831
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main
[CL 18032838 by jimmy andrews in ue5-release-engine-test branch]
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485
[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]