[vtkusers] VTK6.0 label size problem of vtkScalarBarActor
Bill Lorensen
bill.lorensen at gmail.com
Tue Jun 25 16:11:37 EDT 2013
Also, do not read a file no one can read. You are better off creating an
image in the code.
See for example:
http://itk.org/Wiki/VTK/Examples/Cxx/Images/ImageRFFT
or
http://itk.org/Wiki/VTK/Examples/Cxx/Images/ImageShiftScale
On Tue, Jun 25, 2013 at 4:09 PM, Bill Lorensen <bill.lorensen at gmail.com>wrote:
> Sorry. It won't compile without the include's. If you provide a cut/past
> compilable example, folks will help quicker.
>
>
>
> On Tue, Jun 25, 2013 at 3:56 PM, chasank <chasank at gmail.com> wrote:
>
>> It's not small enough but it will illustrate the problem;
>>
>> int main(int argc, char **argv)
>> {
>> vtkSmartPointer< vtkImageData > imageData = vtkSmartPointer <
>> vtkImageData > :: New();
>>
>> itk::Image< signed short, 3 > ImageType3D;
>>
>> try
>> {
>> itk::ImageFileReader< ImageType3D >::Pointer reader =
>> itk::ImageFileReader< ImageType3D >::New();
>> itk::NiftiImageIO::Pointer niftiIO = itk::NiftiImageIO::New();
>> reader->SetFileName("C:\\niftis\\ch2better.nii.gz");
>> reader->SetImageIO(niftiIO);
>> reader->UpdateLargestPossibleRegion();
>> reader->Update();
>>
>> itk::ImageToVTKImageFilter< ImageType3D >::Pointer connector =
>> itk::ImageToVTKImageFilter< ImageType3D >::New();
>> connector->SetInput(reader->GetOutput());
>> connector->Update();
>>
>> imageData->DeepCopy(connector->GetOutput());
>>
>> }
>> catch ( itk::ExceptionObject & excp )
>> {
>> std::cerr << excp << std::endl;
>> }
>>
>> vtkSmartPointer< vtkLookupTable > table = vtkSmartPointer<
>> vtkLookupTable >::New();
>> table->SetNumberOfTableValues(256);
>> table->SetTableRange(range[0], range[1]);
>> table->SetRampToLinear();
>> table->SetScaleToLinear();
>> table->GlobalWarningDisplayOff();
>> table->Build();
>>
>> LookupTableReader *lutReader = new
>> LookupTableReader("..\\luts\\grayscale");
>> unsigned char *r = lutReader->GetRed();
>> unsigned char *g = lutReader->GetGreen();
>> unsigned char *b = lutReader->GetBlue();
>>
>> for (int i = 0; i <= 255; i++)
>> {
>> if ( i < 5 )
>> {
>> table->SetTableValue(i, *(r + i)/255.0, *(g + i)/255.0, *(b +
>> i)/255.0, 0.0);
>> }
>> else if ( i > 250)
>> {
>> table->SetTableValue(i, *(r + i)/255.0, *(g + i)/255.0, *(b +
>> i)/255.0, 1.0);
>> }
>> else
>> {
>> table->SetTableValue(i, *(r + i)/255.0, *(g + i)/255.0, *(b +
>> i)/255.0, i/255.0);
>> }
>> }
>>
>> vtkSmartPointer< vtkScalarBarActor > colorBar = vtkSmartPointer<
>> vtkScalarBarActor >::New();
>> colorBar->SetMaximumNumberOfColors(256);
>> colorBar->SetLookupTable(table);
>> colorBar->SetHeight(0.12);
>> colorBar->SetWidth(0.90);
>> colorBar->SetPosition(0.04, 0.02);
>> colorBar->SetPosition2(0.90, 0.20);
>> colorBar->SetOrientationToHorizontal();
>> colorBar->SetNumberOfLabels(3);
>> colorBar->SetLabelFormat("%.4g");
>> colorBar->VisibilityOn();
>>
>> vtkSmartPointer< vtkRenderer > renderer = vtkSmartPointer< vtkRenderer
>> >::New();
>> vtkSmartPointer< vtkRenderWindow > renderWindow = vtkSmartPointer<
>> vtkRenderWindow >::New();
>> vtkSmartPointer< vtkRenderWindowInteractor > iren = vtkSmartPointer<
>> vtkRenderWindowInteractor >::New();
>> vtkSmartPointer< vtkInteractorStyleImage > interactorStyle =
>> vtkSmartPointer< vtkInteractorStyleImage >::New();
>>
>> double xViewRightVector[3] = {0, 1, 0};
>> double xViewUpVector[3] = {0, 0, 1};
>>
>> double yViewRightVector[3] = {1, 0, 0};
>> double yViewUpVector[3] = {0, 0, 1};
>>
>> double zViewRightVector[3] = { 1, 0, 0 };
>> double ZViewUpVector[3] = {0, 1, 0};
>>
>> vtkSmartPointer< CallBack > callBack = vtkSmartPointer< CallBack
>> >::New();
>>
>> interactorStyle->AddObserver(vtkCommand::MouseWheelForwardEvent,
>> callBack);
>> interactorStyle->AddObserver(vtkCommand::MouseWheelBackwardEvent,
>> callBack);
>> interactorStyle->AddObserver(vtkCommand::StartWindowLevelEvent,
>> callBack);
>> interactorStyle->AddObserver(vtkCommand::WindowLevelEvent, callBack);
>> interactorStyle->AddObserver(vtkCommand::ResetWindowLevelEvent,
>> callBack);
>> interactorStyle->SetInteractionModeToImage3D();
>> interactorStyle->SetXViewRightVector(xViewRightVector);
>> interactorStyle->SetXViewUpVector(xViewUpVector);
>> interactorStyle->SetYViewRightVector(yViewRightVector);
>> interactorStyle->SetYViewUpVector(yViewUpVector);
>> interactorStyle->SetZViewRightVector(zViewRightVector);
>> interactorStyle->SetZViewUpVector(ZViewUpVector);
>> interactorStyle->SetImageOrientation(xViewRightVector, xViewUpVector);
>>
>> renderWindow->AddRenderer(renderer);
>> iren->SetInteractorStyle(interactorStyle);
>> iren->SetRenderWindow(renderWindow);
>>
>> vtkSmartPointer< vtkImageResliceMapper > mapper = vtkSmartPointer<
>> vtkImageResliceMapper >::New();
>> mapper->SetInputDataObject(imageData);
>> mapper->SliceFacesCameraOn();
>> mapper->SliceAtFocalPointOn();
>> mapper->SetImageSampleFactor(2);
>> mapper->BorderOn();
>>
>> double level = 0.5 * (range[0] + range[1]);
>> double window = range[1] - range[0];
>>
>> vtkSmartPointer< vtkImageProperty > property = vtkSmartPointer<
>> vtkImageProperty >::New();
>> property->SetColorLevel(level);
>> property->SetColorWindow(window);
>> property->SetInterpolationTypeToLinear();
>> property->SetLookupTable(table);
>> property->SetAmbient(1.0);
>> property->SetDiffuse(1.0);
>> property->SetOpacity(1.0);
>>
>> double *center = imageData->GetCenter();
>>
>> vtkSmartPointer< vtkMatrix4x4 > matrix = vtkSmartPointer< vtkMatrix4x4
>> >::New();
>> matrix->Identity();
>> matrix->SetElement(0, 3, center[0]);
>> matrix->SetElement(1, 3, center[1]);
>> matrix->SetElement(2, 3, center[2]);
>> matrix->Modified();
>>
>> vtkSmartPointer< vtkImageSlice > slice = vtkSmartPointer<
>> vtkImageSlice
>> >::New();
>> slice->SetMapper(mapper);
>> slice->SetProperty(property);
>> slice->SetUserMatrix(matrix);
>>
>> renderer->AddViewProp(slice);
>> renderer->AddActor2D(colorBar);
>>
>> vtkSmartPointer< vtkCamera > camera = renderer->GetActiveCamera();
>> camera->ParallelProjectionOn();
>> camera->SetFocalPoint(0.0, 0.0, 0.0);
>> camera->SetPosition(1.0, 0.0, 0.0);
>> camera->SetViewUp(0.0, 0.0, 1.0);
>>
>> renderer->ResetCamera();
>>
>> iren->Initialize();
>> iren->Start();
>> renderWindow->Render();
>>
>> return 0;
>> }
>>
>> Sample output is below;
>> <http://vtk.1045678.n5.nabble.com/file/n5721597/colorBar_problem.png>
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://vtk.1045678.n5.nabble.com/VTK6-0-label-size-problem-of-vtkScalarBarActor-tp5721585p5721597.html
>> Sent from the VTK - Users mailing list archive at Nabble.com.
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the VTK FAQ at:
>> http://www.vtk.org/Wiki/VTK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
>
>
>
> --
> Unpaid intern in BillsBasement at noware dot com
>
--
Unpaid intern in BillsBasement at noware dot com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20130625/92adae4f/attachment.htm>
More information about the vtkusers
mailing list