14 #include <vtkXMLDataElement.h>
15 #include <vtkXMLUtilities.h>
16 #include <vtkImageData.h>
17 #include <igtlioUsSectorDefinitions.h>
93 retval = retval && (
mOrigin.size() == 3);
94 retval = retval && ((
mAngles.size() == 2) || (
mAngles.size() == 4));
96 retval = retval && (
mDepths.size() == 2);
132 QString name = QString(header.deviceName.c_str());
133 QString value = message;
147 std::vector<double> ProbeDefinitionFromStringMessages::toDoubleVector(QString values, QString separator)
const
149 std::vector<double> retval;
150 QStringList valueList = values.split(separator);
151 for (
int i = 0; i < valueList.size(); ++i)
153 double doublevalue = valueList[i].toDouble();
154 retval.push_back(doublevalue);
161 int intValue = value.toInt();
162 double doubleValue = value.toDouble();
163 std::vector<double> doubleVector = toDoubleVector(value);
173 if (name == IGTLIO_KEY_PROBE_TYPE)
181 else if (name == IGTLIO_KEY_ORIGIN)
189 else if (name == IGTLIO_KEY_ANGLES)
197 else if (name == IGTLIO_KEY_BOUNDING_BOX)
205 else if (name == IGTLIO_KEY_DEPTHS)
213 else if (name == IGTLIO_KEY_LINEAR_WIDTH)
221 else if (name == IGTLIO_KEY_SPACING_X)
230 else if (name == IGTLIO_KEY_SPACING_Y)
238 else if (name ==
"SpacingZ")
292 probeDefinition->setUid(uid);
293 probeDefinition->setOrigin_p(origin_p);
294 probeDefinition->setSpacing(spacing);
295 probeDefinition->setClipRect_p(this->getBoundinBox());
297 probeDefinition->setSize(this->getSize());
298 probeDefinition->setUseDigitalVideo(
true);
300 return probeDefinition;
310 CX_LOG_ERROR() <<
"ProbeDefinitionFromStringMessages::initProbeDefinition: Incorrect probe type: " <<
mSectorInfo->mProbeType;
312 return probeDefinition;
315 double ProbeDefinitionFromStringMessages::getWidth()
329 QSize ProbeDefinitionFromStringMessages::getSize()
331 Eigen::Array3i dimensions(
mSectorInfo->mImage->getBaseVtkImageData()->GetDimensions());
332 QSize size(dimensions[0], dimensions[1]);
336 DoubleBoundingBox3D ProbeDefinitionFromStringMessages::getBoundinBox()
const
340 this->getBoundingBoxThirdDimensionStart(),
341 this->getBoundingBoxThirdDimensionEnd());
345 double ProbeDefinitionFromStringMessages::getBoundingBoxThirdDimensionStart()
const
353 double ProbeDefinitionFromStringMessages::getBoundingBoxThirdDimensionEnd()
const