Friday, February 10, 2012
Google Custom Search

ClearCanvas Highlights

Download our Open Source software
Watch some Videos
Get the Source
Check out our Licensing
Join our  Forums
Some Research: OICR IPP-Trials

Our Community

Membership Membership:
Latest New User Latest: rczlubin
New Today New Today: 5
New Yesterday New Yesterday: 27
User Count Overall: 20595

People Online People Online:
Visitors Visitors: 9
Members Members: 1
Total Total: 10

Online Now Online Now:
01: prakhargoel

ClearCanvas Community Forums

ClearCanvas2.0\ReferencedAssemblies\Vtk
Last Post 2010-09-06 09:11 AM by jonas. 5 Replies.
Printer Friendly
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages
jonas
Basic Member
Basic Member
Posts:17

--
2010-08-18 09:12 AM  

 I'm using CC Dicom lib in my C# projects at work, and want to do some advanced visualization. I've used VTK in the pasted and stumbled upon it again when i did a SVN checkout of ClearCanvas.

Importing a vtk*DotNet in VS will tell me that it is from the VtkDotNet project (http://sourceforge.net/projects/vtkdotnet/). It is officially based on VTK 5.0.1 but the CC team seems to be using a newer version of VTK.

1) So, my question is; how did you managed to upgade VtkDotNet to a newer VTK version?

2) Where and what do you use Vtk and Itk for in CC?

I need to compile the vtkControl to embed a newer version of VTK in a Window.Forms application, but the CC repository contains only the dll of course and not the lib files.

I know this is a bit off-topic though still relevant, as C# developers might choose CC for DICOM and combine it with VTK and ITK. I think a lot of people are trying to get this working.

steve
Senior Member
Senior Member
Posts:1885

--
2010-08-20 01:58 PM  
Jonas,

I believe some issues were found when developing the MPR functionality in the ImageViewer with the version of VTK in the vtk*DotNet code. I don't recall all the details, but we made an update to vtk*DotNet to use the newer version of VTK to address the issues. At the time we tried to submit the changes back to vtk*DotNet, but they were not responsive. Currently, the MPR functionality in the ImageViewer is the only place where this is used.

Steve
Real-time support available to Clinical Edition and Team Edition customers
stewart
Senior Member
Senior Member
Posts:2033

--
2010-08-27 12:28 AM  
Jonas, there is also a sample project (ImageViewerSamples.sln) that has a (very) simple example of 3D rendering with VTK and there are also some sample ITK image filters. Part of the reason we upgraded to a new version of VTK was so we could get MPR to work on 64 bit machines, but I can't recall if that was the only reason. It was probably just that since we had to recompile VTK (and make some changes, too) anyway, we might as well be using the latest and greatest.

I'm a bit confused as to why you need to compile using lib files to integrate into a .NET application - can you elaborate a bit more on why you need to do this? The DLLs in our repository are a fully functional .NET wrapper for VTK. There are both .NET assemblies (the wrapper) and the VTK unmanaged/native dlls. You should just be able to use them directly from within your WinForms app.
Real-time support available to Clinical Edition and Team Edition customers
jonas
Basic Member
Basic Member
Posts:17

--
2010-08-27 03:42 AM  

 Thank you for the replies Steve and Stewart. Yes, your are right -  I can use the CC version of VtkDotNet in a .NET project, but it does not contain the vtkControl for integrating vtk in a Windows.Forms container as far as I know! So, my idea was to use your version of VtkDotNet, and only recompile the vtkControl (managed c++) from VtkDotNet - and that is why i needed the libs for linking. It is a naive idea to cut corners, and it would be a better idea to update the version of Vtk in VtkDotNet and recompile it and the vtkControl.

I'm currently working on a project where the medical doctors and physicists can review image (volume) registration of a CT and Cone-beam CT acquired on the linac used for patient position verification before a radiotherapy treatment. As i said in my last post we are now programming in C# but it is crucial for me to integrate Vtk in the .NET applications, as you can not render 16bit grayscale image in GDI+.

Sorry all the text - here is my summary:

 1) Does the CC VtkDotNet contain a vtkControl or similar?

 2) Can I reuse the VtkRenderingSurface in ClearCanvas.ImageViewer.Tools.Volume.VTK in my Windows.Forms application?

 3) What does it take to update the Vtk in VtkDotNet - if you modified the main CMakeLists.txt in VtkDotNet can you attach it?

 4) Alternatives?

And last but not least thank you for your commitment to the open source in the field of medical image processing and DICOM. I realy admire your ability to create a clean and well designed system. Actually, I saw Norman Youngs presentation at ICCR in Amsterdam this year.

jasper.yeh
Senior Member
Senior Member
Posts:521
Avatar

--
2010-09-01 03:42 PM  
Hi Jonas,

Do you happen to know which project in VtkDotNet is supposed to have this vtkControl class? I just took a quick scan through our code base but couldn't find it.

As far as I know, yes. You should be able to simply construct a VtkRenderingSurface object using a WinForms surface handle.

I am unsure as to the amount of work required for updating the VTK version at the moment. Looking in the source control logs, there were a lot of updates to get the last available VtkDotNet version up to speed with VTK 5.2.1, and they're not all CMakeLists.

Alternatives... still thinking about it.

Regards,
// Jasper
jonas
Basic Member
Basic Member
Posts:17

--
2010-09-06 09:11 AM  

 Hi Jasper,

The vtkControl is a seperat project (and download) on the vtkDotNet website - so it is not included by default.

I am not aware of any VtkRenderingSurface class! I've seached the assemblies and did Google it with no luck. Can you clarify, please?

You are not authorized to post a reply.

Active Forums 4.1
Copyright 2011 ClearCanvas Inc.