[vtkusers] question about vtkCommand

Darshan Pai darshanpai at gmail.com
Mon Apr 23 12:12:26 EDT 2012


I meant to not use SetOrientation at all and instead use the Transform or
the matrix

On Mon, Apr 23, 2012 at 3:50 AM, qlizhi <qlizhi at gmail.com> wrote:

> **
> i have tried  SetUserMatrix() , the result is the same. it seems that
> after [actor->SetOrientation(ori)]  the actor lost its data source, so it
> render nothing.
>
> ------------------------------
> qlizhi
>
>  *From:* Darshan Pai <darshanpai at gmail.com>
> *Date:* 2012-04-23 12:42
> *To:* qlizhi <qlizhi at gmail.com>
> *CC:* David Doria <daviddoria at gmail.com>; vtkusers <vtkusers at vtk.org>
> *Subject:* Re: [vtkusers] question about vtkCommand
>  Why not try using SetUserTransform() or SetUserMatrix()
>
> On Mon, Apr 23, 2012 at 12:32 AM, qlizhi <qlizhi at gmail.com> wrote:
>
>> **
>>  Thanks for reply:
>>             here is my main code, and if i use [window->Render()], there
>> will be an error:
>>
>> ERROR: In D:\Program Files (x86)\VTK 5.8.0\VTK\Rendering\vtkWin32OpenGLRenderWindow.cxx, line 247
>>
>> vtkWin32OpenGLRenderWindow (06DFC0B0): wglMakeCurrent failed in MakeCurrent(), error: The
>> requested resource is in use.
>>
>>
>> void CupGeologyView::addInternetEvent( vtkActor *actor, vtkRenderWindow *window)
>> {
>> /*actor->SetOrientation(27.0, 27.0, 27.0);*/
>> internetEvent = new cupVtkUserInternetEvent;
>> QThread * thread = new QThread(this);
>> internetEvent->moveToThread(thread);
>>
>> connect(ui.allowInternetEvent, SIGNAL(triggered()), internetEvent, SLOT(init()));
>> thread->start();
>>
>> CupRemoteModelCallback *mo1 = CupRemoteModelCallback::New();
>> mo1->actor = actor;
>> mo1->window = window;
>> internetEvent->AddObserver(vtkCommand::UserEvent,mo1);
>> mo1->Delete();
>> }
>>
>>
>> void CupRemoteModelCallback::Execute( vtkObject *caller, unsigned long eventId, void *callData )
>> {
>>
>> cupVtkUserInternetEvent *internetEvent = reinterpret_cast<cupVtkUserInternetEvent *>(caller);
>> if (eventId = vtkCommand::UserEvent)
>> {
>> if (actor!= NULL && window != NULL)
>> {
>> //to-do
>> int* xyz = (int*)callData;
>> double ori[3];
>> ori[0] = xyz[0];
>> ori[1] = xyz[1];
>> ori[2] = xyz[2];
>> actor->SetOrientation(ori);
>> /*window->Render();*/
>> }
>> }
>> }
>>
>> ------------------------------
>> qlizhi
>>
>>  *From:* David Doria <daviddoria at gmail.com>
>> *Date:* 2012-04-22 21:53
>> *To:* qlizhi <qlizhi at gmail.com>
>> *CC:* vtkusers <vtkusers at vtk.org>
>> *Subject:* Re: [vtkusers] question about vtkCommand
>>    2012/4/22 qlizhi <qlizhi at gmail.com>
>>
>>> **
>>>
>>> hi, all!
>>> i write a subclass of vtkCommand, and in its function Execute(), i try
>>> to change an actor's Orientation by code [actor->SetOrientation(ori)].
>>> I made breakPoint on that line, it runs. But   the renderWindow  show
>>> nothing. Can anybody tell me why?
>>> Sorry for my poor english!
>>> ------------------------------
>>>  qlizhi
>>>
>> Did you call renderWindow->Render()? You'll probably have to make us an
>> as-small-as-possible code sample so we can see exactly what you're doing.
>>
>> David
>>
>> _______________________________________________
>> 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/20120423/13be645b/attachment.htm>


More information about the vtkusers mailing list