From 86bc06c8bb1fc3f00f8b3671f5b6ef7cc6e149c1 Mon Sep 17 00:00:00 2001 From: Alex Kaszynski Date: Thu, 24 Mar 2022 23:53:06 +0100 Subject: [PATCH] check for empty geometry when plotting --- src/ansys/mapdl/core/mapdl.py | 15 ++++++++++++++- src/ansys/mapdl/core/mapdl_geometry.py | 20 +++++++++++++------- 2 files changed, 27 insertions(+), 8 deletions(-) diff --git a/src/ansys/mapdl/core/mapdl.py b/src/ansys/mapdl/core/mapdl.py index 010a8cb4e69..f5765aac58f 100644 --- a/src/ansys/mapdl/core/mapdl.py +++ b/src/ansys/mapdl/core/mapdl.py @@ -1061,6 +1061,12 @@ def vplot( if vtk: kwargs.setdefault("title", "MAPDL Volume Plot") + if not self.geometry.n_volu: + warnings.warn( + "Either no volumes have been selected or there is nothing to plot." + ) + return general_plotter([], [], [], **kwargs) + cm_name = "__tmp_area2__" self.cm(cm_name, "AREA", mute=True) self.aslv("S", mute=True) # select areas attached to active volumes @@ -1178,6 +1184,13 @@ def aplot( kwargs.setdefault("show_scalar_bar", False) kwargs.setdefault("title", "MAPDL Area Plot") kwargs.setdefault("scalar_bar_args", {"title": "Scalar Bar Title"}) + + if not self.geometry.n_area: + warnings.warn( + "Either no areas have been selected or there is nothing to plot." + ) + return general_plotter([], [], [], **kwargs) + if quality > 10: quality = 10 if quality < 1: @@ -1367,7 +1380,7 @@ def lplot( kwargs.setdefault("title", "MAPDL Line Plot") if not self.geometry.n_line: warnings.warn( - "Either no lines have been selected or there " "is nothing to plot" + "Either no lines have been selected or there is nothing to plot." ) return general_plotter([], [], [], **kwargs) diff --git a/src/ansys/mapdl/core/mapdl_geometry.py b/src/ansys/mapdl/core/mapdl_geometry.py index 09c0919d53e..cf9c898cf67 100644 --- a/src/ansys/mapdl/core/mapdl_geometry.py +++ b/src/ansys/mapdl/core/mapdl_geometry.py @@ -221,7 +221,8 @@ def areas(self, quality=4, merge=False): @supress_logging @run_as_prep7 def generate_surface(self, density=4, amin=None, amax=None, ninc=None): - """Generate an all-triangular surface of the active surfaces. + """ + Generate an all-triangular surface of the active surfaces. Parameters ---------- @@ -325,7 +326,8 @@ def generate_surface(self, density=4, amin=None, amax=None, ninc=None): @property def n_volu(self): - """Number of volumes currently selected + """ + Number of volumes currently selected. Examples -------- @@ -336,7 +338,8 @@ def n_volu(self): @property def n_area(self): - """Number of areas currently selected + """ + Number of areas currently selected. Examples -------- @@ -347,7 +350,8 @@ def n_area(self): @property def n_line(self): - """Number of lines currently selected + """ + Number of lines currently selected. Examples -------- @@ -358,7 +362,8 @@ def n_line(self): @property def n_keypoint(self): - """Number of keypoints currently selected + """ + Number of keypoints currently selected. Examples -------- @@ -369,12 +374,13 @@ def n_keypoint(self): @supress_logging def _item_count(self, entity): - """Return item count for a given entity""" + """Return item count for a given entity.""" return int(self._mapdl.get(entity=entity, item1="COUNT")) @property def knum(self): - """Array of keypoint numbers. + """ + Array of keypoint numbers. Examples --------