mitk::Surface objects can be visualized directly in MITK, just like any
other mitk::BaseData subclass. Just put it in a mitk::DataNode and add
it to your mitk::DataStorage.
On 11/11/2011 05:32 PM, Miri Trope wrote:
Hi Miklos,
My Exception is:
"..\..\..\CMakeExternals\Source\ITK\Code\Common\itkProcessObject.cxx:981:
itk::ERROR: myModule:(18F41FB8): At least 1 inputs are required but
only 0 are specified"
In the output from Debug of visual studio:
ERROR: In
//\//\CMakeExternals\Source\VTK\Rendering\vtkPolyDataMapper.cxx, line
60 vtkPaintPolyDataMapper (18F4D168) : Mapper has no input
ERROR: In
//\//\CMakeExternals\Source\VTK\Rendering\vtkOpenGLTexture.cxx, line
196 vtkOpenGLTexture (188432F0): No scalar value found for texture input!
what might be the reason for that run time error?
* another conversion question which can save my time: I have a pointer
to a mitk::surface data and would like to view that surface on mitk. I
might need to convert that surface to an mitk::image. how should I do
this?
Thanks,
Miri
On Thu, Nov 10, 2011 at 11:48 AM, Miklos Espak <[email protected]
<mailto:[email protected]>> wrote:
Hi Miri,
in your original e-mail there was this line:
itk::Image < ImageType > ::Pointer itkImage_1;
now there is these lines:
typedef unsigned short InputPixelType;
typedef itk::Image < InputPixelType, 3 > InputImageType;
itk::Image< InputPixelType, 3>::Pointer itkImage_1;
These are different. In the first case you have a 2D image, in the
second case 3D.
If the exception is thrown by the Update() function, it means that
it is thrown by the filter's GenerateData function (or from its
call chain). So, I still think that there is a type mismatch
during the cast.
I suggest to put the Update call into an exception handler, catch
itk::ExceptionObject, and print its message. (As I remember, it is
the what() function that tells it to you.)
Best,
Miklos
On Thu, Nov 10, 2011 at 9:35 AM, Miri Trope <[email protected]
<mailto:[email protected]>> wrote:
Thank you for tying to help me.
Casting to the exact input image type is what I tryied to
implement (after checking it with the debugger).
Actually, I ran it again with these commands, but received the
mentioned error.
typedef unsigned short InputPixelType;
typedef itk::Image < InputPixelType, 3 >
InputImageType;
itk::Image< InputPixelType, 3>::Pointer itkImage_1;
- I'd like to mention again that the error accepted in the
following command:
myModulePointer->Update(); // a command at the file:
MyPlugInView.cpp
- My application was generated by the CTK's generator and I
just changed that application in order to get a multiple
number of input images (instead of one input image, as the
generator implemented).
On Wed, Nov 9, 2011 at 10:42 PM, Miklos Espak
<[email protected] <mailto:[email protected]>> wrote:
Hi,
are these 2D images?
The itk::Image template class expects two parameters, the
pixel type and the dimension. For the dimension there is a
default value that is 2. That's why your code does not
cause compile error.
However, you must cast the mitk::Image into exactly the
same kind of itk::Image. If you have a 3D mitk::Image, you
cannot cast it into a 2D itk image. Even the pixel types
must be the same.
In your code:
itk::Image < ImageType > ::Pointer itkImage_1;
The ImageType name is rather misleading, since a primitive
type should be there, typically.
Best,
Miklos
On Wed, Nov 9, 2011 at 8:41 PM, Miri Trope
<[email protected] <mailto:[email protected]>> wrote:
Hi everyone,
I manipulated the ability to select and manipulate
four 3D input images from a known type (all of them
have the same type). I mean that the user has to pick
four images on mitk platform and run my module.
But it returns a run-time error which described below.
That run time returned after the command:
myModulePointer->Update();
In addition below is my code, please help me to figure
it out. It's just my first time to manipulate things
like that ...
run time error
==========
Unhandled exception at 0x7d4e237e in MyApp.exe:
Microsoft C++ exception: itk::ExceptionObject at
memory location 0x00d9b640..
First-chance exception at 0x7d4e237e in MyApp.exe:
Microsoft C++ exception: [rethrow] at memory location
0x00000000..
==========
MyPlugInView.cpp
-----------------
void MyPlugInView::DoImageProcessing()
{
std::vector<mitk::DataNode*> nodes =
this->GetDataManagerSelection();
myModule::Pointer myModulePointer = myModule::New();
while(!nodes.empty()) // set the input images to
const member pointers of class MyModule
{
mitk::DataNode* node = nodes.back();
nodes.pop_back();
mitk::BaseData* data = node->GetData();
mitk::Image* image = dynamic_cast<mitk::Image*>(
data );
// I did the next assignment for each image by
switching an index in [N=1:numOfImages]
// these assignments really work! each command
assigns the input image to her member pointer
myModulePointer->SetinputImage_N(image);
...
}
myModulePointer->Update();// here I get the run
time error
}
MyModule.h
-------------
class MyModuleLib_EXPORT MyModule : public
mitk::ImageToImageFilter
{
public:
void MyFunction( mitk::Image::Pointer outputImage );
// pointers to mitk selected input images
mitk::Image::ConstPointer m_inputImage_1;
mitk::Image::ConstPointer m_inputImage_2;
mitk::Image::ConstPointer m_inputImage_3;
mitk::Image::ConstPointer m_inputImage_4;
void GenerateData();
protected:
MyModule();
~MyModule();
};
MyModule.cpp
------------
void MyModule::MyFunction( mitk::Image::Pointer
outputImage )
{
itk::Image < ImageType > ::Pointer itkImage_1;
mitk::CastToItkImage(m_inputImage_1, itkImage_1); //
in order to get rid of the const pointer of mitk input
image
mitk::CastToMitkImage(itkImage_1, outputImage); //
in order to view my result
}
MyModule::MyModule():
m_inputImage_1(0),m_inputImage_2(0),m_inputImage_3(0),m_inputImage_4(0)
{
this->SetNumberOfInputs(4); // four selected inputImages
}
MyModule::~MyModule()
{
}
void MyModule::GenerateData()
{
mitk::Image::Pointer outputImage = this->GetOutput();
MyFunction( outputImage );
}
------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
mitk-users mailing list
[email protected]
<mailto:[email protected]>
https://lists.sourceforge.net/lists/listinfo/mitk-users
------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users