<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Hi All,<br><br>I am getting the above error while trying to run a program that reads DICOM images and does 3d visualization.<br>After searching through the mailing list, I found similar posts, but none of them solved the problem .<br>I included the static code block :<br>static { <br> System.loadLibrary("vtkCommonJava"); <br> System.loadLibrary("vtkFilteringJava"); <br> System.loadLibrary("vtkIOJava"); <br> System.loadLibrary("vtkImagingJava"); <br> System.loadLibrary("vtkGraphicsJava"); <br> System.loadLibrary("vtkRenderingJava");
<br> }<br><br>and made sure the system variables are set correctly. Still no luck :(<br><br>Can someone lend a helping hand? Any help is appreciated.<br>Here is the code :<br><br>public class WrapperVtkRenderVolume {<br> <br> vtkRenderer renderer = new vtkRenderer();<br> vtkRenderWindow renderWindow = new vtkRenderWindow();<br> vtkRenderWindowInteractor renInteractor = new vtkRenderWindowInteractor();<br> vtkImageData imageData = new vtkImageData();<br> vtkPiecewiseFunction opacityTransferFunction = new vtkPiecewiseFunction();<br> vtkVolumeProperty volumeProperty = new vtkVolumeProperty();<br> vtkVolume volume = new vtkVolume();<br> vtkVolumeTextureMapper3D volumeMapper = new vtkVolumeTextureMapper3D();<br> vtkColorTransferFunction
colorTransferFunction = new vtkColorTransferFunction();<br> vtkFixedPointVolumeRayCastMapper volumeMapperSoftware = new vtkFixedPointVolumeRayCastMapper();<br><br> public WrapperVtkRenderVolume(int cxWin, int cyWin) {<br> <br> SetupSceneBasics();<br> <br> ResetSize(cxWin, cyWin);<br> }<br><br> private void ResetSize(int cxWin, int cyWin) {<br> renderWindow.SetSize(cxWin, cyWin);<br> <br> }<br><br> private void SetupSceneBasics() {<br> renderer.SetBackground(0, 0, 0);<br> renderWindow.AddRenderer(renderer);<br>
renInteractor.SetRenderWindow(renderWindow);<br> <br> <br> }<br><br> public boolean LoadVolumeFromFolder(String strFolderPath) {<br> renderWindow.Render();<br> <br> vtkDICOMImageReader imageReader = new vtkDICOMImageReader();<br> <br> switch (imageReader.GetNumberOfScalarComponents()) {<br> case 3:<br> LoadColorDataset(imageReader.GetOutput());<br> SetupRendererVolume();<br> break;<br> }<br>
<br> imageReader.Delete();<br> renderer.ResetCamera();<br> <br> return true;<br> }<br><br> private boolean SetupRendererVolume() {<br> opacityTransferFunction.AddPoint(0, 0);<br> opacityTransferFunction.AddPoint(255, 1);<br> volumeProperty.SetIndependentComponents(0);<br> volumeProperty.SetScalarOpacity(opacityTransferFunction);<br> volumeProperty.SetInterpolationTypeToLinear();<br> volumeProperty.ShadeOff();<br> volume.SetProperty(volumeProperty);<br>
<br> volumeMapper.SetInput(imageData);<br> if(isRenderSupported()) {<br> volumeMapper.SetSampleDistance(1.0);<br> volume.SetMapper(volumeMapper);<br> renderer.AddVolume(volume);<br> } else {<br> System.out.println("Your graphics board does not support the vtkVolumeTextureMapper3D class");<br> return false;<br> }<br> <br> return true;<br> <br> }<br> private boolean isRenderSupported()
{<br> return (volumeMapper.IsRenderSupported(volumeProperty) == 1)?true:false;<br> }<br><br> private void LoadColorDataset(vtkImageData imageDataFromReader) {<br> imageData.SetScalarTypeToUnsignedChar();<br> imageData.SetNumberOfScalarComponents(4);<br> imageData.SetDimensions(imageDataFromReader.GetDimensions());<br> imageData.SetSpacing(imageDataFromReader.GetSpacing());<br> imageData.SetOrigin(imageDataFromReader.GetOrigin());<br> imageData.AllocateScalars();<br> for(int z = 0; z < imageData.GetDimensions()[2]; z++) {<br> //TODO : this is
incomplete<br> }<br> <br> }<br><br> public void Start() {<br> renInteractor.Initialize();<br> renInteractor.Start();<br> <br> }<br><br>}<br></td></tr></table><br>