5 – An update on outputting results in Ansys Mechanical: 3D Result Objects

To support some new marketing efforts I had to make some different types of results output from models in Ansys Mechanical:

  • A 3D plot on a webpage
    Post 5
  • A physical printout on our 3D Printer
    Post 6

All of the posts are here.

This post is the fifth of six and it is about creating results objects that can be viewed in 3D by people who don’t own Ansys Mechanical. You can use the Ansys Viewer, 3D PDF, make rendering files, and display on a web page. Using the Ansys viewer is simple and 3D PDF requires a plugin. For rendering or web viewing, it is not a direct shot, but with the help of EnSight and a few open-source tools, you can share complex 3D results with a lot of people.

Using the Ansys Viewer format and Ansys Viewer

Ansys solves the problem of sharing 3D results across their product line with people who don’t have Ansys through the Ansys Viewer. It is free, simple to use, and should be used in most situations. Right now you can export results from Ansys CFX, CFD-Post (for CFX or Fluent results), TurboGrid, and Ansys Mechanical to this format.

You can download the viewer here.

Making the file is very simple. Just Right-Mouse-Button on the object you want to share. Then select Export > Ansys Result Viewer

Then open this file in Ansys viewer and view away. We have not had any problems with customers of all skill levels use this tool.

For most real engineering situations, you should stop here. This is a robust way to share 3D result objects with anyone, and they don’t need a license of Ansys. But if you need more, including higher-quality 3D objects, keep going.

What about 3D PDF?

If you want to use 3D PDF, there is a plugin for this on the Ansys app store. One of the European channel partners, 7tech, has created More-PDF. Note, it is not free. Free to download and try, but there is a cost. It works in Ansys Mechanical as a plugin and has a stand-alone version that works with CFD Pre/Post, Electronics Desktop, or MAPDL. I won’t get into how to install or use it because the help files that come with are outstanding.

Here is a sample Ansys result that they have provided. You can view it in Acrobat Reader.

If you want to share results in PDF, this seems to be a good tool for that. I’m not sure what the pricing is for it. More information is here, including more example files.

Making a Generic 3D File: PLY

If you read the article on making high-quality images, you saw that Ansys Ensight is a very powerful tool. One thing it does is support a bunch of different 3D file formats. One of those formats is a PLY file, which is a great intermediate format for so much more.

Get started by following the instructions in the previous article about high-quality images using EnSight. But instead of exporting to an image, we are going to save as PLY.

When you have the result you want, go to File > Export > Geomtric Entities.

In the dialog, chose PLY Polygonal File Format. This will be our generic format we can convert into many different things (including 3D printer files, discussed in the next article.) Make sure you specify which times or modes you want. By default, it will make a PLY for each one.

You can now take that PLY file into any fancy rendering program. If you want to show your results in the middle of a rendered scene of something else, the PLY file is the file to use.

I downloaded the opensource tool Blender and gave it a try. The user interface in these tools is nothing like CAD or CAE tools, so it took me a while to get something useful. I think Keyshot Pro would be a better tool for those who don’t know “artist” tools like Blender.

If you do want to give it a try, you can get your color contours by clicking on the object after you import it, then click on the material icon and choose Surface, then set Surface to Specular, Base Color to Vertex Color | Color, and make sure the specular color is dark or black.

One could spend hours (days) learning a rendering tool and playing with surface reflection and transparency. But if you need something high quality for the marketing team, pass them a PLY file and let their graphic artists do their thing.

Here is the file to help if you do want to dig in yourself.

3D Web Results with X3D (and what happened to VRML?)

Early in the days of the web, there were a lot of people that saw the platform as a way to share and interact with three-dimensional virtual space. They create the Virtual Reality Modeling Language, VRML, as a way to represent 3D objects using triangles with detailed information on each triangle about color, texture, transparency, and shininess. It is fundamentally a file format that represents what your graphics card needs to do 3D graphics but in a common format. The fact that simulation results are basically the same thing made it a nice fit for sharing results, geometry, and meshes with other people.

It was pretty cool and you can still save Ansys information in VRML from various programs. But the viewers were clunky and were focused on the virtual reality experience and not showing 3D objects. It also never really took off because you needed a VRML viewer to see the object. That was always a pain.

As it drifted out of favor, an organization replaced it with a new, better format and a JavaScript viewer that would get loaded automatically: the result, X3D graphics.

Here is the result. Click on the impeller and spin away. Here are some basic commands:

Spin: Left Mouse Button
Pan: Middle Mouse Button
Zoom: Scroll Wheel

Reset: r
Show all: a

Are you sure you want to do this?

Now that I’ve gotten you excited about doing this, let me scare you. This is not for the faint of heart. You need to use an Ansys Mechanical APDL result file in Ansys Ensight to make the file. Then you need to do some HTML/CSS. If you are comfortable with going down that path, read on.

The obvious question is, “when will Ansys add these file formates to the Export capability?” Right now you can only export 3D results to a deformed STL (not color info) and the Ansys in-house Ansys Viewer Format, *.avz.

Getting an X3D from PLY

Now we need MeshLab. There are many other tools the read PLY files and output to other formats, but MeshLab has not let me down yet. It is opensource, does everything, and is a pain to use. You will laugh at the user interface. But if you want 3D objects on your website (or to 3D Print results) this is the best path. You can download MeshLab from www.meshlab.net. Once you have it installed, follow these steps:

  • Open MeshLab
  • Chose File > Import Mesh
  • Spin it around, look at it. You could scale and transform. But we just want to convert it.
  • Chose File > Export Mesh As
  • Scroll down in the File of Type dropdown and pick X3D File Format (*.x3d)
  • Save
  • Make sure you have onlly Color checked for Vert. Then click OK

Now we are really close… but not really. We have a X3D file.

Here are both the PLY and X3D files:

I hosted the x3d file on our web server as well.

Here is where the HTML/CSS happens. And explaining that is way beyond this post. Here is the code to show the solution of mode 35 of our impeller, as shown above:

<script src="https://x3dom.org/release/x3dom.js"></script>

<link rel="stylesheet" href="https://x3dom.org/release/x3dom.css" />
<style>
#imp1 {
    background: #000;
    border: 1px solid orange;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
}
</style>
<x3d id="imp1" x="10px" y="10px" width="400px" height="400px" >
  <scene render="true">
    <environment id="myEnv" ssao="true" ssaoamount="0.5" 
	ssaoblurdepthtreshold="1.0" ssaoradius="0.4" 
	ssaorandomtexturesize="8" sorttrans="true" 
	gammacorrectiondefault="linear" tonemapping="none" 
	frustumculling="true" smallfeaturethreshold="1" 
	lowprioritythreshold="1" minframerate="1" 
	maxframerate="62.5" userdatafactor="-1" 
	smallfeaturefactor="-1" 
	occlusionvisibilityfactor="-1" 
	lowpriorityfactor="-1" 
	tessellationerrorfactor="-1">
    </environment>
    <SpotLight id='spot' on ="TRUE" beamWidth='0.9' 
	color='0 0 1' cutOffAngle='0.78' 
	location='0 0 12' radius='22' > 
    </SpotLight>
    <NavigationInfo id="head" headlight='true' type='"EXAMINE"'>      
    </NavigationInfo>
    <Transform translation = '0 0 -2'>
      <inline 
	url="https://www.padtinc.com/downloads/i1-m35-3d-a.x3d"> 
      </inline>
    </transform>
  </scene>
</x3d>

The above code works for our example and has a smattering of options available to make your image show the way you want it. There are hundreds more. If the code makes sense to you, use the documentation at x3dom.org to do more. If it looks like gobly-gook, find someone who can help you or buckle down and learn. It’s not hard, just different for us simulation types.

Some Tough Talk about 3D Results

The truth of the matter is that Ansys Mechanical is great for looking at 3D Results in Mechanical or in the Ansys Viewer. It is not set up to support other 3D file formats. And there is a reason for that. Do you really need to have a 3D PDF? Is having a 3D result on your website just cool, or do you really need it?

The fact is, for most projects, you need a 2D image of your key results in your report. Most of the fancy 3D viewable is to help people who don’t have Ansys understand results better. Or you need it for marketing. For the first case, just use the Ansys viewer. For the second, it can be a bit of work but you can create some eye-catching geometry.

However, one advantage of having a 3D result object is that you can convert it into something you can 3D print. And that is the subject of our next, and final post on this topic: “6 – An update on outputting results in Ansys Mechanical: 3D Printing Results.

2 – An update on outputting results in Ansys Mechanical: Taking it to the Next Level with Ansys EnSight

To support some new marketing efforts I had to make some different types of results output from models in Ansys Mechanical:

  • A 3D plot on a webpage
    Post 5
  • A physical printout on our 3D Printer
    Post 6

All of the posts are here.

This post is the second of six on what I’ve learned after fiddling around for a while. It is looking at a post-processing tool that Ansys acquired a few years back called Ansys EnSight. It takes making output to the next level in functionality and quality.

More options and ray tracing with Ansys EnSight

Back in 2017, 3 years ago, if you don’t account for COVID-19 time dilation, Ansys, Inc. acquired a company called Computational Engineering International. They had a product called EnSight, which was the best post-processing tool on the market. Many FLUENT, CFX, and LS-DYNA users would use EnSight to do advanced result interrogation and output. Its capabilities focus on doing complex visualization and automation. Along with real engineering tools and support for an extensive range of tools, it also makes really nice plots. For this post, we will focus on that part. This is an amazingly capable tool, and I’ll only cover the bare minimum that you need to know to get a result from Ansys Mechanical in and plotted. See the help or online training for more on this fantastic tool.

Ansys EnSight is its own stand-alone program. It can be licensed on its own or as part of various CFD bundles. If you are a larger company that does CFD, you probably have one or more seats.

The program reads Ansys Mechanical APDL result files. These are created when you run Ansys Mechanical and are stored in your project directory under dp0/SYS/MECH and is called file.rst or file.rth. I like to copy the result file from that directory to a folder where I’m going to store my plots and also rename it so I know what it is. For our impeller model, I called it impeller-thin-modal-1.rst.

Once you have your rst file, go ahead and launch EnSight.

Setting up images in Ansys Ensight

That brings up a blank sessions. To get started click File > Open

This will bring up a dialog box for specifying a results file. If you click on the “File type:” dropdown you will see the long list of supported files it can work with. Take a look while you are there and see if any other tools you use are listed. Of course, Ansys FLUENT and CFX are listed. This is first and foremost a CVD post-processor.

But the one we want is Ansys Results (*.rst *.rth *.rfl *.rmg). Chose that then go to the directory where you put your Ansys result file.

EnSight will read the file and put it in a Case. It will list the results as Part 0 under Case 1.

The left part of the screen shows what you have to work with, and the right shows your model. The “Time” control, circled in green, is where you specify what time, substep, or mode you want. The “Parts” control lets you deal with parts, which we really won’t use. And the “Variables” control, circled in orange, is how you specify what result you want to view.

We want to plot deflection, which is a vector. Click on the + sign next to Vectors, and you get a list of what values you can show. The only supported result for model analysis is Displacement__Vibration_mode. Click on that. Then hold down the right mouse button and select “Color Part” > All.

This tells the program to use that result to shade the part. You should now see your contour.

Our example is a modal result. If you use a structural result file, you will be able to plot the displacement vector, as well as many stress results under “Scalars”

Next, you will want to clean things up. Go to View and turn things on and off as you see fit. I like to turn off perspective, the Axis triad, and sometimes the legend.

You may notice the “Lighting…” option. If you really want to get fancy, you can specify various lights to get shadows and such. I like to add a spotlight above and slightly off-center from the part. You can waste a lot of time playing with lights, so try to avoid it if you can.

To pick which mode or timestep you want, use the “Time” control. Clicking on the step forward or step back buttons (triangle with a small rectangle at the base) steps you through the results on your file. Or you can drag the slider.

By default, EnSight shows an undeformed object. If you want to see the deflected shape, click on the part then on the “Displacement” icon above the graphics window. Select the vector result you want to use, displacement in this case.

Note, the default displacement factor may not be a good guess, change that till you get the amount of deflection you want.

These are only a few of the dozens of options available. But we can get most of what we need with these, so let’s look at saving the plot.

Saving your image

Now its time to get a rendered plot. Go to File > Export > Image

There is a lot to do in the “Save image” dialog. First, set the format (red circle.) I always use PNG. Then set the filename and path.

Expand the Advanced area and click “RayTrace the scene” (orange circle). Then you need to tell it how many pixels you want. Go big. You can always shrink it later.

Click OK and generate your plot. Check it out, things may be fine.

Leveraging Ray Tracing in Ansys EnSight

If you want to make the plot even better, go back to the Save image dialog and click “Raytrace settings…” and move the Quality slider all the way to the right. Do know that it can take a while to ray trace a large image with lots of surfaces.

And this is what you get. Click on the image to see it larger.

There is are many more options in this tool. Spend some time exploring these features to get even better plots:

  • You can change the shading of the surface by double-clicking on the part in the “Parts” control and then setting the surface lighting parameters. To get there, click on advanced, scroll down, and expand General. I like to up shininess. Play with these to see what works best.
  • You can also create multiple views in the same window. Right mouse clock in the graphics window and select “Viewports” and pick what you want. You can’t ray trace but you can still get output of multiple windows.

Here is what the output looks like, whithot ray tracing. Not bad.

  • Sometimes you may want to make your part transparent. You can set that in the controls under General, where you can change the lighting.

And you get a very cool plot. I’m not sure when you would use it, but if you need it, it is handy. CFD users need this all the time.

The problem with this tool is that it has so many great features, you could burn a lot of time just changing things. But if you stick to the basics, you can take your plot to that next level for your website or brochure.

Plotting a single part in a multi-part file

There is one last detail to mention. What do you do if your model is an assembly but you only want to plot one part. EnSight treats a given RST file as one part. So you can’t really scope to just the part you want.

The solution is to open your RST file in Mechanical APDL and save out the parts you want to plot in a seperate result file. You do this with the APDL command: rsplit

Here are the steps:

  1. Get into APDL
  2. Use “set” to read the results file
  3. Select the elements you want as separate parts for plotting using standard APDL commands or the GUI.
  4. Create element components for them (cm,name,elem, or the GUI)
  5. Use rsplit to write an RST for each part: rsplit,all,all,cmname where cmname is the component name you created in step 4.
  6. This makes an rst file called cmname.rst. Now use this rst file for the above process

Let’s make a movie next

This post and the previous one focused on high-quality 2D plots. What if you want to show motion? Read on to the third post in the series to learn how to create outstanding videos in Ansys Mechanical – “3 – An update on outputting results in Ansys Mechanical: Making Videos