ImFusion SDK 4.3
ProbeRenderer Class Reference

#include <ImFusion/US/ProbeRenderer.h>

Visualizes the probe corresponding to an Ultrasound sweep in a volumetric view. More...

+ Inheritance diagram for ProbeRenderer:

Detailed Description

Visualizes the probe corresponding to an Ultrasound sweep in a volumetric view.

The probe is represented by a mesh and follows the position of the sweep. There are two default meshes for linear and convex probes which are chosen based on the FrameGeometry of the given sweep. A signal is emitted when the probe changes due to the geometry change of the sweep.

One can set a custom mesh for the probe. It needs to be oriented such that the tip of the probe is at the origin with the Y axis pointing to the sweep. The orientation needs to be burned in such that the raw positions of the vertices are aligned as such without additional pose matrices.

The probe will be colored (red by default) when the tracking quality is below a given threshold (0.2 by default). There is also a beeping sound.

The render is used by the USSweepRecorderController.

Public Member Functions

 ProbeRenderer (UltrasoundSweep *usSweep)
 
void set3DView (GlVolumeView *view)
 The volumetric view to show the probe at.
 
void setTrackingIndex (int index)
 Tracking index of the sweep to use as tracking for the probe position.
 
void setSweep (UltrasoundSweep *usSweep)
 Sets the UltrasoundSweep to render under the probe.
 
void setEnabled (bool flag)
 Enables or disables the probe renderer. When disabled, the tracking pose will not be updated.
 
void setLoadProbeMeshFromFrameGeometry (bool flag)
 Sets if the probe mesh should be automatically loaded from the sweep frame geometry (linear vs convex)
 
void setProbeMesh (std::unique_ptr< Mesh > &&mesh)
 Sets the mesh used to represent the probe in 3D The tip of the probe must be pointing in the positive Y axis.
 
void setVisible (bool visible)
 Show or hide the probe.
 
void setMinimumQuality (double quality)
 Set the minimum quality to accept tracking data.
 
void setColorProbeOnLowQuality (bool flag)
 Sets if the probe should be tinted when tracking has low quality.
 
void setColor (const vec3 &color)
 Sets the default probe color.
 
void setLowQualityColor (const vec3 &color)
 Sets the color to use to tint the probe when tracking has low quality.
 
void setBeepOnLowQuality (bool flag, int intervalMs=1000)
 Sets if a beep should sound when there is low quality. Optionally specify the interval in ms.
 
MeshprobeMesh () const
 Gets the probe Mesh.
 
GlMeshprobeGlMesh () const
 Gets the probe GlMesh.
 
mat4 probeAxialShift ()
 Returns the axial shift applied to the probe.
 
- Public Member Functions inherited from SignalReceiver
 SignalReceiver ()=default
 Default constructor.
 
 SignalReceiver (const SignalReceiver &other)
 Copy constructor, does not copy any existing signal connections from other.
 
SignalReceiveroperator= (SignalReceiver rhs)
 Assignment operator, disconnects all existing connections, does not copy any existing signal connections from rhs.
 
virtual ~SignalReceiver ()
 Virtual destructor disconnects from all connected signals.
 

Public Attributes

Signal signalProbeMeshChanged
 A signal that gets emitted when the probe changes automatically based on the frame geometry of the sweep.
 

Additional Inherited Members

- Protected Member Functions inherited from SignalReceiver
void disconnectAll ()
 Disconnects all existing connections.
 

The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close