Skip to content

Commit 6c4c7a5

Browse files
committed
feature: allow passing camera position as argument on 3D plotting routines
1 parent 8ef7d9d commit 6c4c7a5

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

wakis/plotting.py

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ def plot3D(self, field='E', component='z', clim=None, hide_solids=None,
1212
title=None, cmap='jet',
1313
clip_interactive=False, clip_normal='-y',
1414
clip_box=False, clip_bounds=None,
15-
off_screen=False, zoom=0.5, nan_opacity=1.0, n=None):
15+
off_screen=False, zoom=0.5, camera_position=None,
16+
nan_opacity=1.0, n=None):
1617
'''
1718
Built-in 3D plotting using PyVista
1819
@@ -95,11 +96,15 @@ def plot3D(self, field='E', component='z', clim=None, hide_solids=None,
9596
surf = self.grid.read_stl(key)
9697
pl.add_mesh(surf, color=stl_colors, opacity=stl_opacity, smooth_shading=True)
9798

98-
pl.camera_position = 'zx'
99-
pl.camera.azimuth += 30
100-
pl.camera.elevation += 30
99+
if camera_position is None:
100+
pl.camera_position = 'zx'
101+
pl.camera.azimuth += 30
102+
pl.camera.elevation += 30
103+
else:
104+
pl.camera_position = camera_position
105+
101106
pl.set_background('mistyrose', top='white')
102-
try: pl.add_logo_widget('../docs/img/wakis-logo-pink.png')
107+
try: pl.add_logo_widget('docs/img/wakis-logo-pink.png')
103108
except: pass
104109
pl.camera.zoom(zoom)
105110
pl.add_axes()
@@ -208,7 +213,8 @@ def plot3DonSTL(self, field='E', component='z', clim=None, cmap='jet', log_scale
208213
clip_plane = False, clip_interactive=False,
209214
clip_normal='-x', clip_origin=[0,0,0],
210215
clip_box=False, clip_bounds=None,
211-
title=None, off_screen=False, zoom=0.5, n=None, **kwargs):
216+
title=None, off_screen=False, n=None,
217+
zoom=0.5, camera_position=None, **kwargs):
212218
'''
213219
Built-in 3D plotting using PyVista
214220
@@ -385,11 +391,15 @@ def plot3DonSTL(self, field='E', component='z', clim=None, cmap='jet', log_scale
385391
scalars=field+component, opacity=field_opacity,
386392
log_scale=log_scale,
387393
**kwargs)
388-
pl.camera_position = 'zx'
389-
pl.camera.azimuth += 20
390-
pl.camera.elevation += 30
394+
if camera_position is None:
395+
pl.camera_position = 'zx'
396+
pl.camera.azimuth += 30
397+
pl.camera.elevation += 30
398+
else:
399+
pl.camera_position = camera_position
400+
391401
pl.set_background('mistyrose', top='white')
392-
try: pl.add_logo_widget('../docs/img/wakis-logo-pink.png')
402+
try: pl.add_logo_widget('docs/img/wakis-logo-pink.png')
393403
except: pass
394404
pl.camera.zoom(zoom)
395405
pl.add_axes()

0 commit comments

Comments
 (0)