**
**/
inredo = 0;
- inundo = 0;
+ inundo = 0;
time_t seconds;
seconds = time (NULL);
**
**/
inredo = 0;
- inundo = 0;
+ inundo = 0;
time_t seconds;
seconds = time (NULL);
stundoredo = tmpdir+"/temp"+intToString(time);
_currentIndex = 0;
-
+
_contourPropagation = NULL;
#if(WIN32)
mkdir(tmpdir.c_str());
}
KernelManagerContour::~KernelManagerContour(){
-}
+}
std::vector<vtkImageData*> KernelManagerContour::getVectImages(){
return vectimages;
change->SetInputConnection(img->GetProducerPort());
change->SetOutputSpacing(1,1,1);
-
+
change->Update();
vectimg[i] = change->GetOutput();
std::map<std::string, ImageSourceThing *> * sourcesMap = new std::map<std::string, ImageSourceThing *>();
std::map<std::string, ImageSectionThing *>* sectionsMap = new std::map<std::string, ImageSectionThing *>();
std::map<std::string, AxeThing *>* axesMap = new std::map<std::string, AxeThing *>();
- std::map<std::string, ContourThing *>* outlinesMap = new std::map<std::string, ContourThing *>();
+ std::map<std::string, ContourThing *>* outlinesMap = new std::map<std::string, ContourThing *>();
for(int i = 0; i < (int)(vectimages.size()); i++){
vtkImageData* selectedimage = vectimages[i];
std::string imgstring = "Source Image "+intToString(i+1);
sourcesMap->insert(std::pair<std::string, ImageSourceThing *>( imgstring, thing));
}
-
+
OutlineModelBuilder * _builder = new OutlineModelBuilder( conceptsFN ,datadir);
_builder->buildImageSource_Envornment( imageSourcesFN, sourcesMap );
- _builder->buildImageSection_Envornment( imageSectionsFN, sectionsMap );
+ _builder->buildImageSection_Envornment( imageSectionsFN, sectionsMap );
_builder->buildAxe_Envornment(axeThingsFN, axesMap );
_builder->buildCountour_Envornment( imageSectionsFN, outlinesMap );
while (k > 0){
char temp = k % 10 + 48;
k = k / 10;
- result = temp + result;
+ result = temp + result;
}
}
return result;
{
return modelManager->createCopyContourOf(anExistingKName, instantNoTouchData);
}
-manualBaseModel* KernelManagerContour::getOutlineByKeyName(std::string cloneName){
+
+manualBaseModel* KernelManagerContour::getOutlineByKeyName(std::string cloneName)
+{
return modelManager->getOutlineByKeyName (cloneName )->getModel();
}
if(inredo > 0){
inredo--;
inundo++;
- std::string str = intToString(inundo);
- filename = stundoredo + str + ".roi";
- //loadState(temp);
+ std::string str = intToString(inundo);
+ filename = stundoredo + str + ".roi";
+ //loadState(temp);
return true;
}
return false;
}
bool KernelManagerContour::onUndo(std::string& filename){
- if(inundo>0){
+ if(inundo>0){
inredo++;
inundo--;
//itoa(inundo, str, 10);
std::string str = intToString(inundo);
-
+
filename = stundoredo + str + ".roi";
-
+
return true;//loadState(temp);
}
return false;
filename = stundoredo + str + ".roi";
return true;
- //saveFileWithContours(temp);
+ //saveFileWithContours(temp);
}
}
modelManager->ChangeContourOfList(keyName, instant);
}
-void KernelManagerContour ::resetAppend(){
- if(isInitContourPropagation()){
+void KernelManagerContour ::resetAppend()
+{
+ if (_contourPropagation!=NULL)
+ {
_contourPropagation->resetAppend();
- }
-}
-
-bool KernelManagerContour::isInitContourPropagation(){
- if(_contourPropagation == NULL){
- _contourPropagation = new ContourPropagation();
- }else{
- return true;
}
- return false;
-
}
-std::string KernelManagerContour::onSpreadAdd( std::vector<double> *vecX, std::vector<double> *vecY, std::vector<double> *vecZ, std::vector<int> instants){
- if(isInitContourPropagation()){
- if (vecX->size()!=0){
-
- int i,size=vecZ->size();
- int actualSlice = instants[1];
- for ( i=0 ; i<size ; i++ )
- {
- (*vecZ)[i] = actualSlice;
- } // for
- _contourPropagation->appendContour(vecX , vecY , vecZ);
- return intToString(actualSlice);
- }
- }
+std::string KernelManagerContour::onSpreadAdd( std::vector<double> *vecX, std::vector<double> *vecY, std::vector<double> *vecZ, std::vector<int> instants)
+{
+ if (_contourPropagation==NULL)
+ {
+ _contourPropagation = new ContourPropagation();
+ }
+
+ if (vecX->size()!=0){
+
+ int i,size=vecZ->size();
+ int actualSlice = instants[1];
+ for ( i=0 ; i<size ; i++ )
+ {
+ (*vecZ)[i] = actualSlice;
+ } // for
+
+ _contourPropagation->appendContour(vecX , vecY , vecZ);
+ return intToString(actualSlice);
+ }
return "";
}
-void KernelManagerContour::getMaxMinZ(double *minZ,double *maxZ){
- if(isInitContourPropagation()){
+
+void KernelManagerContour::getMaxMinZ(double *minZ,double *maxZ)
+{
+ if (_contourPropagation!=NULL)
+ {
_contourPropagation->getMaxMinZ(minZ, maxZ);
}
}
-void KernelManagerContour::CalculeSplinePropagation(){
+
+
+void KernelManagerContour::CalculeSplinePropagation()
+{
_contourPropagation->setInterpolationNumber(100);
_contourPropagation->CalculeSplinePropagation();
}
-manualBaseModel* KernelManagerContour::GetPoints(int z,int type, std::vector<double>* vecCtrlPointX,std::vector<double>* vecCtrlPointY,std::vector<double>* vecCtrlPointZ, std::string& theName,int typeofcontour, std::vector<int> tempVector){
-
-
+manualBaseModel* KernelManagerContour::GetPoints(int z,int type, std::vector<double>* vecCtrlPointX,std::vector<double>* vecCtrlPointY,std::vector<double>* vecCtrlPointZ, std::string& theName,int typeofcontour, std::vector<int> tempVector)
+{
bool addedModel = false;
manualBaseModel* manModelContour=NULL;
int idTmp = _contourPropagation->FindIdWithZ(z);
if (type==0) // Initial Points
- {
+ {
_contourPropagation->GetInitialControlPoints( idTmp , vecCtrlPointX,vecCtrlPointY,vecCtrlPointZ);
- }
+ }
if (type==1) // Automatique Method
{
_contourPropagation->GetControlPoints( idTmp ,vecCtrlPointX,vecCtrlPointY,vecCtrlPointZ);
if(!addedModel){
manModelContour = NULL;
}
-
+
}// ifSliceKeyContourExist
return manModelContour;
}
manualBaseModel * KernelManagerContour::factoryManualContourModel(int typeContour)
-{
+{
manualBaseModel *manModelContour=NULL;
// Creating the model
{
manModelContour = new manualContourModelLine();
}
-
+
// points
if (typeContour==7)
{
ContourThing **contourthing = vectcont[i];
vectname.push_back((*contourthing)->getName());
}
- return vectname;
+ return vectname;
}
std::vector<ContourThing**> KernelManagerContour::getOutlinesAtInstant(Instant* instant ){
}
std::string KernelManagerContour::parseOsirixFile(std::string filename){
-
+
#ifdef ParserOsirix_BUILD
vtkImageData* sourceimage;
return p.getContoursFileName();
#else
return "";
-#endif
+#endif
}