ansys-pyensight-core 0.7.8__py3-none-any.whl → 0.7.9__py3-none-any.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.
Potentially problematic release.
This version of ansys-pyensight-core might be problematic. Click here for more details.
- ansys/pyensight/core/dockerlauncher.py +52 -44
- ansys/pyensight/core/enscontext.py +17 -15
- ansys/pyensight/core/enshell_grpc.py +8 -8
- ansys/pyensight/core/ensight_grpc.py +37 -35
- ansys/pyensight/core/ensobj.py +4 -4
- ansys/pyensight/core/launch_ensight.py +2 -2
- ansys/pyensight/core/launcher.py +4 -4
- ansys/pyensight/core/listobj.py +18 -16
- ansys/pyensight/core/renderable.py +9 -8
- ansys/pyensight/core/session.py +33 -29
- ansys/pyensight/core/utils/export.py +9 -9
- ansys/pyensight/core/utils/omniverse_dsg_server.py +1 -0
- ansys/pyensight/core/utils/parts.py +50 -36
- ansys/pyensight/core/utils/query.py +41 -35
- ansys/pyensight/core/utils/variables.py +158 -139
- ansys/pyensight/core/utils/views.py +14 -14
- {ansys_pyensight_core-0.7.8.dist-info → ansys_pyensight_core-0.7.9.dist-info}/METADATA +2 -2
- ansys_pyensight_core-0.7.9.dist-info/RECORD +34 -0
- ansys_pyensight_core-0.7.8.dist-info/RECORD +0 -34
- {ansys_pyensight_core-0.7.8.dist-info → ansys_pyensight_core-0.7.9.dist-info}/LICENSE +0 -0
- {ansys_pyensight_core-0.7.8.dist-info → ansys_pyensight_core-0.7.9.dist-info}/WHEEL +0 -0
|
@@ -160,27 +160,31 @@ class Query:
|
|
|
160
160
|
>>> point1=pnt1, point2=pnt2, new_plotter=True)
|
|
161
161
|
|
|
162
162
|
"""
|
|
163
|
-
if query_type not in [
|
|
164
|
-
|
|
163
|
+
if query_type not in [
|
|
164
|
+
self.DISTANCE_PART1D,
|
|
165
|
+
self.DISTANCE_LINE,
|
|
166
|
+
self.DISTANCE_SPLINE,
|
|
167
|
+
]: # pragma: no cover
|
|
168
|
+
raise RuntimeError(f"Invalid query type: {query_type} specified.") # pragma: no cover
|
|
165
169
|
|
|
166
170
|
var1 = self._get_variable(variable1)
|
|
167
171
|
var2 = self._get_variable(variable2, "DISTANCE")
|
|
168
172
|
|
|
169
173
|
if query_type == self.DISTANCE_LINE:
|
|
170
|
-
if (point1 is None) or (point2 is None):
|
|
171
|
-
raise RuntimeError("Both point1 and point2 must be specified.")
|
|
174
|
+
if (point1 is None) or (point2 is None): # pragma: no cover
|
|
175
|
+
raise RuntimeError("Both point1 and point2 must be specified.") # pragma: no cover
|
|
172
176
|
self._create_query_core_begin(name, part_list)
|
|
173
177
|
self._ensight.query_ent_var.number_of_sample_pts(num_samples)
|
|
174
178
|
self._ensight.query_ent_var.constrain("line_tool")
|
|
175
179
|
self._ensight.query_ent_var.line_loc(1, *point1)
|
|
176
180
|
self._ensight.query_ent_var.line_loc(2, *point2)
|
|
177
181
|
|
|
178
|
-
elif query_type == self.DISTANCE_PART1D:
|
|
182
|
+
elif query_type == self.DISTANCE_PART1D: # pragma: no cover
|
|
179
183
|
self._create_query_core_begin(name, part_list, single=True)
|
|
180
184
|
self._ensight.query_ent_var.constrain("1d_part")
|
|
181
185
|
self._ensight.query_ent_var.multiple_segments_by(segments_by)
|
|
182
186
|
|
|
183
|
-
elif query_type == self.DISTANCE_SPLINE:
|
|
187
|
+
elif query_type == self.DISTANCE_SPLINE: # pragma: no cover
|
|
184
188
|
if spline_name is None:
|
|
185
189
|
raise RuntimeError("A spline_name must be specified.")
|
|
186
190
|
self._create_query_core_begin(name, part_list)
|
|
@@ -291,7 +295,7 @@ class Query:
|
|
|
291
295
|
>>> s.ensight.utils.query.TEMPORAL_MAXIMUM, parts, "plastic", new_plotter=True)
|
|
292
296
|
|
|
293
297
|
"""
|
|
294
|
-
if query_type not in [
|
|
298
|
+
if query_type not in [ # pragma: no cover
|
|
295
299
|
self.TEMPORAL_NODE,
|
|
296
300
|
self.TEMPORAL_ELEMENT,
|
|
297
301
|
self.TEMPORAL_IJK,
|
|
@@ -299,19 +303,19 @@ class Query:
|
|
|
299
303
|
self.TEMPORAL_MINIMUM,
|
|
300
304
|
self.TEMPORAL_MAXIMUM,
|
|
301
305
|
]:
|
|
302
|
-
raise RuntimeError(f"Invalid query type: {query_type} specified.")
|
|
306
|
+
raise RuntimeError(f"Invalid query type: {query_type} specified.") # pragma: no cover
|
|
303
307
|
|
|
304
308
|
var1 = self._get_variable(variable1)
|
|
305
309
|
var2 = self._get_variable(variable2, "TIME")
|
|
306
310
|
|
|
307
311
|
# default the time range
|
|
308
|
-
if start_time is None:
|
|
312
|
+
if start_time is None: # pragma: no cover
|
|
309
313
|
start_time = self._ensight.objs.core.SOLUTIONTIME_LIMITS[0]
|
|
310
|
-
if end_time is None:
|
|
314
|
+
if end_time is None: # pragma: no cover
|
|
311
315
|
end_time = self._ensight.objs.core.SOLUTIONTIME_LIMITS[1]
|
|
312
316
|
|
|
313
317
|
# default the number of timesteps
|
|
314
|
-
if num_samples is None:
|
|
318
|
+
if num_samples is None: # pragma: no cover
|
|
315
319
|
num_samples = (
|
|
316
320
|
self._ensight.objs.core.TIMESTEP_LIMITS[1]
|
|
317
321
|
- self._ensight.objs.core.TIMESTEP_LIMITS[0]
|
|
@@ -319,38 +323,38 @@ class Query:
|
|
|
319
323
|
)
|
|
320
324
|
|
|
321
325
|
if query_type == self.TEMPORAL_NODE:
|
|
322
|
-
if node_id is None:
|
|
323
|
-
raise RuntimeError("node_id must be specified.")
|
|
326
|
+
if node_id is None: # pragma: no cover
|
|
327
|
+
raise RuntimeError("node_id must be specified.") # pragma: no cover
|
|
324
328
|
self._create_query_core_begin(name, part_list)
|
|
325
329
|
self._ensight.query_ent_var.constrain("node")
|
|
326
330
|
self._ensight.query_ent_var.node_id(node_id)
|
|
327
331
|
|
|
328
332
|
elif query_type == self.TEMPORAL_ELEMENT:
|
|
329
|
-
if element_id is None:
|
|
330
|
-
raise RuntimeError("element_id must be specified.")
|
|
333
|
+
if element_id is None: # pragma: no cover
|
|
334
|
+
raise RuntimeError("element_id must be specified.") # pragma: no cover
|
|
331
335
|
self._create_query_core_begin(name, part_list)
|
|
332
336
|
self._ensight.query_ent_var.constrain("element")
|
|
333
337
|
self._ensight.query_ent_var.elem_id(element_id)
|
|
334
338
|
|
|
335
339
|
elif query_type == self.TEMPORAL_XYZ:
|
|
336
|
-
if xyz is None:
|
|
337
|
-
raise RuntimeError("xyz must be specified.")
|
|
340
|
+
if xyz is None: # pragma: no cover
|
|
341
|
+
raise RuntimeError("xyz must be specified.") # pragma: no cover
|
|
338
342
|
self._create_query_core_begin(name, part_list)
|
|
339
343
|
self._ensight.query_ent_var.constrain("cursor")
|
|
340
344
|
self._ensight.query_ent_var.cursor_loc(*xyz)
|
|
341
345
|
|
|
342
346
|
elif query_type == self.TEMPORAL_IJK:
|
|
343
|
-
if ijk is None:
|
|
344
|
-
raise RuntimeError("ijk must be specified.")
|
|
345
|
-
self._create_query_core_begin(name, part_list)
|
|
346
|
-
self._ensight.query_ent_var.constrain("ijk")
|
|
347
|
-
self._ensight.query_ent_var.ijk(*ijk)
|
|
347
|
+
if ijk is None: # pragma: no cover
|
|
348
|
+
raise RuntimeError("ijk must be specified.") # pragma: no cover
|
|
349
|
+
self._create_query_core_begin(name, part_list) # pragma: no cover
|
|
350
|
+
self._ensight.query_ent_var.constrain("ijk") # pragma: no cover
|
|
351
|
+
self._ensight.query_ent_var.ijk(*ijk) # pragma: no cover
|
|
348
352
|
|
|
349
353
|
elif query_type == self.TEMPORAL_MINIMUM:
|
|
350
354
|
self._create_query_core_begin(name, part_list)
|
|
351
355
|
self._ensight.query_ent_var.constrain("min")
|
|
352
356
|
|
|
353
|
-
elif query_type == self.TEMPORAL_MAXIMUM:
|
|
357
|
+
elif query_type == self.TEMPORAL_MAXIMUM: # pragma: no cover
|
|
354
358
|
self._create_query_core_begin(name, part_list)
|
|
355
359
|
self._ensight.query_ent_var.constrain("max")
|
|
356
360
|
|
|
@@ -388,12 +392,12 @@ class Query:
|
|
|
388
392
|
try:
|
|
389
393
|
query = max(self._ensight.objs.core.QUERIES)
|
|
390
394
|
# no new id allocated
|
|
391
|
-
if query.__OBJID__ < nextid:
|
|
392
|
-
error_msg = "Unable to create the specified query."
|
|
393
|
-
except ValueError:
|
|
394
|
-
error_msg = "Unable to create the specified query."
|
|
395
|
-
if error_msg:
|
|
396
|
-
raise RuntimeError(error_msg)
|
|
395
|
+
if query.__OBJID__ < nextid: # pragma: no cover
|
|
396
|
+
error_msg = "Unable to create the specified query." # pragma: no cover
|
|
397
|
+
except ValueError: # pragma: no cover
|
|
398
|
+
error_msg = "Unable to create the specified query." # pragma: no cover
|
|
399
|
+
if error_msg: # pragma: no cover
|
|
400
|
+
raise RuntimeError(error_msg) # pragma: no cover
|
|
397
401
|
return query
|
|
398
402
|
|
|
399
403
|
def _create_query_core_begin(self, name: str, parts: Optional[List[int]], single=False) -> None:
|
|
@@ -414,14 +418,16 @@ class Query:
|
|
|
414
418
|
|
|
415
419
|
"""
|
|
416
420
|
part_list = []
|
|
417
|
-
if parts:
|
|
421
|
+
if parts: # pragma: no cover
|
|
418
422
|
for p in parts:
|
|
419
|
-
if type(p) == str:
|
|
420
|
-
part_list.append(
|
|
421
|
-
|
|
422
|
-
|
|
423
|
+
if type(p) == str: # pragma: no cover
|
|
424
|
+
part_list.append(
|
|
425
|
+
self._ensight.objs.core.PARTS[p][0].PARTNUMBER
|
|
426
|
+
) # pragma: no cover
|
|
427
|
+
elif type(p) == int: # pragma: no cover
|
|
428
|
+
part_list.append(p) # pragma: no cover
|
|
423
429
|
else:
|
|
424
|
-
if hasattr(p, "PARTNUMBER"):
|
|
430
|
+
if hasattr(p, "PARTNUMBER"): # pragma: no cover
|
|
425
431
|
part_list.append(p.PARTNUMBER)
|
|
426
432
|
if not single:
|
|
427
433
|
self._ensight.part.select_begin(part_list)
|