void wxContourMainFrame::setVectImages(std::vector<vtkImageData*> imgs)
{
_images = imgs;
- #if defined(__GNUC__)
- std::string str_home(getenv("HOME"));
- #elif defined(_WIN32)
+ #if defined(_WIN32)
std::string str_home(getenv("USERPROFILE"));
+ #elif defined(__GNUC__)
+ std::string str_home(getenv("HOME"));
#endif
std::string strCreaContourDataTmp = str_home + "/.creaContourDataTemp/";
std::vector<std::string> conceptNameVect;
_instantPanel->getInstant(inst);
vtkImageData* img = kernelManager->getImageAtInstant(inst);
- if(img!=NULL){
+ if(img!=NULL)
+ {
_theViewPanel->changeImage(img);
showAxis(false);
}else{
int z = _instantPanel->getConceptDataOf("Axe Depth")->getActualValue();
_theViewPanel->setImageSlice(z);
- }
+ } // if img
}
void wxContourMainFrame::updateInstantAxes()
void wxContourMainFrame::SegmentationOneSlice( int x, int y, int z, int isovalue, int sampling, int method )
{
+printf("EED wxContourMainFrame::SegmentationOneSlice Start\n");
int typeofcontour = 1;
//--Extracting Contour
//vtkImageData *imagedata = _theViewPanel->getSceneManager()->GetImageData();
cpd2->UpdateInformation();
vtkStripper* vtkstripper = vtkStripper::New( );
+ vtkstripper->SetMaximumLength(20000);
//EED 2017-01-01 Migration VTK7
#if VTK_MAJOR_VERSION <= 5
vtkstripper->SetInput( cpd2->GetOutput() );
std::vector<double> vecCtrlPointZ;
+printf("EED wxContourMainFrame::SegmentationOneSlice GetNumberOfLines=%d \n",polyDataResult->GetNumberOfLines() );
+
+int numberOfPointsInCell;
+int numberOfcells=polyDataResult->GetNumberOfCells();
+for (int jj=0; jj<numberOfcells ; jj++)
+{
+ vtkCell* vtkcell = polyDataResult->GetCell( jj );
+ numberOfPointsInCell=vtkcell->GetNumberOfPoints();
+ printf("EED wxContourMainFrame::SegmentationOneSlice cell=%d points=%d \n",jj,numberOfPointsInCell );
+}// for jj
+
+printf("EED wxContourMainFrame::SegmentationOneSlice PrintSelf \n");
+
+polyDataResult->PrintSelf( std::cout, vtkIndent(0) );
+
+
+
double *p;
int ii,size=polyDataResult->GetNumberOfPoints();
int id;
{
id = polyDataResult->GetLines()->GetData()->GetValue(ii);
p = polyDataResult->GetPoint(id);
+printf("EED wxContourMainFrame::SegmentationOneSlice (%d) id=%d px=%f py=%f\n",ii,id, p[0],p[1]);
// double x=p[0];
// double y=p[1];
vecX.push_back( p[0] );
extractcontrolpoints2d->GetSamplingControlPoints( &vecCtrlPointX , &vecCtrlPointY , &vecCtrlPointZ );
}*/
- if (method==0){
+ if (method==0)
+ {
extractcontrolpoints2d->GetInitialControlPoints( &vecCtrlPointX , &vecCtrlPointY , &vecCtrlPointZ );
- }
- else if (method==1){
+ } else if (method==1){
extractcontrolpoints2d->GetControlPoints( &vecCtrlPointX , &vecCtrlPointY , &vecCtrlPointZ );
- }
- else if (method==2){
+ } else if (method==2){
extractcontrolpoints2d->SetSamplingControlPoints( sampling );
extractcontrolpoints2d->GetSamplingControlPoints( &vecCtrlPointX , &vecCtrlPointY , &vecCtrlPointZ );
}
//--Adding contour to the system
-
std::vector<int> actualInstantVector;
_instantPanel->getInstant( actualInstantVector );
actualInstantVector[1]=z;
int j,sizeCtrPt = vecCtrlPointX.size();
manualBaseModel *manModelContour = kernelManager->factoryManualContourModel( typeofcontour );
- manModelContour->SetNumberOfPointsSpline( ((sizeCtrPt/100)+1)*100 );
- if (sizeCtrPt>=3){
+printf("EED wxContourMainFrame::SegmentationOneSlice sizeCtrPt=%d %d %d\n" , sizeCtrPt
+ , ((sizeCtrPt/100)+1)*100 *2
+ , manModelContour->GetNumberOfPointsSpline()
+ );
+ manModelContour->SetNumberOfPointsSpline( ((sizeCtrPt/100)+1)*100 *2 );
+ if (sizeCtrPt>=3)
+ {
for (j=0 ; j<sizeCtrPt ; j++)
{
manModelContour->AddPoint( vecCtrlPointX[j] , vecCtrlPointY[j] , vecCtrlPointZ[j] );
//_theViewPanel->getSceneManager()->configureViewControlTo( theName, manModelContour,spc, typeofcontour ) ;
} // if addedModel
} // if sizeCtrPt
+printf("EED wxContourMainFrame::SegmentationOneSlice End\n");
}
-int wxContourMainFrame::GetImageDataSizeZ(){
+
+int wxContourMainFrame::GetImageDataSizeZ()
+{
return _theViewPanel->GetImageDataSizeZ();
}
-void wxContourMainFrame::GetImageDataRange(double *range){
+void wxContourMainFrame::GetImageDataRange(double *range)
+{
_theViewPanel->GetImageDataRange(range);
}
-void wxContourMainFrame::onSegmentationAllSlice(int minZ,int maxZ,int isovalue,int sampling,int method){
+void wxContourMainFrame::onSegmentationAllSlice(int minZ,int maxZ,int isovalue,int sampling,int method)
+{
//JCP 20-10-08 Undo redo implementation
saveState();
//JCP 20-10-08 Undo redo implementation
valueChInfo->SetInputData(value);
#endif
valueChInfo->SetSpacingScale(spc);
+ valueChInfo->Update();
vtkMetaImageWriter *writerValueImage = vtkMetaImageWriter::New( );
//EED 2017-01-01 Migration VTK7
maskChInfo->SetInputData(mask);
#endif
maskChInfo->SetSpacingScale(spc);
+ maskChInfo->Update();
vtkMetaImageWriter *writerMaskImage = vtkMetaImageWriter::New( );
//EED 2017-01-01 Migration VTK7
}
+void wxContourMainFrame::SetXY(int x, int y)
+{
+ _theViewPanel->SetXY(x,y);
+}
+