Commit Graph

550 Commits

Author SHA1 Message Date
Joachim Schoeberl
beed254a7d windows include in python_occ 2024-02-10 09:51:19 +01:00
Joachim Schoeberl
97709fca23 windows include in python_occ_shapes 2024-02-10 09:46:53 +01:00
Christopher Lackner
000424f001 offset should always be called no a finished line 2024-02-08 15:08:49 +01:00
Christopher Lackner
0fab0ec1eb dont reverse wire in offset
This works with this change:

```
MoveTo(0,0).LineTo(1,1).Finish().Offset(0.2).Face()
```
2024-02-08 14:57:56 +01:00
Matthias Hochsteger
6533663b7f Fix Workplane.Offset for straight lines 2024-01-30 17:41:46 +01:00
Matthias Hochsteger
2024a67c74 occ shapes _webgui_data - export color alpha values
Also
- don't create ShapeProperties objects for faces with default values
- use default name/color from ShapeProperties
2024-01-22 11:00:46 +01:00
Christopher Lackner
48eb4fed07 add tolerance to occ-edge projection 2024-01-10 16:31:05 +01:00
Joachim Schoeberl
87b65fb5ff remove warnings 2024-01-05 20:07:04 +01:00
Lackner, Christopher
4648ac2768 Merge branch 'occ_arc_name' into 'master'
[occ] add name argument to arc in workplane

See merge request ngsolve/netgen!615
2023-12-07 10:23:03 +01:00
Christopher Lackner
5692604ab6 [occ] add name argument to arc in workplane 2023-11-21 11:38:01 +01:00
Matthias Hochsteger
ce8a73750e Return None if no color is set in shape 2023-11-21 11:26:16 +01:00
Matthias Hochsteger
20fd3af5b4 Fix face orientation in BuildFMap to change the original shape 2023-10-12 16:10:50 +02:00
Hochsteger, Matthias
dad62afcee Call PropagateProperties in OCCGeometry::HealGeometry() 2023-10-11 17:13:38 +02:00
Christopher Lackner
e2aa646b0e allow read in of "broken" step files (for manual fixing) 2023-10-09 11:50:18 +02:00
Christopher Lackner
556ec04b8e add colors for iges input files 2023-10-09 11:30:45 +02:00
Joachim Schoeberl
b013a05dd5 fix unused warning 2023-09-22 14:25:18 +02:00
Matthias Hochsteger
4c21f4f904 Fix meshing of INTERNAL faces with Opencascade 2023-08-16 18:39:49 +02:00
Joachim Schoeberl
e1f7935f0b fixing warnings 2023-08-05 12:01:01 +02:00
Joachim Schoeberl
a8e41734cf no warnings 2023-07-31 00:13:56 +02:00
Christopher Lackner
ea32b203d6 remove propagateproperties from makefillet2d
properties are propagated anyway and it is crashing with function call
2023-07-08 20:40:25 +02:00
Christopher Lackner
72d8ef4783 [occ] MakeFillet for 2d shapes 2023-07-04 16:27:01 +02:00
Lackner, Christopher
fe770960b6 Merge branch 'restricth_vertices' into 'master'
[occ] restrict meshsize at vertices

See merge request ngsolve/netgen!578
2023-06-29 13:19:13 +02:00
Christopher Lackner
0530775800 [occ] restrict meshsize at vertices 2023-06-29 12:23:19 +02:00
Christopher Lackner
143f113d78 separate_layers now also working for 2d occ geometries 2023-06-28 15:59:04 +02:00
Joachim Schoeberl
3ab8ffbdc1 robust Axis to Axes conversion 2023-06-08 16:50:53 +03:00
Joachim Schoeberl
ec9d028c60 ellipsoid 2023-06-08 16:38:34 +03:00
Matthias Hochsteger
3e9eba7906 OCC - Handle internal (forward+reversed) edges correctly 2023-06-05 11:24:52 +02:00
Christopher Lackner
b1b2f17c09 fix clang warning about unqualified std move 2023-05-23 08:57:51 +02:00
Christopher Lackner
8374346023 allow adding identification name in occ extrude 2023-05-22 13:08:31 +02:00
Christopher Lackner
2233275c0b do not copy faces when extrude, better identify in extrude 2023-05-17 16:24:06 +02:00
Christopher Lackner
e4a2795414 extrude with optional (closesurface) identification 2023-05-17 12:49:16 +02:00
Matthias Hochsteger
bdd15644d3 Fix compile warning 2023-04-26 16:48:29 +02:00
Christopher Lackner
50356b7c5e fox list of shape constructor in OCCGeometry propagating properties 2023-02-17 08:47:01 +01:00
Schöberl, Joachim
1eb0fdfbb7 Merge branch 'occ_better_divide_edge' into 'master'
OCC better divide edge algorithm

See merge request ngsolve/netgen!551
2023-02-13 15:57:53 +01:00
Hochsteger, Matthias
219c2af686 OCC better divide edge algorithm 2023-02-13 15:57:53 +01:00
Christopher Lackner
fafcf555ac [occ] add additional arguments for MakeThickSolid 2023-02-01 11:03:42 +01:00
Matthias Hochsteger
e64d07aab3 set domain names in revolve 2023-01-26 17:00:18 +01:00
Hochsteger, Matthias
2f4e52594e Merge branch 'fix_occ_identified_edge_orientation' into 'master'
Keep consistent vertex numbering for identified edges

See merge request ngsolve/netgen!547
2023-01-19 12:59:19 +01:00
Christopher Lackner
bb25aa656a more stable occ parameter space projection
occ uv parameters are not very accurate sometimes, therefore new
strategy for finding same uv points in parameter space:

if uv coordinates are closer together than 0.9 * min(seg_length) and
global point numbers are the same -> same uv point
2023-01-16 19:57:48 +01:00
Matthias Hochsteger
e3772bf3af Keep consistent vertex numbering for identified edges 2023-01-16 17:05:18 +01:00
Matthias Hochsteger
9f2daabc0f Fix dangling reference in PropagateProperties()
Other GetProperties() calls push_back new elements to global_shape_properties
-> memory reallocation
2023-01-12 14:57:31 +01:00
Schöberl, Joachim
c631efd6b5 Merge branch 'fix_access_of_empty_WP_wires' into 'master'
Avoid out-of-bounds access in OCC WP and ListOfShapes

See merge request ngsolve/netgen!545
2022-12-20 13:52:43 +01:00
Matthias Rambausek
bda7ea5ac1 handle case of WP.wires being empty 2022-12-20 12:14:55 +01:00
Christopher Lackner
36644161b3 fix closesurface identification with degenerated edges 2022-12-19 13:26:18 +01:00
Christopher Lackner
7abda1151c occ_face ProjectPointGI should set gi 2022-12-13 16:09:28 +01:00
Schöberl, Joachim
6d539e0213 Merge branch 'occ_no_maps' into 'master'
remove all std::maps<TopoDS_Shape, *> and std::set<TopoDS_Shape>

See merge request ngsolve/netgen!542
2022-12-09 16:20:37 +01:00
Christopher Lackner
d3a393a727 fixes for identifications not using maps, python maps also don't use hash 2022-12-09 13:10:17 +01:00
Joachim Schoeberl
c622f39897 replace sprintf by snprintf (remove warnings), remove old mpi-interface header 2022-12-08 15:19:16 +01:00
Christopher Lackner
0aa20603d9 remove all std::maps<TopoDS_Shape, *> and std::set<TopoDS_Shape>
since hash conflicts may occur this is not safe.
2022-12-06 17:51:19 +01:00
Matthias Hochsteger
22d314a1ec Don't use std::map<TopoDS_Shape> (hash value is not unique) 2022-11-15 17:02:34 +01:00
Christopher Lackner
4714aa9b31 smaller tolerance in occ center 2022-10-17 15:56:38 +02:00
Joachim Schoeberl
bce715acc9 switch back to manual projection for OCC geometry (wta/coil.ipynb make a huge difference) 2022-10-16 13:08:27 +02:00
Matthias Hochsteger
a005bfadd8 set uv-params in mapped trigs correctly
Just projecting might lead to wrong results if a face contains edges
twice.
2022-10-11 11:30:49 +02:00
Christopher Lackner
11f2ff0c76 fix project point on edge to stay in param range 2022-10-07 12:22:11 +02:00
Matthias Hochsteger
85b909ef21 TopoDS_Shape.center - call utility function instead of separate(and incomplete) implementation 2022-10-06 14:50:23 +02:00
Christopher Lackner
be9e15e635 Merge remote-tracking branch 'luzpaz/typos' 2022-09-13 16:12:46 +02:00
Christopher Lackner
9b58ece673 fix occ identification propagation, use IsSame not == 2022-09-08 17:48:11 +02:00
luz paz
3230021dec Fix typos
Found via `codespell`
2022-09-08 11:08:25 -04:00
Christopher Lackner
412fd372d0 Merge branch 'fix_1_solid_in_glue' 2022-09-06 17:50:29 +02:00
Francesco Ballarin
606485f00c Fix segmentation fault introduced in 78dfd10: missing local variable name was causing the global variable to be used 2022-09-01 21:24:42 +02:00
Christopher Lackner
e05b8960d7 if list with 1 element in glue -> return that element
else opencascade returns empty shape
2022-09-01 15:10:14 +02:00
Christopher Lackner
78dfd10475 mesh argument in GeneratMesh (to continue meshing from higher perfstepstart 2022-09-01 10:43:16 +02:00
Christopher Lackner
85d4874320 Merge branch 'fixes_closesurface_identification' 2022-08-31 10:05:15 +02:00
Matthias Hochsteger
666fb2ee86 fix boundarylayer 2d code (now single line segments, not per face) 2022-08-30 09:12:49 +02:00
Christopher Lackner
7c2070ab0d fix closesurface identification IsSame instead of operator == 2022-08-29 14:43:01 +02:00
Christopher Lackner
b7e0288a34 use Shape hash instead of TShape 2022-08-19 12:51:39 +02:00
Christopher Lackner
28efccccf4 faces may be multiple time in explorer iteration -> skip if already in map 2022-08-19 09:44:58 +02:00
Christopher Lackner
27aaae9fb5 add solid -> faces map in renderData of occ geom 2022-08-10 07:45:30 +02:00
Schöberl, Joachim
d36a6746b7 Update python_occ.cpp 2022-08-04 14:16:16 +02:00
Christopher Lackner
4e860f4ca2 set global shared ptr only if meshing fails 2022-08-04 14:14:39 +02:00
Christopher Lackner
00a1d1a496 visualized failed mesh after generatemesh 2022-08-04 10:31:33 +02:00
Christopher Lackner
06f35594c6 add norm of gp_Vec 2022-06-13 10:35:26 +02:00
Christopher Lackner
3531f9c9d4 fix typo 2022-06-08 20:59:06 +02:00
Christopher Lackner
03e21d5c5f [occ] create ListOfShape from list of shapes 2022-06-08 20:52:51 +02:00
Matthias Hochsteger
1497404a4c Fix mesh saving/loading with OCC 7.6 2022-05-25 16:29:34 +02:00
Schöberl, Joachim
1a174508db Merge branch 'occ_consistent_maxh' into 'master'
make shape.solids.maxh = ... consistent with solid.maxh = ...

See merge request ngsolve/netgen!503
2022-05-07 15:10:57 +02:00
Christopher Lackner
456cb927d1 make shape.solids.maxh = ... consistent with solid.maxh = ... 2022-05-05 18:09:42 +02:00
Christopher Lackner
a04b7b5d5d __ge__ and __le__ operator for DirectionalInterval 2022-05-05 17:32:25 +02:00
Matthias Hochsteger
b694b4667a rework build system, separate gui and non-gui code
move fieldlines code to meshing dir

move visualization function pointers to meshing directory

DLL_HEADER -> NGGUI_API in visualization lib

move soldata.hpp to meshing

update occ, no freetype necessary anymore
2022-05-05 14:39:31 +02:00
Julius Zimmermann
4df5ed1536 denser syntax in occ file 2022-04-21 10:26:27 +02:00
Julius Zimmermann
6e18260ef7 Merge branch 'master' of github.com:j-zimmermann/netgen 2022-04-20 14:49:32 +02:00
Julius Zimmermann
ae28716366 add cone 2022-04-20 14:49:22 +02:00
Julius Zimmermann
718c876fa7 correct computation of shapes 2022-04-20 00:08:54 +02:00
Joachim Schoeberl
e5056dcd57 output control 2022-04-02 10:37:26 +02:00
Christopher Lackner
d36b3d8b4e [occ] inner point of surface -> surface mesh 2022-03-30 12:47:07 +02:00
Christopher Lackner
046443259e [occ] gp_GTrsf for anisotropic trafos 2022-03-28 18:34:22 +00:00
Matthias Hochsteger
132261ec4d Merge remote-tracking branch 'StefanBruens/fix_switch_enum' 2022-03-28 18:29:32 +02:00
luz paz
4033fac1b3 Fix various typos
Found via `codespell -q 3 -S ./external_dependencies/pybind11 -L alledges,allright,ane,anormal,ans,apoints,ba,boxs,cancle,childs,co-ordinate,co-ordinates,daty,enty,filld,hel,identifyable,ist,linz,lod,ned,nd,selt,statics,suround,thev,thist,thisy,timere,upto,wel`
2022-03-25 18:22:05 -04:00
Christopher Lackner
c822caafe7 [occ] create solid from faces
Needs shape consisting of topologically closed faces, for example from
Solid(Glue(list_of_faces))`
2022-03-17 11:58:11 +01:00
Joachim Schoeberl
7791840a4a little mpi cleanup, meshing+distribution in one call 2022-03-15 09:13:09 +01:00
mhochsteger@cerbsim.com
154302605f separate localh trees for different layers
currenlty used in OCC geometries generated with
shape = netgen.occ.Compound(list_of_shapes, separate_layers=True)
2022-03-10 19:04:46 +01:00
mhochsteger@cerbsim.com
4e8fe77098 fix some warnings 2022-03-02 14:14:38 +01:00
Christopher Lackner
d6770fda0c allow quad dominated meshing of faces 2022-02-25 10:50:51 +01:00
mhochsteger@cerbsim.com
cf59f297a7 use std::filesystem::path 2022-02-23 11:56:00 +01:00
mhochsteger@cerbsim.com
2ce4412fb2 no periodic in bspline surface builder on OCC 7.3 2022-02-11 18:19:50 +01:00
Joachim Schöberl
c5886cfe05 Merge branch 'occ_spline_tools' into 'master'
Adds wrappers for various OCC spline interpolation and approximation routines

See merge request jschoeberl/netgen!472
2022-02-11 11:15:18 +00:00
Matthias Rambausek
5f6b234262 shorter property names 2022-02-11 11:46:55 +01:00
Matthias Rambausek
51013105ed doc typo 2022-02-08 14:01:25 +01:00
Matthias Rambausek
947da90a00 Merge branch 'master' into occ_spline_tools 2022-02-07 18:43:29 +01:00
mhochsteger@cerbsim.com
82ec42b292 Ignore identified edges/vertices for closeedge localh restrictions 2022-02-02 15:09:41 +01:00