Jimmy Andrews
28d23d0754
add an IsConvex() test to polygon2/curveutil
...
#rb tyson.brochu
#preflight 62b0c9b3ca3595d82dd6e269
[CL 20745228 by Jimmy Andrews in ue5-main branch]
2022-06-20 17:28:14 -04:00
Jimmy Andrews
bd91583516
add a ClipConvex method for polygon2 and curveutil, to clip polygons to given bounds.
...
Uses the Sutherland–Hodgman algorithm of progressively clipping each side, so may leave folded overlaps directly on the boundaries if applied to non-convex polygons (but otherwise should still work)
#rb tyson.brochu
#preflight 62acfb162c6f089ea8ecbd5a
[CL 20717357 by Jimmy Andrews in ue5-main branch]
2022-06-18 08:52:11 -04:00
Jimmy Andrews
f075aba840
Refactor some Polygon2 functionality to be more broadly available via CurveUtil (e.g., functions for curve area, normals, length, winding)
...
+ add test coverage of these
#rb rinat.abdrashitov
#preflight 62aaa543634e82e5d126ccc4
[CL 20694865 by Jimmy Andrews in ue5-main branch]
2022-06-16 16:46:39 -04:00
Jimmy Andrews
44bb08921c
Deprecate unused Timestamp and GetTimestamp function on TPolygon2 and TPolyline3
...
#rb matija.kecman
#rb ryan.schmidt
#preflight 62a896a3a43e20b293433722
[CL 20651996 by Jimmy Andrews in ue5-main branch]
2022-06-14 12:53:25 -04:00
Ryan Schmidt
9f156b5f20
GeometryCore: Add minimal UE::Math::TVector2<T> implementation and FVector2f/2d typedefs locally in GeometryCore VectorTypes.h. Replace existing FVector2<T> with this class, in preparation for LWC conversion. FVector2 members ::Distance() and ::DistanceSquared() moved to free functions. Update all call sites and references to FVector2.
...
#rb jimmy.andrews
#rnx
#jira none
#preflight 612d248c423a8f00013287f2
[CL 17359821 by Ryan Schmidt in ue5-main branch]
2021-08-30 18:02:34 -04:00
Steve Robb
839f904aa1
Fix for crash when calling TPolygon2<>::Contains() on an empty polygon.
...
#rb none
#jira none
#fyi ryan.schmidt
[CL 17048265 by Steve Robb in ue5-main branch]
2021-08-04 07:32:02 -04:00
Ryan Schmidt
623e4f96fe
GeometryCore: create new GeometryCore Module. Move GeometricObjects code from GeometryProcessing plugin to this new module, as well as core FDynamicMesh3 classes (attributes, aabbtree/octree, change tracking). Update module Build.cs files that reference GeometricObjects.
...
#rb none
#rnx
#jira none
#preflight 60a713700569f300014a064a
[CL 16415082 by Ryan Schmidt in ue5-main branch]
2021-05-21 01:04:38 -04:00