Commit Graph

526 Commits

Author SHA1 Message Date
Joachim Schoeberl
ed2b67f5bd a first step-writer 2021-09-02 23:18:54 +02:00
Joachim Schoeberl
2a4eaa60cd copy pnums for 'same' edges 2021-09-02 21:48:14 +02:00
Christopher Lackner
cdecdb345b Register occ exceptions to python 2021-09-02 14:58:07 +02:00
Joachim Schoeberl
11276dbbfa Face/Compound are classes, shape.mass, Edge.Value(), Edge.Tangent(), edge.paramegter_interval 2021-09-02 11:30:29 +02:00
Joachim Schoeberl
bb54e40139 RectangleC, Plan B when occ-normal is undefined, replace History by builder.Modified 2021-09-01 22:50:09 +02:00
Christopher Lackner
80ba06d454 add occ Compound Function 2021-09-01 17:44:16 +02:00
Christopher Lackner
69c6f55961 Add properties .name and .maxh to ListOfShapes 2021-09-01 12:53:39 +02:00
Joachim Schoeberl
33722fcfd6 history in revolution 2021-08-31 23:49:59 +02:00
Joachim Schoeberl
44bd81f159 Extrude with history 2021-08-31 22:43:37 +02:00
Joachim Schoeberl
9f34dfe149 SplineApproximation curve 2021-08-31 21:01:22 +02:00
Joachim Schoeberl
36a7b24315 OCC - version compatibility fixes 2021-08-31 13:16:30 +02:00
Joachim Schoeberl
69f6a9cc90 fix for OCCT 7.4 and older 2021-08-31 01:05:36 +02:00
Joachim Schoeberl
f856e90d15 fix for OCCT 7.4 and older 2021-08-31 01:00:33 +02:00
Joachim Schoeberl
56fb4a72fc fix for OCCT 7.4 and older 2021-08-31 00:55:59 +02:00
Joachim Schoeberl
08993ae5e2 fixes for OCCT 7.6.0-dev 2021-08-31 00:37:41 +02:00
Joachim Schoeberl
8c8d7420ed a second history for fusing 2021-08-30 22:56:04 +02:00
Joachim Schoeberl
b9588627f0 use history in OCCT - fuse 2021-08-30 22:00:58 +02:00
Joachim Schoeberl
bd5699d5f1 more features of DirectionalInterval 2021-08-24 10:40:30 +02:00
Joachim Schoeberl
2dc506fcfd Interval selectors (draft) 2021-08-24 10:13:25 +02:00
Joachim Schoeberl
ffc6d90094 Vertex and Edge ctors 2021-08-21 11:59:35 +02:00
Matthias Hochsteger
ab3801314c add normals to webgui occ data 2021-08-20 23:12:53 +02:00
Christopher Lackner
5643a44287 add maxh property to occ shapes, add TopoDS_Edge.Split method 2021-08-20 22:26:20 +02:00
Joachim Schoeberl
462a9ae64c Implicit conversion from edge to wire, Circle at current position 2021-08-18 22:31:41 +02:00
Joachim Schoeberl
18c30805ab Workplane - finish wire without closing 2021-08-18 16:40:16 +02:00
Joachim Schoeberl
eda914281a first version of Pipe with aux-spine 2021-08-18 12:41:19 +02:00
Joachim Schoeberl
0b926bcbf4 shape.Move, Rotate, Mirror 2021-08-18 11:49:40 +02:00
Joachim Schoeberl
cb5eb98f12 maybe MakeSolid is too much for a function called PipeShell 2021-08-17 16:47:08 +02:00
Joachim Schoeberl
42c0724886 workplane.move in current direction 2021-08-17 16:42:06 +02:00
Joachim Schoeberl
5264ff7e90 added PipeShell with auxiliary spine for orientation 2021-08-17 07:16:10 +02:00
Joachim Schoeberl
a69eefa0db optional name for WorkPlane.LineTo 2021-08-16 10:02:18 +02:00
Joachim Schoeberl
0c809f4d2b some operators for Pnt/Vec, nicer namings for gp_Ax3 etc 2021-08-16 09:55:31 +02:00
Joachim Schoeberl
5ea2322865 selection by name, and sorting of shape-lists 2021-08-16 07:41:25 +02:00
Joachim Schoeberl
d6143de0a0 fix closing in WorkPlane 2021-08-15 18:33:52 +02:00
Joachim Schoeberl
f105a9b3cc closing curves 2021-08-15 18:01:20 +02:00
Joachim Schoeberl
cd8b27dd73 naming edges in WorkPlane (draft) 2021-08-15 16:27:35 +02:00
Joachim Schoeberl
b041a5fb38 periodic edges 2021-08-15 13:29:28 +02:00
Joachim Schoeberl
eba02368a6 prepare for periodic occ-geometries 2021-08-15 13:14:23 +02:00
Joachim Schoeberl
97447d681f preserve also face and edge properties in Glue 2021-08-14 13:01:40 +02:00
Joachim Schoeberl
880b21745b workplane.circle 2021-08-14 12:50:03 +02:00
Joachim Schoeberl
01b26ef1d3 workplane.circle 2021-08-14 12:47:12 +02:00
Joachim Schoeberl
8823101c77 wires from workplane 2021-08-13 22:39:20 +02:00
Joachim Schöberl
964a3cc06b Merge branch 'master' into 'shirnschall'
# Conflicts:
#   libsrc/occ/python_occ_shapes.cpp
2021-08-13 20:09:39 +00:00
Matthias Hochsteger
fb64f0d873 geometry edges in webgui 2021-08-13 16:46:49 +02:00
shirnschall
3df3bbc948 changed variable name 2021-08-13 16:03:53 +02:00
shirnschall
1c0cfd8965 checking arc and arcto input for invalid function arguments 2021-08-13 16:00:12 +02:00
shirnschall
539798971c removed angle argument from arcto 2021-08-13 14:19:11 +02:00
shirnschall
c9fb364cc0 now using three points to construct arc in 2d 2021-08-13 01:48:29 +02:00
Matthias Hochsteger
ae6b23fffc add functionality to draw occ shapes with webgui 2021-08-12 11:20:07 +02:00
Matthias Hochsteger
a7f836cb9a comment out debug output 2021-08-12 08:31:06 +02:00
shirnschall
2449b4c79c testing GCE2d_MakeArcOfCircle for Arc 2021-08-11 23:02:49 +02:00
Joachim Schoeberl
d658985e69 don't do own Newton for finding OCC u/v parameters (e.g. a problem for parameter domain for a sphere 2021-08-11 21:57:22 +02:00
Joachim Schoeberl
56c59353bb surface normal 2021-08-11 21:54:45 +02:00
Joachim Schoeberl
73f387a7ed UnifySameDomain is good for 2D, needs some more exploration 2021-08-11 11:00:05 +02:00
shirnschall
561dadb877 arc new syntax 2021-08-10 21:18:30 +02:00
Joachim Schoeberl
0de8254ea2 spline-curves, curve tangents 2021-08-10 20:28:49 +02:00
Joachim Schoeberl
d8b1ea33f8 remove internal edges in 2D fuse 2021-08-09 10:59:24 +02:00
shirnschall
a0c99c848a added Revolve(), added Arc() - not yet working correctly 2021-08-08 18:24:38 +02:00
Joachim Schoeberl
ea6f4d0713 Offset in workplane 2021-08-06 21:33:54 +02:00
Joachim Schoeberl
6c8107efc7 WorkPlane from Face 2021-08-06 17:43:01 +02:00
Joachim Schoeberl
3e8664b40e workplane draft 2021-08-06 14:23:17 +02:00
Joachim Schoeberl
4629bccd72 forgot file 2021-08-06 10:45:14 +02:00
Joachim Schoeberl
bebbfc434c split python-occ files, Rotation angle in degrees 2021-08-06 10:41:42 +02:00
Joachim Schoeberl
ecfb7a3873 iterating ListOfShapes gives actual shape-types 2021-08-05 23:52:03 +02:00
Joachim Schoeberl
028c8ce63d compiler fixes for Circle2d 2021-08-05 19:38:21 +02:00
Joachim Schoeberl
87f796c6d9 ListOfShapes, MakeFillet a member function 2021-08-05 19:27:09 +02:00
Joachim Schoeberl
e1cefd14ca X,Y,Z, Pnt, Vec operators 2021-08-04 11:59:06 +02:00
Joachim Schoeberl
a43c3ed28c translation 2021-08-03 14:29:57 +02:00
Joachim Schoeberl
8334dd7378 gp_ax3, transformation 2021-08-03 12:03:59 +02:00
Joachim Schoeberl
5ecb840c9c added pipe 2021-08-02 17:32:51 +02:00
Joachim Schoeberl
e3562c29ef implicitly convert 2-tuples to occ-pnt,vec,dir 2021-08-02 13:04:26 +02:00
Joachim Schoeberl
2422318162 rotation trafo 2021-08-02 09:50:54 +02:00
Joachim Schoeberl
62a0743e4e curves on surfaces 2021-08-01 23:17:39 +02:00
Joachim Schoeberl
b829c9bcc8 occ-triangulation 2021-07-30 09:43:29 +02:00
Joachim Schoeberl
62463b904e little occ code polish 2021-07-30 08:42:35 +02:00
Joachim Schoeberl
751f193d81 replace global_shape_names by global_shape_properties 2021-07-29 16:40:11 +02:00
Joachim Schoeberl
b22ae4f90d don't use optional.value for MacOS < 10.14 2021-07-29 16:01:21 +02:00
Joachim Schoeberl
66de9d4510 global_shape_properties, instead of individual maps 2021-07-29 12:15:03 +02:00
Joachim Schoeberl
8f2e0611e0 allow to set names for all shapes (e.g. edges) 2021-07-28 20:16:32 +02:00
Joachim Schoeberl
f2e8425145 occ features 2021-07-28 08:23:33 +02:00
Joachim Schoeberl
e4e1994a60 wrapping occ features 2021-07-27 23:31:36 +02:00
Joachim Schoeberl
42c6601aae colors from python-occ 2021-07-27 20:59:41 +02:00
Joachim Schoeberl
411a850d41 checking for occ-has-history 2021-07-26 22:50:59 +02:00
Joachim Schoeberl
4da7f6ac72 Global 'Glue' function, preserve more history 2021-07-26 22:35:39 +02:00
Matthias Hochsteger
e502eeee2f test with Ubuntu 20.04, fix occ versions compatibility 2021-07-26 16:59:43 +02:00
Matthias Hochsteger
d01bde60f6 OCC versions compatibility 2021-07-26 16:39:33 +02:00
Joachim Schoeberl
7e0f0326de occ material, copy names from step-loading to global names 2021-07-26 09:10:50 +02:00
Joachim Schoeberl
f3caa7182a occ: setting boundary conditions, and propagating it through intersection 2021-07-25 22:16:43 +02:00
Joachim Schoeberl
ca0201b301 OCCGeometry from list of shapes 2021-07-25 01:26:09 +02:00
Joachim Schoeberl
5066fe0fce boolean operations for occ in Python 2021-07-24 22:31:40 +02:00
Joachim Schoeberl
56e848eea9 pywrapping occ 2021-07-24 19:53:30 +02:00
Joachim Schoeberl
54af8014c4 back to trying both occ surface-meshing versions 2021-07-24 16:18:22 +02:00
Joachim Schoeberl
157b246f7f occ: box, cyl 2021-07-24 13:14:21 +02:00
Joachim Schoeberl
d783b71d49 few occ exports 2021-07-24 11:07:39 +02:00
Matthias Hochsteger
b9f7b1e5a5 Register OCCGeometry for archiver 2021-06-11 15:23:21 +02:00
Christopher Lackner
0fc488e802 Merge remote-tracking branch 'stefanbruens/salome_upstreamable' 2021-03-15 09:36:01 +01:00
Stefan Brüns
cf4d9eff33 Modernize code, replace Handle_<X> with Handle(X)
Same like c35297a8fb158be47772cb5fc9cee76ca88ff871
2021-03-12 23:13:01 +01:00
Stefan Brüns
3c13e41692 Remove duplicated includes from occgeom.hpp
Each of the duplicated header files have an include guard, so including
it twice is just a small waste of processing time.
2021-03-11 23:26:23 +01:00
Stefan Brüns
8abd52a47b Remove two unused variables 2021-03-10 01:06:11 +01:00
Stefan Brüns
2767672286 Cleanup use of M_PI/PI defines
gprim/geom2d.cpp includes mystdlib.h, which already has a fallback define
for M_PI. As geomfuncs.cpp also includes mystdlib.h, use M_PI instead
of a truncated value.

occ/Partition_Loop2d.cxx already gets M_PI from the opencascade headers
(~everything includes Standard_Real.hxx, which includes Standard_math.hxx,
which sets _USE_MATH_DEFINES for Windows and includes math.h).
2021-03-10 00:46:58 +01:00
Stefan Brüns
883baf4189 Remove occconstruction.cpp from list of library sources
Since commit 0c3c3f32d1
("occ build visualization mesh") occgeometry.cpp does not contain
any compiled code, and it has not been used at least for 12 years.

As the file includes quite some header files removing it from the sources
should save some compile time.
2021-03-08 02:38:28 +01:00
Matthias Hochsteger
94ecf8de92 Fix private linking of Python
The CMake export of Interface libraries also exports PRIVATE build
settings, which leads to build errors with non-existing include paths and .lib files for binary distributions.

Use the work-around mentioned here to circumvent this behavior:
https://gitlab.kitware.com/cmake/cmake/-/issues/15415#note_849405
2020-12-18 11:05:10 +01:00
Christopher Lackner
fb13152004 create occ geometry from TopoDS_Shape and export constructor
this only works if OCC bindings are done using pybind11!
2020-07-13 18:54:55 +02:00
Matthias Hochsteger
9b28a2df02 OCC - HasErrors() available from v7.2 2020-06-03 11:50:33 +02:00
Joachim Schöberl
1d97367e30 check OCC-Version of HasErrors 2020-06-02 08:51:51 +02:00
Joachim Schöberl
dc15e50956 Added glueing to OCC interface, geom.Glue() from Python 2020-05-31 21:58:21 +02:00
Christopher Lackner
34590f1b9a support already meshed edges/faces in occ mesher 2020-05-26 11:23:33 +02:00
Christopher Lackner
97ba90ee40 DLL_HEADER for whole OCCGeometry 2020-05-17 20:24:22 +02:00
Christopher Lackner
27baa178d2 fix new clang warning and add helper function 2020-04-20 10:13:04 +02:00
Matthias Hochsteger
63e414ff0d Add missing header in occgeom.cpp 2020-03-02 17:03:50 +01:00
Joachim Schöberl
c6c91bb348 set edgenames in mesh 2020-02-29 13:56:43 +01:00
Joachim Schöberl
70968e59e8 optimal order reading of names 2020-02-28 20:54:22 +01:00
Matthias Hochsteger
ce90bd9e83 [cmake] Simplify compile flag handling on Windows
Add options/define flags to ngcore, so they are automatically passed on
to dependencies
2020-01-16 16:38:06 -08:00
Matthias Hochsteger
05e6456ec2 Vec3d to Vec<3>, comparison operator for Vec<> 2019-11-27 14:47:24 +01:00
Joachim Schöberl
2b683f70d5 Merge branch 'throw_on_meshing_fail' into 'master'
throw on meshing failure

See merge request jschoeberl/netgen!299
2019-11-26 19:27:30 +00:00
Matthias Hochsteger
f3d9d3ad67 [cmake] Don't link python libraries in unix-conda environment
Conda links python libs statically to python executable
2019-11-26 19:26:18 +00:00
Christopher Lackner
303aebc27e throw on meshing failure 2019-11-26 17:08:21 +01:00
Matthias Hochsteger
cf84d78fd4 Read solid names of STEP geometries 2019-11-20 15:46:52 +01:00
Christopher Lackner
f54c47bac6 if tangent is not defined and not checked this leads to segfault 2019-11-19 10:00:05 +01:00
Christopher Lackner
b99e37999f fixes for mac and windows 2019-11-05 15:19:54 +01:00
Christopher Lackner
073e215bb6 add closeedge meshsize to base geometry (not used)
closedgefac moved to meshingparameters for this
2019-11-04 19:34:46 +01:00
Christopher Lackner
1b1c4700ad geo GetNormal and ProjectPointEdge with geoinfo pointer 2019-11-04 11:27:01 +01:00
Christopher Lackner
6c012675aa project point without geominfo returns new geominfo 2019-10-31 17:08:29 +01:00
Joachim Schöberl
656c8fa29d Merge branch 'installers_with_occt_740' into 'master'
Build and test with OCCT 7.4.0 on Windows and MacOS

See merge request jschoeberl/netgen!288
2019-10-28 14:57:44 +00:00
Matthias Hochsteger
2a51bf76c1 [testing] Add results for OCC 7.4, skip tests on Ubuntu (with OCC 7.3) 2019-10-28 15:11:42 +01:00
Christopher Lackner
b0db24fa83 implement meshsurface in basegeometry 2019-10-28 14:41:31 +01:00
Christopher Lackner
5b45c7a972 implement meshing2 functionality for 3d geometries 2019-10-28 13:44:51 +01:00
Matthias Hochsteger
22a894b8cf Set OCC geometry in GenerateMesh() 2019-10-23 11:26:23 +02:00
Matthias Hochsteger
586f8120ea some Timers in LoadOCC, don't read edge names 2019-10-21 13:38:09 +02:00
Joachim Schöberl
124ee905b2 Merge branch 'test_refactoring_meshing_design' into 'master'
Refactoring of surface meshing classes

See merge request jschoeberl/netgen!279
2019-10-21 08:21:12 +00:00
Matthias Hochsteger
495a6eddf7 [cmake] Link AppKit to avoid undefined references if OCC is statically linked on MacOS 2019-10-18 16:39:28 +02:00
Matthias Hochsteger
17dfd45609 Merge remote-tracking branch 'origin/master' into test_refactoring_meshing_design 2019-10-18 11:53:05 +02:00
Joachim Schöberl
ca25d6838b use NextUV 2019-10-10 07:38:32 +02:00
Christopher Lackner
ee7360ad19 disable check overlap for occ meshsurface 2019-10-08 15:48:08 +02:00
Christopher Lackner
e784abb8f7 Merge branch 'master' into test_refactoring_meshing_design 2019-10-08 12:31:24 +02:00
Joachim Schöberl
62e3e790d8 switch OCC meshing to physical space, and optimize FromPlane projection using uv-geominfo 2019-10-07 23:45:39 +02:00
Christopher Lackner
94c17c2f46 modernize code to use handle 2019-10-07 15:17:03 +02:00
Christopher Lackner
05881c0eb5 refactor a lot of the old code, stl still needs to be done 2019-10-07 15:17:03 +02:00
Christopher Lackner
43cc5e68b1 occ use optimize surface functionality from basegeom 2019-10-07 15:17:03 +02:00
Christopher Lackner
bee097b153 start unify meshing with occ meshing 2019-10-07 15:17:03 +02:00
Christopher Lackner
01e059ece4 some optimizations for CalcLocalH in occ mesher 2019-10-04 14:55:36 +02:00
Christopher Lackner
18070c9f03 fix for opencascade 7.4.0 2019-10-04 13:09:18 +02:00
Christopher Lackner
90c6f0256d curvaturesafety was removed in cleanup commit 2019-10-02 11:16:44 +02:00
Christopher Lackner
9797c23351 change CalcLocalH to use Point<D> instead of PointDd 2019-10-01 11:59:17 +02:00
Joachim Schöberl
af7d6fea48 Merge branch 'optimize_occ_surf_mesh' into 'master'
only do optimization for occ surface mesh

See merge request jschoeberl/netgen!256
2019-09-30 13:30:55 +00:00
Joachim Schöberl
b76b82b293 Merge branch 'split_improve_2d' into 'master'
SplitImprove for triangles

See merge request jschoeberl/netgen!251
2019-09-30 13:29:50 +00:00
Matthias Hochsteger
8defe2f864 New function Mesh::FindIllegalTrigs()
Find illegal trigs after surface meshing and use this information in
surface mesh optimization
2019-09-30 14:54:03 +02:00
Christopher Lackner
5eb2ab470e only do optimization for occ surface mesh 2019-09-30 12:02:08 +02:00
Christopher Lackner
ca2212879e Change some PointNd to Point<N> functions 2019-09-29 14:54:24 +02:00
Christopher Lackner
56d256523a use relative mindist instead of absolute
I think this shouldn't be a relative value here.
2019-09-16 15:38:20 +02:00
Christopher Lackner
9feb9de9b1 Fix docstring 2019-09-16 12:48:27 +02:00
Christopher Lackner
13c17adf87 restricth for occ and stl geometries 2019-08-28 09:52:51 +02:00
Christopher Lackner
9d96c0e432 occ parameters from python, gui and meshsize parameters now the same 2019-08-27 10:10:17 +02:00
Joachim Schöberl
5ada92bcdb little polish 2019-08-21 18:38:26 +02:00
Joachim Schöberl
67f4c89ea1 fix optimized DefineTangentialPlane 2019-08-19 12:47:35 +02:00
Christopher Lackner
bc7e632368 set meshsize for occ face from python 2019-08-13 18:45:27 +02:00
Joachim Schöberl
9118ddc63a preparations to switch T_POINTS to ngcore::Array 2019-08-09 15:30:58 +02:00
Joachim Schöberl
b03705c37d more use of Index types 2019-08-09 00:23:12 +02:00
Joachim Schöberl
e8960ebae1 use ngscore::Array for surface elements 2019-08-08 08:44:59 +02:00
Joachim Schöberl
eec95bf406 little smoothing in occgenmesh 2019-08-08 00:17:53 +02:00
Joachim Schöberl
4bfe42b305 more PointIndex::BASE 0/1 fixes 2019-08-07 23:32:14 +02:00
Joachim Schöberl
a8ad8429a0 optimize OCC DefineTangentialPlane 2019-07-30 23:51:54 +02:00
Christopher Lackner
c22ec2dcc2 meshingparameters from python as in gui 2019-07-29 07:11:57 +02:00
Joachim Schöberl
f7fcc67fc7 little modernization 2019-07-28 23:22:47 +02:00
Joachim Schöberl
321bee9b02 little OCC-meshing cleanup 2019-07-28 20:22:48 +02:00
Joachim Schöberl
954cae2686 don't use global mparam in occ-meshing 2019-07-27 19:05:43 +02:00
Christopher Lackner
091494c6b3 cleanup python export, generate mesh functions not monkeypatched 2019-07-25 23:25:58 +02:00
Matthias Hochsteger
d89b328979 Get rid of pybind11 include in archive.hpp
Forward-declare pybind11::object and move implementation of
Archive::Shallow() to new header python_ngcore.hpp

All files using the Shallow/Python archive functionality must include
core/python_ngcore.hpp. Missing includes result in link errors, due to
missing instantiations of Archive::Shallow<T>();
2019-07-11 17:09:59 +02:00
Matthias Hochsteger
cb87362f64 Rename Array to NgArray 2019-07-09 10:39:16 +02:00
Matthias Hochsteger
4aadd29dfc [cmake] Fix libraries privately 2019-06-30 00:54:31 +02:00
Matthias Hochsteger
4e038ad084 Fix wrong memory allocation and snprintf parameter type 2019-06-11 10:44:40 +02:00
Matthias Hochsteger
95721d0b33 Set default bcnames in occ geometries 2019-06-04 14:05:07 +02:00
Joachim Schöberl
e0f290676f new timers 2019-06-03 10:42:57 +02:00
Joachim Schöberl
bc836f87ef facet curving using GeomInfo, adding overrides 2019-06-03 10:42:57 +02:00
Christopher Lackner
fbd7d2340e check dist to midpoint and save midpoint in PointBetween 2019-01-23 16:58:23 +01:00
Christopher Lackner
c062933c42 fix secondorder mesh generation for closed occ edge 2019-01-23 16:00:57 +01:00
Matthias Hochsteger
4a563f09af Fix build errors on Windows 2019-01-09 14:46:24 +01:00
Christopher Lackner
fd3474f5cb logging in ngcore 2018-12-28 13:43:15 +01:00
Christopher Lackner
829defd3eb archive now support python exported objects 2018-12-20 17:01:27 +01:00
Christopher Lackner
099acc9fa1 pickling for all geometry types 2018-12-14 12:01:58 +01:00
lorenz
1432182458
occ must be installed 2018-11-27 16:29:07 +01:00
lorenz
3902456b3b
build without gui shouldn't add visualization for occ 2018-11-27 16:23:47 +01:00
Christopher Lackner
f065651227 set global geometry when occ file is loaded 2018-08-01 15:53:01 +02:00
Christopher Lackner
c9cd9eea2c add functions to collect visualization data to python export of geometries 2018-07-12 16:35:52 +02:00
Joachim Schöberl
e72d90fcbb Merge branch 'derive_geos_netgengeometry' into 'master'
derive geometry class in python from NetgenGeometry, gil call guard

See merge request jschoeberl/netgen!82
2018-04-18 22:00:03 +02:00
Christopher Lackner
bc520769ba derive geometry class in python from NetgenGeometry, gil call guard
for generatemesh in 2d
2018-04-17 19:37:29 +02:00
Christopher Lackner
96f9e01aba release GIL in expensive functions 2018-03-12 22:38:21 +01:00
Joachim Schöberl
7c1cee3817 fix warnings 2018-03-08 22:31:00 +01:00
luz.paz
a10531adb2 Misc. typos
Found via `codespell -q 3`
2018-02-06 14:12:24 -05:00
Matthias Hochsteger
d77ec67b9f OCCGenerateMesh: Initialize mesh if nullptr is given 2018-01-24 10:53:34 +01:00
looooo
e16c76c7b3 occt7.2.0: some diff to make netgen work with occt7.2.0 2018-01-23 03:05:38 -08:00
Matthias Hochsteger
0b411e1b07 install mydefs.hpp, some DLL_HEADER
Includes parts of pull request by looooo
https://github.com/NGSolve/netgen/pull/4
2018-01-23 03:03:47 -08:00
Joachim Schöberl
af57dd1b72 improve STL makeatlas: searchtree, templetize searchtree 2017-11-10 13:22:20 +01:00
Christoph Wintersteiger
753c2280c0 add Heal function to the python interface with the same functionality as the "Heal Geometry" button in the gui 2017-11-03 17:44:14 +01:00
Christoph Wintersteiger
df01ffcb5a setting occparms not necessary 2017-10-27 11:40:44 +02:00
Christoph Wintersteiger
ef4405c3d7 remove output 2017-10-25 15:47:27 +02:00
Christoph Wintersteiger
a90ee2e437 set occparams and generate triangulation with BRepMesh 2017-10-20 16:39:37 +02:00
Matthias Hochsteger
1430b89e39 Update pybind11 to version 2.2.0
- Replace PYBIND11_PLUGIN with PYBIND11_MODULE

- Fix warnings about symbol visibility by replacing
  'namespace pybind11' with 'namespace PYBIND11_NAMESPACE'

- Pybind sets the default visibility of its namespace to 'hidden'
  Thus, our export functions like  ExportCSG(py::module &m) also are
  hidden by default. To work around that define DLL_HEADER
  '__attribute__ ((visibility ("default")))
  on GNUC platforms.
2017-09-01 10:16:56 +02:00
Matthias Hochsteger
41e62e58a4 OCC: Set BC Names/Materials only when available 2017-06-02 14:15:31 +02:00
Matthias Hochsteger
0c611c339c Python opencascade interface (by Gerhard Kitzler) 2017-05-31 19:39:09 +02:00
Matthias Hochsteger
f6a0b31b96 Cleanup CMake build system
- Use CMAKE_INSTALL_PREFIX instead of INSTALL_DIR
  - Allow finer control of install directories
  - Use compiled TCL code by default
  - Fix RPATH usage on Linux and MacOSX

### Allow finer control of install directories
The following variables can be set to either absolute or relative paths
NG_INSTALL_DIR_PYTHON: Python files
NG_INSTALL_DIR_BIN: Executables
NG_INSTALL_DIR_LIB: Libraries
NG_INSTALL_DIR_INCLUDE: header files
NG_INSTALL_DIR_CMAKE: CMake files
NG_INSTALL_DIR_RES: Resources

### Use compiled TCL code by default
The tcl files contained in Netgen are stored in onetcl.cpp as c-string.
This way it's not necessary to install tcl files or set NETGENDIR

### Fix RPATH usage on Linux and MacOSX
The Netgen installation should be completely relocatable now.

Squashed commit of the following:

commit 201eda5e62726bd87d76beb13c3e5643cd4c7810
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 21:10:08 2017 +0200

    cleanup

commit b4cd46a9d2f390b40c5223c8d9971f576b979644
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:47:46 2017 +0200

    fix

commit 6506a834dbee2fd7b6df3b3f3709d0b27344356f
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:41:45 2017 +0200

    allow gui test to fail

commit 56c5fc131f61259e6fb67b60f7fff955d2e8d2da
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:26:18 2017 +0200

    add python3-tk to docker images

commit 4d1b5aac1d028867339819599708a08f2098bbd6
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:22:18 2017 -0700

    windows fix

commit 92b5f8a95491ba3508143d7f1b94359edc0655ce
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:08:08 2017 -0700

    fix for windows

commit 3f7bf51434ef3b637b3563930ddb61d04af645cb
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 19:28:13 2017 +0200

    fixes, test for gui

commit ef1d0164a50fadf374e3b1e43a745b5f69a16ad6
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 19:06:55 2017 +0200

    fixes

commit 67645bb896012149c23c851b03287199c21fa129
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 17:24:58 2017 +0200

    netgen config

commit b587b77a282768719cffc366c56d82a1746e0be0
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 16:53:47 2017 +0200

    remove comments

commit 2b34cc78818afa1cf21484bd0976413a91db0851
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 05:03:00 2017 -0700

    fix windows

commit 9e98efa54065624e264eaf1acf74b44ef022a68d
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 13:42:11 2017 +0200

    fixes

commit 394b470a07d73431079f80caa36c7c7042077f40
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 12:24:40 2017 +0200

    fix rpath issue

commit 6787eae384a8592f90598258ccd8207cd499d9fc
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:37:05 2017 +0200

    some more fixes with install dir

commit fcf22659c60300e8d39d12e14b21c58a062e739c
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 01:34:06 2017 -0700

    some fixes

commit ede1f0c462978bb70d3b4e2251cb555a592e82e3
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 10:16:34 2017 +0200

    fixes

commit b6a1259876a77f54e419a44f1b44d03d5bb49b82
Merge: c79f9a3 6627b0b
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Wed May 24 09:35:50 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit c79f9a3421d4d2937c31dab4a601ce09d52b0e54
Merge: 99c3550 030ad1d
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 22 17:52:24 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit 99c35500850e08fdc847013bb384169b1483acb4
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 19 14:37:28 2017 +0200

    fix rpath

commit 8215e9748d9ee225266bc941da1ca252aebd27de
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu May 18 13:29:41 2017 +0200

    remove INSTALL_DIR, rename var to NETGEN_INSTALL_DIR_INCLUDE, install libngpy to python package folder

commit 23d028c4cf7572de9e2e277cda8f6b07b6b1d9f9
Merge: 57027c8 f72a247
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu May 18 12:03:59 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit 57027c8c706ff755bdf26887884bbdeca129fe8f
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 12 17:32:05 2017 +0200

    New CMake option: USE_INTERNAL_TCL (ON by default)

    This option uses the tcl code compiled in onetcl.cpp instead of separate
    tcl files by default. When set at configure time, no tcl files will be
    installed anymore.

commit 27ce5b7edd66d64e2453f5045f5ac08c313f7608
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 12 17:16:52 2017 +0200

    WIP: Cleanup of CMake files

      - Fix RPATH on Linux (TODO: other platforms)
      - New variables to specify install behaviour:
          NG_INSTALL_DIR_BIN
          NG_INSTALL_DIR_LIB
          NG_INSTALL_DIR_CMAKE
          NG_INSTALL_DIR_INCLUDE
2017-05-29 21:41:27 +02:00
Matthias
360e6fba86 Fix for OCC7.1 on Windows, also support providing own OCC version by setting OCC_INCLUDE_DIR and OCC_LIBRARY_DIR 2017-02-09 12:07:09 +01:00
Matthias Hochsteger
fa9d918963 Apply patches for OpenCasCade 7 by Lorenz Lechner
see b443cbdb13/patches
2017-01-31 19:21:25 +01:00
Matthias Hochsteger
0cf1cfea5c Set DLL_HEADER to export in OCC subfolder 2017-01-31 14:58:01 +01:00
Matthias Hochsteger
4cff6b546a install all headers to INCDIR 2017-01-16 14:59:57 +01:00
Matthias Hochsteger
190d035809 Fix Python paths 2017-01-09 18:45:12 +01:00
Christopher Lackner
c771ca5bdc fix occ genmesh 2016-12-06 13:23:08 +01:00
Christopher Lackner
7e4892a9e7 firststep and laststep as meshingparameters to be exported to python 2016-12-05 13:50:21 +01:00
Matthias Hochsteger
ee4d5e89d8 remove unnecessary files (mostly unsupported build systems) 2016-11-23 18:07:14 +01:00
Matthias
ad6785731f OpenCascade for Windows 2016-04-04 10:18:38 +02:00
Matthias Hochsteger
395a8f6d0c fix issues with OpenCascade 2016-02-15 08:55:49 +01:00
Joachim Schöberl
c98a55ab11 merge ttk branch to master 2016-02-08 15:53:16 +01:00
Matthias Hochsteger
ea05f5183e cmake OpenCascade support 2015-04-09 12:39:49 +02:00
Matthias Hochsteger
bd18af5676 cmake install components 2015-04-09 12:27:59 +02:00
Matthias Hochsteger
b870bcee0f CMake support 2015-03-06 14:59:14 +01:00
Joachim Schoeberl
69429c6e09 occ meshing, lock in block-allocator 2015-01-20 17:41:16 +00:00
Joachim Schoeberl
42ea36b932 opengl/tcl structure 2014-10-08 12:46:25 +00:00
Joachim Schoeberl
335148a503 occ meshing with mesh-sharedptr 2014-09-30 17:30:36 +00:00
Joachim Schoeberl
04f6c7be46 shared ptr in occ 2014-09-15 08:07:23 +00:00
Joachim Schoeberl
baa67899a9 occ fixes 2014-09-03 13:27:28 +00:00
Joachim Schoeberl
725a714bf3 dbl-clk function with point coordinates 2014-02-12 15:13:35 +00:00
Philippose Rajan
c7ba1a6dc8 * Converted the minimum edge length used for subdividing geometry edges during the meshing phase into a user defined parameter accessible from the GUI 2014-01-25 21:17:16 +00:00
Gerhard Kitzler
682983901f Changes for OCC 6.5 2014-01-16 08:49:20 +00:00
Philippose Rajan
0ca9193607 * OpenCascade geometry broken by changes in the NetgenGeometry memory leak fix.
* This commit makes the required changes to get it working again
2013-04-29 18:25:27 +00:00
Joachim Schoeberl
12801836fd makefile fixes 2012-11-18 09:10:02 +00:00
Joachim Schoeberl
eaf9ec57ac clipping plane 2012-11-05 11:28:36 +00:00
Joachim Schoeberl
6a1e8f7e97 parallel topology + curved elements 2012-08-20 14:10:23 +00:00
Joachim Schoeberl
95355e0b97 switch to OCC6.5 2012-02-12 02:59:15 +00:00
Joachim Schoeberl
0291271c05 B-spline curves in 2D geometry 2011-09-01 16:40:00 +00:00
Joachim Schoeberl
9c4f4221ec non-global variable mparam 2011-07-25 11:33:19 +00:00
Joachim Schoeberl
fa83527ce5 threadsafe 2011-07-25 08:57:49 +00:00
Joachim Schoeberl
a582fc6231 on the way to thread-save meshing 2011-07-25 08:40:23 +00:00
Joachim Schoeberl
55282bac84 geometry format modularization 2011-02-18 22:50:58 +00:00
Joachim Schoeberl
1b4c7be876 occ as shared lib 2011-01-14 17:03:35 +00:00
Joachim Schoeberl
f3c60f0e04 geometry restructure, makefile fixes 2011-01-10 20:31:43 +00:00
Joachim Schoeberl
b95acb082c geometry restructuring 2011-01-10 20:18:01 +00:00
Joachim Schoeberl
75a6623419 2d meshing improvements 2010-07-19 12:00:52 +00:00
Philippose Rajan
1316c224d2 * Bug-fix for division by zero error in the OpenCascade "Dist" function
* Added further "division by zero" protection at various other locations
2010-06-23 18:56:42 +00:00
Philippose Rajan
0bf7d1228e * Disabled creation of the debugging file "occmesh.rep" when meshing OpenCascade Geometry 2010-03-08 23:14:56 +00:00
Joachim Schoeberl
9f8f784370 meshinifile in userdir 2010-03-08 20:07:21 +00:00
Philippose Rajan
083330c033 * Activated Element size weights in OpenCascade meshing
* Activated element error power other than "2" in meshing tools
2010-02-26 23:11:13 +00:00
Philippose Rajan
e3117cf206 * Bugfix: The feature for OCC Geometry to specify the maximum meshsize for each face had a bug which clamped the
mesh size for faces which were not selected by the user to the global maximum mesh size when first invoked.
  ..... This bug has now been fixed
2010-01-14 14:02:59 +00:00
Joachim Schoeberl
a6b7f58a65 quicksort for CSG - special point sorting 2009-11-01 10:49:20 +00:00
Philippose Rajan
df79bea6bd * Code cleanup and formatting
* Included error checking when opening OCC geometry files
* Attempt to retain face colours even after geometry healing
* Fixed a bug which did not clear face mesh size array when a new geometry was loaded
* More consistent code between STEP and IGES geometry load functions
2009-10-04 15:12:43 +00:00
Philippose Rajan
4a3a49f5fd * Nglib now supports surface and volume meshing of OCC geometry
* OCC code cleanup
* Added to Nglib source code documentation
2009-09-01 21:36:09 +00:00
Philippose Rajan
4fc9c40286 * Made the OCC subsystem independent of STLParameters (stlparam)
* Added a new class OCCParameters to handle OCC specific parameters
2009-08-30 12:36:11 +00:00
Joachim Schoeberl
670509b52b baseclass NetgenGeometry 2009-08-25 14:00:20 +00:00
Philippose Rajan
45e71b854e * Colour based boundary condition assignment now independent of OpenCascade function calls and can be used for all Netgen Geometry and mesh types
* Changed the names of the files and functions used to handle colour based boundary condition number assignment 
* Change made in order to make the functionality more generic and not dependent on OpenCascade functions / Geometry
2009-07-11 21:03:10 +00:00
Philippose Rajan
87e74276f3 * Use the new mesh level face colour functions instead of OCC function calls
* Removes dependency on OCC for mesh visualization even for meshes created from OCC Geometry
* Code cleanup to remove old commented out functions
2009-07-10 12:01:45 +00:00
Philippose Rajan
0461899071 * Improved colour based boundary condition assignment for OCC geometry
* Now allows the boundary condition numbers to be assigned via a profile file "netgen.ocf" 
* The old algorithm for automated selection is used if no profile file exists
2009-06-19 05:41:22 +00:00
Philippose Rajan
73451bace6 * Fixed - Unnecessary functions exported from OCC Topology Explorer code 2009-04-04 21:43:55 +00:00
Philippose Rajan
a7f8772932 * Bug-fix: Fixed loss of OCC face colours after performing a geometry healing run 2009-04-03 20:11:18 +00:00
Philippose Rajan
cb777203cf * Code reformatted for improved readability 2009-04-03 20:09:46 +00:00
Joachim Schoeberl
39858c7756 nginterface_v2 2009-04-03 14:39:52 +00:00
Philippose Rajan
3092d6cb9d * First version of automated colour based boundary conditions for OpenCascade geometry
* Modified the menustat.tcl file to add an entry in the "Special" menu for the colour based boundary properties functionality
* Added the relevant TCL wrapper functions in ngpkg.cpp to enable the above functionality
* Note: The core functionality is implemented in the file "occauxfunctions.cpp"
2009-03-15 12:25:09 +00:00
Philippose Rajan
9d0be8a262 * Updated /libsrc/occ/Makefile.am to reflect addition of the two new files occauxfunctions.hpp and occauxfunctions.cpp
* Updated the Visual C++ 2005 / 2008 project files to reflect the addition of the two new files
2009-03-15 12:19:26 +00:00
Philippose Rajan
e266a0115d * Added a separate source and header file for OpenCascade Auxiliary functions which cannot be directly categorised under either geometry or mesh operations. 2009-03-15 12:17:27 +00:00
Philippose Rajan
ac8ac8aa14 * Bug-fix for mesh size file usage with OpenCascade geometry 2009-03-10 19:56:24 +00:00
Philippose Rajan
28270266ca * Enable use of mesh size file with OpenCascade Geometry 2009-03-09 22:58:03 +00:00
Joachim Schoeberl
22e83bf294 added missing file 2009-02-25 16:06:34 +00:00
Philippose Rajan
78736845ca * Fixed the OCC XDE Interface for BREP and IGES Files
* Added stricter error checking for face colour extraction
* Improved consistency of OCC geometry and mesh colours across file formats
2009-02-23 23:10:00 +00:00
Joachim Schoeberl
0c3c3f32d1 occ build visualization mesh 2009-02-01 23:08:39 +00:00
Philippose Rajan
85867fb240 * Added OpenCascade XDE Support to enable importing of individual surface colours from STEP Geometry
* Extended the Clipping Planes functionality to the Geometry mode for OCC Geometry
* Added the option to specify the maximum mesh size for each individual face in an OCC Geometry
2009-01-30 22:17:20 +00:00
Joachim Schoeberl
00bc4a1220 remove generated files (Makefile.in) 2009-01-29 19:33:21 +00:00
Joachim Schoeberl
ea4b278685 parallel 2009-01-25 14:13:59 +00:00
Joachim Schoeberl
91d5c9888d ARRAY -> Array 2009-01-25 12:35:25 +00:00
Joachim Schoeberl
158f5223ba parallel netgen 2009-01-25 02:54:27 +00:00
Joachim Schoeberl
0bae83e1f6 build Netgen - library 2009-01-18 14:47:12 +00:00
Joachim Schoeberl
da99a51047 tcl - autoconf 2009-01-16 20:09:52 +00:00
Joachim Schoeberl
e5e550772a Tcl/TK setup 2009-01-15 23:03:40 +00:00
Joachim Schoeberl
10de082624 added tcl macros 2009-01-15 20:41:14 +00:00
Joachim Schoeberl
57446b6a76 autotools 2009-01-15 17:37:07 +00:00
Joachim Schoeberl
357cea9ba0 dist headers 2009-01-14 21:01:19 +00:00
Joachim Schoeberl
c09bfad487 header dist 2009-01-14 20:32:48 +00:00
Joachim Schoeberl
3d10410665 opencascade support 2009-01-13 21:14:02 +00:00
Joachim Schoeberl
f4a8c49f6c autotools configure 2009-01-13 18:32:10 +00:00
Joachim Schoeberl
310cb00b13 autotools 2009-01-12 23:40:13 +00:00