Commit Graph
97 Commits
Author SHA1 Message Date
pca006132 285bb0754b fix nixos js build (#473)
* fix nix js build

* fix js CrossSection::rotate binding

* add wasm hull operation
2023-07-12 12:03:19 +08:00
Emmett Lalish eb41b9d36a Add CI check for formatting more languages (#441)
* add format files

* some fixes
2023-05-26 08:19:02 -07:00
Emmett Lalish 72935213e8 Editor scene (#438)
* SetProperties working

* cleanup

* added Node

* switched to Vite

* scene export working

* vertex color output works

* added unlit

* fixed rename bug

* switch worker to TS

* don't fail on empty manifolds

* reusing meshes

* cleanup, updated gyroid example

* change signature of setPropFunc

* updated examples

* add dist for githack testing

* Revert "add dist for githack testing"

This reverts commit 8769d7ab08dfaab9fe7824726f7a7229bf553bb3.

* remove duplicate files

* updated docs

* fixed some bugs

* multi-material working

* switched to vitest

* tests pass

* fixed examples

* fix CI

* update deployment

* tweak logging

* cleanup

* fix copy

* updated READMEs

* extend timeout
2023-05-25 09:40:02 -07:00
Emmett Lalish 58fb7e3300 EXT_manifold for glTF (#420)
* extension export works

* reading GLBs

* trying to merge documents

* add await

* removed extra materials

* added builds

* several fixes

* fix versions

* move to built

* fixed test.js

* updated README

* disable nix JS test for now

* fix codecov timeout

* fix test
2023-05-04 20:49:39 -07:00
Emmett Lalish aeba26760b Add Merge function (#394)
* start Merge

* started Merge function

* added collider

* refactor now builds

* connect vectors

* finished Merge, updated Collider

* added tests

* added sorting, updated graph_lite

* revert submodule change

* fixed indexing

* fixed prop dedupe bug

* fixed test

* update meshIO linking

* fix MSVC

* use assimp on Mac

* add precision handling

* improved tests

* revert test tweak

* update collider

* clean up multiset

* updated docs
2023-04-09 17:16:40 -07:00
Emmett Lalishandpca006132 f25d9601cb update thrust to 2.1 (#389)
* update thrust to 2.1

* fix typo

* does it work?

* fix shell script

* use checkout recursive option

* enable emscripten pthread support

* use GLM CMake

* remove -pthread

* fix emscripten build

---------

Co-authored-by: pca006132 <john.lck40@gmail.com>
2023-03-30 20:44:50 -07:00
Geoff deRosenroll 7c2007771e Make tests optional + fix option declarations (#366)
Break out the MeshIO library from the tests subdirectory, and make building the tests optional. In cases where building/re-building the tests is not wanted/needed, this can shorten build times by over 25% on my machine. A major motivator for this is building 3rd party bindings.

Also included here are descriptors for the option declarations, which I
noticed do not actually set the default value as expected if the
description argument is omitted (defaults to OFF, rather than ON for
`_TEST` and `_PYBIND` for example).
2023-03-14 10:47:08 -07:00
Geoff deRosenroll d82cf061f8 Update pybind11 to latest stable commit (#367)
* Update pybind11 to latest stable commit

* Explicitly install python@3.11 in mac CI

* Turn findpython on
2023-03-14 11:11:58 +08:00
Emmett Lalish 4d434e4f8c deploy extra types files (#349) 2023-03-02 00:04:16 -08:00
Emmett Lalish 3f42e5e6d7 Adding show() to editor (#330)
* include all transforms

* added show method for editor debug

* await before cleanup

* tighten JS tests

* move out common test functions

* split manifold and boolean tests

* cleanup

* tighten samples tests

* fixed GetMeshGL

* fixed original IDs for empty runs

* link SDF

* update CUDA files

* revert accidentally-removed test function

* added types and docs
2023-02-20 22:00:04 -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
Emmett Lalish 9477deaa9c Fix deploy (#323)
* use pinned gltf-transform

* fix artifact download
2023-02-16 09:24:18 -08:00
Emmett Lalish 20d7ef96fb update CI to cuda 12 (#319) 2023-02-10 23:22:18 -08:00
Emmett Lalish 4415cfce46 Transform relations (#315)
* added transforms output

* removed meshids

* read MeshGL runs, IDs, and transforms

* cleanup

* replaced lambdas

* refactor reserveIDs

* refactored reference initialization

* added round-trip test

* added multi-material round trip test

* added faceID round trip test

* back to const inputs

* added missing error types

* shorten CI timeouts

* update docs
2023-02-07 09:50:43 -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
Emmett Lalish c59130c754 Adding NodeJS tests for WASM module (#262)
* modularize wasm and add mocha tests

* add npm tests to CI

* fix mv command

* revert to build directory

* added rest of example tests

* fixed three.js test

* update web examples for module
2022-10-27 10:01:08 -07:00
Emmett Lalish 491d7d8045 added package.json to publish to npm (#257)
* added package.json

* updated READMEs
2022-10-23 22:04:53 -07:00
Emmett Lalish 1fced6a33f fix deploy order (#250)
fix order
2022-10-16 23:37:14 -07:00
Emmett Lalish 89578ccb7a Torus Knot example (#249)
* added torusKnot

* save state

* update deploy

* remove shell script
2022-10-16 23:02:12 -07:00
Emmett Lalish d5b5f044f2 update workflows (#248) 2022-10-16 21:40:19 -07:00
Emmett Lalish 5be306bb7d reorganize gh-pages (#246)
reorganized gh-pages
2022-10-16 15:51:47 -07:00
Emmett Lalish 69a53f522a added mac to CI (#229)
* added mac to CI

* add mac parallel backends

* disable OMP for now
2022-10-06 08:59:09 -07:00
Emmett Lalish 022995a697 updated build info (#228)
* updated build info

* added cgal
2022-10-06 08:25:30 -07:00
Emmett Lalish 31589d255c fix deploy and add favicon (#211) 2022-09-22 09:17:44 -07:00
Emmett Lalish 414c6e06be Editor UX updates (#210)
* UX updates and TS fix

* small refactor

* enable/disable run button

* improved responsive layout
2022-09-22 00:05:05 -07:00
Emmett Lalish f6839a36e6 updated python exporter from meshio to trimesh (#204) 2022-09-18 16:34:20 -07:00
Emmett Lalish cc62c2c9dc model-viewer WASM example (#198)
* added what will become the model-viewer example

* model-viewer working

* cleanup
2022-09-08 16:04:31 -07:00
Emmett Lalish 2835e15a0e remove assimp submodule (#194)
* remove assimp submodule

* optionally compile meshIO

* fix nix
2022-09-06 09:31:20 -07:00
Emmett Lalish 73a53e0ff8 Removing export from python binding (#190)
* try python meshio

* removed meshIO dependency

* fixed to_mesh

* fix nix

* more nix fix
2022-09-05 09:29:28 -07:00
Emmett Lalish d7ecdd5fab exceptions optional 2022-07-28 11:00:13 -07:00
Emmett Lalish 2db8c716ee try a different download action 2022-07-24 22:27:17 -07:00
Emmett Lalish 0d9f4dadfb cleanup 2022-07-23 23:09:36 -07:00
Emmett Lalish feedcd82d4 deploy WASM 2022-07-23 23:04:35 -07:00
Emmett Lalish 311ca75a21 actions format check 2022-07-19 22:31:08 -07:00
Emmett Lalish 63164bed95 fixing paths 2022-07-19 22:03:11 -07:00
Emmett Lalish 2098bc9d1f fix workflows 2022-07-19 21:40:36 -07:00
pca006132 873d8c6dc8 patch https://github.com/NVIDIA/thrust/issues/1743 2022-07-17 14:41:48 +08:00
Emmett Lalish c13ad5657e speed up CI 2022-06-20 17:31:51 -07:00
Emmett Lalish 870b94e172 fixed coverage 2022-06-20 16:12:03 -07:00
Emmett Lalish 3da4dfbde0 remove third_party coverage 2022-06-19 23:15:16 -07:00
Emmett Lalish 14e0dcbd89 disable branch coverage 2022-06-19 22:27:46 -07:00
pca006132 8bb7aab137 only run code coverage for cpp backend 2022-06-18 18:12:50 +08:00
pca006132 02ae191ade actually running codecov 2022-06-18 16:49:50 +08:00
pca006132 efe2665352 try coverage info 2022-06-18 16:42:18 +08:00
pca006132 c7de23412c disabled CI for draft PRs 2022-06-05 22:05:18 +08:00
pca006132 0601a0e93d added clang-format CI check 2022-06-04 23:35:00 +08:00
pca006132 0fc2151806 CI: use libpython3-dev as python3 dependency 2022-06-03 19:23:41 +08:00
pca006132 0292ed5c32 Merge remote-tracking branch 'upstream/master' into pybind11 2022-06-03 15:35:09 +08:00
pca006132 fcbb364b43 fix Windows CI 2022-06-01 14:29:54 +08:00
pca006132 d4ec0485c2 CI updates 2022-06-01 14:01:21 +08:00