]> Creatis software - creaVtk.git/blob - bbtk_creaVtk_PKG/src/bbcreaVtkGetCameraInfo.cxx
#3233 creaVtk Feature New Normal - GetCameraInfo SetCameraInfo ScreenShot
[creaVtk.git] / bbtk_creaVtk_PKG / src / bbcreaVtkGetCameraInfo.cxx
1 //===== 
2 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
3 //===== 
4 #include "bbcreaVtkGetCameraInfo.h"
5 #include "bbcreaVtkPackage.h"
6
7 #include "vtkCamera.h"
8
9 namespace bbcreaVtk
10 {
11
12 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaVtk,GetCameraInfo)
13 BBTK_BLACK_BOX_IMPLEMENTATION(GetCameraInfo,bbtk::AtomicBlackBox);
14 //===== 
15 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
16 //===== 
17 void GetCameraInfo::Process()
18 {
19
20 // THE MAIN PROCESSING METHOD BODY
21 //   Here we simply set the input 'In' value to the output 'Out'
22 //   And print out the output value
23 // INPUT/OUTPUT ACCESSORS ARE OF THE FORM :
24 //    void bbSet{Input|Output}NAME(const TYPE&)
25 //    const TYPE& bbGet{Input|Output}NAME() const 
26 //    Where :
27 //    * NAME is the name of the input/output
28 //      (the one provided in the attribute 'name' of the tag 'input')
29 //    * TYPE is the C++ type of the input/output
30 //      (the one provided in the attribute 'type' of the tag 'input')
31
32         if (bbGetInputvtkRenderer()!=NULL)
33         {
34           double px,py,pz;
35           bbGetInputvtkRenderer()->GetActiveCamera()->GetPosition(px,py,pz);
36           std::vector<double> position;
37           position.push_back(px);
38           position.push_back(py);
39           position.push_back(pz);
40           bbSetOutputPosition(position);
41
42           double vx,vy,vz;
43           bbGetInputvtkRenderer()->GetActiveCamera()->GetViewUp(vx,vy,vz);
44           std::vector<double> viewup;
45           viewup.push_back(vx);
46           viewup.push_back(vy);
47           viewup.push_back(vz);
48           bbSetOutputViewUp(viewup);
49
50           double fx,fy,fz;
51           bbGetInputvtkRenderer()->GetActiveCamera()->GetFocalPoint(fx,fy,fz);
52           std::vector<double> focalpoint;
53           focalpoint.push_back(fx);
54           focalpoint.push_back(fy);
55           focalpoint.push_back(fz);
56           bbSetOutputFocalPoint(focalpoint);
57         }  
58 }
59 //===== 
60 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
61 //===== 
62 void GetCameraInfo::bbUserSetDefaultValues()
63 {
64
65 //  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
66 //    Here we initialize the input 'In' to 0
67    bbSetInputvtkRenderer(NULL);
68   
69 }
70 //===== 
71 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
72 //===== 
73 void GetCameraInfo::bbUserInitializeProcessing()
74 {
75
76 //  THE INITIALIZATION METHOD BODY :
77 //    Here does nothing 
78 //    but this is where you should allocate the internal/output pointers 
79 //    if any 
80
81   
82 }
83 //===== 
84 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
85 //===== 
86 void GetCameraInfo::bbUserFinalizeProcessing()
87 {
88
89 //  THE FINALIZATION METHOD BODY :
90 //    Here does nothing 
91 //    but this is where you should desallocate the internal/output pointers 
92 //    if any
93   
94 }
95 }
96 // EO namespace bbcreaVtk
97
98