netgen-mesher 6.2.2506.post35.dev0__cp314-cp314-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. netgen/NgOCC.py +7 -0
  2. netgen/__init__.py +114 -0
  3. netgen/__init__.pyi +22 -0
  4. netgen/__main__.py +53 -0
  5. netgen/cmake/NetgenConfig.cmake +79 -0
  6. netgen/cmake/netgen-targets-release.cmake +69 -0
  7. netgen/cmake/netgen-targets.cmake +146 -0
  8. netgen/config/__init__.py +1 -0
  9. netgen/config/__init__.pyi +52 -0
  10. netgen/config/__main__.py +4 -0
  11. netgen/config/config.py +68 -0
  12. netgen/config/config.pyi +54 -0
  13. netgen/csg.py +25 -0
  14. netgen/geom2d.py +178 -0
  15. netgen/gui.py +82 -0
  16. netgen/include/core/archive.hpp +1256 -0
  17. netgen/include/core/array.hpp +1760 -0
  18. netgen/include/core/autodiff.hpp +1131 -0
  19. netgen/include/core/autodiffdiff.hpp +733 -0
  20. netgen/include/core/bitarray.hpp +240 -0
  21. netgen/include/core/concurrentqueue.h +3619 -0
  22. netgen/include/core/exception.hpp +145 -0
  23. netgen/include/core/flags.hpp +199 -0
  24. netgen/include/core/hashtable.hpp +1281 -0
  25. netgen/include/core/localheap.hpp +318 -0
  26. netgen/include/core/logging.hpp +117 -0
  27. netgen/include/core/memtracer.hpp +221 -0
  28. netgen/include/core/mpi4py_pycapi.h +245 -0
  29. netgen/include/core/mpi_wrapper.hpp +643 -0
  30. netgen/include/core/ng_mpi.hpp +94 -0
  31. netgen/include/core/ng_mpi_generated_declarations.hpp +155 -0
  32. netgen/include/core/ng_mpi_native.hpp +25 -0
  33. netgen/include/core/ngcore.hpp +32 -0
  34. netgen/include/core/ngcore_api.hpp +152 -0
  35. netgen/include/core/ngstream.hpp +115 -0
  36. netgen/include/core/paje_trace.hpp +279 -0
  37. netgen/include/core/profiler.hpp +382 -0
  38. netgen/include/core/python_ngcore.hpp +457 -0
  39. netgen/include/core/ranges.hpp +109 -0
  40. netgen/include/core/register_archive.hpp +100 -0
  41. netgen/include/core/signal.hpp +82 -0
  42. netgen/include/core/simd.hpp +160 -0
  43. netgen/include/core/simd_arm64.hpp +407 -0
  44. netgen/include/core/simd_avx.hpp +394 -0
  45. netgen/include/core/simd_avx512.hpp +285 -0
  46. netgen/include/core/simd_generic.hpp +1053 -0
  47. netgen/include/core/simd_math.hpp +178 -0
  48. netgen/include/core/simd_sse.hpp +289 -0
  49. netgen/include/core/statushandler.hpp +37 -0
  50. netgen/include/core/symboltable.hpp +153 -0
  51. netgen/include/core/table.hpp +810 -0
  52. netgen/include/core/taskmanager.hpp +1161 -0
  53. netgen/include/core/type_traits.hpp +65 -0
  54. netgen/include/core/utils.hpp +385 -0
  55. netgen/include/core/version.hpp +102 -0
  56. netgen/include/core/xbool.hpp +47 -0
  57. netgen/include/csg/algprim.hpp +563 -0
  58. netgen/include/csg/brick.hpp +150 -0
  59. netgen/include/csg/csg.hpp +43 -0
  60. netgen/include/csg/csgeom.hpp +389 -0
  61. netgen/include/csg/csgparser.hpp +101 -0
  62. netgen/include/csg/curve2d.hpp +67 -0
  63. netgen/include/csg/edgeflw.hpp +112 -0
  64. netgen/include/csg/explicitcurve2d.hpp +113 -0
  65. netgen/include/csg/extrusion.hpp +185 -0
  66. netgen/include/csg/gencyl.hpp +70 -0
  67. netgen/include/csg/geoml.hpp +16 -0
  68. netgen/include/csg/identify.hpp +213 -0
  69. netgen/include/csg/manifold.hpp +29 -0
  70. netgen/include/csg/meshsurf.hpp +46 -0
  71. netgen/include/csg/polyhedra.hpp +121 -0
  72. netgen/include/csg/revolution.hpp +180 -0
  73. netgen/include/csg/singularref.hpp +84 -0
  74. netgen/include/csg/solid.hpp +295 -0
  75. netgen/include/csg/specpoin.hpp +194 -0
  76. netgen/include/csg/spline3d.hpp +99 -0
  77. netgen/include/csg/splinesurface.hpp +85 -0
  78. netgen/include/csg/surface.hpp +394 -0
  79. netgen/include/csg/triapprox.hpp +63 -0
  80. netgen/include/csg/vscsg.hpp +34 -0
  81. netgen/include/general/autodiff.hpp +356 -0
  82. netgen/include/general/autoptr.hpp +39 -0
  83. netgen/include/general/gzstream.h +121 -0
  84. netgen/include/general/hashtabl.hpp +1692 -0
  85. netgen/include/general/myadt.hpp +48 -0
  86. netgen/include/general/mystring.hpp +226 -0
  87. netgen/include/general/netgenout.hpp +205 -0
  88. netgen/include/general/ngarray.hpp +797 -0
  89. netgen/include/general/ngbitarray.hpp +149 -0
  90. netgen/include/general/ngpython.hpp +74 -0
  91. netgen/include/general/optmem.hpp +44 -0
  92. netgen/include/general/parthreads.hpp +138 -0
  93. netgen/include/general/seti.hpp +50 -0
  94. netgen/include/general/sort.hpp +47 -0
  95. netgen/include/general/spbita2d.hpp +59 -0
  96. netgen/include/general/stack.hpp +114 -0
  97. netgen/include/general/table.hpp +280 -0
  98. netgen/include/general/template.hpp +509 -0
  99. netgen/include/geom2d/csg2d.hpp +750 -0
  100. netgen/include/geom2d/geometry2d.hpp +280 -0
  101. netgen/include/geom2d/spline2d.hpp +234 -0
  102. netgen/include/geom2d/vsgeom2d.hpp +28 -0
  103. netgen/include/gprim/adtree.hpp +1392 -0
  104. netgen/include/gprim/geom2d.hpp +858 -0
  105. netgen/include/gprim/geom3d.hpp +749 -0
  106. netgen/include/gprim/geomfuncs.hpp +212 -0
  107. netgen/include/gprim/geomobjects.hpp +544 -0
  108. netgen/include/gprim/geomops.hpp +404 -0
  109. netgen/include/gprim/geomtest3d.hpp +101 -0
  110. netgen/include/gprim/gprim.hpp +33 -0
  111. netgen/include/gprim/spline.hpp +778 -0
  112. netgen/include/gprim/splinegeometry.hpp +73 -0
  113. netgen/include/gprim/transform3d.hpp +216 -0
  114. netgen/include/include/acisgeom.hpp +3 -0
  115. netgen/include/include/csg.hpp +1 -0
  116. netgen/include/include/geometry2d.hpp +1 -0
  117. netgen/include/include/gprim.hpp +1 -0
  118. netgen/include/include/incopengl.hpp +62 -0
  119. netgen/include/include/inctcl.hpp +13 -0
  120. netgen/include/include/incvis.hpp +6 -0
  121. netgen/include/include/linalg.hpp +1 -0
  122. netgen/include/include/meshing.hpp +1 -0
  123. netgen/include/include/myadt.hpp +1 -0
  124. netgen/include/include/mydefs.hpp +70 -0
  125. netgen/include/include/mystdlib.h +59 -0
  126. netgen/include/include/netgen_config.hpp +27 -0
  127. netgen/include/include/netgen_version.hpp +9 -0
  128. netgen/include/include/nginterface_v2_impl.hpp +395 -0
  129. netgen/include/include/ngsimd.hpp +1 -0
  130. netgen/include/include/occgeom.hpp +1 -0
  131. netgen/include/include/opti.hpp +1 -0
  132. netgen/include/include/parallel.hpp +1 -0
  133. netgen/include/include/stlgeom.hpp +1 -0
  134. netgen/include/include/visual.hpp +1 -0
  135. netgen/include/interface/rw_medit.hpp +11 -0
  136. netgen/include/interface/writeuser.hpp +80 -0
  137. netgen/include/linalg/densemat.hpp +414 -0
  138. netgen/include/linalg/linalg.hpp +29 -0
  139. netgen/include/linalg/opti.hpp +142 -0
  140. netgen/include/linalg/polynomial.hpp +47 -0
  141. netgen/include/linalg/vector.hpp +217 -0
  142. netgen/include/meshing/adfront2.hpp +274 -0
  143. netgen/include/meshing/adfront3.hpp +332 -0
  144. netgen/include/meshing/basegeom.hpp +370 -0
  145. netgen/include/meshing/bcfunctions.hpp +53 -0
  146. netgen/include/meshing/bisect.hpp +72 -0
  147. netgen/include/meshing/boundarylayer.hpp +113 -0
  148. netgen/include/meshing/classifyhpel.hpp +1984 -0
  149. netgen/include/meshing/clusters.hpp +46 -0
  150. netgen/include/meshing/curvedelems.hpp +274 -0
  151. netgen/include/meshing/delaunay2d.hpp +73 -0
  152. netgen/include/meshing/fieldlines.hpp +103 -0
  153. netgen/include/meshing/findip.hpp +198 -0
  154. netgen/include/meshing/findip2.hpp +103 -0
  155. netgen/include/meshing/geomsearch.hpp +69 -0
  156. netgen/include/meshing/global.hpp +54 -0
  157. netgen/include/meshing/hpref_hex.hpp +330 -0
  158. netgen/include/meshing/hpref_prism.hpp +3405 -0
  159. netgen/include/meshing/hpref_pyramid.hpp +154 -0
  160. netgen/include/meshing/hpref_quad.hpp +2082 -0
  161. netgen/include/meshing/hpref_segm.hpp +122 -0
  162. netgen/include/meshing/hpref_tet.hpp +4230 -0
  163. netgen/include/meshing/hpref_trig.hpp +848 -0
  164. netgen/include/meshing/hprefinement.hpp +366 -0
  165. netgen/include/meshing/improve2.hpp +178 -0
  166. netgen/include/meshing/improve3.hpp +151 -0
  167. netgen/include/meshing/localh.hpp +223 -0
  168. netgen/include/meshing/meshclass.hpp +1076 -0
  169. netgen/include/meshing/meshfunc.hpp +47 -0
  170. netgen/include/meshing/meshing.hpp +63 -0
  171. netgen/include/meshing/meshing2.hpp +163 -0
  172. netgen/include/meshing/meshing3.hpp +123 -0
  173. netgen/include/meshing/meshtool.hpp +90 -0
  174. netgen/include/meshing/meshtype.hpp +1930 -0
  175. netgen/include/meshing/msghandler.hpp +62 -0
  176. netgen/include/meshing/paralleltop.hpp +172 -0
  177. netgen/include/meshing/python_mesh.hpp +206 -0
  178. netgen/include/meshing/ruler2.hpp +172 -0
  179. netgen/include/meshing/ruler3.hpp +211 -0
  180. netgen/include/meshing/soldata.hpp +141 -0
  181. netgen/include/meshing/specials.hpp +17 -0
  182. netgen/include/meshing/surfacegeom.hpp +73 -0
  183. netgen/include/meshing/topology.hpp +1003 -0
  184. netgen/include/meshing/validate.hpp +21 -0
  185. netgen/include/meshing/visual_interface.hpp +71 -0
  186. netgen/include/mydefs.hpp +70 -0
  187. netgen/include/nginterface.h +474 -0
  188. netgen/include/nginterface_v2.hpp +406 -0
  189. netgen/include/nglib.h +697 -0
  190. netgen/include/nglib_occ.h +50 -0
  191. netgen/include/occ/occ_edge.hpp +47 -0
  192. netgen/include/occ/occ_face.hpp +52 -0
  193. netgen/include/occ/occ_solid.hpp +23 -0
  194. netgen/include/occ/occ_utils.hpp +376 -0
  195. netgen/include/occ/occ_vertex.hpp +30 -0
  196. netgen/include/occ/occgeom.hpp +659 -0
  197. netgen/include/occ/occmeshsurf.hpp +168 -0
  198. netgen/include/occ/vsocc.hpp +33 -0
  199. netgen/include/pybind11/LICENSE +29 -0
  200. netgen/include/pybind11/attr.h +722 -0
  201. netgen/include/pybind11/buffer_info.h +208 -0
  202. netgen/include/pybind11/cast.h +2361 -0
  203. netgen/include/pybind11/chrono.h +228 -0
  204. netgen/include/pybind11/common.h +2 -0
  205. netgen/include/pybind11/complex.h +74 -0
  206. netgen/include/pybind11/conduit/README.txt +15 -0
  207. netgen/include/pybind11/conduit/pybind11_conduit_v1.h +116 -0
  208. netgen/include/pybind11/conduit/pybind11_platform_abi_id.h +87 -0
  209. netgen/include/pybind11/conduit/wrap_include_python_h.h +72 -0
  210. netgen/include/pybind11/critical_section.h +56 -0
  211. netgen/include/pybind11/detail/class.h +823 -0
  212. netgen/include/pybind11/detail/common.h +1348 -0
  213. netgen/include/pybind11/detail/cpp_conduit.h +75 -0
  214. netgen/include/pybind11/detail/descr.h +226 -0
  215. netgen/include/pybind11/detail/dynamic_raw_ptr_cast_if_possible.h +39 -0
  216. netgen/include/pybind11/detail/exception_translation.h +71 -0
  217. netgen/include/pybind11/detail/function_record_pyobject.h +191 -0
  218. netgen/include/pybind11/detail/init.h +538 -0
  219. netgen/include/pybind11/detail/internals.h +799 -0
  220. netgen/include/pybind11/detail/native_enum_data.h +209 -0
  221. netgen/include/pybind11/detail/pybind11_namespace_macros.h +82 -0
  222. netgen/include/pybind11/detail/struct_smart_holder.h +378 -0
  223. netgen/include/pybind11/detail/type_caster_base.h +1591 -0
  224. netgen/include/pybind11/detail/typeid.h +65 -0
  225. netgen/include/pybind11/detail/using_smart_holder.h +22 -0
  226. netgen/include/pybind11/detail/value_and_holder.h +90 -0
  227. netgen/include/pybind11/eigen/common.h +9 -0
  228. netgen/include/pybind11/eigen/matrix.h +723 -0
  229. netgen/include/pybind11/eigen/tensor.h +521 -0
  230. netgen/include/pybind11/eigen.h +12 -0
  231. netgen/include/pybind11/embed.h +320 -0
  232. netgen/include/pybind11/eval.h +161 -0
  233. netgen/include/pybind11/functional.h +147 -0
  234. netgen/include/pybind11/gil.h +199 -0
  235. netgen/include/pybind11/gil_safe_call_once.h +102 -0
  236. netgen/include/pybind11/gil_simple.h +37 -0
  237. netgen/include/pybind11/iostream.h +265 -0
  238. netgen/include/pybind11/native_enum.h +67 -0
  239. netgen/include/pybind11/numpy.h +2312 -0
  240. netgen/include/pybind11/operators.h +202 -0
  241. netgen/include/pybind11/options.h +92 -0
  242. netgen/include/pybind11/pybind11.h +3645 -0
  243. netgen/include/pybind11/pytypes.h +2680 -0
  244. netgen/include/pybind11/stl/filesystem.h +114 -0
  245. netgen/include/pybind11/stl.h +666 -0
  246. netgen/include/pybind11/stl_bind.h +858 -0
  247. netgen/include/pybind11/subinterpreter.h +299 -0
  248. netgen/include/pybind11/trampoline_self_life_support.h +65 -0
  249. netgen/include/pybind11/type_caster_pyobject_ptr.h +61 -0
  250. netgen/include/pybind11/typing.h +298 -0
  251. netgen/include/pybind11/warnings.h +75 -0
  252. netgen/include/stlgeom/meshstlsurface.hpp +67 -0
  253. netgen/include/stlgeom/stlgeom.hpp +491 -0
  254. netgen/include/stlgeom/stlline.hpp +193 -0
  255. netgen/include/stlgeom/stltool.hpp +331 -0
  256. netgen/include/stlgeom/stltopology.hpp +419 -0
  257. netgen/include/stlgeom/vsstl.hpp +58 -0
  258. netgen/include/visualization/meshdoc.hpp +42 -0
  259. netgen/include/visualization/mvdraw.hpp +325 -0
  260. netgen/include/visualization/vispar.hpp +128 -0
  261. netgen/include/visualization/visual.hpp +28 -0
  262. netgen/include/visualization/visual_api.hpp +10 -0
  263. netgen/include/visualization/vssolution.hpp +399 -0
  264. netgen/lib/libnggui.lib +0 -0
  265. netgen/lib/ngcore.lib +0 -0
  266. netgen/lib/nglib.lib +0 -0
  267. netgen/lib/togl.lib +0 -0
  268. netgen/libnggui.dll +0 -0
  269. netgen/libngguipy.lib +0 -0
  270. netgen/libngguipy.pyd +0 -0
  271. netgen/libngpy/_NgOCC.pyi +1545 -0
  272. netgen/libngpy/__init__.pyi +7 -0
  273. netgen/libngpy/_csg.pyi +259 -0
  274. netgen/libngpy/_geom2d.pyi +323 -0
  275. netgen/libngpy/_meshing.pyi +1111 -0
  276. netgen/libngpy/_stl.pyi +131 -0
  277. netgen/libngpy.lib +0 -0
  278. netgen/libngpy.pyd +0 -0
  279. netgen/meshing.py +65 -0
  280. netgen/ngcore.dll +0 -0
  281. netgen/nglib.dll +0 -0
  282. netgen/occ.py +52 -0
  283. netgen/read_gmsh.py +259 -0
  284. netgen/read_meshio.py +22 -0
  285. netgen/stl.py +2 -0
  286. netgen/togl.dll +0 -0
  287. netgen/version.py +2 -0
  288. netgen/webgui.py +529 -0
  289. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/boundarycondition.geo +16 -0
  290. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/boxcyl.geo +32 -0
  291. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/circle_on_cube.geo +27 -0
  292. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cone.geo +13 -0
  293. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cube.geo +16 -0
  294. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubeandring.geo +55 -0
  295. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubeandspheres.geo +21 -0
  296. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubemcyl.geo +18 -0
  297. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubemsphere.geo +19 -0
  298. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cylinder.geo +12 -0
  299. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cylsphere.geo +12 -0
  300. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/doc/ng4.pdf +0 -0
  301. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/ellipsoid.geo +8 -0
  302. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/ellipticcyl.geo +10 -0
  303. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/extrusion.geo +99 -0
  304. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/fichera.geo +24 -0
  305. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/frame.step +11683 -0
  306. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/hinge.stl +8486 -0
  307. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/lshape3d.geo +26 -0
  308. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/manyholes.geo +26 -0
  309. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/manyholes2.geo +26 -0
  310. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/matrix.geo +27 -0
  311. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/ortho.geo +11 -0
  312. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/part1.stl +2662 -0
  313. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/period.geo +33 -0
  314. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/py_tutorials/exportNeutral.py +26 -0
  315. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/py_tutorials/mesh.py +19 -0
  316. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/py_tutorials/shaft.geo +65 -0
  317. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/revolution.geo +18 -0
  318. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/screw.step +1694 -0
  319. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/sculpture.geo +13 -0
  320. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/shaft.geo +65 -0
  321. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/shell.geo +10 -0
  322. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/sphere.geo +8 -0
  323. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/sphereincube.geo +17 -0
  324. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/square.in2d +35 -0
  325. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/squarecircle.in2d +48 -0
  326. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/squarehole.in2d +47 -0
  327. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/torus.geo +8 -0
  328. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/trafo.geo +57 -0
  329. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/twobricks.geo +15 -0
  330. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/twocubes.geo +18 -0
  331. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/twocyl.geo +16 -0
  332. netgen_mesher-6.2.2506.post35.dev0.dist-info/METADATA +15 -0
  333. netgen_mesher-6.2.2506.post35.dev0.dist-info/RECORD +340 -0
  334. netgen_mesher-6.2.2506.post35.dev0.dist-info/WHEEL +5 -0
  335. netgen_mesher-6.2.2506.post35.dev0.dist-info/entry_points.txt +2 -0
  336. netgen_mesher-6.2.2506.post35.dev0.dist-info/licenses/AUTHORS +1 -0
  337. netgen_mesher-6.2.2506.post35.dev0.dist-info/licenses/LICENSE +504 -0
  338. netgen_mesher-6.2.2506.post35.dev0.dist-info/top_level.txt +2 -0
  339. pyngcore/__init__.py +1 -0
  340. pyngcore/pyngcore.cp314-win_amd64.pyd +0 -0
@@ -0,0 +1,1545 @@
1
+ """
2
+ pybind NgOCC module
3
+ """
4
+ from __future__ import annotations
5
+ import collections.abc
6
+ import netgen.libngpy._meshing
7
+ import numpy
8
+ import numpy.typing
9
+ import pyngcore.pyngcore
10
+ import typing
11
+ __all__: list[str] = ['ApproxParamType', 'ArcOfCircle', 'Axes', 'Axis', 'BSplineCurve', 'BezierCurve', 'BezierSurface', 'Box', 'COMPOUND', 'COMPSOLID', 'Circle', 'Compound', 'Cone', 'ConnectEdgesToWires', 'Cylinder', 'Dir', 'DirectionalInterval', 'EDGE', 'Edge', 'Ellipse', 'Ellipsoid', 'FACE', 'Face', 'From_PyOCC', 'Fuse', 'Geom2d_Curve', 'Geom_Surface', 'Glue', 'HalfSpace', 'ListOfShapes', 'LoadOCCGeometry', 'MakeFillet', 'MakePolygon', 'MakeThickSolid', 'OCCException', 'OCCGeometry', 'Pipe', 'PipeShell', 'Pnt', 'Prism', 'ResetGlobalShapeProperties', 'Revolve', 'SHAPE', 'SHELL', 'SOLID', 'Segment', 'Sew', 'ShapeContinuity', 'Solid', 'Sphere', 'SplineApproximation', 'SplineInterpolation', 'SplineSurfaceApproximation', 'SplineSurfaceInterpolation', 'TestXCAF', 'ThruSections', 'TopAbs_ShapeEnum', 'TopLoc_Location', 'TopoDS_Shape', 'VERTEX', 'Vec', 'Vertex', 'WIRE', 'Wire', 'WorkPlane', 'X', 'Y', 'Z', 'gp_Ax2', 'gp_Ax2d', 'gp_Dir', 'gp_Dir2d', 'gp_GTrsf', 'gp_Mat', 'gp_Pnt', 'gp_Pnt2d', 'gp_Trsf', 'gp_Vec', 'gp_Vec2d', 'occ_version']
12
+ class ApproxParamType:
13
+ """
14
+ Wrapper for Approx_ParametrizationType
15
+
16
+ Members:
17
+
18
+ Centripetal
19
+
20
+ ChordLength
21
+
22
+ IsoParametric
23
+ """
24
+ Centripetal: typing.ClassVar[ApproxParamType] # value = <ApproxParamType.Centripetal: 1>
25
+ ChordLength: typing.ClassVar[ApproxParamType] # value = <ApproxParamType.ChordLength: 0>
26
+ IsoParametric: typing.ClassVar[ApproxParamType] # value = <ApproxParamType.IsoParametric: 2>
27
+ __members__: typing.ClassVar[dict[str, ApproxParamType]] # value = {'Centripetal': <ApproxParamType.Centripetal: 1>, 'ChordLength': <ApproxParamType.ChordLength: 0>, 'IsoParametric': <ApproxParamType.IsoParametric: 2>}
28
+ def __eq__(self, other: typing.Any) -> bool:
29
+ ...
30
+ def __getstate__(self) -> int:
31
+ ...
32
+ def __hash__(self) -> int:
33
+ ...
34
+ def __index__(self) -> int:
35
+ ...
36
+ def __init__(self, value: typing.SupportsInt) -> None:
37
+ ...
38
+ def __int__(self) -> int:
39
+ ...
40
+ def __ne__(self, other: typing.Any) -> bool:
41
+ ...
42
+ def __repr__(self) -> str:
43
+ ...
44
+ def __setstate__(self, state: typing.SupportsInt) -> None:
45
+ ...
46
+ def __str__(self) -> str:
47
+ ...
48
+ @property
49
+ def name(self) -> str:
50
+ ...
51
+ @property
52
+ def value(self) -> int:
53
+ ...
54
+ class Axes:
55
+ """
56
+ an OCC coordinate system in 3d
57
+ """
58
+ p: gp_Pnt
59
+ @typing.overload
60
+ def __init__(self, p: gp_Pnt = (0, 0, 0), n: gp_Dir = (0, 0, 1), h: gp_Dir = (1, 0, 0)) -> None:
61
+ ...
62
+ @typing.overload
63
+ def __init__(self, axis: Axis) -> None:
64
+ ...
65
+ @typing.overload
66
+ def __init__(self, arg0: gp_Ax2) -> None:
67
+ ...
68
+ class Axis:
69
+ """
70
+ an OCC axis in 3d
71
+ """
72
+ def __init__(self, p: gp_Pnt, d: gp_Dir) -> None:
73
+ ...
74
+ class Compound(TopoDS_Shape):
75
+ def __init__(self, shapes: collections.abc.Sequence[TopoDS_Shape], separate_layers: bool = False) -> None:
76
+ ...
77
+ class DirectionalInterval:
78
+ def __and__(self, arg0: DirectionalInterval) -> DirectionalInterval:
79
+ ...
80
+ def __gt__(self, arg0: typing.SupportsFloat) -> DirectionalInterval:
81
+ ...
82
+ def __lt__(self, arg0: typing.SupportsFloat) -> DirectionalInterval:
83
+ ...
84
+ def __str__(self) -> str:
85
+ ...
86
+ class Edge(TopoDS_Shape):
87
+ def Extend(self, point: gp_Pnt, continuity: typing.SupportsInt = 1, after: bool = True) -> Edge:
88
+ ...
89
+ def Split(self, *args) -> ...:
90
+ """
91
+ Splits edge at given parameters. Parameters can either be floating values in (0,1), then edge parametrization is used. Or it can be points, then the projection of these points are used for splitting the edge.
92
+ """
93
+ def Tangent(self, s: typing.SupportsFloat) -> gp_Vec:
94
+ """
95
+ tangent vector to curve at parameter 's'
96
+ """
97
+ def Value(self, s: typing.SupportsFloat) -> gp_Pnt:
98
+ """
99
+ evaluate curve for parameters 's'
100
+ """
101
+ @typing.overload
102
+ def __init__(self, arg0: TopoDS_Shape) -> None:
103
+ ...
104
+ @typing.overload
105
+ def __init__(self, arg0: ..., arg1: TopoDS_Face) -> None:
106
+ ...
107
+ @typing.overload
108
+ def __init__(self, arg0: Vertex, arg1: Vertex) -> None:
109
+ ...
110
+ @property
111
+ def end(self) -> gp_Pnt:
112
+ """
113
+ end-point of curve
114
+ """
115
+ @property
116
+ def end_tangent(self) -> gp_Vec:
117
+ """
118
+ tangent at end-point
119
+ """
120
+ @property
121
+ def parameter_interval(self) -> tuple[float, float]:
122
+ """
123
+ parameter interval of curve
124
+ """
125
+ @property
126
+ def partition(self) -> pyngcore.pyngcore.Array_D_S | None:
127
+ ...
128
+ @partition.setter
129
+ def partition(self, arg1: typing.Annotated[numpy.typing.ArrayLike, numpy.float64]) -> None:
130
+ ...
131
+ @property
132
+ def start(self) -> gp_Pnt:
133
+ """
134
+ start-point of curve
135
+ """
136
+ @property
137
+ def start_tangent(self) -> gp_Vec:
138
+ """
139
+ tangent at start-point
140
+ """
141
+ class Face(TopoDS_Shape):
142
+ quad_dominated: bool | None
143
+ def Extend(self, length: typing.SupportsFloat, continuity: typing.SupportsInt = 1, u_direction: bool = True, after: bool = True) -> Face:
144
+ ...
145
+ def ProjectWire(self, arg0: Wire) -> TopoDS_Shape:
146
+ ...
147
+ def WorkPlane(self) -> WorkPlane:
148
+ ...
149
+ @typing.overload
150
+ def __init__(self, w: Wire) -> None:
151
+ ...
152
+ @typing.overload
153
+ def __init__(self, f: Face, w: Wire) -> None:
154
+ ...
155
+ @typing.overload
156
+ def __init__(self, f: Face, w: collections.abc.Sequence[Wire]) -> None:
157
+ ...
158
+ @typing.overload
159
+ def __init__(self, arg0: TopoDS_Shape) -> None:
160
+ ...
161
+ @property
162
+ def surf(self) -> ...:
163
+ ...
164
+ class Geom2d_Curve:
165
+ def Edge(self) -> Edge:
166
+ ...
167
+ def Face(self) -> Face:
168
+ ...
169
+ def Trim(self, arg0: typing.SupportsFloat, arg1: typing.SupportsFloat) -> Geom2d_Curve:
170
+ ...
171
+ def Value(self, arg0: typing.SupportsFloat) -> gp_Pnt2d:
172
+ ...
173
+ def Wire(self) -> Wire:
174
+ ...
175
+ @property
176
+ def end(self) -> gp_Pnt2d:
177
+ ...
178
+ @property
179
+ def start(self) -> gp_Pnt2d:
180
+ ...
181
+ class Geom_Surface:
182
+ def D1(self, arg0: typing.SupportsFloat, arg1: typing.SupportsFloat) -> tuple[gp_Pnt, gp_Vec, gp_Vec]:
183
+ ...
184
+ def Normal(self, arg0: typing.SupportsFloat, arg1: typing.SupportsFloat) -> gp_Dir:
185
+ ...
186
+ def Value(self, arg0: typing.SupportsFloat, arg1: typing.SupportsFloat) -> gp_Pnt:
187
+ ...
188
+ class ListOfShapes:
189
+ def Identify(self, other: ListOfShapes, name: str, type: netgen.libngpy._meshing.IdentificationType = ..., trafo: netgen.libngpy._NgOCC.gp_Trsf | netgen.libngpy._NgOCC.gp_GTrsf) -> None:
190
+ """
191
+ Identify shapes for periodic meshing
192
+ """
193
+ def Max(self, dir: gp_Vec) -> typing.Any:
194
+ """
195
+ returns shape where center of gravity is maximal in the direction 'dir'
196
+ """
197
+ def Min(self, dir: gp_Vec) -> typing.Any:
198
+ """
199
+ returns shape where center of gravity is minimal in the direction 'dir'
200
+ """
201
+ @typing.overload
202
+ def Nearest(self, p: gp_Pnt) -> typing.Any:
203
+ """
204
+ returns shape nearest to point 'p'
205
+ """
206
+ @typing.overload
207
+ def Nearest(self, p: gp_Pnt2d) -> typing.Any:
208
+ """
209
+ returns shape nearest to point 'p'
210
+ """
211
+ def Sorted(self, dir: gp_Vec) -> ListOfShapes:
212
+ """
213
+ returns list of shapes, where center of gravity is sorted in direction of 'dir'
214
+ """
215
+ @typing.overload
216
+ def __add__(self, arg0: ListOfShapes) -> ListOfShapes:
217
+ ...
218
+ @typing.overload
219
+ def __add__(self, arg0: list) -> ListOfShapes:
220
+ ...
221
+ @typing.overload
222
+ def __getitem__(self, arg0: typing.SupportsInt) -> typing.Any:
223
+ ...
224
+ @typing.overload
225
+ def __getitem__(self, arg0: slice) -> ListOfShapes:
226
+ ...
227
+ @typing.overload
228
+ def __getitem__(self, arg0: str) -> ListOfShapes:
229
+ """
230
+ returns list of all shapes named 'name'
231
+ """
232
+ @typing.overload
233
+ def __getitem__(self, arg0: DirectionalInterval) -> ListOfShapes:
234
+ ...
235
+ def __init__(self, arg0: collections.abc.Sequence[TopoDS_Shape]) -> None:
236
+ ...
237
+ def __iter__(self) -> collections.abc.Iterator[typing.Any]:
238
+ ...
239
+ def __len__(self) -> int:
240
+ ...
241
+ def __mul__(self, arg0: ListOfShapes) -> ListOfShapes:
242
+ ...
243
+ @property
244
+ def col(self) -> None:
245
+ """
246
+ set col for all elements of list
247
+ """
248
+ @col.setter
249
+ def col(self, arg1: collections.abc.Sequence[typing.SupportsFloat]) -> None:
250
+ ...
251
+ @property
252
+ def edges(self) -> ListOfShapes:
253
+ ...
254
+ @property
255
+ def faces(self) -> ListOfShapes:
256
+ ...
257
+ @property
258
+ def hpref(self) -> None:
259
+ """
260
+ set hpref for all elements of list
261
+ """
262
+ @hpref.setter
263
+ def hpref(self, arg1: typing.SupportsFloat) -> None:
264
+ ...
265
+ @property
266
+ def maxh(self) -> None:
267
+ """
268
+ set maxh for all elements of list
269
+ """
270
+ @maxh.setter
271
+ def maxh(self, arg1: typing.SupportsFloat) -> None:
272
+ ...
273
+ @property
274
+ def name(self) -> None:
275
+ """
276
+ set name for all elements of list
277
+ """
278
+ @name.setter
279
+ def name(self, arg1: str | None) -> None:
280
+ ...
281
+ @property
282
+ def quad_dominated(self) -> None:
283
+ ...
284
+ @quad_dominated.setter
285
+ def quad_dominated(self, arg1: bool | None) -> None:
286
+ ...
287
+ @property
288
+ def shells(self) -> ListOfShapes:
289
+ ...
290
+ @property
291
+ def solids(self) -> ListOfShapes:
292
+ ...
293
+ @property
294
+ def vertices(self) -> ListOfShapes:
295
+ ...
296
+ @property
297
+ def wires(self) -> ListOfShapes:
298
+ ...
299
+ class OCCException(Exception):
300
+ pass
301
+ class OCCGeometry(netgen.libngpy._meshing.NetgenGeometry):
302
+ """
303
+ Use LoadOCCGeometry to load the geometry from a *.step file.
304
+ """
305
+ def Draw(self) -> None:
306
+ ...
307
+ def GenerateMesh(self, mp: netgen.libngpy._meshing.MeshingParameters = None, comm: pyngcore.pyngcore.MPI_Comm = ..., mesh: netgen.libngpy._meshing.Mesh = None, **kwargs) -> netgen.libngpy._meshing.Mesh:
308
+ """
309
+ Meshing Parameters
310
+ -------------------
311
+
312
+ maxh: float = 1e10
313
+ Global upper bound for mesh size.
314
+
315
+ grading: float = 0.3
316
+ Mesh grading how fast the local mesh size can change.
317
+
318
+ meshsizefilename: str = None
319
+ Load meshsize from file. Can set local mesh size for points
320
+ and along edges. File must have the format:
321
+
322
+ nr_points
323
+ x1, y1, z1, meshsize
324
+ x2, y2, z2, meshsize
325
+ ...
326
+ xn, yn, zn, meshsize
327
+
328
+ nr_edges
329
+ x11, y11, z11, x12, y12, z12, meshsize
330
+ ...
331
+ xn1, yn1, zn1, xn2, yn2, zn2, meshsize
332
+
333
+ segmentsperedge: float = 1.
334
+ Minimal number of segments per edge.
335
+
336
+ quad_dominated: bool = False
337
+ Quad-dominated surface meshing.
338
+
339
+ blockfill: bool = True
340
+ Do fast blockfilling.
341
+
342
+ filldist: float = 0.1
343
+ Block fill up to distance
344
+
345
+ delaunay: bool = True
346
+ Use delaunay meshing.
347
+
348
+ delaunay2d : bool = True
349
+ Use delaunay meshing for 2d geometries.
350
+
351
+ Optimization Parameters
352
+ -----------------------
353
+
354
+ optimize3d: str = "cmdmustm"
355
+ 3d optimization strategy:
356
+ m .. move nodes
357
+ M .. move nodes, cheap functional
358
+ s .. swap faces
359
+ c .. combine elements
360
+ d .. divide elements
361
+ p .. plot, no pause
362
+ P .. plot, Pause
363
+ h .. Histogramm, no pause
364
+ H .. Histogramm, pause
365
+
366
+ optsteps3d: int = 3
367
+ Number of 3d optimization steps.
368
+
369
+ optimize2d: str = "smcmSmcmSmcm"
370
+ 2d optimization strategy:
371
+ s .. swap, opt 6 lines/node
372
+ S .. swap, optimal elements
373
+ m .. move nodes
374
+ p .. plot, no pause
375
+ P .. plot, pause
376
+ c .. combine
377
+
378
+ optsteps2d: int = 3
379
+ Number of 2d optimization steps.
380
+
381
+ elsizeweight: float = 0.2
382
+ Weight of element size w.r.t. element shape in optimization.
383
+
384
+
385
+ OCC Specific Meshing Parameters
386
+ -------------------------------
387
+
388
+ closeedgefac: Optional[float] = 2.
389
+ Factor for meshing close edges, if None it is disabled.
390
+
391
+ minedgelen: Optional[float] = 0.001
392
+ Minimum edge length to be used for dividing edges to mesh points. If
393
+ None this is disabled.
394
+ """
395
+ def Glue(self) -> None:
396
+ ...
397
+ def Heal(self, tolerance: typing.SupportsFloat = 0.001, fixsmalledges: bool = True, fixspotstripfaces: bool = True, sewfaces: bool = True, makesolids: bool = True, splitpartitions: bool = False) -> None:
398
+ """
399
+ Heal the OCCGeometry.
400
+ """
401
+ def SetFaceMeshsize(self, arg0: typing.SupportsInt, arg1: typing.SupportsFloat) -> None:
402
+ """
403
+ Set maximum meshsize for face fnr. Face numbers are 0 based.
404
+ """
405
+ def __getstate__(self) -> tuple:
406
+ ...
407
+ @typing.overload
408
+ def __init__(self, shape: TopoDS_Shape, dim: typing.SupportsInt = 3, copy: bool = False) -> None:
409
+ """
410
+ Create Netgen OCCGeometry from existing TopoDS_Shape
411
+ """
412
+ @typing.overload
413
+ def __init__(self, shape: collections.abc.Sequence[TopoDS_Shape]) -> None:
414
+ """
415
+ Create Netgen OCCGeometry from existing TopoDS_Shape
416
+ """
417
+ @typing.overload
418
+ def __init__(self, filename: str, dim: typing.SupportsInt = 3) -> None:
419
+ """
420
+ Load OCC geometry from step, brep or iges file
421
+ """
422
+ def __setstate__(self, arg0: tuple) -> None:
423
+ ...
424
+ def _visualizationData(self) -> dict:
425
+ ...
426
+ @property
427
+ def edges(self) -> ListOfShapes:
428
+ """
429
+ Get edges in order that they will be in the mesh
430
+ """
431
+ @property
432
+ def faces(self) -> ListOfShapes:
433
+ """
434
+ Get faces in order that they will be in the mesh
435
+ """
436
+ @property
437
+ def shape(self) -> TopoDS_Shape:
438
+ ...
439
+ @property
440
+ def solids(self) -> ListOfShapes:
441
+ """
442
+ Get solids in order that they will be in the mesh
443
+ """
444
+ @property
445
+ def vertices(self) -> ListOfShapes:
446
+ """
447
+ Get vertices in order that they will be in the mesh
448
+ """
449
+ class ShapeContinuity:
450
+ """
451
+ Wrapper for OCC enum GeomAbs_Shape
452
+
453
+ Members:
454
+
455
+ C0
456
+
457
+ C1
458
+
459
+ C2
460
+
461
+ C3
462
+
463
+ CN
464
+
465
+ G1
466
+
467
+ G2
468
+ """
469
+ C0: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.C0: 0>
470
+ C1: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.C1: 2>
471
+ C2: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.C2: 4>
472
+ C3: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.C3: 5>
473
+ CN: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.CN: 6>
474
+ G1: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.G1: 1>
475
+ G2: typing.ClassVar[ShapeContinuity] # value = <ShapeContinuity.G2: 3>
476
+ __members__: typing.ClassVar[dict[str, ShapeContinuity]] # value = {'C0': <ShapeContinuity.C0: 0>, 'C1': <ShapeContinuity.C1: 2>, 'C2': <ShapeContinuity.C2: 4>, 'C3': <ShapeContinuity.C3: 5>, 'CN': <ShapeContinuity.CN: 6>, 'G1': <ShapeContinuity.G1: 1>, 'G2': <ShapeContinuity.G2: 3>}
477
+ def __eq__(self, other: typing.Any) -> bool:
478
+ ...
479
+ def __getstate__(self) -> int:
480
+ ...
481
+ def __hash__(self) -> int:
482
+ ...
483
+ def __index__(self) -> int:
484
+ ...
485
+ def __init__(self, value: typing.SupportsInt) -> None:
486
+ ...
487
+ def __int__(self) -> int:
488
+ ...
489
+ def __ne__(self, other: typing.Any) -> bool:
490
+ ...
491
+ def __repr__(self) -> str:
492
+ ...
493
+ def __setstate__(self, state: typing.SupportsInt) -> None:
494
+ ...
495
+ def __str__(self) -> str:
496
+ ...
497
+ @property
498
+ def name(self) -> str:
499
+ ...
500
+ @property
501
+ def value(self) -> int:
502
+ ...
503
+ class Solid(TopoDS_Shape):
504
+ def __init__(self, arg0: TopoDS_Shape) -> None:
505
+ """
506
+ Create solid from shell. Shell must consist of topologically closed faces (share vertices and edges).
507
+ """
508
+ class TopAbs_ShapeEnum:
509
+ """
510
+ Enumeration of all supported TopoDS_Shapes
511
+
512
+ Members:
513
+
514
+ COMPOUND
515
+
516
+ COMPSOLID
517
+
518
+ SOLID
519
+
520
+ SHELL
521
+
522
+ FACE
523
+
524
+ WIRE
525
+
526
+ EDGE
527
+
528
+ VERTEX
529
+
530
+ SHAPE
531
+ """
532
+ COMPOUND: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.COMPOUND: 0>
533
+ COMPSOLID: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.COMPSOLID: 1>
534
+ EDGE: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.EDGE: 6>
535
+ FACE: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.FACE: 4>
536
+ SHAPE: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.SHAPE: 8>
537
+ SHELL: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.SHELL: 3>
538
+ SOLID: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.SOLID: 2>
539
+ VERTEX: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.VERTEX: 7>
540
+ WIRE: typing.ClassVar[TopAbs_ShapeEnum] # value = <TopAbs_ShapeEnum.WIRE: 5>
541
+ __members__: typing.ClassVar[dict[str, TopAbs_ShapeEnum]] # value = {'COMPOUND': <TopAbs_ShapeEnum.COMPOUND: 0>, 'COMPSOLID': <TopAbs_ShapeEnum.COMPSOLID: 1>, 'SOLID': <TopAbs_ShapeEnum.SOLID: 2>, 'SHELL': <TopAbs_ShapeEnum.SHELL: 3>, 'FACE': <TopAbs_ShapeEnum.FACE: 4>, 'WIRE': <TopAbs_ShapeEnum.WIRE: 5>, 'EDGE': <TopAbs_ShapeEnum.EDGE: 6>, 'VERTEX': <TopAbs_ShapeEnum.VERTEX: 7>, 'SHAPE': <TopAbs_ShapeEnum.SHAPE: 8>}
542
+ def __eq__(self, other: typing.Any) -> bool:
543
+ ...
544
+ def __getstate__(self) -> int:
545
+ ...
546
+ def __hash__(self) -> int:
547
+ ...
548
+ def __index__(self) -> int:
549
+ ...
550
+ def __init__(self, value: typing.SupportsInt) -> None:
551
+ ...
552
+ def __int__(self) -> int:
553
+ ...
554
+ def __ne__(self, other: typing.Any) -> bool:
555
+ ...
556
+ def __repr__(self) -> str:
557
+ ...
558
+ def __setstate__(self, state: typing.SupportsInt) -> None:
559
+ ...
560
+ def __str__(self) -> str:
561
+ ...
562
+ @property
563
+ def name(self) -> str:
564
+ ...
565
+ @property
566
+ def value(self) -> int:
567
+ ...
568
+ class TopLoc_Location:
569
+ def Transformation(self) -> gp_Trsf:
570
+ ...
571
+ def __init__(self, arg0: gp_Trsf) -> None:
572
+ ...
573
+ class TopoDS_Shape:
574
+ def Distance(self, arg0: TopoDS_Shape) -> float:
575
+ ...
576
+ @typing.overload
577
+ def Extrude(self, h: typing.SupportsFloat, dir: netgen.libngpy._NgOCC.gp_Vec | None = None, identify: bool = False, idtype: netgen.libngpy._meshing.IdentificationType = ..., idname: str = 'extrusion') -> TopoDS_Shape:
578
+ """
579
+ extrude shape to thickness 'h', shape must contain a plane surface, optionally give an extrusion direction
580
+ """
581
+ @typing.overload
582
+ def Extrude(self, v: gp_Vec) -> TopoDS_Shape:
583
+ """
584
+ extrude shape by vector 'v'
585
+ """
586
+ def GenerateMesh(self, mp: netgen.libngpy._meshing.MeshingParameters = None, dim: typing.SupportsInt = 3, ngs_mesh: bool = True, **kwargs) -> typing.Any:
587
+ ...
588
+ def Identify(self, other: TopoDS_Shape, name: str, type: netgen.libngpy._meshing.IdentificationType = ..., trafo: netgen.libngpy._NgOCC.gp_Trsf | netgen.libngpy._NgOCC.gp_GTrsf | None = None) -> None:
589
+ """
590
+ Identify shapes for periodic meshing
591
+ """
592
+ def LimitTolerance(self, tmin: typing.SupportsFloat, tmax: typing.SupportsFloat = 0.0, type: TopAbs_ShapeEnum = ...) -> None:
593
+ """
594
+ limit tolerance of shape to range [tmin, tmax]
595
+ """
596
+ def Located(self, loc: TopLoc_Location) -> TopoDS_Shape:
597
+ """
598
+ copy shape and sets location of copy
599
+ """
600
+ def MakeChamfer(self, edges: collections.abc.Sequence[TopoDS_Shape], d: typing.SupportsFloat) -> TopoDS_Shape:
601
+ """
602
+ make symmetric chamfer for edges 'edges' of distrance 'd'
603
+ """
604
+ @typing.overload
605
+ def MakeFillet(self, fillets: collections.abc.Sequence[tuple[TopoDS_Shape, typing.SupportsFloat]]) -> TopoDS_Shape:
606
+ """
607
+ make fillets for shapes of radius 'r'
608
+ """
609
+ @typing.overload
610
+ def MakeFillet(self, edges: collections.abc.Sequence[TopoDS_Shape], r: typing.SupportsFloat) -> TopoDS_Shape:
611
+ """
612
+ make fillets for edges 'edges' of radius 'r'
613
+ """
614
+ def MakeThickSolid(self, facestoremove: collections.abc.Sequence[TopoDS_Shape], offset: typing.SupportsFloat, tol: typing.SupportsFloat, intersection: bool = False, joinType: str = 'arc', removeIntersectingEdges: bool = False) -> TopoDS_Shape:
615
+ """
616
+ makes shell-like solid from faces
617
+ """
618
+ def MakeTriangulation(self) -> None:
619
+ ...
620
+ @typing.overload
621
+ def Mirror(self, axes: Axes) -> TopoDS_Shape:
622
+ """
623
+ copy shape, and mirror over XY - plane defined by 'axes'
624
+ """
625
+ @typing.overload
626
+ def Mirror(self, axes: Axis) -> TopoDS_Shape:
627
+ """
628
+ copy shape, and rotate by 180 deg around axis 'axis'
629
+ """
630
+ def Move(self, v: gp_Vec) -> typing.Any:
631
+ """
632
+ copy shape, and translate copy by vector 'v'
633
+ """
634
+ def Offset(self, offset: typing.SupportsFloat, tol: typing.SupportsFloat, intersection: bool = False, joinType: str = 'arc', removeIntersectingEdges: bool = False, identification_name: str | None = None) -> TopoDS_Shape:
635
+ """
636
+ makes shell-like solid from faces
637
+ """
638
+ def Properties(self) -> tuple[typing.Any, typing.Any]:
639
+ """
640
+ returns tuple of shape properties, currently ('mass', 'center'
641
+ """
642
+ def Reversed(self) -> typing.Any:
643
+ ...
644
+ def Revolve(self, axis: Axis, ang: typing.SupportsFloat) -> TopoDS_Shape:
645
+ """
646
+ revolve shape around 'axis' by 'ang' degrees
647
+ """
648
+ def Rotate(self, axis: Axis, ang: typing.SupportsFloat) -> TopoDS_Shape:
649
+ """
650
+ copy shape, and rotet copy by 'ang' degrees around 'axis'
651
+ """
652
+ def Scale(self, p: gp_Pnt, s: typing.SupportsFloat) -> TopoDS_Shape:
653
+ """
654
+ copy shape, and scale copy by factor 's'
655
+ """
656
+ def SetTolerance(self, tol: typing.SupportsFloat, stype: TopAbs_ShapeEnum = ...) -> None:
657
+ """
658
+ set (enforce) tolerance of shape to 't'
659
+ """
660
+ def ShapeType(self) -> None:
661
+ """
662
+ deprecated, use 'shape.type' instead
663
+ """
664
+ def SubShapes(self, type: TopAbs_ShapeEnum) -> ...:
665
+ """
666
+ returns list of sub-shapes of type 'type'
667
+ """
668
+ def Triangulation(self) -> ...:
669
+ ...
670
+ def UnifySameDomain(self, unifyEdges: bool = True, unifyFaces: bool = True, concatBSplines: bool = True) -> TopoDS_Shape:
671
+ ...
672
+ def WriteBrep(self, filename: str, withTriangles: bool = True, withNormals: bool = False, version: typing.SupportsInt | None = None, binary: bool = False) -> None:
673
+ """
674
+ export shape in BREP - format
675
+ """
676
+ def WriteStep(self, filename: str) -> None:
677
+ """
678
+ export shape in STEP - format
679
+ """
680
+ def __add__(self, arg0: TopoDS_Shape) -> TopoDS_Shape:
681
+ """
682
+ fuses shapes
683
+ """
684
+ def __eq__(self, arg0: TopoDS_Shape) -> bool:
685
+ ...
686
+ def __hash__(self) -> int:
687
+ ...
688
+ def __mul__(self, arg0: TopoDS_Shape) -> TopoDS_Shape:
689
+ """
690
+ common of shapes
691
+ """
692
+ def __radd__(self, arg0: typing.SupportsInt) -> TopoDS_Shape:
693
+ """
694
+ needed for Sum([shapes])
695
+ """
696
+ def __str__(self) -> str:
697
+ ...
698
+ def __sub__(self, arg0: TopoDS_Shape) -> TopoDS_Shape:
699
+ """
700
+ cut of shapes
701
+ """
702
+ def _webgui_data(self) -> dict:
703
+ ...
704
+ def bc(self, name: str) -> TopoDS_Shape:
705
+ """
706
+ sets 'name' property for all faces of shape
707
+ """
708
+ def mat(self, name: str) -> TopoDS_Shape:
709
+ """
710
+ sets 'name' property to all solids of shape
711
+ """
712
+ @property
713
+ def bounding_box(self) -> tuple:
714
+ """
715
+ returns bounding box (pmin, pmax)
716
+ """
717
+ @property
718
+ def center(self) -> gp_Pnt:
719
+ """
720
+ returns center of gravity of shape
721
+ """
722
+ @property
723
+ def col(self) -> typing.Any:
724
+ """
725
+ color of shape as RGB or RGBA - tuple
726
+ """
727
+ @col.setter
728
+ def col(self, arg1: collections.abc.Sequence[typing.SupportsFloat] | None) -> None:
729
+ ...
730
+ @property
731
+ def edges(self) -> ...:
732
+ """
733
+ returns all sub-shapes of type 'EDGE'
734
+ """
735
+ @property
736
+ def faces(self) -> ...:
737
+ """
738
+ returns all sub-shapes of type 'FACE'
739
+ """
740
+ @property
741
+ def hpref(self) -> float:
742
+ """
743
+ number of refinement levels for geometric refinement
744
+ """
745
+ @hpref.setter
746
+ def hpref(self, arg1: typing.SupportsFloat) -> None:
747
+ ...
748
+ @property
749
+ def inertia(self) -> gp_Mat:
750
+ """
751
+ returns matrix of inertia of shape
752
+ """
753
+ @property
754
+ def layer(self) -> int:
755
+ """
756
+ layer of shape
757
+ """
758
+ @layer.setter
759
+ def layer(self, arg1: typing.SupportsInt) -> None:
760
+ ...
761
+ @property
762
+ def location(self) -> TopLoc_Location:
763
+ """
764
+ Location of shape
765
+ """
766
+ @location.setter
767
+ def location(self, arg1: TopLoc_Location) -> None:
768
+ ...
769
+ @property
770
+ def mass(self) -> float:
771
+ """
772
+ returns mass of shape, what is length, face, or volume
773
+ """
774
+ @property
775
+ def maxh(self) -> float:
776
+ """
777
+ maximal mesh-size for shape
778
+ """
779
+ @maxh.setter
780
+ def maxh(self, arg1: typing.SupportsFloat) -> None:
781
+ ...
782
+ @property
783
+ def name(self) -> str | None:
784
+ """
785
+ 'name' of shape
786
+ """
787
+ @name.setter
788
+ def name(self, arg1: str | None) -> None:
789
+ ...
790
+ @property
791
+ def shells(self) -> ...:
792
+ """
793
+ returns all sub-shapes of type 'SHELL'
794
+ """
795
+ @property
796
+ def solids(self) -> ...:
797
+ """
798
+ returns all sub-shapes of type 'SOLID'
799
+ """
800
+ @property
801
+ def type(self) -> TopAbs_ShapeEnum:
802
+ """
803
+ returns type of shape, i.e. 'EDGE', 'FACE', ...
804
+ """
805
+ @property
806
+ def vertices(self) -> ...:
807
+ """
808
+ returns all sub-shapes of type 'VERTEX'
809
+ """
810
+ @property
811
+ def wires(self) -> ...:
812
+ """
813
+ returns all sub-shapes of type 'WIRE'
814
+ """
815
+ class Vertex(TopoDS_Shape):
816
+ @typing.overload
817
+ def __init__(self, arg0: TopoDS_Shape) -> None:
818
+ ...
819
+ @typing.overload
820
+ def __init__(self, arg0: gp_Pnt) -> None:
821
+ ...
822
+ @property
823
+ def p(self) -> gp_Pnt:
824
+ """
825
+ coordinates of vertex
826
+ """
827
+ class Wire(TopoDS_Shape):
828
+ def Offset(self, arg0: TopoDS_Face, arg1: typing.SupportsFloat, arg2: str, arg3: bool) -> TopoDS_Shape:
829
+ ...
830
+ @typing.overload
831
+ def __init__(self, arg0: Edge) -> None:
832
+ ...
833
+ @typing.overload
834
+ def __init__(self, arg0: collections.abc.Sequence[TopoDS_Shape]) -> None:
835
+ ...
836
+ class WorkPlane:
837
+ def Arc(self, r: typing.SupportsFloat, ang: typing.SupportsFloat, name: str | None = None, maxh: typing.SupportsFloat | None = None) -> WorkPlane:
838
+ """
839
+ draw arc tangential to current pos/dir, of radius 'r' and angle 'ang', draw to the left/right if ang is positive/negative
840
+ """
841
+ def ArcTo(self, h: typing.SupportsFloat, v: typing.SupportsFloat, t: gp_Vec2d, name: str | None = None, maxh: typing.SupportsFloat | None = None) -> WorkPlane:
842
+ ...
843
+ @typing.overload
844
+ def Circle(self, h: typing.SupportsFloat, v: typing.SupportsFloat, r: typing.SupportsFloat) -> WorkPlane:
845
+ """
846
+ draw circle with center (h,v) and radius 'r'
847
+ """
848
+ @typing.overload
849
+ def Circle(self, r: typing.SupportsFloat) -> WorkPlane:
850
+ """
851
+ draw circle with center in current position
852
+ """
853
+ def Close(self, name: str | None = None) -> WorkPlane:
854
+ """
855
+ draw line to start point of wire, and finish wire
856
+ """
857
+ def Direction(self, dirh: typing.SupportsFloat, dirv: typing.SupportsFloat) -> WorkPlane:
858
+ """
859
+ reset direction to (dirh, dirv)
860
+ """
861
+ def Ellipse(self, major: typing.SupportsFloat, minor: typing.SupportsFloat) -> WorkPlane:
862
+ """
863
+ draw ellipse with current position as center
864
+ """
865
+ def Face(self) -> Face:
866
+ """
867
+ generate and return face of all wires, resets list of wires
868
+ """
869
+ def Finish(self) -> WorkPlane:
870
+ """
871
+ finish current wire without closing
872
+ """
873
+ def Last(self) -> netgen.libngpy._NgOCC.Wire | None:
874
+ """
875
+ (deprecated) returns current wire
876
+ """
877
+ @typing.overload
878
+ def Line(self, l: typing.SupportsFloat, name: str | None = None) -> WorkPlane:
879
+ ...
880
+ @typing.overload
881
+ def Line(self, dx: typing.SupportsFloat, dy: typing.SupportsFloat, name: str | None = None) -> WorkPlane:
882
+ ...
883
+ def LineTo(self, h: typing.SupportsFloat, v: typing.SupportsFloat, name: str | None = None) -> WorkPlane:
884
+ """
885
+ draw line to position (h,v)
886
+ """
887
+ def Move(self, l: typing.SupportsFloat) -> WorkPlane:
888
+ """
889
+ move 'l' from current position and direction, start new wire
890
+ """
891
+ def MoveTo(self, h: typing.SupportsFloat, v: typing.SupportsFloat) -> WorkPlane:
892
+ """
893
+ moveto (h,v), and start new wire
894
+ """
895
+ def NameVertex(self, name: str) -> WorkPlane:
896
+ """
897
+ name vertex at current position
898
+ """
899
+ def Offset(self, d: typing.SupportsFloat) -> WorkPlane:
900
+ """
901
+ replace current wire by offset curve of distance 'd'
902
+ """
903
+ def Rectangle(self, l: typing.SupportsFloat, w: typing.SupportsFloat, name: str | None = None) -> WorkPlane:
904
+ """
905
+ draw rectangle, with current position as corner, use current direction
906
+ """
907
+ def RectangleC(self, l: typing.SupportsFloat, w: typing.SupportsFloat, name: str | None = None) -> WorkPlane:
908
+ """
909
+ draw rectangle, with current position as center, use current direction
910
+ """
911
+ def Reverse(self) -> WorkPlane:
912
+ """
913
+ revert orientation of current wire
914
+ """
915
+ def Rotate(self, ang: typing.SupportsFloat) -> WorkPlane:
916
+ """
917
+ rotate current direction by 'ang' degrees
918
+ """
919
+ def Spline(self, points: collections.abc.Sequence[gp_Pnt2d], periodic: bool = False, tol: typing.SupportsFloat = 1e-08, tangents: collections.abc.Mapping[typing.SupportsInt, gp_Vec2d] = {}, start_from_localpos: bool = True, name: str | None = None) -> WorkPlane:
920
+ """
921
+ draw spline (default: starting from current position, which is implicitly added to given list of points), tangents can be specified for each point (0 refers to starting point)
922
+ """
923
+ def Wire(self) -> netgen.libngpy._NgOCC.Wire | None:
924
+ """
925
+ returns current wire
926
+ """
927
+ def Wires(self) -> ListOfShapes:
928
+ """
929
+ returns all wires
930
+ """
931
+ def __init__(self, axes: Axes = ..., pos: gp_Ax2d = ...) -> None:
932
+ ...
933
+ @property
934
+ def cur_dir(self) -> gp_Vec2d:
935
+ ...
936
+ @property
937
+ def cur_loc(self) -> gp_Pnt2d:
938
+ ...
939
+ @property
940
+ def start_pnt(self) -> gp_Pnt2d:
941
+ ...
942
+ class gp_Ax2:
943
+ @typing.overload
944
+ def __init__(self, arg0: gp_Pnt, arg1: gp_Dir) -> None:
945
+ ...
946
+ @typing.overload
947
+ def __init__(self, arg0: gp_Ax3) -> None:
948
+ ...
949
+ class gp_Ax2d:
950
+ """
951
+ 2d OCC coordinate system
952
+ """
953
+ def __init__(self, p: gp_Pnt2d = (0, 0), d: gp_Dir2d = ...) -> None:
954
+ ...
955
+ class gp_Dir:
956
+ """
957
+ 3d OCC direction
958
+ """
959
+ def __getitem__(self, arg0: typing.SupportsInt) -> float:
960
+ ...
961
+ @typing.overload
962
+ def __init__(self, arg0: tuple) -> None:
963
+ ...
964
+ @typing.overload
965
+ def __init__(self, x: typing.SupportsFloat, y: typing.SupportsFloat, z: typing.SupportsFloat) -> None:
966
+ ...
967
+ @typing.overload
968
+ def __init__(self, arg0: gp_Vec) -> None:
969
+ ...
970
+ def __str__(self) -> str:
971
+ ...
972
+ class gp_Dir2d:
973
+ """
974
+ 2d OCC direction
975
+ """
976
+ @typing.overload
977
+ def __init__(self, arg0: tuple) -> None:
978
+ ...
979
+ @typing.overload
980
+ def __init__(self, x: typing.SupportsFloat, y: typing.SupportsFloat) -> None:
981
+ ...
982
+ class gp_GTrsf:
983
+ def __call__(self, arg0: TopoDS_Shape) -> TopoDS_Shape:
984
+ ...
985
+ def __init__(self, mat: collections.abc.Sequence[typing.SupportsFloat], vec: collections.abc.Sequence[typing.SupportsFloat] = [0.0, 0.0, 0.0]) -> None:
986
+ ...
987
+ class gp_Mat:
988
+ """
989
+ 3d OCC matrix
990
+ """
991
+ def __getitem__(self, arg0: tuple[typing.SupportsInt, typing.SupportsInt]) -> float:
992
+ ...
993
+ class gp_Pnt:
994
+ """
995
+ 3d OCC point
996
+ """
997
+ def __add__(self, arg0: gp_Vec) -> gp_Pnt:
998
+ ...
999
+ def __getitem__(self, arg0: typing.SupportsInt) -> float:
1000
+ ...
1001
+ @typing.overload
1002
+ def __init__(self, arg0: tuple) -> None:
1003
+ ...
1004
+ @typing.overload
1005
+ def __init__(self, x: typing.SupportsFloat, y: typing.SupportsFloat, z: typing.SupportsFloat) -> None:
1006
+ ...
1007
+ def __repr__(self) -> str:
1008
+ ...
1009
+ def __str__(self) -> str:
1010
+ ...
1011
+ @typing.overload
1012
+ def __sub__(self, arg0: gp_Pnt) -> gp_Vec:
1013
+ ...
1014
+ @typing.overload
1015
+ def __sub__(self, arg0: gp_Vec) -> gp_Pnt:
1016
+ ...
1017
+ @property
1018
+ def x(self) -> float:
1019
+ ...
1020
+ @x.setter
1021
+ def x(self, arg1: typing.SupportsFloat) -> None:
1022
+ ...
1023
+ @property
1024
+ def y(self) -> float:
1025
+ ...
1026
+ @y.setter
1027
+ def y(self, arg1: typing.SupportsFloat) -> None:
1028
+ ...
1029
+ @property
1030
+ def z(self) -> float:
1031
+ ...
1032
+ @z.setter
1033
+ def z(self, arg1: typing.SupportsFloat) -> None:
1034
+ ...
1035
+ class gp_Pnt2d:
1036
+ """
1037
+ 2d OCC point
1038
+ """
1039
+ def __add__(self, arg0: gp_Vec2d) -> gp_Pnt2d:
1040
+ ...
1041
+ @typing.overload
1042
+ def __init__(self, arg0: tuple[typing.SupportsFloat, typing.SupportsFloat]) -> None:
1043
+ ...
1044
+ @typing.overload
1045
+ def __init__(self, x: typing.SupportsFloat, y: typing.SupportsFloat) -> None:
1046
+ ...
1047
+ def __repr__(self) -> str:
1048
+ ...
1049
+ def __str__(self) -> str:
1050
+ ...
1051
+ @typing.overload
1052
+ def __sub__(self, arg0: gp_Pnt2d) -> gp_Vec2d:
1053
+ ...
1054
+ @typing.overload
1055
+ def __sub__(self, arg0: gp_Vec2d) -> gp_Pnt2d:
1056
+ ...
1057
+ @property
1058
+ def x(self) -> float:
1059
+ ...
1060
+ @x.setter
1061
+ def x(self, arg1: typing.SupportsFloat) -> None:
1062
+ ...
1063
+ @property
1064
+ def y(self) -> float:
1065
+ ...
1066
+ @y.setter
1067
+ def y(self, arg1: typing.SupportsFloat) -> None:
1068
+ ...
1069
+ class gp_Trsf:
1070
+ @staticmethod
1071
+ def Mirror(arg0: Axis) -> gp_Trsf:
1072
+ ...
1073
+ @staticmethod
1074
+ @typing.overload
1075
+ def Rotation(arg0: Axis, arg1: typing.SupportsFloat) -> gp_Trsf:
1076
+ ...
1077
+ @staticmethod
1078
+ @typing.overload
1079
+ def Rotation(arg0: gp_Pnt, arg1: gp_Dir, arg2: typing.SupportsFloat) -> gp_Trsf:
1080
+ ...
1081
+ @staticmethod
1082
+ def Scale(arg0: gp_Pnt, arg1: typing.SupportsFloat) -> gp_Trsf:
1083
+ ...
1084
+ @staticmethod
1085
+ @typing.overload
1086
+ def Transformation(arg0: Axes) -> gp_Trsf:
1087
+ ...
1088
+ @staticmethod
1089
+ @typing.overload
1090
+ def Transformation(arg0: Axes, arg1: Axes) -> gp_Trsf:
1091
+ ...
1092
+ @staticmethod
1093
+ def Translation(arg0: gp_Vec) -> gp_Trsf:
1094
+ ...
1095
+ def Inverted(self) -> gp_Trsf:
1096
+ ...
1097
+ def SetMirror(self, arg0: Axis) -> gp_Trsf:
1098
+ ...
1099
+ def __call__(self, arg0: TopoDS_Shape) -> TopoDS_Shape:
1100
+ ...
1101
+ def __init__(self) -> None:
1102
+ ...
1103
+ def __mul__(self, arg0: gp_Trsf) -> gp_Trsf:
1104
+ ...
1105
+ def __str__(self) -> str:
1106
+ ...
1107
+ class gp_Vec:
1108
+ """
1109
+ 3d OCC vector
1110
+ """
1111
+ def Norm(self) -> float:
1112
+ ...
1113
+ def __add__(self, arg0: gp_Vec) -> gp_Vec:
1114
+ ...
1115
+ def __ge__(self, arg0: typing.SupportsFloat) -> ...:
1116
+ ...
1117
+ def __gt__(self, arg0: typing.SupportsFloat) -> ...:
1118
+ ...
1119
+ @typing.overload
1120
+ def __init__(self, arg0: tuple) -> None:
1121
+ ...
1122
+ @typing.overload
1123
+ def __init__(self, x: typing.SupportsFloat, y: typing.SupportsFloat, z: typing.SupportsFloat) -> None:
1124
+ ...
1125
+ @typing.overload
1126
+ def __init__(self, arg0: gp_Dir) -> None:
1127
+ ...
1128
+ def __le__(self, arg0: typing.SupportsFloat) -> ...:
1129
+ ...
1130
+ def __lt__(self, arg0: typing.SupportsFloat) -> ...:
1131
+ ...
1132
+ def __mul__(self, arg0: gp_Vec) -> float:
1133
+ ...
1134
+ def __neg__(self) -> gp_Vec:
1135
+ ...
1136
+ def __repr__(self) -> str:
1137
+ ...
1138
+ def __rmul__(self, arg0: typing.SupportsFloat) -> gp_Vec:
1139
+ ...
1140
+ def __str__(self) -> str:
1141
+ ...
1142
+ def __sub__(self, arg0: gp_Vec) -> gp_Vec:
1143
+ ...
1144
+ def __xor__(self, arg0: gp_Vec) -> gp_Vec:
1145
+ ...
1146
+ @property
1147
+ def x(self) -> float:
1148
+ ...
1149
+ @x.setter
1150
+ def x(self, arg1: typing.SupportsFloat) -> None:
1151
+ ...
1152
+ @property
1153
+ def y(self) -> float:
1154
+ ...
1155
+ @y.setter
1156
+ def y(self, arg1: typing.SupportsFloat) -> None:
1157
+ ...
1158
+ @property
1159
+ def z(self) -> float:
1160
+ ...
1161
+ @z.setter
1162
+ def z(self, arg1: typing.SupportsFloat) -> None:
1163
+ ...
1164
+ class gp_Vec2d:
1165
+ """
1166
+ 2d OCC vector
1167
+ """
1168
+ def __add__(self, arg0: gp_Vec2d) -> gp_Vec2d:
1169
+ ...
1170
+ @typing.overload
1171
+ def __init__(self, arg0: tuple) -> None:
1172
+ ...
1173
+ @typing.overload
1174
+ def __init__(self, x: typing.SupportsFloat, y: typing.SupportsFloat) -> None:
1175
+ ...
1176
+ def __neg__(self) -> gp_Vec2d:
1177
+ ...
1178
+ def __repr__(self: gp_Vec) -> str:
1179
+ ...
1180
+ def __rmul__(self, arg0: typing.SupportsFloat) -> gp_Vec2d:
1181
+ ...
1182
+ def __str__(self: gp_Vec) -> str:
1183
+ ...
1184
+ def __sub__(self, arg0: gp_Vec2d) -> gp_Vec2d:
1185
+ ...
1186
+ def __xor__(self, arg0: gp_Vec2d) -> float:
1187
+ ...
1188
+ @property
1189
+ def x(self) -> float:
1190
+ ...
1191
+ @x.setter
1192
+ def x(self, arg1: typing.SupportsFloat) -> None:
1193
+ ...
1194
+ @property
1195
+ def y(self) -> float:
1196
+ ...
1197
+ @y.setter
1198
+ def y(self, arg1: typing.SupportsFloat) -> None:
1199
+ ...
1200
+ @typing.overload
1201
+ def ArcOfCircle(p1: gp_Pnt, p2: gp_Pnt, p3: gp_Pnt) -> Edge:
1202
+ """
1203
+ create arc from p1 through p2 to p3
1204
+ """
1205
+ @typing.overload
1206
+ def ArcOfCircle(p1: gp_Pnt, v: gp_Vec, p2: gp_Pnt) -> Edge:
1207
+ """
1208
+ create arc from p1, with tangent vector v, to point p2
1209
+ """
1210
+ def BSplineCurve(arg0: collections.abc.Sequence[gp_Pnt], arg1: typing.SupportsInt) -> Edge:
1211
+ ...
1212
+ def BezierCurve(points: collections.abc.Sequence[gp_Pnt]) -> Edge:
1213
+ """
1214
+ create Bezier curve
1215
+ """
1216
+ def BezierSurface(poles: typing.Annotated[numpy.typing.ArrayLike, numpy.float64], weights: typing.Annotated[numpy.typing.ArrayLike, numpy.float64] | None = None, tol: typing.SupportsFloat = 1e-07) -> Face:
1217
+ """
1218
+ Creates a rational Bezier surface with the set of poles and the set of weights. The weights are defaulted to all being 1. If all the weights are identical the surface is considered as non rational. Raises ConstructionError if the number of poles in any direction is greater than MaxDegree + 1 or lower than 2 or CurvePoles and CurveWeights have not the same length or one weight value is lower or equal to Resolution. Returns an occ face with the given tolerance.
1219
+ """
1220
+ def Box(p1: gp_Pnt, p2: gp_Pnt) -> Solid:
1221
+ """
1222
+ create box with opposite points 'p1' and 'p2'
1223
+ """
1224
+ @typing.overload
1225
+ def Circle(c: gp_Pnt2d, r: typing.SupportsFloat) -> Geom2d_Curve:
1226
+ """
1227
+ create 2d circle curve
1228
+ """
1229
+ @typing.overload
1230
+ def Circle(arg0: gp_Pnt, arg1: gp_Dir, arg2: typing.SupportsFloat) -> Edge:
1231
+ ...
1232
+ def Cone(axis: gp_Ax2, r1: typing.SupportsFloat, r2: typing.SupportsFloat, h: typing.SupportsFloat, angle: typing.SupportsFloat) -> Solid:
1233
+ """
1234
+ create cone given by axis, radius at bottom (z=0) r1, radius at top (z=h) r2, height and angle
1235
+ """
1236
+ def ConnectEdgesToWires(edges: collections.abc.Sequence[TopoDS_Shape], tol: typing.SupportsFloat = 1e-08, shared: bool = True) -> list[Wire]:
1237
+ ...
1238
+ @typing.overload
1239
+ def Cylinder(p: gp_Pnt, d: gp_Dir, r: typing.SupportsFloat, h: typing.SupportsFloat, bottom: str | None = None, top: str | None = None, mantle: str | None = None) -> typing.Any:
1240
+ """
1241
+ create cylinder with base point 'p', axis direction 'd', radius 'r', and height 'h'
1242
+ """
1243
+ @typing.overload
1244
+ def Cylinder(axis: gp_Ax2, r: typing.SupportsFloat, h: typing.SupportsFloat) -> Solid:
1245
+ """
1246
+ create cylinder given by axis, radius and height
1247
+ """
1248
+ @typing.overload
1249
+ def Dir(x: typing.SupportsFloat, y: typing.SupportsFloat) -> gp_Dir2d:
1250
+ """
1251
+ create 2d OCC direction
1252
+ """
1253
+ @typing.overload
1254
+ def Dir(x: typing.SupportsFloat, y: typing.SupportsFloat, z: typing.SupportsFloat) -> gp_Dir:
1255
+ """
1256
+ create 3d OCC direction
1257
+ """
1258
+ @typing.overload
1259
+ def Dir(d: collections.abc.Sequence[typing.SupportsFloat]) -> typing.Any:
1260
+ """
1261
+ create 2d or 3d OCC direction
1262
+ """
1263
+ def Ellipse(axes: gp_Ax2d, major: typing.SupportsFloat, minor: typing.SupportsFloat) -> Geom2d_Curve:
1264
+ """
1265
+ create 2d ellipse curve
1266
+ """
1267
+ def Ellipsoid(axes: Axes, r1: typing.SupportsFloat, r2: typing.SupportsFloat, r3: typing.SupportsFloat | None = None) -> TopoDS_Shape:
1268
+ """
1269
+ create ellipsoid with local coordinates given by axes, radi 'r1', 'r2', 'r3'
1270
+ """
1271
+ def From_PyOCC(arg0: typing.Any) -> typing.Any:
1272
+ ...
1273
+ def Fuse(arg0: collections.abc.Sequence[TopoDS_Shape]) -> TopoDS_Shape:
1274
+ ...
1275
+ @typing.overload
1276
+ def Glue(shapes: collections.abc.Sequence[TopoDS_Shape]) -> TopoDS_Shape:
1277
+ """
1278
+ glue together shapes of list
1279
+ """
1280
+ @typing.overload
1281
+ def Glue(shape: TopoDS_Shape) -> TopoDS_Shape:
1282
+ """
1283
+ glue together shapes from shape, typically a compound
1284
+ """
1285
+ def HalfSpace(p: gp_Pnt, n: gp_Vec) -> TopoDS_Shape:
1286
+ """
1287
+ Create a half space threw point p normal to n
1288
+ """
1289
+ def LoadOCCGeometry(arg0: os.PathLike | str | bytes) -> netgen.libngpy._meshing.NetgenGeometry:
1290
+ ...
1291
+ def MakeFillet(arg0: TopoDS_Shape, arg1: collections.abc.Sequence[TopoDS_Shape], arg2: typing.SupportsFloat) -> TopoDS_Shape:
1292
+ """
1293
+ deprecated, use 'shape.MakeFillet'
1294
+ """
1295
+ def MakePolygon(arg0: collections.abc.Sequence[Vertex]) -> Wire:
1296
+ ...
1297
+ def MakeThickSolid(arg0: TopoDS_Shape, arg1: collections.abc.Sequence[TopoDS_Shape], arg2: typing.SupportsFloat, arg3: typing.SupportsFloat) -> TopoDS_Shape:
1298
+ """
1299
+ deprecated, use 'shape.MakeThickSolid'
1300
+ """
1301
+ def Pipe(spine: Wire, profile: TopoDS_Shape, twist: tuple[gp_Pnt, typing.SupportsFloat] | None = None, auxspine: netgen.libngpy._NgOCC.Wire | None = None) -> TopoDS_Shape:
1302
+ ...
1303
+ def PipeShell(spine: Wire, profile: netgen.libngpy._NgOCC.TopoDS_Shape | collections.abc.Sequence[TopoDS_Shape], auxspine: netgen.libngpy._NgOCC.Wire | None = None) -> TopoDS_Shape:
1304
+ ...
1305
+ @typing.overload
1306
+ def Pnt(x: typing.SupportsFloat, y: typing.SupportsFloat) -> gp_Pnt2d:
1307
+ """
1308
+ create 2d OCC point
1309
+ """
1310
+ @typing.overload
1311
+ def Pnt(x: typing.SupportsFloat, y: typing.SupportsFloat, z: typing.SupportsFloat) -> gp_Pnt:
1312
+ """
1313
+ create 3d OCC point
1314
+ """
1315
+ @typing.overload
1316
+ def Pnt(p: collections.abc.Sequence[typing.SupportsFloat]) -> typing.Any:
1317
+ """
1318
+ create 2d or 3d OCC point
1319
+ """
1320
+ def Prism(face: TopoDS_Shape, v: gp_Vec) -> TopoDS_Shape:
1321
+ """
1322
+ extrude face along the vector 'v'
1323
+ """
1324
+ def ResetGlobalShapeProperties() -> None:
1325
+ ...
1326
+ def Revolve(arg0: TopoDS_Shape, arg1: Axis, arg2: typing.SupportsFloat) -> TopoDS_Shape:
1327
+ ...
1328
+ @typing.overload
1329
+ def Segment(p1: gp_Pnt2d, p2: gp_Pnt2d) -> Geom2d_Curve:
1330
+ """
1331
+ create 2d line curve
1332
+ """
1333
+ @typing.overload
1334
+ def Segment(arg0: gp_Pnt, arg1: gp_Pnt) -> Edge:
1335
+ ...
1336
+ def Sew(faces: collections.abc.Sequence[TopoDS_Shape], tolerance: typing.SupportsFloat = 1e-06, non_manifold: bool = False) -> TopoDS_Shape:
1337
+ """
1338
+ Stitch a list of faces into one or more connected shells.
1339
+
1340
+ Parameters
1341
+ ----------
1342
+ faces : list[TopoDS_Shape]
1343
+ Faces or other shapes to sew together.
1344
+ tolerance : float, default=1e-6
1345
+ Geometric tolerance for merging edges and vertices.
1346
+ non_manifold : bool, default=False
1347
+ If True, allows edges shared by more than two faces (may produce
1348
+ multiple shells). If False, creates only manifold shells suitable
1349
+ for solids.
1350
+
1351
+ Returns
1352
+ -------
1353
+ TopoDS_Shape
1354
+ The sewed shape containing one or more shells.
1355
+ """
1356
+ def Sphere(c: gp_Pnt, r: typing.SupportsFloat) -> Solid:
1357
+ """
1358
+ create sphere with center 'c' and radius 'r'
1359
+ """
1360
+ @typing.overload
1361
+ def SplineApproximation(points: collections.abc.Sequence[gp_Pnt2d], approx_type: ApproxParamType = ..., deg_min: typing.SupportsInt = 3, deg_max: typing.SupportsInt = 8, continuity: ShapeContinuity = ..., tol: typing.SupportsFloat = 1e-08) -> Geom2d_Curve:
1362
+ """
1363
+ Generate a piecewise continuous spline-curve approximating a list of points in 2d.
1364
+
1365
+ Parameters
1366
+ ----------
1367
+
1368
+ points : List|Tuple[gp_Pnt2d]
1369
+ List (or tuple) of gp_Pnt.
1370
+
1371
+ approx_type : ApproxParamType
1372
+ Assumption on location of parameters wrt points.
1373
+
1374
+ deg_min : int
1375
+ Minimum polynomial degree of splines
1376
+
1377
+ deg_max : int
1378
+ Maximum polynomial degree of splines
1379
+
1380
+ continuity : ShapeContinuity
1381
+ Continuity requirement on the approximating surface
1382
+
1383
+ tol : float
1384
+ Tolerance for the distance from individual points to the approximating curve.
1385
+ """
1386
+ @typing.overload
1387
+ def SplineApproximation(points: collections.abc.Sequence[gp_Pnt], approx_type: ApproxParamType = ..., deg_min: typing.SupportsInt = 3, deg_max: typing.SupportsInt = 8, continuity: ShapeContinuity = ..., tol: typing.SupportsFloat = 1e-08) -> Edge:
1388
+ """
1389
+ Generate a piecewise continuous spline-curve approximating a list of points in 3d.
1390
+
1391
+ Parameters
1392
+ ----------
1393
+
1394
+ points : List[gp_Pnt] or Tuple[gp_Pnt]
1395
+ List (or tuple) of gp_Pnt.
1396
+
1397
+ approx_type : ApproxParamType
1398
+ Assumption on location of parameters wrt points.
1399
+
1400
+ deg_min : int
1401
+ Minimum polynomial degree of splines
1402
+
1403
+ deg_max : int
1404
+ Maximum polynomial degree of splines
1405
+
1406
+ continuity : ShapeContinuity
1407
+ Continuity requirement on the approximating surface
1408
+
1409
+ tol : float
1410
+ Tolerance for the distance from individual points to the approximating curve.
1411
+ """
1412
+ @typing.overload
1413
+ def SplineInterpolation(points: collections.abc.Sequence[gp_Pnt2d], periodic: bool = False, tol: typing.SupportsFloat = 1e-08, tangents: collections.abc.Mapping[typing.SupportsInt, gp_Vec2d] = {}) -> Geom2d_Curve:
1414
+ """
1415
+ Generate a piecewise continuous spline-curve interpolating a list of points in 2d.
1416
+
1417
+ Parameters
1418
+ ----------
1419
+
1420
+ points : List|Tuple[gp_Pnt2d]
1421
+ List (or tuple) of gp_Pnt2d.
1422
+
1423
+ periodic : bool
1424
+ Whether the result should be periodic
1425
+
1426
+ tol : float
1427
+ Tolerance for the distance between points.
1428
+
1429
+ tangents : Dict[int, gp_Vec2d]
1430
+ Tangent vectors for the points indicated by the key value (0-based).
1431
+ """
1432
+ @typing.overload
1433
+ def SplineInterpolation(points: collections.abc.Sequence[gp_Pnt], periodic: bool = False, tol: typing.SupportsFloat = 1e-08, tangents: collections.abc.Mapping[typing.SupportsInt, gp_Vec] = {}) -> Edge:
1434
+ """
1435
+ Generate a piecewise continuous spline-curve interpolating a list of points in 3d.
1436
+
1437
+ Parameters
1438
+ ----------
1439
+
1440
+ points : List|Tuple[gp_Pnt]
1441
+ List (or tuple) of gp_Pnt
1442
+
1443
+ periodic : bool
1444
+ Whether the result should be periodic
1445
+
1446
+ tol : float
1447
+ Tolerance for the distance between points.
1448
+
1449
+ tangents : Dict[int, gp_Vec]
1450
+ Tangent vectors for the points indicated by the key value (0-based).
1451
+ """
1452
+ def SplineSurfaceApproximation(points: typing.Annotated[numpy.typing.ArrayLike, numpy.float64], approx_type: ApproxParamType = ..., deg_min: typing.SupportsInt = 3, deg_max: typing.SupportsInt = 8, continuity: ShapeContinuity = ..., tol: typing.SupportsFloat = 0.001, periodic: bool = False, degen_tol: typing.SupportsFloat = 1e-08) -> Face:
1453
+ """
1454
+ Generate a piecewise continuous spline-surface approximating an array of points.
1455
+
1456
+ Parameters
1457
+ ----------
1458
+
1459
+ points : np.ndarray
1460
+ Array of points coordinates. The first dimension corresponds to the first surface coordinate point
1461
+ index, the second dimension to the second surface coordinate point index. The third dimension refers to physical
1462
+ coordinates. Such an array can be generated with code like::
1463
+
1464
+ px, py = np.meshgrid(*[np.linspace(0, 1, N)]*2)
1465
+ points = np.array([[(px[i,j], py[i,j], px[i,j]*py[i,j]**2) for j in range(N)] for i in range(N)])
1466
+
1467
+ approx_type : ApproxParamType
1468
+ Assumption on location of parameters wrt points.
1469
+
1470
+ deg_min : int
1471
+ Minimum polynomial degree of splines
1472
+
1473
+ deg_max : int
1474
+ Maximum polynomial degree of splines
1475
+
1476
+ continuity : ShapeContinuity
1477
+ Continuity requirement on the approximating surface
1478
+
1479
+ tol : float
1480
+ Tolerance for the distance from individual points to the approximating surface.
1481
+
1482
+ periodic : bool
1483
+ Whether the result should be periodic in the first surface parameter
1484
+
1485
+ degen_tol : double
1486
+ Tolerance for resolution of degenerate edges
1487
+ """
1488
+ def SplineSurfaceInterpolation(points: typing.Annotated[numpy.typing.ArrayLike, numpy.float64], approx_type: ApproxParamType = ..., periodic: bool = False, degen_tol: typing.SupportsFloat = 1e-08) -> Face:
1489
+ """
1490
+ Generate a piecewise continuous spline-surface interpolating an array of points.
1491
+
1492
+ Parameters
1493
+ ----------
1494
+
1495
+ points : np.ndarray
1496
+ Array of points coordinates. The first dimension corresponds to the first surface coordinate point
1497
+ index, the second dimension to the second surface coordinate point index. The third dimension refers to physical
1498
+ coordinates. Such an array can be generated with code like::
1499
+
1500
+ px, py = np.meshgrid(*[np.linspace(0, 1, N)]*2)
1501
+ points = np.array([[(px[i,j], py[i,j], px[i,j]*py[i,j]**2) for j in range(N)] for i in range(N)])
1502
+
1503
+ approx_type : ApproxParamType
1504
+ Assumption on location of parameters wrt points.
1505
+
1506
+ periodic : bool
1507
+ Whether the result should be periodic in the first surface parameter
1508
+
1509
+ degen_tol : double
1510
+ Tolerance for resolution of degenerate edges
1511
+ """
1512
+ def TestXCAF(shape: TopoDS_Shape = ...) -> None:
1513
+ ...
1514
+ def ThruSections(wires: collections.abc.Sequence[TopoDS_Shape], solid: bool = True) -> TopoDS_Shape:
1515
+ """
1516
+ Building a loft. This is a shell or solid passing through a set of sections (wires). First and last sections may be vertices. See https://dev.opencascade.org/doc/refman/html/class_b_rep_offset_a_p_i___thru_sections.html#details
1517
+ """
1518
+ @typing.overload
1519
+ def Vec(x: typing.SupportsFloat, y: typing.SupportsFloat) -> gp_Vec2d:
1520
+ """
1521
+ create 2d OCC point
1522
+ """
1523
+ @typing.overload
1524
+ def Vec(x: typing.SupportsFloat, y: typing.SupportsFloat, z: typing.SupportsFloat) -> gp_Vec:
1525
+ """
1526
+ create 3d OCC point
1527
+ """
1528
+ @typing.overload
1529
+ def Vec(v: collections.abc.Sequence[typing.SupportsFloat]) -> typing.Any:
1530
+ """
1531
+ create 2d or 3d OCC vector
1532
+ """
1533
+ COMPOUND: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.COMPOUND: 0>
1534
+ COMPSOLID: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.COMPSOLID: 1>
1535
+ EDGE: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.EDGE: 6>
1536
+ FACE: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.FACE: 4>
1537
+ SHAPE: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.SHAPE: 8>
1538
+ SHELL: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.SHELL: 3>
1539
+ SOLID: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.SOLID: 2>
1540
+ VERTEX: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.VERTEX: 7>
1541
+ WIRE: TopAbs_ShapeEnum # value = <TopAbs_ShapeEnum.WIRE: 5>
1542
+ X: gp_Vec # value = (1, 0, 0)
1543
+ Y: gp_Vec # value = (0, 1, 0)
1544
+ Z: gp_Vec # value = (0, 0, 1)
1545
+ occ_version: str = '7.8.1'