Skip to content

Commit db4bd38

Browse files
committed
OCC: cleanup
1 parent 07552b6 commit db4bd38

16 files changed

+97
-152
lines changed

Cassiopee/OCC/OCC/Atomic/analyse.cpp

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,9 @@ PyObject* K_OCC::analyseEdges(PyObject* self, PyObject* args)
4646
PyObject* hook;
4747
if (!PYPARSETUPLE_(args, O_, &hook)) return NULL;
4848

49-
void** packet = NULL;
50-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
51-
packet = (void**) PyCObject_AsVoidPtr(hook);
52-
#else
53-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
54-
#endif
55-
56-
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
49+
GETPACKET;
50+
GETMAPEDGES;
51+
5752
E_Float emin = K_CONST::E_MAX_FLOAT;
5853
E_Float emax = -K_CONST::E_MAX_FLOAT;
5954
E_Float ltot = 0.;

Cassiopee/OCC/OCC/Atomic/areEdgeIdentical.cpp

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -86,14 +86,8 @@ PyObject* K_OCC::areEdgeIdentical(PyObject* self, PyObject* args)
8686
E_Int edgeNo2; // No de l'edge1
8787
if (!PYPARSETUPLE_(args, OO_ I_, &hook, &edgeNo1, &edgeNo2)) return NULL;
8888

89-
void** packet = NULL;
90-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
91-
packet = (void**) PyCObject_AsVoidPtr(hook);
92-
#else
93-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
94-
#endif
95-
96-
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
89+
GETPACKET;
90+
GETMAPEDGES;
9791
TopExp_Explorer expl;
9892

9993
const TopoDS_Edge& E1 = TopoDS::Edge(edges(edgeNo1));

Cassiopee/OCC/OCC/Atomic/bottle.cpp

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -167,13 +167,7 @@ PyObject* K_OCC::bottle(PyObject* self, PyObject* args)
167167
PyObject* hook; E_Float width, height, thickness;
168168
if (!PYPARSETUPLE_(args, O_ RRR_, &hook, &width, &height, &thickness)) return NULL;
169169

170-
void** packet = NULL;
171-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
172-
packet = (void**) PyCObject_AsVoidPtr(hook);
173-
#else
174-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
175-
#endif
176-
170+
GETPACKET;
177171
TopoDS_Shape shp = MakeBottle(width, height, thickness);
178172
TopoDS_Shape* newshp = new TopoDS_Shape(shp);
179173

Cassiopee/OCC/OCC/Atomic/evalEdge.cpp

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -52,14 +52,8 @@ PyObject* K_OCC::evalEdge(PyObject* self, PyObject* args)
5252
E_Int edgeNo; // No de l'edge
5353
if (!PYPARSETUPLE_(args, OO_ I_, &hook, &arrayU, &edgeNo)) return NULL;
5454

55-
void** packet = NULL;
56-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
57-
packet = (void**) PyCObject_AsVoidPtr(hook);
58-
#else
59-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
60-
#endif
61-
62-
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
55+
GETPACKET;
56+
GETMAPEDGES;
6357
TopExp_Explorer expl;
6458

6559
const TopoDS_Edge& E = TopoDS::Edge(edges(edgeNo));

Cassiopee/OCC/OCC/Atomic/evalFace.cpp

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -52,14 +52,8 @@ PyObject* K_OCC::evalFace(PyObject* self, PyObject* args)
5252
E_Int faceNo; // No de la face
5353
if (!PYPARSETUPLE_(args, OO_ I_, &hook, &arrayUV, &faceNo)) return NULL;
5454

55-
void** packet = NULL;
56-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
57-
packet = (void**) PyCObject_AsVoidPtr(hook);
58-
#else
59-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
60-
#endif
61-
62-
TopTools_IndexedMapOfShape& surfaces = *(TopTools_IndexedMapOfShape*)packet[1];
55+
GETPACKET;
56+
GETMAPSURFACES;
6357
TopExp_Explorer expl;
6458

6559
const TopoDS_Face& F = TopoDS::Face(surfaces(faceNo));

Cassiopee/OCC/OCC/Atomic/getFaceNameInOCAF.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -236,8 +236,8 @@ PyObject* K_OCC::getFaceNameInOCAF2(PyObject* self, PyObject* args)
236236
}
237237

238238
// Get labels corresponding to shapes
239+
GETSHAPETOOL;
239240
TDF_LabelSequence labels;
240-
Handle(XCAFDoc_ShapeTool) shapeTool = XCAFDoc_DocumentTool::ShapeTool(doc->Main());
241241
shapeTool->GetShapes(labels);
242242

243243
PyObject* out = PyList_New(0);
@@ -311,8 +311,8 @@ PyObject* K_OCC::getEdgeNameInOCAF2(PyObject* self, PyObject* args)
311311
}
312312

313313
// Get labels corresponding to shapes
314+
GETSHAPETOOL;
314315
TDF_LabelSequence labels;
315-
Handle(XCAFDoc_ShapeTool) shapeTool = XCAFDoc_DocumentTool::ShapeTool(doc->Main());
316316
shapeTool->GetShapes(labels);
317317

318318
PyObject* out = PyList_New(0);
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
Copyright 2013-2026 ONERA.
3+
4+
This file is part of Cassiopee.
5+
6+
Cassiopee is free software: you can redistribute it and/or modify
7+
it under the terms of the GNU General Public License as published by
8+
the Free Software Foundation, either version 3 of the License, or
9+
(at your option) any later version.
10+
11+
Cassiopee is distributed in the hope that it will be useful,
12+
but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
GNU General Public License for more details.
15+
16+
You should have received a copy of the GNU General Public License
17+
along with Cassiopee. If not, see <http://www.gnu.org/licenses/>.
18+
*/
19+
20+
#include "occ.h"
21+
#include "XCAFDoc_ShapeTool.hxx"
22+
#include "XCAFDoc_DocumentTool.hxx"
23+
#include "XCAFDoc_ShapeMapTool.hxx"
24+
#include "TDocStd_Document.hxx"
25+
#include "TDataStd_Name.hxx"
26+
27+
//=====================================================================
28+
// return label name if attribute exits, return "unknown" otherwise
29+
//=====================================================================
30+
E_Int K_OCC::getLabelName(TDF_Label& label, TCollection_ExtendedString& labelName)
31+
{
32+
labelName = "unknown";
33+
Handle(TDataStd_Name) name = new TDataStd_Name();
34+
if (label.FindAttribute(TDataStd_Name::GetID(), name))
35+
{
36+
labelName = name->Get();
37+
return 0;
38+
}
39+
return 1;
40+
}

Cassiopee/OCC/OCC/Atomic/identifyLoopsInEdges.cpp

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,9 @@ PyObject* K_OCC::identifyLoopsInEdges(PyObject* self, PyObject* args)
3636
PyObject* hook;
3737
if (!PYPARSETUPLE_(args, O_, &hook)) return NULL;
3838

39-
void** packet = NULL;
40-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
41-
packet = (void**) PyCObject_AsVoidPtr(hook);
42-
#else
43-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
44-
#endif
45-
46-
TopTools_IndexedMapOfShape& surfaces = *(TopTools_IndexedMapOfShape*)packet[1];
47-
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
39+
GETPACKET;
40+
GETMAPEDGES;
41+
GETMAPSURFACES;
4842

4943
TopExp_Explorer expl;
5044
PyObject* pl = PyList_New(0);

Cassiopee/OCC/OCC/Atomic/linkNodes2CAD.cpp

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -118,13 +118,7 @@ PyObject* K_OCC::linkNodes2CAD(PyObject* self, PyObject* args)
118118
PyObject* dhx; PyObject* dhy; PyObject* dhz; PyObject* ncad;
119119
if (!PYPARSETUPLE_(args, OOOO_ OOO_, &arr, &arrf, &hook, &dhx, &dhy, &dhz, &ncad)) return NULL;
120120

121-
void** packet = NULL;
122-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
123-
packet = (void**) PyCObject_AsVoidPtr(hook);
124-
#else
125-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
126-
#endif
127-
121+
GETPACKET;
128122
E_Float tol = 1e-11;
129123

130124
// Get first component of each list
@@ -494,13 +488,8 @@ PyObject* K_OCC::getNodalParameters(PyObject* self, PyObject* args)
494488

495489
if (!PYPARSETUPLE_(args, OOOO_ OOOO_ O_, &arr, &arrf, &hook, &arrayU, &arrayV, &dhx, &dhy, &dhz, &ncad)) return NULL;
496490

497-
void** packet = NULL;
498-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
499-
packet = (void**) PyCObject_AsVoidPtr(hook);
500-
#else
501-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
502-
#endif
503-
491+
GETPACKET;
492+
504493
TopExp_Explorer expl;
505494

506495
//chrono::steady_clock sc;

Cassiopee/OCC/OCC/Atomic/meshEdge.cpp

Lines changed: 9 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -613,12 +613,7 @@ PyObject* K_OCC::meshGlobalEdges1(PyObject* self, PyObject* args)
613613
PyObject* hook; E_Float hmax;
614614
if (!PYPARSETUPLE_(args, O_ R_, &hook, &hmax)) return NULL;
615615

616-
void** packet = NULL;
617-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
618-
packet = (void**) PyCObject_AsVoidPtr(hook);
619-
#else
620-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
621-
#endif
616+
GETPACKET;
622617

623618
E_Int nbPoints;
624619
PyObject* out = PyList_New(0);
@@ -649,12 +644,7 @@ PyObject* K_OCC::meshGlobalEdges2(PyObject* self, PyObject* args)
649644
PyObject* hook; E_Int nbPoints;
650645
if (!PYPARSETUPLE_(args, O_ I_, &hook, &nbPoints)) return NULL;
651646

652-
void** packet = NULL;
653-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
654-
packet = (void**) PyCObject_AsVoidPtr(hook);
655-
#else
656-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
657-
#endif
647+
GETPACKET;
658648

659649
PyObject* out = PyList_New(0);
660650
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
@@ -682,12 +672,7 @@ PyObject* K_OCC::meshGlobalEdges3(PyObject* self, PyObject* args)
682672
PyObject* hook; PyObject* globalEdges;
683673
if (!PYPARSETUPLE_(args, O_ O_, &hook, &globalEdges)) return NULL;
684674

685-
void** packet = NULL;
686-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
687-
packet = (void**) PyCObject_AsVoidPtr(hook);
688-
#else
689-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
690-
#endif
675+
GETPACKET;
691676

692677
PyObject* out = PyList_New(0);
693678
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
@@ -723,12 +708,7 @@ PyObject* K_OCC::meshGlobalEdges4(PyObject* self, PyObject* args)
723708
PyObject* hook; E_Float hausd;
724709
if (!PYPARSETUPLE_(args, O_ R_, &hook, &hausd)) return NULL;
725710

726-
void** packet = NULL;
727-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
728-
packet = (void**) PyCObject_AsVoidPtr(hook);
729-
#else
730-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
731-
#endif
711+
GETPACKET;
732712

733713
E_Int nbPoints=1;
734714
PyObject* out = PyList_New(0);
@@ -761,12 +741,7 @@ PyObject* K_OCC::meshEdgesByFace(PyObject* self, PyObject* args)
761741
PyObject* hook; E_Int nbPoints; E_Int noFace; E_Float hmax; E_Float hausd;
762742
if (!PYPARSETUPLE_(args, O_ II_ RR_, &hook, &noFace, &nbPoints, &hmax, &hausd)) return NULL;
763743

764-
void** packet = NULL;
765-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
766-
packet = (void**) PyCObject_AsVoidPtr(hook);
767-
#else
768-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
769-
#endif
744+
GETPACKET;
770745

771746
PyObject* out = PyList_New(0);
772747
TopTools_IndexedMapOfShape& surfaces = *(TopTools_IndexedMapOfShape*)packet[1];
@@ -806,12 +781,7 @@ PyObject* K_OCC::meshEdgesByFace2(PyObject* self, PyObject* args)
806781
PyObject* globalEdges;
807782
if (!PYPARSETUPLE_(args, O_ I_ O_, &hook, &noFace, &globalEdges)) return NULL;
808783

809-
void** packet = NULL;
810-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
811-
packet = (void**) PyCObject_AsVoidPtr(hook);
812-
#else
813-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
814-
#endif
784+
GETPACKET;
815785

816786
PyObject* out = PyList_New(0);
817787
TopTools_IndexedMapOfShape& surfaces = *(TopTools_IndexedMapOfShape*)packet[1];
@@ -863,12 +833,7 @@ PyObject* K_OCC::meshEdgesByFace3(PyObject* self, PyObject* args)
863833
E_Float hmax, hausd;
864834
if (!PYPARSETUPLE_(args, O_ I_ RR_, &hook, &noFace, &hmax, &hausd)) return NULL;
865835

866-
void** packet = NULL;
867-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
868-
packet = (void**) PyCObject_AsVoidPtr(hook);
869-
#else
870-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
871-
#endif
836+
GETPACKET;
872837

873838
TopTools_IndexedMapOfShape& surfaces = *(TopTools_IndexedMapOfShape*)packet[1];
874839
//TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
@@ -1088,13 +1053,8 @@ PyObject* K_OCC::getEdgeNoByFace(PyObject* self, PyObject* args)
10881053
PyObject* hook; E_Int noFace;
10891054
if (!PYPARSETUPLE_(args, O_ I_, &hook, &noFace)) return NULL;
10901055

1091-
void** packet = NULL;
1092-
#if (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 1)
1093-
packet = (void**) PyCObject_AsVoidPtr(hook);
1094-
#else
1095-
packet = (void**) PyCapsule_GetPointer(hook, NULL);
1096-
#endif
1097-
1056+
GETPACKET;
1057+
10981058
TopTools_IndexedMapOfShape& surfaces = *(TopTools_IndexedMapOfShape*)packet[1];
10991059
TopTools_IndexedMapOfShape& edges = *(TopTools_IndexedMapOfShape*)packet[2];
11001060
TopExp_Explorer expl;

0 commit comments

Comments
 (0)