Ok, ahí va el parche, solo el cortar y pegar de una función a otra, de todas formas he mirado algunos schemas (opengldemo, image_viewer, wiimote_viewer) y está en todos con el init en el startup.<br><br>Un saludo<br><br><div class="gmail_quote">
El 27 de enero de 2009 17:59, Roberto Calvo <span dir="ltr">&lt;<a href="mailto:rocapal@gsyc.es">rocapal@gsyc.es</a>&gt;</span> escribió:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
Genial Eduardo!<br>
<br>
Sólo una cosa, que es necesario cambiar en éste y en todos los esquemas<br>
que suele pasar.<br>
<br>
En la función startup por conveniencia no puede haber nada relacionado<br>
con interfaz gráfica, ya que es posible correr el esquema sin tener<br>
interfaz gráfica (incluso sin tener X en el sistema)<br>
<br>
Por ello, en el ejemplo concreto de opencv, la función<br>
&quot;opencvdemo_init()&quot; no se puede llamar desde el startup. Es necesario<br>
llamarla desde &quot;image_recording_guiresume&quot;. Creo que lo hemos ido<br>
heredando del copy&amp;paste y es necesario revisarlo y cambiarlo.<br>
<br>
De hecho si la función se llamara opencvdemo_initgui() sería más<br>
explicativo incluso.<br>
<br>
Eduardo si te parece y generas el parche para tu esquema, genial :-) Que<br>
lo vimos hace unas semanas Jose María y yo pero el tiempo ... ya sabes.<br>
<br>
un saludete!!<br>
<div class="Ih2E3d"><br>
El mar, 27-01-2009 a las 17:21 +0100, Eduardo Perdices escribió:<br>
</div><div><div></div><div class="Wj3C7c">&gt; Hola juan, yo fui quien creó esa entrada del manual, no tengo el<br>
&gt; código porque solo lo cree para poner la entrada de ejemplo y hacer la<br>
&gt; captura, después lo borré.<br>
&gt;<br>
&gt; Aun así, entra en mi repositorio, por ejemplo aquí:<br>
&gt;<br>
&gt; <a href="http://svn.jde.gsyc.es/users/eperdes/headtracking/trunk/opencvdemo/" target="_blank">http://svn.jde.gsyc.es/users/eperdes/headtracking/trunk/opencvdemo/</a><br>
&gt;<br>
&gt; Te explico un poco, los glade se crean con un programa con el que vas<br>
&gt; creando la interfaz sin necesidad de picar código, el paquete de linux<br>
&gt; se llama &quot;glade-gnome&quot;, con eso generas la interfaz gráficamente y te<br>
&gt; genera el .glade, en mi schema puedes ver el que se ha creado con el<br>
&gt; nombre opencvdemo.glade.<br>
&gt;<br>
&gt; Después todos los .h son iguales en todos los chemas, si abres el<br>
&gt; opencvdemo.h simplemente tienes que cambiar lo de &quot;opencvdemo&quot; por el<br>
&gt; nombre de tu schema, todo lo demás es igual.<br>
&gt;<br>
&gt; Después en el opencvdemo.c, deja como cabeceras solo esto:<br>
&gt;<br>
&gt; #include &quot;jde.h&quot;<br>
&gt; #include &quot;opencvdemo.h&quot;<br>
&gt; #include &lt;graphics_gtk.h&gt;<br>
&gt; #include &lt;glade/glade.h&gt;<br>
&gt; #include &lt;gtk/gtk.h&gt;<br>
&gt; #include &lt;gdk/gdk.h&gt;<br>
&gt;<br>
&gt; Después, a partir de la linea 102, verás que hay muchas funciones que<br>
&gt; se llaman &quot;on_active_x_toggled&quot;, esas son las funciones que llama el<br>
&gt; gtk, y que están asignadas en la linea 1025. Todas esas funciones si<br>
&gt; quieres las puedes borrar y también todas las funciones propias del<br>
&gt; schema, hasta la linea 536.<br>
&gt;<br>
&gt; Después el resto de funciones tienes que tenerlas, aunque estén en<br>
&gt; blanco, ya que aparecen en el opencvdemo.h y jde las utiliza:<br>
&gt;<br>
&gt; La primera es opencvdemo_iteration, esa la puedes dejar en blanco<br>
&gt; Luego viene opencvdemo_imports, ahí hay que hacer el import de las<br>
&gt; variables de los drivers que utilices, de momento también la puedes<br>
&gt; dejar en blanco.<br>
&gt; En opencv_exports, tienes que hacer los 4 exports que vienen<br>
&gt; obligatoriamente, así que es solo cambiar el opencvdemo por el nombre<br>
&gt; de tu schema.<br>
&gt; opencvdemo_init es siempre parecida, ponla como viene en el manual.<br>
&gt; opencvdemo_end y stop se pueden quedar en blanco, tal como están.<br>
&gt; opencvdemo_suspend también es siempre igual, cambiando el nombre del<br>
&gt; schema.<br>
&gt; opencvdemo_resume, dejalo tal cual está pero quitando las dos llamadas<br>
&gt; que aparecen de la forma &quot;RGB2HSV_...&quot; que son de la librería<br>
&gt; colorspaces y que tu no tienes que utlizar.<br>
&gt; opencvdemo_thread, también es siempre igual, solo cambiar nombres.<br>
&gt; La de opencvdemo_parseconf, la puedes borrar, se usa para cuando<br>
&gt; tienes tu propio archivo de configuración, pero de momento no creo que<br>
&gt; tengas, así que borra la función.<br>
&gt; opencvdemo_startup, dejalo como está, pero quitando el primer if, que<br>
&gt; llama a la función que acabas de borrar.<br>
&gt; Las 3 funciones que faltan, que son guidisplay, guiresume y guisuspend<br>
&gt; son las 3 propias de la interfaz gráfica, vienen en el manual, así que<br>
&gt; ponlas como están ahí.<br>
&gt;<br>
&gt; Y nada más, si tienes alguna duda pregunta lo que sea.<br>
&gt;<br>
&gt; Un saludo.<br>
&gt;<br>
&gt; El 27 de enero de 2009 16:43, juan &lt;<a href="mailto:juan@iearobotics.com">juan@iearobotics.com</a>&gt; escribió:<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; Hola,<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;He estado mirando esta documentación sobre cómo hacer<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; esquemas que<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; usen GTK:<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://jde.gsyc.es/index.php/Manual#Using_GTK_Library" target="_blank">http://jde.gsyc.es/index.php/Manual#Using_GTK_Library</a><br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Me gustaría empezar por ese ejemplo. ¿Alguien tiene el código<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; completo? Me refiero no sólo al fichero .c, sino también<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; el .h,<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; el .glade y el Makefile.<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; Gracias<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; Saludos, Juan<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; --<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; Juan Gonzalez Gomez<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; blog: <a href="http://www.iearobotics.com/blog/" target="_blank">http://www.iearobotics.com/blog/</a><br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; web: <a href="http://www.iearobotics.com/juan" target="_blank">http://www.iearobotics.com/juan</a><br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; _______________________________________________<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; Jde-developers mailing list<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; <a href="mailto:Jde-developers@gsyc.es">Jde-developers@gsyc.es</a><br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers" target="_blank">http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Jde-developers mailing list<br>
&gt; <a href="mailto:Jde-developers@gsyc.es">Jde-developers@gsyc.es</a><br>
&gt; <a href="http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers" target="_blank">http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers</a><br>
</div></div><font color="#888888">--<br>
Roberto Calvo Palomino &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Libre Software Engineering Lab (GSyC)<br>
Tel: (+34) 91 488 85 23 &nbsp; &nbsp; &nbsp; &nbsp; | Universidad Rey Juan Carlos<br>
Tel: (+34) 91 488 81 05 &nbsp; &nbsp; &nbsp; &nbsp; | Edif. Departamental II - Despacho 116<br>
<a href="mailto:rocapal@gsyc.es">rocapal@gsyc.es</a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | c/Tulipán s/n 28933 Móstoles (Madrid)<br>
<a href="http://libresoft.es/" target="_blank">http://libresoft.es/</a><br>
<br>
GPG-KEY: <a href="http://gsyc.es/%7Erocapal/rocapal.gpg" target="_blank">http://gsyc.es/~rocapal/rocapal.gpg</a><br>
</font></blockquote></div><br>