diff --git a/doc/source/_static/basic/Valve.gif b/doc/source/_static/basic/Valve.gif deleted file mode 100644 index b2b39a02..00000000 Binary files a/doc/source/_static/basic/Valve.gif and /dev/null differ diff --git a/doc/source/conf.py b/doc/source/conf.py index ed7c0b8e..422c2324 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -76,6 +76,8 @@ "image_scrapers": ("pyvista", "matplotlib"), "ignore_pattern": "flycheck*", "thumbnail_size": (350, 350), + # embed gif in gallery + "matplotlib_animations": True, } # Intersphinx mapping diff --git a/examples/basic/topology_optimization_cantilever_beam.py b/examples/basic/topology_optimization_cantilever_beam.py index cabd54fb..68b6291d 100644 --- a/examples/basic/topology_optimization_cantilever_beam.py +++ b/examples/basic/topology_optimization_cantilever_beam.py @@ -21,11 +21,10 @@ def display_image(image_name): - path = os.path.join(os.path.join(cwd, image_name)) - image = mpimg.imread(path) - plt.figure(figsize=(15, 15)) - plt.axis("off") - plt.imshow(image) + plt.figure(figsize=(16, 9)) + plt.imshow(mpimg.imread(os.path.join(cwd, image_name))) + plt.xticks([]) + plt.yticks([]) plt.show() @@ -199,6 +198,9 @@ def display_image(image_name): print("Final Mass: ", TOPO_DENS.FinalMass.Value) print("Percent Mass of Original: ", TOPO_DENS.PercentMassOfOriginal) +# %% +# Cleanup +# ~~~~~~~ # Save project app.save(os.path.join(cwd, "cantilever_beam_topology_optimization.mechdat")) app.new() diff --git a/examples/basic/valve.py b/examples/basic/valve.py index 62479d61..0ff5eb06 100644 --- a/examples/basic/valve.py +++ b/examples/basic/valve.py @@ -7,10 +7,12 @@ """ import os +from PIL import Image import ansys.mechanical.core as mech from ansys.mechanical.core.examples import delete_downloads, download_file from matplotlib import image as mpimg from matplotlib import pyplot as plt +from matplotlib.animation import FuncAnimation # Embed Mechanical and set global variables app = mech.App(version=232) @@ -24,11 +26,10 @@ def display_image(image_name): - path = os.path.join(os.path.join(cwd, image_name)) - image = mpimg.imread(path) - plt.figure(figsize=(15, 15)) - plt.axis("off") - plt.imshow(image) + plt.figure(figsize=(16, 9)) + plt.imshow(mpimg.imread(os.path.join(cwd, image_name))) + plt.xticks([]) + plt.yticks([]) plt.show() @@ -154,12 +155,29 @@ def display_image(image_name): stress.ExportAnimation( os.path.join(cwd, "Valve.gif"), animation_export_format, settings_720p ) +gif = Image.open(os.path.join(cwd, "Valve.gif")) +fig, ax = plt.subplots(figsize=(16, 9)) +ax.axis("off") +img = ax.imshow(gif.convert("RGBA")) -# %% -# .. image:: /_static/basic/Valve.gif +def update(frame): + gif.seek(frame) + img.set_array(gif.convert("RGBA")) + return [img] + + +ani = FuncAnimation( + fig, update, frames=range(gif.n_frames), interval=100, repeat=True, blit=True +) +plt.show() + +# %% +# Cleanup +# ~~~~~~~ # Save project + app.save(os.path.join(cwd, "Valve.mechdat")) app.new() diff --git a/examples/technology_showcase/Rotor_Blade_Inverse_solve.py b/examples/technology_showcase/Rotor_Blade_Inverse_solve.py index e4b7eb72..089693bf 100644 --- a/examples/technology_showcase/Rotor_Blade_Inverse_solve.py +++ b/examples/technology_showcase/Rotor_Blade_Inverse_solve.py @@ -62,11 +62,10 @@ def display_image(image_name): - path = os.path.join(os.path.join(cwd, image_name)) - image = mpimg.imread(path) - plt.figure(figsize=(15, 15)) - plt.axis("off") - plt.imshow(image) + plt.figure(figsize=(16, 9)) + plt.imshow(mpimg.imread(os.path.join(cwd, image_name))) + plt.xticks([]) + plt.yticks([]) plt.show()