Need more help about Perforwer/glWidget

New Message Reply Date view Thread view Subject view Author view

Salvador Bayarri. Univ. Valencia (Salvador.Bayarri++at++uv.es)
Tue, 16 Dec 1997 19:16:58 GMT


   Hi, Performer lovers and haters...

   Some time ago Thomas Ludwig <ludwig++at++bflsgz.fl.bs.dlr.de> wrote:

>Hello Performer-Teams,
>I'm a student of aerospace engineering and until now I'm programming
>OpenGl applications in conjunction with Motif. Now I will start to use
>Performer. The problem I have is to use Performer in conjunction with
>Motif, but the application will be build by RapidApp!!!
>
>I did the following steps:
>- create an application with RapidApp,
>- include an GL-DrawingArea and various buttons (all different widgets),
>- last I insert all needed commands to allow OpenGl-drawings,
>
>Now I want to take this DrawingArea to use Performer. In the existing
>Demo-program "motif.C" the main() is given by Performer an after it's
>initialisation the Motif-part is started in a forked process. In
>contrast my main process must be in my Motif-program and from this I
>will invoke several Performer-programs. My questions
>are:
>Is it generally possible to use an existing window with a glwidget
>(created with Motif) for Performer, especially this created DrawingArea?
>If it is possible, how can I tell it the Performer, that this window and
>this Area is to use? Until now I can only invoke the Performer at what
>it open its own window behind my primary Motif-window.
>It would be glad if You would answer my questions and could help a
>beginner to understand the principle of working with Performer in
>combination with Motif.
>
>With best regards
> Thomas Ludwig.

   and Karen Harper <kharper++at++cra.com> answered:

>Hi Thomas,
>
>I suffered through this learning process a while ago and managed to come
>
>out of it with a Performer application running in a glwDrawingArea
>widget.
>
>The general steps are as follows.
>
>Set up your rapidapp interface with a glwDrawingArea.
>
>In the init function for your drawing area, make your Performer
>intiialization calls, i.e.
>pfInit, pfConfig, etc.
>
>Set up a pipe using pfGetPipe and a pfPipewindow.
>pipe = pfGetPipe(0);
>pw = new pfPipeWindow(pipe);
>
>You can then specify the glDrawingArea as the Performer drawing window
>by
>grabbing the window associated with the widget:
>Window xwin = XtWindow( w);
>pw -> setWinType(PFWIN_TYPE_X);
>pw -> setWSWindow( NULL, xwin);
>pw -> set WSDrawable( NULL, xwin);
>
>Then just carry on with your Performer application.
>
>Hope that helps,
>Karen

   I've tried to follow Karen's suggestions but (I'm a beginner in
 Performer integration with Windows management systems) I couldn't
 produce any Performer graphics in the GlWidget: I get a segmentation
 fault error when the application execute the first Performer graphics
 output function, like pfuDownloadTexList with the 'show' option.

   I think I'm doing the right Performer initialization stuff, but
 I guess some GlwDrawingArea graphics configuration initialization calls
 are missing in my application. I know (at least, I think so) which are
 the calls to initialize it in order to render OpenGL graphics, but I don't
 know the exact procedure to follow in order to get Performer output.

   Any help? Thanks in advance.

   Salva

----------------------------------------------------
Dr.Salvador Bayarri
Dept.Informatica y Electronica. Grupo de Gráficos 3D.
Instituto de Trafico y Seguridad Vial (INTRAS)
Universitat de Valencia
e-mail: Salvador.Bayarri++at++uv.es
Ph: +34 6 3601472
Fax: +34 6 3607366
--------------------------------------------------

===================================List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
            Submissions: info-performer++at++sgi.com
        Admin. requests: info-performer-request++at++sgi.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:56:26 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.