void GraphicalAxes3D::addCaption(const QString& label, Vector3D pos, Vector3D color) { vtkCaptionActor2DPtr cap = vtkCaptionActor2DPtr::New(); cap->SetCaption(cstring_cast(label)); cap->GetCaptionTextProperty()->SetColor(color.begin()); cap->LeaderOff(); cap->BorderOff(); cap->GetCaptionTextProperty()->ShadowOff(); cap->SetHeight(mFontSize); cap->SetVisibility(mActor->GetVisibility()); mCaption.push_back(cap); mCaptionPos.push_back(pos); }
void OrientationAnnotationSmartRep::createAnnotation() { if (!mSlicer) return; Transform3D rMs = mSlicer->get_sMr().inv(); // update texts for (unsigned int i=0; i<mPlaneDirections_s.size(); ++i) { QString text = this->determineAnnotation(mPlaneDirections_s[i], rMs); mOrientation->SetText(i, cstring_cast(text)); } }
IGTLinkUSStatusMessage::Pointer IGTLinkConversion::encode(ProbeDefinitionPtr input) { IGTLinkUSStatusMessage::Pointer retval = IGTLinkUSStatusMessage::New(); retval->SetOrigin(input->getOrigin_p().data()); // 1 = sector, 2 = linear retval->SetProbeType(input->getType()); retval->SetDepthStart(input->getDepthStart());// Start of sector in mm from origin retval->SetDepthEnd(input->getDepthEnd()); // End of sector in mm from origin retval->SetWidth(input->getWidth());// Width of sector in mm for LINEAR, Width of sector in radians for SECTOR. retval->SetDeviceName(cstring_cast(input->getUid())); return retval; }
void ToolUsingIGSTK::createPolyData() { QDir dir; if (!mTool->getInternalStructure().mGraphicsFileName.isEmpty() && dir.exists(mTool->getInternalStructure().mGraphicsFileName)) { vtkSTLReaderPtr reader = vtkSTLReaderPtr::New(); reader->SetFileName(cstring_cast(mTool->getInternalStructure().mGraphicsFileName)); reader->Update(); mPolyData = reader->GetOutput(); } else { mPolyData = Tool::createDefaultPolyDataCone(); } }
void IgstkTool::addLogging() { bool logging = settings()->value("IGSTKDebugLogging", true).toBool(); if (logging) { std::ofstream* loggerFile = new std::ofstream(); QString logFile = mInternalStructure.mLoggingFolderName + "Tool_" + mInternalStructure.mName + "_Logging.txt"; loggerFile->open(cstring_cast(logFile)); mLogger = igstk::Logger::New(); mLogOutput = itk::StdStreamLogOutput::New(); mLogOutput->SetStream(*loggerFile); mLogger->AddLogOutput(mLogOutput); mLogger->SetPriorityLevel(itk::Logger::DEBUG); mTool->SetLogger(mLogger); } }
void ToolImpl::createToolGraphic() { QString toolGraphicsFileName = this->getToolFileToolStructure()->mGraphicsFileName; QDir dir; if (!toolGraphicsFileName.isEmpty() && dir.exists(toolGraphicsFileName)) { vtkSTLReaderPtr reader = vtkSTLReaderPtr::New(); reader->SetFileName(cstring_cast(toolGraphicsFileName)); reader->Update(); mPolyData = reader->GetOutput(); } else { mPolyData = Tool::createDefaultPolyDataCone(); } }
void CaptionText3D::setText(QString text) { mText->SetCaption(cstring_cast(text)); }
void FollowerText3D::setText(QString text) { mText->SetText(cstring_cast(text)); }
igtl::ImageMessage::Pointer IGTLinkConversionSonixCXLegacy::encode(ImagePtr image) { vtkImageDataPtr rawImage = image->getBaseVtkImageData(); int size[] = {256, 256, 1}; // image dimension rawImage->GetDimensions(size); double spacingD[3]; float spacingF[3]; rawImage->GetSpacing(spacingD); spacingF[0] = spacingD[0]; spacingF[1] = spacingD[1]; spacingF[2] = spacingD[2]; int* svsize = size; int svoffset[] = {0, 0, 0}; // sub-volume offset int scalarType = -1; if (rawImage->GetNumberOfScalarComponents()==4) { if (rawImage->GetScalarType()==VTK_UNSIGNED_CHAR) { scalarType = igtl::ImageMessage::TYPE_UINT32;// scalar type } } if (rawImage->GetNumberOfScalarComponents()==1) { if (rawImage->GetScalarType()==VTK_UNSIGNED_SHORT) { scalarType = igtl::ImageMessage::TYPE_UINT16;// scalar type } else if (rawImage->GetScalarType()==VTK_UNSIGNED_CHAR) { scalarType = igtl::ImageMessage::TYPE_UINT8;// scalar type } } if (scalarType==-1) { std::cerr << "Unsupported file type based on vtk " << rawImage->GetScalarTypeAsString() << std::endl; return igtl::ImageMessage::Pointer(); } //------------------------------------------------------------ // Create a new IMAGE type message igtl::ImageMessage::Pointer imgMsg = igtl::ImageMessage::New(); imgMsg->SetDimensions(size); imgMsg->SetSpacing(spacingF); imgMsg->SetScalarType(scalarType); imgMsg->SetDeviceName(cstring_cast(image->getUid())); imgMsg->SetSubVolume(svsize, svoffset); imgMsg->AllocateScalars(); IGTLinkConversionBase baseConverter; baseConverter.encode_timestamp(image->getAcquisitionTime(), imgMsg); int fsize = imgMsg->GetImageSize(); memcpy(imgMsg->GetScalarPointer(), rawImage->GetScalarPointer(0,0,0), fsize); // not sure if we need to copy igtl::Matrix4x4 matrix; GetIdentityMatrix(matrix); imgMsg->SetMatrix(matrix); return imgMsg; }