Version 2.2.3 contains a triplet of small bug fixes that have bitten some users. I have been putting these off waiting for an upcoming feature release, but now seems to be the time to get these out there.
Bug fixes in this release:
- Threaded version check
- Fix CG contribution of point mass components
- Fix CFDMesh half models when a surface is actually cut
Placing the version check in its own thread allows VSP execution to continue during the version check. This is significant for situations where the computer has internet connectivity, but the VSP web server is experiencing problems. The HTTP library used by VSP does not let you change the timeout from 60 seconds, so in these situations, VSP paused for 60 seconds on startup.
The CG contribution of point mass components was calculated using their local translation — ignoring the translation of any components they were attached to. This fix makes their contribution use their actual global x,y,z position.
When the half model option is selected for CFDMesh, VSP makes two passes at eliminating geometry in the -Y domain. First, before any meshing occurs, surfaces which fully lie in that domain are eliminated. Then, the remaining surfaces are sliced by a Y=0 plane. That intersection line is obeyed by the mesher, and any triangles whose center point lies in the wrong domain are eliminated after mesh generation (when interior triangles are culled).
The second process needs the cutting plane to be a fully-fledged plane, including a curvature based target map. Prior testing had only exercised the first code path (which could complete with an incomplete cutting plane). This bug basically amounted to some null pointer dereferences and improper allocation/setup for the cutting plane.