Nop pas de callback pour l'instant sans un moteur de physique/collision.
Il y a plusieurs possibilite pour implementer ca.
Tu peux implementer ca en utilisant la fonction :
evas_objects_in_rectangle_get(Evas, X, Y, W, H, include_pass_events,
include_hidden) . Elle retournera null, si il n'y aucun objet a cet
endroit, et un array d'Evas_Object, si elle trouve quelque chose.
Tu peux aussi avoir une liste des objets se trouvant dans ton monde et
comparer leur geometrie directement sans faire appel aux EFL.
--
Cedric BAIL
Nop. Pas de maniere simple a ma connaissance.
--
Cedric BAIL
En C, on recupere une liste d'Evas_Object. Et avec Elixir, un array
d'Evas_Object.
> Y aura-t-il une API disponible dans un futur proche ? Car C != JS :(
De quel API parles-tu ?
--
Cedric BAIL
Pour eviter de creer un objet array quand la liste est vide, je
retourne 'null', il te faut donc faire un truc plutot comme ca :
elx.print((infos != null ? infos.length : "0") + "\n");
D'ailleur, tu peux aussi appeler :
var infos = evas_objects_in_rectangle_get(g_evas, x, y, 2, 10, true, false);
Ca revient au meme, mais c'est plus explicite quand a la lecture des parametres.
> Sachant que mes x, y et g_evas sont bien déclarés. Je lance mon
> programme, j'appuie sur la touche qui déclenche le test et... bim !
> la méthode d'animation s'arrête mais pas un seul message d'erreur...
Oui, j'ai un bug, je ne sais pas pourquoi il ne reporte plus d'erreur
lors d'un mauvais passage de parametre. Il va falloir que je regarde.
> J'essaie de faire une sorte de jeu de tir et je ne vais pas référencer
> tous les objets qui se baladerons (faudrait référencer tous les
> pixels !) donc il faut absolument que j'arrive à utiliser cette
> méthode...
Euh, je ne pense pas que la Freebox puisse animer tous les pixels :-)
Si tu me decris un peu le principe de ce que tu veux faire, je
pourrais peut-etre t'aider/t'aiguiller un peu.
>> > Y aura-t-il une API disponible dans un futur proche ? Car C != JS :(
>>
>> De quel API parles-tu ?
> Fatigué je me trompe de mots :)
> Je voulais parler d'une doc contenant toutes les déclarations de
> méthodes et retours comme les .h mais en plus documenté (avec exemples
> tant qu'à faire :D)
Bien d'accord, malheureusement, je n'ai pas assez de temps pour faire
ca. Desole.
--
Cedric BAIL
Ton code me semble bon, je regarde et essai de comprendre pourquoi ca fait ca.
> Dans mon programme final, il y aura plein de carrés qui se déplaceront
> et il sera difficile de répertorier tous les objets en mouvement.
Par contre, si je peux me permettre, la lecture de l'issue numero 3 et
des programmes d'exemples fournit, devrait peut-etre t'aider.
http://code.google.com/p/freebox-elixir/issues/detail?id=3
--
Cedric BAIL
Ok, il y avait un bug dans evas. Corrige dans le svn r43999.
--
Cedric BAIL
Yep, le changement n'impact que Evas. Tu peux faire juste un svn up
sur ce bout la et faire un make/make install. Les autres dependences
ne sont pas impacte (et je n'ai pas vu de changement d'API dans Evas
qui pourrait forcer a mettre a jour Ecore/Edje/Elixir).
--
Cedric BAIL
Tu t'es mis dans quel repertoire ? Tu as fais comment la premiere fois
pour recuperer Evas et tu as quoi comme message d'erreur exactement ?
--
Cedric BAIL
Et tu n'a plus les sources qu'il avait telecharge ? Parce que si tu
les as, il suffit d'aller dans le repertoire evas deja telecharge et
faire un: " svn up && make && sudo make install".
Si ce n'est pas le cas, il faut faire effectivement le "svn co" suivit
de, dans l'ordre :
./autogen.sh
make
sudo make install
--
Cedric BAIL
Vincent.
2009/11/26 Cedric BAIL <moa.bl...@gmail.com>:
Des snapshot des EFL sont actuellement en preparation. Il devrait
normalement arrive dans le courant de la semaine prochaine. En
attendant, je conseille de suivre les dernieres revisions du SVN.
--
Cedric BAIL