1010)
1111
1212
13- class GraphicsDefn (metaclass = PyLocalNamedObjectMetaAbstract ):
13+ class BasePostObjectDefn :
14+ """Base class for post objects."""
15+
16+ def _pre_display (self ):
17+ local_surfaces_provider = (
18+ self ._get_top_most_parent ()._local_surfaces_provider ()
19+ )
20+ for surf_name in self .surfaces_list ():
21+ if surf_name in list (local_surfaces_provider ):
22+ surf_obj = local_surfaces_provider [surf_name ]
23+ if surf_obj .surface .type () == "iso-surface" :
24+ surf_api = surf_obj ._data_extractor .surface_api ()
25+ surf_api .iso_surface (
26+ surf_obj .surface .iso_surface .field (),
27+ surf_name ,
28+ (),
29+ (),
30+ surf_obj .surface .iso_surface .iso_value (),
31+ (),
32+ )
33+
34+ def _post_display (self ):
35+ local_surfaces_provider = (
36+ self ._get_top_most_parent ()._local_surfaces_provider ()
37+ )
38+ for surf_name in self .surfaces_list ():
39+ if surf_name in list (local_surfaces_provider ):
40+ surf_obj = local_surfaces_provider [surf_name ]
41+ surf_api = surf_obj ._data_extractor .surface_api ()
42+ surf_api .delete_surface (surf_name )
43+
44+
45+ class GraphicsDefn (
46+ BasePostObjectDefn , metaclass = PyLocalNamedObjectMetaAbstract
47+ ):
1448 """Abstract base class for graphics objects."""
1549
1650 @abstractmethod
@@ -26,7 +60,7 @@ def display(self, plotter_id: Optional[str] = None):
2660 pass
2761
2862
29- class PlotDefn (metaclass = PyLocalNamedObjectMetaAbstract ):
63+ class PlotDefn (BasePostObjectDefn , metaclass = PyLocalNamedObjectMetaAbstract ):
3064 """Abstract base class for plot objects."""
3165
3266 @abstractmethod
@@ -106,7 +140,7 @@ def allowed_values(self):
106140 """Surface list allowed values."""
107141 return list (
108142 self ._data_extractor .field_info ().get_surfaces_info ().keys ()
109- )
143+ ) + list ( self . _get_top_most_parent (). _local_surfaces_provider ())
110144
111145
112146class MeshDefn (GraphicsDefn ):
@@ -124,7 +158,7 @@ def allowed_values(self):
124158 """Surface list allowed values."""
125159 return list (
126160 (self ._data_extractor .field_info ().get_surfaces_info ().keys ())
127- )
161+ ) + list ( self . _get_top_most_parent (). _local_surfaces_provider ())
128162
129163 class show_edges (metaclass = PyLocalPropertyMeta ):
130164 """Show edges for mesh."""
@@ -142,17 +176,17 @@ class show_edges(metaclass=PyLocalPropertyMeta):
142176
143177 value : bool = True
144178
145- class surface_type (metaclass = PyLocalObjectMeta ):
179+ class surface (metaclass = PyLocalObjectMeta ):
146180 """Specify surface type."""
147181
148182 def _availability (self , name ):
149183 if name == "plane_surface" :
150- return self .surface_type () == "plane-surface"
184+ return self .type () == "plane-surface"
151185 if name == "iso_surface" :
152- return self .surface_type () == "iso-surface"
186+ return self .type () == "iso-surface"
153187 return True
154188
155- class surface_type (metaclass = PyLocalPropertyMeta ):
189+ class type (metaclass = PyLocalPropertyMeta ):
156190 """Surface type."""
157191
158192 value : str = "iso-surface"
@@ -251,7 +285,7 @@ def allowed_values(self):
251285 """Surfaces list allowed values."""
252286 return list (
253287 self ._data_extractor .field_info ().get_surfaces_info ().keys ()
254- )
288+ ) + list ( self . _get_top_most_parent (). _local_surfaces_provider ())
255289
256290 class filled (metaclass = PyLocalPropertyMeta ):
257291 """Show filled contour."""
@@ -278,7 +312,7 @@ class show_edges(metaclass=PyLocalPropertyMeta):
278312
279313 value : bool = False
280314
281- class range (metaclass = PyLocalObjectMeta ):
315+ class range (metaclass = PyLocalObjectMeta ):
282316 """Specify range options."""
283317
284318 def _availability (self , name ):
@@ -407,7 +441,7 @@ def allowed_values(self):
407441 """Surface list allowed values."""
408442 return list (
409443 self ._data_extractor .field_info ().get_surfaces_info ().keys ()
410- )
444+ ) + list ( self . _get_top_most_parent (). _local_surfaces_provider ())
411445
412446 class scale (metaclass = PyLocalPropertyMeta ):
413447 """Vector scale."""
0 commit comments