[vtkusers] Actor -- isMovable?
Piotr Byzia
piotr.byzia at gmail.com
Thu Nov 5 05:48:18 EST 2009
Hi Karthik,
I disabled the interactor style, however I still can rotate my actor
(by the mouse interaction).
This's what I've done:
widget_3d.GetRenderWindow().GetInteractor().GetInteractorStyle
().EnabledOff()
my_actor.PickableOff()
widget_3d is an instance of
QVTKRenderWindowInteractor.QVTKRenderWindowInteractor(self)
Below is an output for widget_3d.GetRenderWindow().GetInteractor
().GetInteractorStyle()
Let me know if there is any other information which might help.
vtkInteractorStyleSwitch (0E995418)
Debug: Off
Modified Time: 945
Reference Count: 2
Registered Events: (none)
Current Renderer: 00000000
Default Renderer: 00000000
Enabled: 0
Priority: 0
Interactor: 0E9418D0
Key Press Activation: Off
Key Press Activation Value: i
Auto Adjust Camera Clipping Range On
Pick Color: (1, 0, 0)
CurrentRenderer: 00000000
Picked Renderer: (none)
Current Actor: (none)
Interactor: 0E9418D0
Prop Picked: No
State: 0
UseTimers: 0
HandleObservers: 1
MouseWheelMotionFactor: 1
Timer Duration: 10
CurrentStyle 0E9A3818
vtkInteractorStyleTrackballCamera
Debug: Off
Modified Time: 1703
Reference Count: 1
Registered Events:
Registered Observers:
vtkObserver (0E9912B8)
Event: 41
EventName: EndInteractionEvent
Command: 0E9A58E0
Priority: 0
Tag: 2
vtkObserver (0E9906B0)
Event: 39
EventName: StartInteractionEvent
Command: 0E9A58E0
Priority: 0
Tag: 1
Current Renderer: 00000000
Default Renderer: 00000000
Enabled: 0
Priority: 0
Interactor: 0E9418D0
Key Press Activation: Off
Key Press Activation Value: i
Auto Adjust Camera Clipping Range On
Pick Color: (1, 0, 0)
CurrentRenderer: 00000000
Picked Renderer: (none)
Current Actor: (none)
Interactor: 0E9418D0
Prop Picked: No
State: 0
UseTimers: 0
HandleObservers: 1
MouseWheelMotionFactor: 1
Timer Duration: 10
MotionFactor: 10
On 04.11.2009, at 18:25, Karthik Krishnan wrote:
> try to disable the interactor style set on teh interactor
>
> interactor->GetInteractorStyle()->EnabledOff()
>
> On Wed, Nov 4, 2009 at 10:35 AM, Piotr Byzia <piotr.byzia at gmail.com>
> wrote:
> Cory and Karthik,
>
> Thank you for your suggestions.
>
> By moving, I meant an interaction with a mouse.
> Indeed, I have no interaction style defined explicitly, but it seems
> that Python interface has some default one set up, because I was
> able to run this:
>
> lines_actor.PickableOff()
> print lines_actor.GetPickable()
> lines_actor.PickableOn()
> print lines_actor.GetPickable()
> lines_actor.SetPickable(0)
> print lines_actor.GetPickable()
>
> which produced:
> 0
> 1
> 0
>
> (I apologize if this is something obvious for you, I just started
> experimenting with VTK)
> So, vtkActor() has an interaction style by default, thus I was able
> to call PickableOff() on it.
> However it does not work, while I was able to pick and move around
> (rotate) lines_actor with the mouse.
>
> I had the same issue with lines_actor.DragableOff().
>
> What is surprising, lines_actor.VisibilityOff() works fine!
> (lines_actor was not visible on the scene)
>
> Do you possibly have ideas what can interfere with the PickableOff
> () ??
>
> Thanks for any suggestions,
> Piotr Byzia
>
>
>
> On 04.11.2009, at 14:16, Cory Quammen wrote:
>
> Hi Piotr,
>
> Perhaps you could clarify what you mean by moving an actor. It doesn't
> sound like you have an interactor style that is manipulating the
> actors by picking with the mouse. If you did, however, you could call
> PickableOff() on the actor, which will prevent you from picking it and
> thereby prevent movement of the actor.
>
> How exactly are you moving the actors now?
>
> Cory
>
> On Wed, Nov 4, 2009 at 7:21 AM, Piotr Byzia <piotr.byzia at gmail.com>
> wrote:
> Hi,
>
> I want to set an actor to be movable or non-movable, depending on
> settings
> which I control through PyQT GUI.
> In other words, having a few actors on the scene I want to set
> checkboxes in
> my GUI that would freeze a given actor, and the rest of them to
> react as
> usual to the mouse movements / clicks.
>
> Regarding visibility of the actor I'm using GetProperty().SetOpacity
> (0.0) on
> an instance of any given actor.
> I can't see anything related to movement in the GetProperty()
> properties, I
> believe it's somewhere else?
>
> Here are most important parts of the code I'm using to generate a
> single
> actor:
>
> self.ren = vtk.vtkRenderer()
> self.ren.SetBackground(0, 0, 0)
> self.widget_3d.GetRenderWindow().AddRenderer(self.ren)
>
> apd=vtk.vtkAppendPolyData()
>
> for i in xrange(len(coordinates)):
> line=vtk.vtkLineSource()
>
> line.SetPoint1(coordinates[i][0]) # 1st atom coordinates for a
> given bond
> line.SetPoint2(coordinates[i][1]) # 2nd atom coordinates for a
> given bond
> line.SetResolution(21)
> apd.AddInput(line.GetOutput())
>
> mapper = vtk.vtkPolyDataMapper()
> mapper.SetInput(apd.GetOutput())
> lines_actor = vtk.vtkActor()
> lines_actor.SetMapper(mapper)
> lines_actor.GetProperty().SetColor(0.7, 0.0, 0.0)
> lines_actor.GetProperty().SetOpacity(1.0)
>
> self.ren.AddActor(lines_actor)
>
>
> I found SetCurrentStyleToTrackballActor(), but I want to control this
> behavior from my GUI.
> Besides, trackball mode is very inconvenient in my case, with
> molecules in
> "lines" representation (it's hard to pick a single line).
>
> Thanks,
> Piotr Byzia
> _______________________________________________
> 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
>
>
>
>
> --
> Cory Quammen
> Center for Computer Integrated Systems for Microscopy and
> Manipulation (CISMM)
> Department of Computer Science
> University of North Carolina at Chapel Hill
> http://www.cs.unc.edu/~cquammen
>
> _______________________________________________
> 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20091105/1715712f/attachment.htm>
More information about the vtkusers
mailing list