Commit Graph

490 Commits

Author SHA1 Message Date
Christopher Lackner
e597ce996b [occ] also prolongate names of solids and faces in extrude 2022-01-17 16:03:40 +01:00
mhochsteger@cerbsim.com
5f202fd4ea clear geom data in OCCGeometry::BuildFMap() (fixes broken meshing after Heal()) 2022-01-17 10:02:11 +01:00
mhochsteger@cerbsim.com
c63a865ee3 occ - fix meshing a sphere (need to keep degenerate edges) 2022-01-04 16:09:00 +01:00
Matthias Rambausek
093692f825 docstring fix 2021-12-27 17:08:00 +01:00
Matthias Rambausek
88bb6ec6af add some functions to access WorkPlane data and the possibility to create splines from any starting point 2021-12-27 16:10:37 +01:00
Matthias Rambausek
6656181e2b work om WP Spline: detect closing similar to ArcTo and LineTo, remove "name" arg 2021-12-22 16:21:24 +01:00
mhochsteger@cerbsim.com
f0b8b4fae9 occ - bugfix in identification propagation 2021-12-20 21:45:36 +01:00
mhochsteger@cerbsim.com
fe8c036204 Map identification trafo when transforming occ shapes
also propagate properties in gp_Trsf.__call__()
2021-12-20 21:01:51 +01:00
mhochsteger@cerbsim.com
1e86bc2c59 occ - consistent ordering of shapes 2021-12-17 11:04:23 +01:00
mhochsteger@cerbsim.com
d467621edd change interface for identifications 2021-12-16 20:54:19 +01:00
mhochsteger@cerbsim.com
b7448ce2c1 fix PropagateIdentifications after Glue 2021-12-16 18:35:43 +01:00
mhochsteger@cerbsim.com
44471fe649 occ - identify with given trafo (allows identifying multiple faces at once) 2021-12-14 12:16:03 +01:00
mhochsteger@cerbsim.com
329364e8e2 occ - set domin/domout for edges in 2d meshes 2021-12-07 14:52:06 +01:00
Matthias Rambausek
fdf26641dd fixed exception 2021-12-06 16:28:02 +01:00
Matthias Rambausek
9f83730fb5 add a check on first point given to WP::Spline; more precise docs 2021-12-06 15:26:57 +01:00
mhochsteger@cerbsim.com
299717de55 copy=true in occ fuctions 2021-12-06 09:13:02 +01:00
Matthias Rambausek
31fa22626c Split 2d and 3d spline implementations, use tangent data; added Spline member to WorkPlane 2021-12-03 11:55:02 +01:00
Matthias Rambausek
193a7001e4 added 2d spline interpolation but not added to workplane yet 2021-12-02 17:39:11 +01:00
Matthias Rambausek
a5aed39f9d SplineInterpolation now works; refined some docstrings 2021-12-02 16:52:38 +01:00
Christopher Lackner
5cc3ce3300 Draw occ geometry. Change edge color to black 2021-12-02 12:10:57 +01:00
Christopher Lackner
c1d768a5b3 [occ] Specify extrusion direction, add getitem to gp_Pnt to iterate 2021-12-01 14:40:26 +01:00
mhochsteger@cerbsim.com
ed0f8b8a53 occ - propagate identifications, shape.bounding_box 2021-12-01 13:15:09 +01:00
mhochsteger@cerbsim.com
8334d20c3a occ - use search tree to identify points in parameter space 2021-12-01 11:36:28 +01:00
mhochsteger@cerbsim.com
92ade9d800 copy faces in occ transformations 2021-11-30 20:43:29 +01:00
mhochsteger@cerbsim.com
8f77aa458b fix output 2021-11-30 20:26:35 +01:00
mhochsteger@cerbsim.com
c0d6f1588d occ - closesurface identification (prisms) 2021-11-30 20:26:26 +01:00
mhochsteger@cerbsim.com
7962f0a1bb fix edge projection 2021-11-30 19:35:32 +01:00
Christopher Lackner
378152d1c4 [occ] add Distance of shapes 2021-11-30 17:45:52 +01:00
mhochsteger@cerbsim.com
8626262679 comments 2021-11-29 16:20:40 +01:00
Joachim Schöberl
d23eb4fe7e Merge branch 'project_wire_on_face' into 'master'
project wire onto face

See merge request jschoeberl/netgen!456
2021-11-29 15:04:45 +00:00
mhochsteger@cerbsim.com
1818ffd152 occ - fix meshing in parameter space, fix edge curve parameters 2021-11-29 16:04:26 +01:00
Christopher Lackner
86e7754c7a project wire onto face 2021-11-29 15:54:24 +01:00
mhochsteger@cerbsim.com
9537ccdb7a occ - allow closed edges in identified faces 2021-11-28 19:59:14 +01:00
mhochsteger@cerbsim.com
bba4f414b7 occ - include StandardVersion.hxx everywhere 2021-11-28 16:25:39 +01:00
Matthias Hochsteger
16b88e8e67 OCC Mesher Cleanup 2021-11-28 15:14:41 +00:00
mhochsteger@cerbsim.com
50e05f8a72 copy shape BRepBuilderAPI_Transform (to avoid copies of same TShape with different locations) 2021-11-25 14:37:02 +01:00
Joachim Schoeberl
8dfdfb9579 fix occ - Nearest 2021-11-25 10:45:09 +01:00
Matthias Rambausek
f2c6a0f8c0 extended wrappers for spline approximation; enable spline surface interpolation 2021-11-22 15:23:34 +01:00
mhochsteger@cerbsim.com
8c9cdfbc34 store netgen version, introduce "format_version" for future changes 2021-11-12 12:55:01 +01:00
mhochsteger@cerbsim.com
36f22a13ce also save occ identifications in mesh file attachment 2021-11-12 12:54:58 +01:00
mhochsteger@cerbsim.com
e0afa0a916 Use TextOutArchive to store OCCGeometry in mesh files 2021-11-11 10:04:39 +01:00
mhochsteger@cerbsim.com
4d7ef21791 proper DoArchive for OCCGeometry 2021-11-10 18:37:24 +01:00
mhochsteger@cerbsim.com
b63baa57be ShapeProperties::DoArchive() 2021-11-10 18:37:21 +01:00
Joachim Schoeberl
2724317985 remove output 2021-11-09 17:41:13 +01:00
Joachim Schoeberl
478aaf7788 little polish 2021-11-07 00:16:57 +01:00
Joachim Schoeberl
1eca091fd3 fix Enumerate(IndexMap) 2021-11-06 16:14:19 +01:00
Joachim Schoeberl
50398c18c4 simplify edge/face-id types (just an int) 2021-11-06 15:52:35 +01:00
Joachim Schoeberl
6ae645ce33 added IndexMapIterator 2021-11-06 13:15:52 +01:00
Joachim Schoeberl
bd564931f8 strings in FaceDescriptor (instead of ptrs) 2021-11-06 12:22:44 +01:00
Joachim Schoeberl
fdc04b7276 using more range-based loops in occ 2021-11-06 11:51:11 +01:00
Joachim Schoeberl
14f32f73c0 range-based for for TopExp_Explorer 2021-11-06 10:44:01 +01:00
Joachim Schoeberl
64e40a25e0 fixing name for unnamed face (problem after restructuring facenames) 2021-11-06 08:51:36 +01:00
mhochsteger@cerbsim.com
239cdf694f Don't copy occ shape in OCCGeometry ctor by default 2021-11-05 20:26:43 +01:00
mhochsteger@cerbsim.com
b99b107bbc fix for loop range (occ is 1-based) 2021-11-05 19:44:58 +01:00
mhochsteger@cerbsim.com
928cb57448 fix wrong bcname string pointer 2021-11-05 19:07:50 +01:00
Matthias Hochsteger
8efcd93db6 Merge branch 'temp_file_generation' into 'master'
util function GetTempFilename()

See merge request jschoeberl/netgen!446
2021-11-05 16:41:11 +00:00
Joachim Schöberl
dd5499a12e Merge branch 'occ_conn_e_to_w' into 'master'
[occ] connect edges to wires

See merge request jschoeberl/netgen!447
2021-11-05 11:53:18 +00:00
mhochsteger@cerbsim.com
225312b9d9 Save occ identifications in step file 2021-11-04 21:58:56 +01:00
Christopher Lackner
10e3494de4 [occ] connect edges to wires 2021-11-04 20:43:33 +01:00
mhochsteger@cerbsim.com
747367ab8a util function GetTempFilename() 2021-11-04 12:20:56 +01:00
Christopher Lackner
5672e05a40 Remove occ output 2021-11-04 10:54:33 +00:00
Christopher Lackner
5b0be52d35 do not set ng_geometry in OCCGeometry constructor 2021-11-03 20:49:34 +01:00
mhochsteger@cerbsim.com
dbe9431fa9 remove temp file 2021-11-03 17:42:52 +01:00
mhochsteger@cerbsim.com
9245c3c32b proper handling of occ names and colors 2021-11-03 17:20:26 +01:00
mhochsteger@cerbsim.com
b914b6fe53 load/store occ geometry properties (maxh, hpref, color opacity) 2021-11-02 19:11:10 +01:00
Joachim Schoeberl
0f598bffa3 hpref from occ geometry 2021-10-29 09:30:13 +02:00
Christopher Lackner
e662449b69 fix copy paste error 2021-10-20 09:26:15 +02:00
Christopher Lackner
458ade64e6 fix occ shape names in Load from step 2021-10-20 09:23:01 +02:00
Joachim Schöberl
04a31eeed3 Merge branch 'occ_listofshape_regexp_access' into 'master'
String access of listofshape using regexp

See merge request jschoeberl/netgen!438
2021-10-15 11:10:20 +00:00
Christopher Lackner
c8939fa6d8 String access of listofshape using regexp 2021-10-13 17:52:34 +02:00
Christopher Lackner
733824bffc Add Fuse operation for occ shapes 2021-10-13 16:54:23 +02:00
Joachim Schöberl
5260e3500c Merge branch 'occ_vec_times_vec' into 'master'
[occ] multiply 2 gp_Vec

See merge request jschoeberl/netgen!433
2021-10-11 11:28:11 +00:00
Joachim Schöberl
bd32e9d540 Merge branch 'occ_better_cyl_args' into 'master'
[occ] Better arguments for Cylinder

See merge request jschoeberl/netgen!434
2021-10-11 11:14:49 +00:00
Christopher Lackner
9efb9b1682 [occ] multiply 2 gp_Vec 2021-10-11 12:48:43 +02:00
Christopher Lackner
c9f1db548c [occ] Better arguments for Cylinder 2021-10-11 12:48:14 +02:00
Christopher Lackner
e703ad75af Allow OCCGeometry.Heal without face_colours (if built in py) 2021-10-11 12:47:16 +02:00
Christopher Lackner
4dc1bfa99e [occ] allow to give cylinder face names in constructor 2021-10-05 23:48:06 +02:00
Christopher Lackner
a2ee528dae Always call UnifySameDomain on + operator not only in 2D 2021-10-05 10:46:55 +02:00
Christopher Lackner
b4bf1172bc fix length of occ dim2 boundaries 2021-10-04 15:52:56 +02:00
Christopher Lackner
ec96feb7f4 occ colors also in netgen gui, also allow transparency 2021-10-03 12:58:33 +02:00
Joachim Schoeberl
e7de90a33f propagate names in MakeFillet and MakeChamfer 2021-10-02 15:32:02 +02:00
Matthias Hochsteger
50ef307622 Merge branch 'std_any_to_py_object' into 'master'
Add std::any to py::object caster for archive registered types

See merge request jschoeberl/netgen!426
2021-09-29 10:22:17 +00:00
Christopher Lackner
a42f5525a3 remove DirectionalInterval debug output 2021-09-29 08:58:30 +02:00
Christopher Lackner
bd29763b16 Add std::any to py::object caster for archive registered types 2021-09-28 22:34:11 +02:00
Joachim Schoeberl
8760559690 makechamfer.Add(double,edge) needs newer occ version 2021-09-28 20:11:32 +02:00
Joachim Schoeberl
0862327937 wrapping shape.MakeChamfer 2021-09-28 19:34:43 +02:00
Joachim Schöberl
28a81c11d9 Merge branch 'fix_occ_bcnames' into 'master'
Fix boundarynames from occgeo created with global bc map

See merge request jschoeberl/netgen!421
2021-09-28 12:58:30 +00:00
Joachim Schoeberl
49a6172548 refine at vertices 2021-09-24 18:47:54 +02:00
Christopher Lackner
4323371c53 add occ shape.UnifySameDomain 2021-09-21 17:39:06 +02:00
Joachim Schoeberl
be6dbdadbf 'Nearest' to point selector, Revolution of arbitrary shapes 2021-09-19 10:50:38 +02:00
Christopher Lackner
77b5346099 occ fix setcd2names if geom.enames is empty 2021-09-17 17:43:03 +02:00
Christopher Lackner
22344e43a6 Fix boundarynames from occgeo created with global bc map 2021-09-17 16:23:01 +02:00
Christopher Lackner
31530e0791 Add HalfSpace to occ export 2021-09-17 12:02:46 +02:00
Christopher Lackner
0c686e6b8b if PointBetweenEdge gets invalid edgenr, return midpoint
This is needed for creating boundarylayers and then curving the mesh.
2021-09-17 11:22:37 +02:00
Christopher Lackner
c9e33065af keep Properties in translation, rotation, mirror 2021-09-16 12:55:21 +02:00
Christopher Lackner
95e09828a6 shape.Scale keeps names 2021-09-16 11:40:48 +02:00
Christopher Lackner
6a0eb58a66 Add subshape properties to ListOfShapes 2021-09-13 18:48:06 +00:00
Joachim Schöberl
5bfb5a6eac Merge branch 'multiply_occ_listofshapes' into 'master'
Multiplication of ListOfShapes to find common shapes

See merge request jschoeberl/netgen!416
2021-09-13 17:30:45 +00:00
Christopher Lackner
8b2a2340e7 Multiplication of ListOfShapes to find common shapes 2021-09-13 18:15:50 +02:00
Christopher Lackner
8e519951f3 Add property .solids to occ shape 2021-09-13 17:23:08 +02:00
mhochsteger@cerbsim.com
0a15ce5c2b occ - apply maxh setting to all children 2021-09-13 13:33:22 +02:00
mhochsteger@cerbsim.com
8b36df94a1 occ - respect maxh property of solids 2021-09-13 12:47:36 +02:00
Joachim Schoeberl
94ee2b67ad small 2d workplane simplifications 2021-09-10 12:09:51 +02:00
Joachim Schoeberl
6a6a98dcea 2d drawing 2021-09-09 14:12:06 +02:00
Joachim Schoeberl
93d3a7ce4b OCCGeometry(shape, dim=2) will generate 2D mesh (materials+bc) 2021-09-09 13:19:34 +02:00
Joachim Schoeberl
6bd9d83fce more docstrings, don't catch exceptions individually 2021-09-08 06:45:56 +02:00
Joachim Schoeberl
1087e961ca more docsstrings 2021-09-07 16:28:46 +02:00
Joachim Schoeberl
6ec277cd67 add docstrings to occ-shapes 2021-09-07 12:21:34 +02:00
Joachim Schoeberl
b2afad9aec output control 2021-09-07 07:36:21 +02:00
Joachim Schoeberl
1f599e6e47 output 2021-09-06 17:40:40 +02:00
Joachim Schoeberl
77f07f8baf occ output control 2021-09-06 16:59:48 +02:00
Joachim Schoeberl
27d8d42446 remove cerr output 2021-09-06 16:26:12 +02:00
Joachim Schöberl
e05dc43f35 Merge branch 'register_occ_exceptions' into 'master'
Register occ exceptions to python

See merge request jschoeberl/netgen!409
2021-09-06 07:22:11 +00:00
Joachim Schoeberl
94ec425a5e remove output 2021-09-06 09:20:19 +02:00
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