BBTK_BLACK_BOX_IMPLEMENTATION(DrawAxe3D,bbtk::AtomicBlackBox);
void DrawAxe3D::Process()
{
+printf("EED DrawAxe3D::Process Start\n");
std::vector< double > vectx = bbGetInputlstPointX();
std::vector< double > vecty = bbGetInputlstPointY();
std::vector< double > vectz = bbGetInputlstPointZ();
+printf("EED DrawAxe3D::Process size vector %d %d %d\n",vectx.size(),vecty.size(),vectz.size() );
+
// vtkImageData* img = bbGetInputImage();
unsigned int i;
double spc[3];
spc[1]=1;
spc[2]=1;
- if(!vectx.empty()&&!vecty.empty()&&!vectz.empty()){
+ if(!vectx.empty()&&!vecty.empty()&&!vectz.empty())
+ {
+printf("EED DrawAxe3D::Process 1\n");
vtkPoints* allPoints = vtkPoints::New( );
vtkCellArray* allTopology = vtkCellArray::New( );
allTopology->InsertNextCell( vectx.size() );
+printf("EED DrawAxe3D::Process 2\n");
for( i = 0; i < vectx.size( ); i++) {
//multiplicar ver parametros spacing, en maracas cuando se toca la imagen y se ve dycom
//hay parametro dicom, vtkImagedata valor spacing y esos datos hay que multiplicar al polydata
allPoints->InsertNextPoint( vectx[i]*spc[0], vecty[i]*spc[1], vectz[i]*spc[2] );
allTopology->InsertCellPoint( i );
+printf("EED DrawAxe3D::Process 3\n");
} // rof
mallData->SetPoints( allPoints );
mallData->SetLines( allTopology );
+printf("EED DrawAxe3D::Process 4\n");
allPoints->Delete();
allTopology->Delete();
+printf("EED DrawAxe3D::Process 5\n");
}
mvtkactor->GetProperty()->SetColor( bbGetInputColour()[0],
bbGetInputColour()[1],
bbGetInputColour()[2] );
+printf("EED DrawAxe3D::Process 6\n");
//EC Axe Opacity property added
///Default Values
double opacity=bbGetInputOpacity();
mvtkactor->GetProperty()->SetOpacity( opacity );
+printf("EED DrawAxe3D::Process 7\n");
if ( bbGetInputTransform()!=NULL )
{
+printf("EED DrawAxe3D::Process 8\n");
mvtkactor->SetUserTransform( bbGetInputTransform() );
}
// Interface Update
if ((firsttime==true) && (bbGetInputRenderer()!=NULL ))
{
+printf("EED DrawAxe3D::Process 9\n");
firsttime=false;
bbGetInputRenderer()->AddActor( mvtkactor );
}
+printf("EED DrawAxe3D::Process End\n");
}
+
+
+
void DrawAxe3D::bbUserSetDefaultValues()
{
firsttime = true;
colour.push_back(0.0);
bbSetInputColour(colour);
bbSetInputOpacity(1.0);
+ bbSetInputRenderer(NULL);
+ bbSetInputTransform(NULL);
}