Geoff deRosenroll
e1ebc66425
(C) Only link MeshIO when MANIFOLD_EXPORT is on ( #436 )
...
Only link MeshIO in C bindings when `MANIFOLD_EXPORT` is defined. MeshIO related code has been better consolidated to limit the number of `#ifdef` blocks required.
2023-05-21 00:14:36 -07:00
Emmett Lalish
4bdb761d5e
fixed warp ( #418 )
...
* fixed warp
* fix pi
* ease up test tolerance
* improve cbind test
* fix build
* better bind testing
2023-04-21 17:02:16 +08:00
Geoff deRosenroll
2a63971983
Add missing C bindings + revamp composition with opaque vectors ( #382 )
...
- Add bindings to `CrossSection::{Compose,Decompose,NumVert,NumContour,Warp}`
- Add bindings to `Boolean` and `BatchBoolean` for both `Manifold` and `CrossSection`
- Add `ManifoldManifoldVec` and `ManifoldCrossSectionVec` opaque types for `std::vector` pointers to help clean up bindings involving vectors (particularly when they are returned with dynamic size, *e.g.* `manifold_decompose`
- Remove two-step Components workaround previously introduced to allow return of C array from `manifold_decompose`
2023-03-19 22:19:19 -07:00
Geoff deRosenroll
61d87c503c
SimplePolygon/Polygons accessors for C bindings ( #369 )
2023-03-14 22:11:48 -07:00
Geoff deRosenroll
bd8da6ce1e
Add CrossSection and Rect to C bindings ( #353 )
...
* + CrossSection and Rect type interfaces and method functions
* `manifold_extrude` and `manifold_revolve` take `ManifoldCrossSection*`
* fix manifoldc extrude test (`ManifoldCrossSection*` argument)
2023-03-07 12:30:28 -08:00
Emmett Lalish
e6bb87b2bb
change enum case ( #325 )
...
* change enum case
* fix C enums
* more fixes
* another fix
2023-02-16 13:32:28 -08:00
Geoff deRosenroll
bbb1fabcac
Remove Mesh from interface + memcpy depuplication ( #313 )
2023-01-29 08:34:56 -08:00
Geoff deRosenroll
5b5f56674a
Use sqrtf to return float rather than double in level_set test. ( #303 )
...
sqrtf to return float rather than double
This hasn't been a problem on my machine, or in the Manifold CI, but
the double <> float mismatch gave a type error in an ubuntu 22.04
workflow on my omanifold project. Not totally sure why as of yet, but
this gets rid of the implicit conversion at the root of it.
2022-12-29 18:51:53 +08:00
Geoff deRosenroll
bd46bfd1cf
Fix incorrect value for components length + test ( #295 )
2022-12-22 13:24:09 +08:00
Geoff deRosenroll
a7b457db74
C bindings to facilitate static FFI bindings ( #292 )
...
* + c bindings to facilitate static FFI bindings
Squashed commit of the following:
commit a05f9b0e0ab079b95c29b4641ae928f02be219f4
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Dec 10 16:21:47 2022 -0800
Add flag (default on) for python bindings
Signed-off-by: Geoff deRosenroll <geoffderosenroll@gmail.com >
commit ce5b601fc7578fa43edbf7363a7b625d1d27a1de
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Dec 9 23:45:29 2022 -0800
conv function naming consistency
commit 1b50cf077dada8c3bc13d77bfa1c8f0a406c047d
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Tue Dec 6 17:42:18 2022 -0800
manifold_level_set_seq to C API (force sequential)
commit 77e06daf92e7014ce153a336ed685b9370e965c0
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Tue Dec 6 17:24:10 2022 -0800
Use an optional executionpolicy param in LevelSet
This allows bindings to avoid breaking their runtime locks while passing
in function pointers without introducing another compile flag.
commit 12c62b1e33cdacd07f056859fa2038dfd1f62170
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Dec 5 15:09:41 2022 -0800
Better section comments
commit 24f1d5107e24f41d3860fe6dea4832a523989eb9
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Dec 2 12:01:50 2022 -0800
Add missing management functions for Components
commit a7d5aae8550c4ace458e78314eab04a3cf5f2053
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Thu Dec 1 23:45:45 2022 -0800
Break Decompose up to avoid repetition in C binds
commit a650a1531dc52610db8e6009e82e247d7f256d3e
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sun Nov 27 22:41:38 2022 -0800
Add manifold_get_properties
commit 97a58396cd8e6c5fad698f1280d02d78e0b51ded
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 26 22:53:42 2022 -0800
circular segment functions corrected to static
commit c9c1ca7ec599b5f14401c85efde19481d86226f8
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Thu Nov 24 21:19:11 2022 -0800
polygons from dbl ptr of SimplePolygon
commit 8e5390aa729817d0cc652f92a64e6850e4e16e9b
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Wed Nov 23 12:16:44 2022 -0800
compose and decompose switched to double ptrs
commit 45c78c3e1aa0eaab8622c77b69221226af06861c
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Tue Nov 22 11:40:32 2022 -0800
Add manifold copy and empty constructors
commit cfc06fe55cd4a508005385bcdb4037ed89695f80
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Nov 21 15:03:00 2022 -0800
Add MANIFOLD_SEQ_SDF to avoid runtime lock
commit e0f9d09e5ced6fcb2b83722542e99b20d0799e25
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sun Nov 20 16:56:50 2022 -0800
Add missing export related contructors.
commit 0cbaa4a6090c402f2a2483c35f5b3b7e82d8cf52
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sun Nov 20 16:03:43 2022 -0800
Add separate destruct functions
commit fd6c1c250e6b91114b0203b40a941fa73e3473ec
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 19 17:29:12 2022 -0800
More consistent array handling
commit ec1eef84153b13bba0b5ae78a42084b634a9d9b1
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 19 16:52:07 2022 -0800
Replace array args with pointers
commit 9079cbf7bb788e1b8eb992cbe1e3e51dfc36f1ce
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 19 15:00:47 2022 -0800
Revert "Switch back to funptr struct args for simplicity"
This reverts commit dc78841af654bf81c41e74795bac0f724af59dd0.
commit 62c1078fe9b10c88df86da0a5275f47581dad275
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 19 14:52:37 2022 -0800
Switch back to funptr struct args for simplicity
commit d30992db9a4224235246531a5ddf1a034e8e0c1a
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 19 14:06:12 2022 -0800
Avoid needing to pass in vec struct for funptrs
commit 2ba7bec1653a655c68bba3d2961fd280bc8e8f32
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Sat Nov 19 00:32:09 2022 -0800
Use template spec to avoid fun ptr to cuda
commit 1faf58b3887747af8659eb1be660e2fc40ff17f9
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Nov 18 21:54:56 2022 -0800
Make fPIC more conditional.
commit 6215f89447f63753ca0dd2f2fcee88c7aaf5e548
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Nov 18 21:35:09 2022 -0800
Avoid passing dynamic lambda to GPU
commit 30fa3dc323df8962e3802a58f346b813a8a759f5
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Nov 18 18:02:04 2022 -0800
note and temporary hack RE cuda compilation
commit bb4dfe93cb8e0e7b582450f6d0c0d8d5ba5cef9a
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Nov 18 17:21:25 2022 -0800
Set graphlite library to OBJECT
commit e803da50b983c931c69e42fe3fea30aff534034b
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Nov 18 16:04:28 2022 -0800
Convert sublibraries to OBJECT to avoid archives
commit d0e9d176e79f18c645e538a5df19263d11630fcd
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Fri Nov 18 15:28:15 2022 -0800
Add missing polygon size and deletion funcs
commit 7db72848b9012d9f1a69b28ad878fb65f4524fc3
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Tue Nov 15 22:26:17 2022 -0800
Remove static flag (control with shared flag)
commit 5ae33f34716998e3d8b3368c619b81f145e34cfe
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Tue Nov 15 22:16:27 2022 -0800
Add options to avoid python bindings
commit 4181a586288db47acbd55f8e94e94ec4a7fcd252
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Nov 14 22:02:10 2022 -0800
Rename to manifoldc
commit c4b14d64655ca2fb3ce8ac80af7390b959fed3c7
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Nov 14 21:51:45 2022 -0800
Cleanup unused typedefs and simplify names
commit a282c90f1f62141ee5c2cd9303ccc8649f2a6bb3
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Nov 14 21:23:07 2022 -0800
Placeholder (terrible) decompose binding
commit 9409e81abb2c3ba3ffb0983aa0c14e261d032cc2
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Nov 14 20:37:02 2022 -0800
Turn on export in CLI instead
commit 9dad24b787af0420ef32719c86fb42e11af9a8c1
Author: Geoff deRosenroll <geoffderosenroll@gmail.com >
Date: Mon Nov 14 20:33:17 2022 -0800
"Rebased" WIP cbindings
* Turn on -fPIC whenever shared libs are being built
* Add parens to disambiguate sdf policy logic
* Bump public std from 14 to 17
* Add binding flags to workflow builds
* Add export when building cbindings
* Bump ubuntu version (PBR material deprecation)
* Select no-param overload of Decompose
* Add missing const to decompose sig overload
* Re-organize
* variable capitalization consistency
* Drop to std14 to test for regression fix
* Attempted old libassimp compatibility hack
* Rebump to std_17
* Temporarily disabled
TODO: investigate why this is failing on Mac, but not other backends.
* Remove unused tuple include
* Remove uneccesary auto-includes
* Properly disable Boolean_Close
* rename discrete -> numComponents + early return
* Rename discrete -> numComponents
* Rename conv.hh -> conv.h
* Prune auto-includes
* Note on level_set vs level_set_seq
* Set export on for c-bindings
* Adding C binding tests.
* Separate and don't require CBIND build/test
* Remove bad flag
* Take const char ptr for filename
* Remove testc executable
* Add tests from removed testc
2022-12-18 21:59:36 +01:00