Skip to content

Commit 839cdc4

Browse files
committed
Merge branch 'master' into v11
2 parents def5e09 + 1bad354 commit 839cdc4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+1395
-208
lines changed

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github: Geode-solutions

.github/workflows/CD.yml

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -10,42 +10,30 @@ jobs:
1010
with:
1111
name: OPENGEODE_INSPECTOR
1212
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
13-
secrets:
14-
TOKEN: ${{ secrets.TOKEN }}
15-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
13+
secrets: inherit
1614

1715
release-linux-python:
1816
uses: Geode-solutions/actions/.github/workflows/cd-linux-python.yml@master
1917
with:
2018
name: OPENGEODE_INSPECTOR
2119
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
22-
secrets:
23-
TOKEN: ${{ secrets.TOKEN }}
24-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
25-
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
20+
secrets: inherit
2621

2722
release-windows:
2823
uses: Geode-solutions/actions/.github/workflows/cd-windows.yml@master
2924
with:
3025
name: OPENGEODE_INSPECTOR
3126
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
32-
secrets:
33-
TOKEN: ${{ secrets.TOKEN }}
34-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
27+
secrets: inherit
3528

3629
release-windows-python:
3730
uses: Geode-solutions/actions/.github/workflows/cd-windows-python.yml@master
3831
with:
3932
name: OPENGEODE_INSPECTOR
4033
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
41-
secrets:
42-
TOKEN: ${{ secrets.TOKEN }}
43-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
44-
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
34+
secrets: inherit
4535

4636
notify:
4737
uses: Geode-solutions/actions/.github/workflows/end-cd.yml@master
4838
needs: [release-linux, release-linux-python, release-windows, release-windows-python]
49-
secrets:
50-
TOKEN: ${{ secrets.TOKEN }}
51-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
39+
secrets: inherit

.github/workflows/CI.yml

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,55 +2,43 @@ name: CI
22

33
on:
44
push:
5-
pull_request:
6-
schedule:
7-
- cron: 0 0 * * *
85

96
jobs:
107
format:
118
uses: Geode-solutions/actions/.github/workflows/format.yml@master
12-
secrets:
13-
TOKEN: ${{ secrets.TOKEN }}
9+
secrets: inherit
1410

1511
build-linux:
1612
needs: format
1713
uses: Geode-solutions/actions/.github/workflows/ci-linux.yml@master
1814
with:
1915
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
20-
secrets:
21-
TOKEN: ${{ secrets.TOKEN }}
22-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
16+
secrets: inherit
2317

2418
build-linux-python:
2519
needs: format
2620
uses: Geode-solutions/actions/.github/workflows/ci-linux-python.yml@master
2721
with:
2822
name: OPENGEODE_INSPECTOR
2923
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
30-
secrets:
31-
TOKEN: ${{ secrets.TOKEN }}
32-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
24+
secrets: inherit
3325

3426
coverage:
3527
needs: format
3628
uses: Geode-solutions/actions/.github/workflows/coverage.yml@master
3729
with:
3830
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
39-
secrets:
40-
TOKEN: ${{ secrets.TOKEN }}
31+
secrets: inherit
4132

4233
build-windows:
4334
needs: format
4435
uses: Geode-solutions/actions/.github/workflows/ci-windows.yml@master
4536
with:
4637
name: OPENGEODE_INSPECTOR
4738
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
48-
secrets:
49-
TOKEN: ${{ secrets.TOKEN }}
50-
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
39+
secrets: inherit
5140

5241
semantic-release:
5342
needs: [build-linux, build-linux-python, build-windows]
5443
uses: Geode-solutions/actions/.github/workflows/release.yml@master
55-
secrets:
56-
TOKEN: ${{ secrets.TOKEN }}
44+
secrets: inherit

.github/workflows/CI_schedule.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: CI
2+
3+
on:
4+
schedule:
5+
- cron: 0 0 * * *
6+
7+
jobs:
8+
schedule:
9+
uses: Geode-solutions/actions/.github/workflows/ci-schedule.yml@master
10+
with:
11+
repos: OpenGeode;OpenGeode-IO;OpenGeode-Geosciences;OpenGeode-GeosciencesIO
12+
secrets: inherit

bindings/python/inspector.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
#
44

55
import opengeode
6+
import opengeode_io
7+
import opengeode_geosciences
8+
import opengeode_geosciencesio
69

710
from .opengeode_inspector_py_inspector import *
811

bindings/python/requirements.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
1-
OpenGeode-core >= 11.0.1, == 11.*
1+
OpenGeode-core >= 11.0.1, == 11.*
2+
OpenGeode-IO >= 5.19.0, == 5.*
3+
OpenGeode-Geosciences >= 5.5.0, == 5.*
4+
OpenGeode-GeosciencesIO >= 3.9.0, == 3.*

bindings/python/src/inspector/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ add_geode_python_binding(
2727
"colocation/pointset_colocation.h"
2828
"colocation/surface_colocation.h"
2929
"colocation/solid_colocation.h"
30+
"colocation/unique_vertices_colocation.h"
3031
"degeneration/edgedcurve_degeneration.h"
3132
"degeneration/solid_degeneration.h"
3233
"degeneration/surface_degeneration.h"

bindings/python/src/inspector/brep_inspector.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
#include <geode/inspector/brep_inspector.h>
2727

2828
#define PYTHON_BREP_INSPECTOR() \
29-
pybind11::class_< BRepInspector, BRepTopologyInspector >( \
30-
module, "BRepInspector" ) \
29+
pybind11::class_< BRepInspector, BRepTopologyInspector, \
30+
BRepUniqueVerticesColocation >( module, "BRepInspector" ) \
3131
.def( pybind11::init< const BRep& >() ) \
3232
.def( pybind11::init< const BRep&, bool >() )
3333

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
/*
2+
* Copyright (c) 2019 - 2022 Geode-solutions
3+
*
4+
* Permission is hereby granted, free of charge, to any person obtaining a copy
5+
* of this software and associated documentation files (the "Software"), to deal
6+
* in the Software without restriction, including without limitation the rights
7+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8+
* copies of the Software, and to permit persons to whom the Software is
9+
* furnished to do so, subject to the following conditions:
10+
*
11+
* The above copyright notice and this permission notice shall be included in
12+
* all copies or substantial portions of the Software.
13+
*
14+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20+
* SOFTWARE.
21+
*
22+
*/
23+
24+
#include <geode/model/representation/core/brep.h>
25+
#include <geode/model/representation/core/section.h>
26+
27+
#include <geode/inspector/criterion/colocation/unique_vertices_colocation.h>
28+
29+
#define PYTHON_SECTION_UV_COLOCATION() \
30+
pybind11::class_< SectionUniqueVerticesColocation >( \
31+
module, "SectionUniqueVerticesColocation" ) \
32+
.def( pybind11::init< const Section& >() ) \
33+
.def( pybind11::init< const Section&, bool >() ) \
34+
.def( "model_has_unique_vertices_linked_to_different_points", \
35+
&SectionUniqueVerticesColocation:: \
36+
model_has_unique_vertices_linked_to_different_points ) \
37+
.def( "model_has_colocated_unique_vertices", \
38+
&SectionUniqueVerticesColocation:: \
39+
model_has_colocated_unique_vertices ) \
40+
.def( "nb_colocated_unique_vertices", \
41+
&SectionUniqueVerticesColocation::nb_colocated_unique_vertices ) \
42+
.def( "nb_unique_vertices_linked_to_different_points", \
43+
&SectionUniqueVerticesColocation:: \
44+
nb_unique_vertices_linked_to_different_points ) \
45+
.def( "colocated_unique_vertices_groups", \
46+
&SectionUniqueVerticesColocation:: \
47+
colocated_unique_vertices_groups ) \
48+
.def( "unique_vertices_linked_to_different_points", \
49+
&SectionUniqueVerticesColocation:: \
50+
unique_vertices_linked_to_different_points )
51+
52+
#define PYTHON_BREP_UV_COLOCATION() \
53+
pybind11::class_< BRepUniqueVerticesColocation >( \
54+
module, "BRepUniqueVerticesColocation" ) \
55+
.def( pybind11::init< const BRep& >() ) \
56+
.def( pybind11::init< const BRep&, bool >() ) \
57+
.def( "model_has_unique_vertices_linked_to_different_points", \
58+
&BRepUniqueVerticesColocation:: \
59+
model_has_unique_vertices_linked_to_different_points ) \
60+
.def( "model_has_colocated_unique_vertices", \
61+
&BRepUniqueVerticesColocation:: \
62+
model_has_colocated_unique_vertices ) \
63+
.def( "nb_colocated_unique_vertices", \
64+
&BRepUniqueVerticesColocation::nb_colocated_unique_vertices ) \
65+
.def( "nb_unique_vertices_linked_to_different_points", \
66+
&BRepUniqueVerticesColocation:: \
67+
nb_unique_vertices_linked_to_different_points ) \
68+
.def( "colocated_unique_vertices_groups", \
69+
&BRepUniqueVerticesColocation::colocated_unique_vertices_groups ) \
70+
.def( "unique_vertices_linked_to_different_points", \
71+
&BRepUniqueVerticesColocation:: \
72+
unique_vertices_linked_to_different_points )
73+
74+
namespace geode
75+
{
76+
void define_models_colocation( pybind11::module& module )
77+
{
78+
PYTHON_SECTION_UV_COLOCATION();
79+
PYTHON_BREP_UV_COLOCATION();
80+
}
81+
} // namespace geode

bindings/python/src/inspector/inspector.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
#include "colocation/pointset_colocation.h"
3333
#include "colocation/solid_colocation.h"
3434
#include "colocation/surface_colocation.h"
35+
#include "colocation/unique_vertices_colocation.h"
3536

3637
#include "degeneration/edgedcurve_degeneration.h"
3738
#include "degeneration/solid_degeneration.h"
@@ -72,6 +73,7 @@ PYBIND11_MODULE( opengeode_inspector_py_inspector, module )
7273
geode::define_solid_facet_manifold( module );
7374
geode::define_brep_topology_inspector( module );
7475
geode::define_section_topology_inspector( module );
76+
geode::define_models_colocation( module );
7577
geode::define_brep_inspector( module );
7678
geode::define_section_inspector( module );
7779
geode::define_pointset_inspector( module );

0 commit comments

Comments
 (0)