Skip to content

Release/2.0.0 #151

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 6 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/doc-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
conda env create -f environment.yml

- name: Cache conda environment cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: C:\Miniconda\envs\diff_check
key: ${{ runner.os }}-conda-${{ hashFiles('environment.yml') }}
Expand Down Expand Up @@ -73,7 +73,7 @@ jobs:
python-version: 3.9.1

- name: Restore conda environment cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: C:\Miniconda\envs\diff_check
key: ${{ runner.os }}-conda-${{ hashFiles('environment.yml') }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/py-sanity-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
auto-update-conda: true
python-version: 3.9.1
- name: Cache conda environment cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: C:\Miniconda\envs\diff_check
key: ${{ runner.os }}-conda-${{ hashFiles('environment.yml') }}
Expand All @@ -32,7 +32,7 @@ jobs:
conda env create -f environment.yml

- name: Cache pre-commit hooks
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ~/.cache/pre-commit
key: ${{ runner.os }}-precommit-${{ hashFiles('.pre-commit-config.yaml') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-pass.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,4 @@ jobs:

- name: Run tests with cmake
run: |
conda run --name diff_check ctest --test-dir build --output-on-failure -C Release --verbose
conda run --name diff_check ctest --test-dir build --output-on-failure -C Release --verbose
62 changes: 49 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
<a href="https://doi.org/10.5281/zenodo.13843959"><img src="https://zenodo.org/badge/DOI/10.5281/zenodo.13843959.svg" alt="DOI"></a>
</p>


![demo](https://github.com/user-attachments/assets/3c9f353d-7707-4630-aa6d-fe59cbdeae2f)

# DiffCheck: CAD-Scan comparison
Expand Down Expand Up @@ -63,24 +64,59 @@ gantt
title diffCheck - general overview
excludes weekends

section Publication
Abstract edition :active, absed, 2024-03-01, 2024-03-15
Submission abstract ICSA :milestone, icsaabs, 2024-03-15, 0d
Paper edition :paperd, 2024-10-01, 2024-10-30
Submission paper ICSA :milestone, icsapap, 2024-10-30, 0d
section Workshop
Workshop dryrun :milestone, crit, dryrun, 2025-09-15, 1d
Workshop in Boston :workshop, 2025-11-16, 2d

section Component development
Pose estimation :CD1, 2025-05-15, 1w
Communication w/ hardware :CD2, after CD1, 3w
Pose comparison :CD3, after CD1, 3w
General PC manipulation :CD4, after CD1, 6w
Data analysis component :CD5, after CD3, 3w

section Workshop preparation
Workshop scenario :doc1, 2025-08-01, 1w
New compilation documentation :doc2, after mac, 2w
New components documentation :doc2, 2025-08-01, 4w
Development of special pipeline for data:doc3, after doc1, 3w

section Code development
Backend development :backenddev, after icsaabs, 6w
Rhino/Grasshopper integration :rhghinteg, after backenddev, 6w
Documentation & Interface :docuint, after fabar, 3w
section Cross-platform
adaptation of CMake for mac compilation :mac, 2025-07-01, 3w

section Prototype testing
Fabrication of AR Prototype :crit, fabar, 2024-07-01, 2024-08-30
Fabrication of CNC Prototype :crit, fabcnc, 2024-07-01, 2024-08-30
Fabrication of Robot Prototype :crit, fabrob, 2024-07-01, 2024-08-30
Data collection and evaluation :dataeval, after fabrob, 4w
Fabrication of iterative prototype :fab, 2025-08-01, 2w
```



## How to contribute

If you want to contribute to the project, please refer to the [contribution guidelines]([./CONTRIBUTING.md](https://diffcheckorg.github.io/diffCheck/contribute.html)).

## Logic
The logic of the workflow is currently as follows:

```mermaid
stateDiagram-v2
state "[breps to assemble]" as s1
state "scan of latest element placed" as s2
state "get pose of i-th brep" as s3
state "get pose of i-1-th brep" as s4
state "compute pose of i-1-th element from scan" as s5
state "compute pose difference" as s6
state "compute pose correction" as s7
state "assemble i-th-element" as s8
state "i += 1" as s9
[*]-->s2
s1-->s3
s1-->s4
s2-->s5
s5-->s6
s4-->s6
s6-->s7
s3-->s7
s7-->s8
s8-->s9
s9-->[*]
```
8 changes: 4 additions & 4 deletions cmake/tests.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -39,22 +39,22 @@ add_custom_command(TARGET ${PYBINDMODULE_NAME} POST_BUILD
copy_dlls(${TARGET_PYBIND_TESTS_DIR} ${PYBINDMODULE_NAME})

add_test(NAME PYBIND_PYVER_TEST
COMMAND ${PYTHON_EXECUTABLE} -m pytest ${CMAKE_CURRENT_SOURCE_DIR}/tests/integration_tests/pybinds_tests/test_pybind_pyver.py
COMMAND "pytest" ${CMAKE_CURRENT_SOURCE_DIR}/tests/integration_tests/pybinds_tests/test_pybind_pyver.py
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
add_test(NAME PYBIND_DLL_SMOKE_TEST
COMMAND ${PYTHON_EXECUTABLE} -m pytest ${CMAKE_CURRENT_SOURCE_DIR}/tests/integration_tests/pybinds_tests/test_pybind_dll_smoke.py
COMMAND "pytest" ${CMAKE_CURRENT_SOURCE_DIR}/tests/integration_tests/pybinds_tests/test_pybind_dll_smoke.py
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
add_test(NAME PYBIND_UNIT_TEST
COMMAND ${PYTHON_EXECUTABLE} -m pytest ${CMAKE_CURRENT_SOURCE_DIR}/tests/integration_tests/pybinds_tests/test_pybind_units.py
COMMAND "pytest" ${CMAKE_CURRENT_SOURCE_DIR}/tests/integration_tests/pybinds_tests/test_pybind_units.py
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)

# ------------------------------------------------------------------------------
# Run all tests
# ------------------------------------------------------------------------------
# FIXME: the post build has some problems if the tests are failing MSB3073
# FIXME: the post build has some problems if the tests are failing MSB3073, it means only the python tests are failing.
if (RUN_TESTS)
add_custom_command(
TARGET ${CPP_UNIT_TESTS} POST_BUILD #TODO: <== this should be set to the latest test suite
Expand Down
2 changes: 1 addition & 1 deletion deps/eigen
Submodule eigen updated from 8b4efc to 11fd34
2 changes: 1 addition & 1 deletion deps/pybind11
Submodule pybind11 updated 164 files
1 change: 1 addition & 0 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ The software is designed to be user-friendly and can be used either via a Grassh

The software is developed by the `Laboratory of Timber Construction (IBOIS)`_ and the `Laboratory for Creative Computation (CRCL)`_ at `Polytechnique Fédérale de Lausanne (EPFL)`_.


.. raw:: html

<div style="text-align: center;">
Expand Down
2 changes: 1 addition & 1 deletion src/gh/components/DF_cloud_normal_estimator/code.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,4 @@ def RunScript(self,

o_cloud = df_cvt_bindings.cvt_dfcloud_2_rhcloud(df_cloud)

return o_cloud
return [o_cloud]
12 changes: 10 additions & 2 deletions src/gh/diffCheck/diffCheck.egg-info/PKG-INFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Metadata-Version: 2.4
Name: diffCheck
Version: 0.0.37
Version: 1.3.0
Summary: DiffCheck is a package to check the differences between two timber structures
Home-page: https://github.com/diffCheckOrg/diffCheck
Author: Andrea Settimi, Damien Gilliard, Eleni Skevaki, Marirena Kladeftira, Julien Gamerro, Stefana Parascho, and Yves Weinand
Expand All @@ -11,6 +11,14 @@ Classifier: Programming Language :: Python :: 3.9
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: pybind11>=2.5.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: requires-dist
Dynamic: summary

# DiffCheck: CAD-Scan comparison

Expand Down
2 changes: 1 addition & 1 deletion src/gh/diffCheck/diffCheck.egg-info/SOURCES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ diffCheck/df_joint_detector.py
diffCheck/df_transformations.py
diffCheck/df_util.py
diffCheck/df_visualization.py
diffCheck/diffcheck_bindings.cp39-win_amd64.pyd
diffCheck/diffcheck_bindings.cp312-win_amd64.pyd
diffCheck.egg-info/PKG-INFO
diffCheck.egg-info/SOURCES.txt
diffCheck.egg-info/dependency_links.txt
Expand Down
3 changes: 3 additions & 0 deletions test_save.ply
Git LFS file not shown
Loading