triangulumancer 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- triangulumancer-0.1.0/.gitignore +69 -0
- triangulumancer-0.1.0/.gitmodules +12 -0
- triangulumancer-0.1.0/.pre-commit-config.yaml +45 -0
- triangulumancer-0.1.0/CMakeLists.txt +45 -0
- triangulumancer-0.1.0/LICENSE +674 -0
- triangulumancer-0.1.0/PKG-INFO +773 -0
- triangulumancer-0.1.0/README.md +65 -0
- triangulumancer-0.1.0/environment.yml +11 -0
- triangulumancer-0.1.0/include/triangulumancer/CGAL.hpp +20 -0
- triangulumancer-0.1.0/include/triangulumancer/PointConfiguration.hpp +69 -0
- triangulumancer-0.1.0/include/triangulumancer/TOPCOM.hpp +20 -0
- triangulumancer-0.1.0/include/triangulumancer/Triangulation.hpp +37 -0
- triangulumancer-0.1.0/pyproject.toml +64 -0
- triangulumancer-0.1.0/src/triangulumancer/CGAL.cpp +139 -0
- triangulumancer-0.1.0/src/triangulumancer/PointConfiguration.cpp +149 -0
- triangulumancer-0.1.0/src/triangulumancer/TOPCOM.cpp +170 -0
- triangulumancer-0.1.0/src/triangulumancer/Triangulation.cpp +42 -0
- triangulumancer-0.1.0/src/triangulumancer/triangulumancer.cpp +36 -0
- triangulumancer-0.1.0/tests/test_point_configuration.py +48 -0
- triangulumancer-0.1.0/tests/test_triangulation.py +73 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
.pytest_cache/
|
|
4
|
+
*.py[cod]
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
.venv/
|
|
12
|
+
env/
|
|
13
|
+
bin/
|
|
14
|
+
build/
|
|
15
|
+
develop-eggs/
|
|
16
|
+
dist/
|
|
17
|
+
eggs/
|
|
18
|
+
lib/
|
|
19
|
+
lib64/
|
|
20
|
+
parts/
|
|
21
|
+
sdist/
|
|
22
|
+
var/
|
|
23
|
+
man/
|
|
24
|
+
venv/
|
|
25
|
+
*.egg-info/
|
|
26
|
+
.installed.cfg
|
|
27
|
+
*.egg
|
|
28
|
+
|
|
29
|
+
# Installer logs
|
|
30
|
+
pip-log.txt
|
|
31
|
+
pip-delete-this-directory.txt
|
|
32
|
+
pip-selfcheck.json
|
|
33
|
+
|
|
34
|
+
# Unit test / coverage reports
|
|
35
|
+
htmlcov/
|
|
36
|
+
.tox/
|
|
37
|
+
.coverage
|
|
38
|
+
.cache
|
|
39
|
+
nosetests.xml
|
|
40
|
+
coverage.xml
|
|
41
|
+
|
|
42
|
+
# Translations
|
|
43
|
+
*.mo
|
|
44
|
+
|
|
45
|
+
# Mr Developer
|
|
46
|
+
.mr.developer.cfg
|
|
47
|
+
.project
|
|
48
|
+
.pydevproject
|
|
49
|
+
|
|
50
|
+
# Rope
|
|
51
|
+
.ropeproject
|
|
52
|
+
|
|
53
|
+
# Django stuff:
|
|
54
|
+
*.log
|
|
55
|
+
*.pot
|
|
56
|
+
|
|
57
|
+
.DS_Store
|
|
58
|
+
|
|
59
|
+
# Sphinx documentation
|
|
60
|
+
docs/_build/
|
|
61
|
+
|
|
62
|
+
# PyCharm
|
|
63
|
+
.idea/
|
|
64
|
+
|
|
65
|
+
# VSCode
|
|
66
|
+
.vscode/
|
|
67
|
+
|
|
68
|
+
# Pyenv
|
|
69
|
+
.python-version
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
[submodule "extern/topcom"]
|
|
2
|
+
path = extern/topcom
|
|
3
|
+
url = https://github.com/ariostas/TOPCOM.git
|
|
4
|
+
[submodule "extern/cgal"]
|
|
5
|
+
path = extern/cgal
|
|
6
|
+
url = https://github.com/CGAL/cgal.git
|
|
7
|
+
[submodule "extern/eigen"]
|
|
8
|
+
path = extern/eigen
|
|
9
|
+
url = https://gitlab.com/libeigen/eigen
|
|
10
|
+
[submodule "extern/boost"]
|
|
11
|
+
path = extern/boost
|
|
12
|
+
url = https://github.com/gerwaric/boost-headers-only.git
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
+
rev: "v5.0.0"
|
|
4
|
+
hooks:
|
|
5
|
+
- id: check-added-large-files
|
|
6
|
+
- id: check-case-conflict
|
|
7
|
+
- id: check-merge-conflict
|
|
8
|
+
- id: check-symlinks
|
|
9
|
+
- id: check-yaml
|
|
10
|
+
- id: debug-statements
|
|
11
|
+
- id: end-of-file-fixer
|
|
12
|
+
- id: mixed-line-ending
|
|
13
|
+
- id: requirements-txt-fixer
|
|
14
|
+
- id: trailing-whitespace
|
|
15
|
+
- id: name-tests-test
|
|
16
|
+
args: ["--pytest-test-first"]
|
|
17
|
+
|
|
18
|
+
- repo: https://github.com/cheshirekow/cmake-format-precommit
|
|
19
|
+
rev: "v0.6.13"
|
|
20
|
+
hooks:
|
|
21
|
+
- id: cmake-format
|
|
22
|
+
additional_dependencies: [pyyaml]
|
|
23
|
+
|
|
24
|
+
- repo: https://github.com/codespell-project/codespell
|
|
25
|
+
rev: "v2.4.1"
|
|
26
|
+
hooks:
|
|
27
|
+
- id: codespell
|
|
28
|
+
args: ["-L", "ba,socio-economic"]
|
|
29
|
+
|
|
30
|
+
- repo: https://github.com/pre-commit/mirrors-clang-format
|
|
31
|
+
rev: "v20.1.5"
|
|
32
|
+
hooks:
|
|
33
|
+
- id: clang-format
|
|
34
|
+
types_or: [c++, c]
|
|
35
|
+
|
|
36
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
37
|
+
rev: v0.11.12
|
|
38
|
+
hooks:
|
|
39
|
+
- id: ruff
|
|
40
|
+
args: ["--fix", "--show-fixes"]
|
|
41
|
+
- id: ruff-format
|
|
42
|
+
|
|
43
|
+
ci:
|
|
44
|
+
autoupdate_commit_msg: "chore: update pre-commit hooks"
|
|
45
|
+
autoupdate_schedule: monthly
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
cmake_minimum_required(VERSION 3.15...3.29)
|
|
2
|
+
project(
|
|
3
|
+
${SKBUILD_PROJECT_NAME}
|
|
4
|
+
DESCRIPTION "Compute triangulations of point configurations"
|
|
5
|
+
VERSION ${SKBUILD_PROJECT_VERSION}
|
|
6
|
+
LANGUAGES C CXX)
|
|
7
|
+
|
|
8
|
+
# Required for TOPCOM
|
|
9
|
+
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
|
10
|
+
|
|
11
|
+
# TOPCOM
|
|
12
|
+
add_subdirectory(extern/topcom)
|
|
13
|
+
target_compile_definitions(topcom PUBLIC USE_PHIT_PREPROCESSING=false)
|
|
14
|
+
|
|
15
|
+
# Boost (headers only)
|
|
16
|
+
set(Boost_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/extern/boost)
|
|
17
|
+
|
|
18
|
+
# CGAL
|
|
19
|
+
set(CGAL_DISABLE_GMP ON)
|
|
20
|
+
set(CGAL_DIR ${CMAKE_SOURCE_DIR}/extern/cgal)
|
|
21
|
+
find_package(CGAL REQUIRED CONFIG)
|
|
22
|
+
|
|
23
|
+
# Eigen
|
|
24
|
+
add_library(Eigen3::Eigen INTERFACE IMPORTED)
|
|
25
|
+
# Don't use add_subdirectory because it configures stuff we don't want
|
|
26
|
+
set_target_properties(Eigen3::Eigen PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
|
|
27
|
+
${CMAKE_SOURCE_DIR}/extern/eigen)
|
|
28
|
+
|
|
29
|
+
set(PYBIND11_FINDPYTHON ON)
|
|
30
|
+
find_package(pybind11 CONFIG REQUIRED)
|
|
31
|
+
|
|
32
|
+
set(TRIANGULUMANCER_SOURCES
|
|
33
|
+
src/triangulumancer/triangulumancer.cpp
|
|
34
|
+
src/triangulumancer/PointConfiguration.cpp
|
|
35
|
+
src/triangulumancer/Triangulation.cpp
|
|
36
|
+
src/triangulumancer/CGAL.cpp
|
|
37
|
+
src/triangulumancer/TOPCOM.cpp)
|
|
38
|
+
pybind11_add_module(triangulumancer ${TRIANGULUMANCER_SOURCES})
|
|
39
|
+
target_link_libraries(triangulumancer PRIVATE topcom checkreg CGAL::CGAL
|
|
40
|
+
Eigen3::Eigen)
|
|
41
|
+
target_include_directories(triangulumancer PRIVATE ${CMAKE_SOURCE_DIR}/include)
|
|
42
|
+
target_compile_features(triangulumancer PRIVATE cxx_std_17)
|
|
43
|
+
target_compile_definitions(triangulumancer PRIVATE CGAL_EIGEN3_ENABLED)
|
|
44
|
+
|
|
45
|
+
install(TARGETS triangulumancer DESTINATION .)
|