Extracting an aircraft surface

Aircraft simulations sometimes embed the surface of the aircraft in a 3D mesh that represents the air around the aircraft, yet none of the aircraft itself is meshed. This can make it a little challenging to create a visualization of the aircraft surfaces since they are just part of the external surfaces of the entire volume. It is possible to use a combination of operators and expressions to isolate the aircraft surface from the overall mesh.

yf17 example

There is a CGNS dataset that embeds a model of a yf17 into a 3D dataset representing the air around the aircraft. This example shows how to use various operators and expressions to isolate the surfaces for a nice visualization.

Create some expressions that we'll use to throw away parts of the external surface we don't want. We'll use area and a surface normal dot product to get the cells that we want.

A = area(Zone1)
N = if(gt(coord(Zone1)[1], 0), dot(point_surface_normal(Zone1), {0,-1,0}), 2)
  1. Add an External Surface operator to make the plotted dataset only contain the external surfaces and not the 3D cells from the original model.
  2. Add a DeferExpression operator and add A and N to it to make sure that they are evaluated after the External Surface operator has been applied.
  3. Add a Threshold operator and add A and N to it. For A, throw away all small triangles by setting the max value for A to 0.2. For N, throw away all values above 1.
  4. Add a Reflect operator
Aircraft1.png Aircraft2.png
Plot of the original dataset. Plot of the extracted surfaces.
Aircraft plotlist.png Aircraft threshold.png
The plot with the operators needed to extract the surface. The Threshold attributes to extract the surface.