39 Commits

Author SHA1 Message Date
jimmy andrews
65f56db50c add polygon and path offset functions to GeometryScript
+ some fixes to clipper offset methods, and additional controls over the number of vertices at round joins

#rb david.hill
#preflight 6430d1e7b306e98c639e68a8

[CL 24984017 by jimmy andrews in ue5-main branch]
2023-04-10 17:09:53 -04:00
jimmy andrews
a1369e28aa Add polygon offset functions that take arrays of general polygons and apply one or two offsets
also:
Update polygon union code to allow the input array to be (optionally) re-used as the result array
Fix the previous offset function to support negative offsets for polygons

#rb ryan.schmidt
#preflight 63f7f9b12b1a2765f9210b37

[CL 24397851 by jimmy andrews in ue5-main branch]
2023-02-24 04:01:40 -05:00
jimmy andrews
ff71fb07b1 Add support for taking the intersection/union/difference/xor of arrays of polygons with clipper
#rb david.hill
#rb ryan.schmidt
#preflight 63f7ad72dd78dd50f6000db5

[CL 24397791 by jimmy andrews in ue5-main branch]
2023-02-24 03:57:07 -05:00
jimmy andrews
ba421861c3 fix handling of an outer polygon nested inside a hole in the clipper2 wrapper code
#rb rinat.abdrashitov
#preflight 63f6e0df7064074bd8ded514

[CL 24386961 by jimmy andrews in ue5-main branch]
2023-02-23 14:54:51 -05:00
henrik karlsson
9183978e29 [Engine/Plugins]
* Removed includes (using IWYU) in private files

#preflight 63c79978ac35a0e9dabbe408
#rb none

[CL 23770038 by henrik karlsson in ue5-main branch]
2023-01-19 00:48:07 -05:00
Jimmy Andrews
e969984892 fix duplicate loctext key in floattetwild.cpp
#rb trivial
#preflight skip

[CL 23425601 by Jimmy Andrews in ue5-main branch]
2022-12-07 00:40:58 -05:00
Ryan Kautzman
45e6e19cd1 Expose TetWild parameters.
#rb: jimmy.andrews
#fyi: Brice.Criswell
#preflight 638faec3bb6fefa472d2bbf3

[CL 23416667 by Ryan Kautzman in ue5-main branch]
2022-12-06 16:22:47 -05:00
Jimmy Andrews
77b15b8f44 Add initial (very coarse-grained) progress reporting to ftetwild code via FProgressCancel
#rb ryan.kautzman
#preflight 638a89034c3ce8ae5d41e30a

[CL 23416579 by Jimmy Andrews in ue5-main branch]
2022-12-06 16:17:14 -05:00
Jimmy Andrews
3bb6b018b1 Add third party include guard for eigen include in fTetWild to fix warning for some compiler configurations
#preflight 6389214db36822f1c34f250c

[CL 23363696 by Jimmy Andrews in ue5-main branch]
2022-12-01 17:02:03 -05:00
Jimmy Andrews
ad6b3f5afe Fix Issue 240997 -- Static analyzer warnings from fTetWild code
#rb trivial
#preflight 6388d90eb36822f1c336969c

[CL 23356134 by Jimmy Andrews in ue5-main branch]
2022-12-01 13:26:40 -05:00
Jimmy Andrews
e93066ef38 change ftetwild headers to use pragma once instead of include guards
#rb trivial
#preflight 63883134917a16aecd9d117f

[CL 23346928 by Jimmy Andrews in ue5-main branch]
2022-12-01 00:00:48 -05:00
Jimmy Andrews
7c175bb387 Add fTetWild (adapted to work with UE) as a new third party library in GeometryAlgorithms
#rb ryan.kautzman
#preflight 6387ba677b4bd3f05727dbaf

[CL 23346740 by Jimmy Andrews in ue5-main branch]
2022-11-30 23:16:34 -05:00
jimmy andrews
7d14aaf2ee add a pragma so msvc will use precise math when compiling xatlas.cpp, to get consistent results across builds
#jira UE-164543
#rb semion.piskarev
#preflight 632e0abae23e50651ba35f72

[CL 22165439 by jimmy andrews in ue5-main branch]
2022-09-23 20:47:22 -04:00
george rolfe
8be5c99ee7 Clipper library precision fix
#jira UE-164425
#rb jimmy.andrews
#preflight 632cf394d747fe52c87af584

[CL 22152063 by george rolfe in ue5-main branch]
2022-09-22 23:50:43 -04:00
Jimmy Andrews
571b3c262d Fix ConstrainedDelaunay2 Add() function being overloaded in two ways; make the new Add be more-specifically-named AddWithIntersectionResolution
#rb michael.balzer
#rb david.hill
#preflight 630fa8cc556fc14dce9c74d1
#jira UE-162641

[CL 21726042 by Jimmy Andrews in ue5-main branch]
2022-08-31 15:14:58 -04:00
Jimmy Andrews
4baf1c84e0 non-unity build fixes for polygonintersectionutils.h
#preflight 630ed0ff501b64ba335839ab

[CL 21716892 by Jimmy Andrews in ue5-main branch]
2022-08-30 23:45:44 -04:00
Jimmy Andrews
c739875cc3 Add test coverage to ensure that Clipper's Union operation can also be used to resolve self-intersections via union-with-empty
#rb rinat.abdrashitov
#preflight 630d89f80345de4ccf9b59ed

[CL 21703980 by Jimmy Andrews in ue5-main branch]
2022-08-30 12:44:16 -04:00
michael balzer
b7c701b8e7 Clipper2 TPS library: Disable "Dereferencing NULL pointer" warnings
#jira UE-161452
#preflight 6309141a66150c7b753a0a28

[CL 21596120 by michael balzer in ue5-main branch]
2022-08-26 15:04:00 -04:00
Joe Kirchoff
fa80772aea Fix undefined symbols when running clang analyzer in xatlas.cpp
Add check to CollisionConvexMesh.h to supress null reference warning by request
Suppress cplusplus.NewDeleteLeaks warnings in Chaos by request

#rnx
#rb trivial
#jira UE-160884
#preflight 630676ac0061f895d04b88fe

[CL 21549010 by Joe Kirchoff in ue5-main branch]
2022-08-24 15:16:09 -04:00
george rolfe
bf0f26478e Clipper non-unity fix and commenting out of functions containing exceptions, both of which aren't used at all
#jira none
#rb none
#preflight 62fee73c9835a27d8d7b4c04

[CL 21453524 by george rolfe in ue5-main branch]
2022-08-18 21:46:55 -04:00
Jimmy Andrews
5c1c2c6670 cis fix for geometryalgorithms / clipper library: remove all throws from clipper library, rather than try to fix them with defines
#preflight 62feb8bd3f75602b2f227d22

[CL 21451916 by Jimmy Andrews in ue5-main branch]
2022-08-18 18:58:11 -04:00
George Rolfe
533740707f Clipper cis fix
#jira none
#rb none
#preflight 62fe47bd0f2aefc97af89e28

[CL 21442990 by George Rolfe in ue5-main branch]
2022-08-18 11:32:10 -04:00
George Rolfe
fd9eafdc4b GeometryProcessing clipper lib integration and exposed functionality
#jira UE-161308
#rb jimmy.andrews
#preflight 62fe3d930f2aefc97af68d16

[CL 21441167 by George Rolfe in ue5-main branch]
2022-08-18 09:40:40 -04:00
Jimmy Andrews
c21b7d49f3 Add new oriented box fit variant that starts from the fast DiTO box and optimizes the fit iteratively
+ Add ProgressCancel to box fits
+ Change editor code to use the new fit algorithms

#rb rinat.abdrashitov
#rb david.hill
#preflight 62f15a2ba035cdf05ea4d1b7

[CL 21273458 by Jimmy Andrews in ue5-main branch]
2022-08-08 15:20:28 -04:00
David Hill
9f5eeac1e3 Geometry: Suppress type conversion warnings in third party on clang
#preflight 62d6fdcdd54af4b9a29176a2
#rnx

[CL 21185144 by David Hill in ue5-main branch]
2022-07-20 14:04:32 -04:00