]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuShowNPoints.cxx
bca02d79090bb07defe2a29f865e7a63e06305a4
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuShowNPoints.cxx
1 /*# ---------------------------------------------------------------------
2 #
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
4 #                        pour la Sant�)
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
8 #
9 #  This software is governed by the CeCILL-B license under French law and
10 #  abiding by the rules of distribution of free software. You can  use,
11 #  modify and/ or redistribute the software under the terms of the CeCILL-B
12 #  license as circulated by CEA, CNRS and INRIA at the following URL
13 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 #  or in the file LICENSE.txt.
15 #
16 #  As a counterpart to the access to the source code and  rights to copy,
17 #  modify and redistribute granted by the license, users are provided only
18 #  with a limited warranty  and the software's author,  the holder of the
19 #  economic rights,  and the successive licensors  have only  limited
20 #  liability.
21 #
22 #  The fact that you are presently reading this means that you have had
23 #  knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */
25
26 #include "bbmaracasvisuShowNPoints.h"
27 #include "bbcreaMaracasVisuPackage.h"
28
29
30 namespace bbcreaMaracasVisu
31 {
32
33
34 //------------------------------------------------------------------------
35 //------------------------------------------------------------------------
36 //------------------------------------------------------------------------
37 //------------------------------------------------------------------------
38 WidgetShowNPointsBox::WidgetShowNPointsBox(wxWindow *parent,  bbcreaMaracasVisu::ShowNPoints *box, int type)
39     : WidgetShowNPoints( parent, type)
40 {
41         mbbShowNPoints=box;
42 }
43
44 //------------------------------------------------------------------------
45 WidgetShowNPointsBox::~WidgetShowNPointsBox()
46 {
47 }
48
49
50 //------------------------------------------------------------------------
51 void WidgetShowNPointsBox::UpdatePoints(wxCommandEvent &event)
52 {
53         WidgetShowNPoints::UpdatePoints(event);
54         //Difference in Radio for text placement
55 //      double radio=GetModelShowNPoints()->GetRadio();
56 //      this->mopacity = sdrOpacity->GetValue()/100.0;
57 //      GetModelShowNPoints()->SetRadio( sdrRadio->GetValue() ) ;
58 //      radio = sdrRadio->GetValue();
59         //NTU refresh the inputs
60         mbbShowNPoints->bbSetInputOpacity( GetOpacity() );
61         mbbShowNPoints->bbSetInputRadio( GetRadio() );
62         // EED 
63 //      RefreshPoints();
64 }
65
66
67 //------------------------------------------------------------------------
68 void WidgetShowNPointsBox::SetOutputBox()
69 {
70         WidgetShowNPoints::SetOutputBox();
71
72 //      wxString strTmp;
73 //      strTmp.Printf(_T("Nbr of points: %d"), GetModelShowNPoints()->GetLstPointsSize() );
74 //      txtNrPoints->SetLabel(  strTmp );
75
76         //--BBTK
77     mbbShowNPoints->bbSetOutputlstPointsX( GetLstPointsX() );
78     mbbShowNPoints->bbSetOutputlstPointsY( GetLstPointsY() );
79     mbbShowNPoints->bbSetOutputlstPointsZ( GetLstPointsZ() );
80     mbbShowNPoints->bbSetOutputlstLabels( GetLstLabels() );
81     mbbShowNPoints->bbSetOutputlstIndexs( GetLstIndexs() );
82     //    mbbShowNPoints->bbSetOutputlstPointsX( GetModelShowNPoints()->GetLstPointsX() );
83     //    mbbShowNPoints->bbSetOutputlstPointsY( GetModelShowNPoints()->GetLstPointsY() );
84     //    mbbShowNPoints->bbSetOutputlstPointsZ( GetModelShowNPoints()->GetLstPointsZ() );
85     //    mbbShowNPoints->bbSetOutputlstLabels( GetModelShowNPoints()->GetLstLabels() );
86         mbbShowNPoints->bbSignalOutputModification();
87 }
88
89
90
91 //------------------------------------------------------------------------
92 //------------------------------------------------------------------------
93 //------------------------------------------------------------------------
94 //------------------------------------------------------------------------
95
96
97
98
99 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,ShowNPoints)
100 BBTK_BLACK_BOX_IMPLEMENTATION(ShowNPoints,bbtk::WxBlackBox);
101
102 //-----------------------------------------------------------------
103 void ShowNPoints::Process()
104 {
105         if (mwxwidget!=NULL)
106         {
107                 mwxwidget->SetRenderer( bbGetInputRenderer() );
108                 mwxwidget->SetReferencePoint( bbGetInputIn() );
109                 mwxwidget->SetImage( bbGetInputImage() );
110                 mwxwidget->SetColour( bbGetInputColour() );
111                 mwxwidget->SetOpacity( bbGetInputOpacity() );
112                 mwxwidget->SetRadio( bbGetInputRadio() );
113
114         if (firsttime==true)
115         {
116             firsttime=false;
117             if ( mwxwidget->GetModelShowNPoints()->GetFirstTime()==false )
118             {
119                 mwxwidget->DetectCollectionActive();
120             }
121             if ( mwxwidget->GetModelShowNPoints()->GetFirstTime()==true )
122             {
123                 mwxwidget->GetModelShowNPoints()->SetFirstTime(false);
124                 mwxwidget->SetInitLstPoints( bbGetInputInitLstPointsX() , bbGetInputInitLstPointsY() , bbGetInputInitLstPointsZ() , bbGetInputInitLstLabels() ,  bbGetInputInitLstIndexs() );
125             }
126         } // firsttime OJO machete Eduardo pour Adreas a verificar
127         
128         mwxwidget->AutoAddPoints();
129         mwxwidget->TrackingPoint();
130         bbSetOutputlstPointsX( mwxwidget->GetLstPointsX() );
131         bbSetOutputlstPointsY( mwxwidget->GetLstPointsY() );
132         bbSetOutputlstPointsZ( mwxwidget->GetLstPointsZ() );
133         bbSetOutputlstLabels( mwxwidget->GetLstLabels() );
134         bbSetOutputlstIndexs( mwxwidget->GetLstIndexs() );
135
136 //        bbSetOutputlstPointsX( mwxwidget->GetModelShowNPoints()->GetLstPointsX() );
137 //        bbSetOutputlstPointsY( mwxwidget->GetModelShowNPoints()->GetLstPointsY() );
138 //        bbSetOutputlstPointsZ( mwxwidget->GetModelShowNPoints()->GetLstPointsZ() );
139  //       bbSetOutputlstLabels( mwxwidget->GetModelShowNPoints()->GetLstLabels() );
140         bbSetOutputWidgetShowNPoints( (WidgetShowNPoints*)mwxwidget );
141         } // mwxwidget
142 }
143
144 //-----------------------------------------------------------------
145 void ShowNPoints::CreateWidget(wxWindow* parent)
146 {
147         mwxwidget = new WidgetShowNPointsBox( parent, this, bbGetInputType() );
148     bbSetOutputWidget( mwxwidget );
149 }
150
151 //-----------------------------------------------------------------
152 void ShowNPoints::bbUserSetDefaultValues()
153 {
154     firsttime=true;
155         mwxwidget = NULL;
156         bbSetInputRadio(10);
157         bbSetInputOpacity(1);
158         std::vector<double> colour;
159         colour.push_back(1.0);
160         colour.push_back(1.0);
161         colour.push_back(0.0);
162         bbSetInputColour(colour);
163         bbSetInputImage(NULL);
164         bbSetInputType(0);
165         bbSetInputRenderer(NULL);
166         bbSetOutputWidgetShowNPoints(NULL);
167 }
168
169 //------------------  -----------------------------------------------
170         void ShowNPoints::bbUserInitializeProcessing()
171         {
172         }
173
174 //-----------------------------------------------------------------
175         void ShowNPoints::bbUserFinalizeProcessing()
176         {
177         }
178
179 //-----------------------------------------------------------------
180
181 }
182 // EO namespace bbcreaMaracasVisu