Frequently asked questions (based on v1.0.0)
Q: What are the hardware requirements of the PIPER software?
A graphics card with support of OpenGL version at least 3.2 is required for full functionality of the 3D model viewer. You will likely be able to visualize the model with an older graphics card as well, but most functions related to interactive manipulation with the model (selecting, element blanking...) will work only in a limited way, or not at all. You will see a warning in the log window if your card does not support OpenGL 3.2.
Otherwise there are no particular hardware requirements, though some modules perform complex computations, so a recent multicore processor and at least 4 GB of RAM is advised.
Q: I am running PIPER through a remote desktop and it keeps crashing, what is wrong?
Most free remote desktop solutions, and some of the paid as well, are not able to launch an OpenGL-based application like PIPER over remote desktop succesfully, even if the remote computer has a sufficient hardware. Possible solutions are:
Use a screen sharing rather than remote desktop software. The difference is that a screen sharing software will run everything in the context of the remote computer and then simply streams the whole screen to the user. The downside is that unless you have a very fast connection, the interaction will likely feel slow and laggy.
Make a batch file that will first disconnect you from the remote desktop and then run PIPER; this way PIPER will be turned on fully in the remote computer's context using its hardware correctly. Then just wait for a few seconds and re-connect. Since PIPER is already launched, it will keep running in the context in which it was created and you should be able to use it.
Q: For my application, I need to scale and position the PIPER scalable HBM. Which operation should I perform first?
When scaling the PIPER HBM with the child module, always perform the scaling first. The target and source Kriging points are calculated in the model original sitting position.
Q: When positioning with the pre-position module, I cannot reach the specified target (e.g. I want to rotate the elbow joint of 25 degrees, but the PIPER tool stops at 23 degree). What can I do to solve this issue?
Probably, the physical constrains of the model are not compatible with your target position.
• Remove eventual over-constrains of the model (x,y,z,rx,ry,rz)
• Use a smaller Time step in the Control panel to have higher target precision
• Force the desired position by removing bone collisions. TBN: This may cause distortion of the mesh and penetration of elements (not recommended).
• Increase the controller's stiffness
Q: Can I position simultaneously different parts of the body?
Choose joint or frame positioning. Several targets can be specified simultaneously and, consequently, different parts of the body can be positioned simultaneously. However, it is recommended to use positioning by relative frame and joint positioning sequentially, to avoid software instabilities.
Q: What can I do if the bones penetrate the flesh/skin during positioning?
When working with large ranges of motion, activating the articular capsules may help avoiding penetration of the bone into the flesh. In the PIPER scalable HBM, articular capsules are available for positioning of the knee and elbow joints.
Q: I have positioned my model with the pre-position module but, when I select another module for continuing with my workflow, the positioning is not effective. What should I do?
After positioning, click on the botton update located in the Update model panel. If you do not update the node position, the positioning will not take effect.
Q: I exported my model to vendor files after positioning but the quality of the elements is severely affected. What can I do?
After positioning, it is always recommended to use the smooth module for correction of eventual mesh distortions. Both surface smoothing and transform smoothing can be performed.
Is there a way to limit range of motion in the joints? (see issue 9)
There is currently no possibility to define angular values to limit range of motion for joints. The only thing that can limit range of motion in joint is to activate collisions between bones. In that way, penetration between bone entities are not allowed, it defines geometrical constraints for joint motion.
Q: How long does the transformation smoothing require?
The transformation smoothing may require several minutes to be completed, depending on the number of selected elements and the complexity of the model. It is recommended to limit the smoothing to the portion of the mesh affected by distortion for avoiding unnecessary computation time. Also the overlap parameters have a large effect on the computing time.
Q: I am smoothing the surface of an entity but I am not satisfied with the result. What can I do?
You may try to smooth more the surface of an entity by
• Increasing the Number of iterations of the algorithm; the higher, the smoother will the result be. At least 5 iterations are recommended.
• Reducing the Pass band value; the lower, the smoother (i.e. more regular) will the resulting mesh be.
The default values, number of iterations 20 and pass band value 0.1, are a reasonable setting which are sufficient most of the cases.
If that is still not enough, select the region of interest and export it with a python script to the obj (exportselectedgeometrytoobj.py) or the dyna (exportselectedgeometrytodyna.py) format. Use software such as Meshlab or LS-Prepost to smooth it. After that, you can simply update the node coordinates using the corresponding update python script (e.g. updateNodesFromObj.py).
Q: I want to perform both surface and transformation smoothing. Which operation should I perform first?
When smoothing entities, it is recommended to perform the surface smoothing first. The surface smoothing method relaxes the node positions on a surface of an entity and pre-processes surfaces that you intend to use as targets for transformation smoothing later.