[vtkusers] Interaction with chart on top of 3D (on top of volume rendering?)

Marcus D. Hanwell marcus.hanwell at kitware.com
Wed Sep 28 10:21:42 EDT 2016


On Wed, Sep 28, 2016 at 1:52 AM, Elvis Stansvik
<elvis.stansvik at orexplore.com> wrote:
> 2016-09-27 20:21 GMT+02:00 Marcus D. Hanwell <marcus.hanwell at kitware.com>:
>> On Fri, Sep 23, 2016 at 1:36 AM, Elvis Stansvik
>> <elvis.stansvik at orexplore.com> wrote:
>>> At the moment I have a button in my Qt UI that pops up a dialog with a
>>> render window containing vtkChartXY with some points items to control
>>> the transfer functions I use for rendering volumes in another window.
>>>
>>> I've been toying with the idea of adding a VTK button (say in the
>>> bottom left corner) in the window where I do the actual volume
>>> rendering, and have that button bring up the vtkChartXY in the same
>>> window (on top of the volume rendering), for more convenient / quick
>>> access to transfer function editing.
>>>
>>> I had a look at this test:
>>>
>>>     https://github.com/Kitware/VTK/blob/master/Charts/Core/Testing/Cxx/TestChartsOn3D.cxx
>>>
>>> It shows a cube with a chart on top in the same renderer.
>>
>> Yeah, I added that.
>>>
>>> Would this example work if the cube instead was a volume rendering?
>>
>> Probably.
>>>
>>> Is it possible to get interaction with the chart working seamlessly
>>> with interaction with the camera?
>>
>> No, this is something I was hoping to revisit but I could not get the
>> interaction events to switch from the 2D scene to the 3D. This was my
>> ideal, and what I had in mind when writing the test.
>>>
>>> Is there some other approach that would allow these two things?
>>> Multiple renderers? Has anyone done such a thing?
>>>
>> Not that I know of, if they have I would love to see how they achieved
>> it. I think the main obstacle is getting the interaction events to the
>> 2D or 3D interactor observer depending upon where the mouse is. I
>> don't think it is that hard, but we never had a project pushing for
>> it. The widgets do something on this level, where they intercept the
>> events when they are in an active region so that is probably a good
>> place to go looking.
>
> Alright, thanks a lot for the answers.
>
> This idea is low on my priority list, but I thought I'd ask at least.
> And now I know that in theory it's probably doable.
>
> If someone else has gone through the trouble, please chime in :)
>
I really think it would make for some compelling interfaces, and hope
I find some time at some point to come back to this. Currently that is
looking unlikely, and I would be very interested in anything others
have done.


More information about the vtkusers mailing list