test #818: Ultrasound simulator now supports generating images from multiple models (e.g., soft tissue, bone, needle). Each model is defined by a surface mesh and material properties. A simple physics-based model is used: diffuse reflection from material surfaces, attenuation (absorption+reflection), and noise (using procedural texture: Perlin noise) is simulated.

Next steps: Performance could be improved. Beamwidth and specular reflection is not yet included in the model.

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2980 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #818: Fixed linux build error


git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2981 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #818: Improved performance of the US simulator. Removed magic numbers (exposed them as parameters in the config file).

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2982 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #818: Implemented transducer/SpatialModel overlap resolution (scanline/SpatialModel intersections are searched TransducerSpatialModelMaxOverlapMm away from the transducer surface, default is 10mm)

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2983 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #818: Adjustments for proper reflection from transducer/air surface (no image is visible when the transducer is in the air)

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2984 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #820: Added UseLastTransformsOnReceiveTimeout option to OpenIGTLinkTracker device. Added updated US simulator config file that uses this function.

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2985 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #818: Updated US simulator baseline image

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2986 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #820: Cleaned up vtkOpenIGTLinkTracker. vtkOpenIGTLinkTracker, vtkUsSimulatorVideoSource, and vtkOpenIGTLinkServer no longer report non-relevant warnings or errors during connection setup.

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2987 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #818: Added OpenIGTLinkIF.pushOnConnection node attributes to OpenIGTLinkIF output nodes to make sure the PlusServer receives all the current transform values from Slicer on connection (see http://www.na-mic.org/Bug/view.php?id=3501)

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2988 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #818: Updated pushOnConnect attribute name to new OpenIGTLinkIF implementation

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2989 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #818: Added specular (incidence angle dependent) reflection to the US simulator. In Test_PlusConfiguration_SimulatedUS.xml tuned vessel simulation model to look more realistic.

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2990 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
fixed #822 removing references to qt3 function asString

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2991 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
Fixed #823: MetaIO image orientation of reconstructed volumes has changed to LPS (which is encoded in the MetaIO header as AnatomicalOrientation = RAI)

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2992 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
re #822 eeeehhhh why not, removing all references to qt3 legacy functions

manually confirmed correctness of colors and behaviour, auto tests in pluslib ran but not necessary as all items are in plusapp

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2993 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #814 no longer changing fixed signal offset when temporal calibration completed to enable independent pairwise calibration

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2994 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #666 devices with input now have an optional grace period to reduce severity of reported missing data. this gives input devices a chance to create output data

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2995 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #666 apply similar idea to open igt link server to more gracefully report missing input

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2996 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #825: Added more detailed logging to MicronTracker

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2997 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #825: Add

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2998 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f
test #643 Changing the approach to logging unknown or missing tools.

Optional device tag configuration option "ReportUnknownToolsOnce=TRUE/FALSE" enables a singular report of a missing unknown tool.

Also changed the handling of missing tools in the openIGT link tracker to be less severe.

These changes combined should enable more graceful handling of the B rainLab tracking system.

This combined with the resolved re #666 should give the user enough control to successfully connect and receive data.

git-svn-id: https://subversion.assembla.com/svn/plus/trunk@2999 c04e96f8-ac36-4ff2-8b34-4a5e34ef045f