Exploded View - directions & distance?

I like the idea of the Exploded View, but in my example of a wind turbine hub it looks not so usable. Parts which are directly mounted to the hub are more fare away than the blade.



For me it make more sense, when the solids in the Exploded View are still in the same order than in the normal view.
You can try the behavior by yourself. I provide the pmx file here:
Wind turbine hub calculation in PrePoMax – fatigue.pro

1 Like

Well, creating an automatic exploded view needs some instructions behind for the algorithm in the background. I am using the axis oriented bounding boxes (BBs) for determination of the overlapping and the algorithm stars with sorting the parts based on the size of their BBs. Then it goes through the list from the biggest BB to the smallest BB and moves the current BB it if it overlaps any previously visited BB.

For your assembly some other procedure might work better, but then it will not work for all other assemblies.

2 Likes

Thanks for your explanation, but I expected that an exploded view is based on the direction from the origin (or a selected point of explosion) to the middle of the every BB and then moved in that directions combined with a scale factor applied on that distance.
Is overlapping not acceptable? If we talk about a View then overlapping can be accepted, because that can be readjusted with the scale factor for the distance.

With a small scale factor, we would able to only add a small gap between the solids and we can pick easily the contact surfaces.

The problem I had with such approach, to compute the direction from the origin, can be seen with an example of the bearing. Both, internal and external bearing rings have the same position of their center. In this case both of them would always be moved for the same amount in the same direction. No explosion would occur :slight_smile:

But exploded view was added to enable simpler selection of overlapping surfaces and thus, the idea was to remove overlapping. I checked some CAD programs how it is done and did not find any better idea. So I am still open to suggestions.

A side note - I would definitely remove text engravings from your model.

@fatigue.pro Did you check how FreeCAD handles exploded view of this assembly ? This could provide an interesting comparison and maybe some ideas for improvements.

Normally yes - to reduce the mesh size. But I assume that they were left here on purpose since this model is used for presentation.

I thought you count the solids. And then the first solid get the normal scale factor e.g. 1.5:
(1.5+(0*(1.5-1))=1.5 * distance of first solid → first solid
(1.5+(1*(1.5-1))=2 * distance of second solid → second solid
(1.5+(2*(1.5-1))=2.5 * distance of third solid → third solid
(1.5+(n*(1.5-1))=x * distance of n-th solid → n-th solid

But the solids must be counted sector by sector!
If Z is normal direction I would suggest in plane XY four sectors for counting (can be also 3D):
From the BB mid coordinates i suggest:
sign(absmax(X,Y)) * absmax(X,Y) and that should be -X, +X , -Y or +Y sector

In standard FreeCAD i never found an exploded view option. That is the reason why i like this view in PrePoMax.

FEAnalyst is right. It is much easier to make screen shots or animated views with a that kind of watermark.

2 Likes

There’s a separate workbench for this, you can download it using Addon Manager: ExplodedAssembly Workbench - FreeCAD Documentation

another software use simplification in option menu of exploded view:

  • space XYZ
  • plane XY, XZ, YZ
  • axes X,Y, Z

and explosion scale

but, current implementation still usable to easy selection of an object or face when it combine with rotation by mouse.

That is not comparable. In FreeCAD is no automatic mode. You must specify every group and path.
Here is an example definition

When I searched for solutions, I concluded that without knowing the assembly constraints, this process cannot be done correctly for all assemblies. So I chose the one that I though would work in most cases.

3 Likes

Maybe I could change the algorithm to first sort the parts by their distance from the central point, and then if the distance is similar, decide which part moves first based on their size. In this case, I think the central point should be precomputed as the center of the assembly with the possibility that the user can change it.

2 Likes

For what its worth: the exploded view in ppm has been a godsend to me. I find it super useful, very often. Well done :clap: if its about to get even better - awesome :slightly_smiling_face:

1 Like

:+1: Sometimes it works perfect for me. Here an example of a steel wheel. :muscle:

3 Likes

I found a comparable function in ANSYS Mechanical (described a bit here 10 Useful New Features in ANSYS Mechanical 16.0 - PADT, see number 10).
So i tried this with the wind turbine hub model and it looks not much better. It is still in the right order, but the direction & the distance is not so useful.

In the newest version, I have added support for the “Center point” method of the exploded view.

The user enters (can not select on 3D view) the center point and then all parts are exploded based on the scaled distance between their bounding box center and the entered point.

4 Likes

I have a question about this subject. I am trying to write a Python code to automate the process of generating an exploded view. The idea is to input the file as a STEP file and get the output as an exploded view. The problem is I don’t know where to start. Could anyone help me with that?

That is not a simple task. You will need the geometry library first to read the CAD geometry. I use OpenCascade. Maybe try using Gmsh since it supports CAD and geometry manipulation.

The easiest way to create an exploded view is to determine the coordinate axis-oriented bounding boxes for all parts. Then, compute the center point of the exploded view. Then, compute the distances from the center point to each bounding box center. In the end, use a scaling factor to increase these distances and move the parts to new positions of the bounding box centers.

First, I am really thankful for your response. I don’t know how I could thank you enough. I understand this is not an easy task, but I am working on a project related to this and didn’t know where to start. You mentioned something about a geometry library, and here was my problem: I didn’t know how to read this STEP file. I have tried using FreeCAD, but it was not helpful, or the documentation was not that great. I will first try to use what you have suggested to me. If I can read and deal with the STEP file, it will make the idea easier. Then, I will try your approach.

Speaking about FreeCAD, it has add-on Exploded Assembly workbench. Maybe it could help you. Especially since it’s Python-based: GitHub - JMG1/ExplodedAssembly: FreeCAD workbench to create exploded views and animations of assemblies