Historique des modifications - Message

Message #6782

Sujet: Dictionnaire et documentation automatique.


Type Date Auteur Contenu
Dernière modification 29-08-2009 12:56:20 nico
Salut à tous, étant un newbie en 3d, j'ai du mal à me familiariser avec les termes employés, ce qui ne facilite pas l'apprentissage,
De plus, j'en ai marre de chercher pendant des heures dans la doc pour trouver une fonction.
Donc j'ai essayé de trouver des solutions pour que ces problèmes ne ce reproduise plus, ni pour moi, ni pour quiquonque dans l'univers. mdr

J'ai donc créer une fonction toute simple pour ajouter des définitions aux mots .
Pour afficher la définition d'un mot, il suffit de le survoler avec la souris, puis un cadre apparait avec la définition.
voici la fonction:
	function dico($text)
{
    $dictionnaire= array(  "vertices"=>"sommets","vertex"=>"sommet");							   
	foreach($dictionnaire as $mots => $definitions)
	{
	   $text=preg_replace('#('.$mots.')#isU','<span title="'.$definitions.'">$1</span>',$text);
	}
    return $text;
}

Voilà, c'est dejà la version finale de la fonction dictionnaire, il reste juste à ajouter des mots.(je peux aussi rajouter la gestion des acronym si ça vous dit)
Bon ça c'est surtout pour les zero de mon genre, il est évident que les habitués de la 3d n'en n'aurons pas l'utilité,
Et afin de ne pas affecter leur confort de lecture, les mots ne sont ni coloré ni souligné ni rien du tout en fait.(mais on peut changer si vous trouvé que c'est pas pratique)

Et maintenant, la fonction dont vous reviez tous smile, la documentation automatique.
Bon j'avoue que le terme n'est pas très bien choisi, mais il me plait.
En fait cela consiste a créer un lien vers la documentation des classes d'irlicht.
admettons qu'un message contienne le mot "imeshscenenode"(peu importe les majuscules), et bien en cliquant dessus on est redirigé vers sa doc sur le site d'irrlicht.
Alors pour ce faire il y a plusieurs solutions.
La première est de définir un lien pour chaque mots clés d'irrlicht, en d'autres termes cela consiste à écrire des centaines de lignes pour déclarer les liens, et je ne pense pas que quelqu'un ai le courage de remplir cette tâche,.

J'ai donc adopté une autre méthode utilisant google, qui est beaucoup plus simple mais aussi beaucoup moins rapide à l'execution.(pas d'inquiétude la rapidité ne concerne pas la navigation sur le forum).
Non vous ne revez pas, vous avez bien vu le mot google yikes
En effet c'est lui qui va chercher à notre place, il est là pour ça après tout.
La particularité de cette recherche est qu'elle est totalement transparente pour l'utilisateur et qu'elle opère uniquement sur le site officielle d'irrlicht.
Donc pour faire simple, lors d'un clic sur un mot d'irrlicht, une recherche de ce mot est effectuée de maniere invisible part google, puis on est redirigé vers le premier résultat de google, qui correspond donc à la doc d'irrlicht. Ouf.
Bon je pense que j'en ai fait fuir plus d'un avec mon roman, mais rassurez vous le code est tout rikiki.
$documentation= array( "imeshscenenode"=>"A scene node displaying a stat.....",
						   "mesh"=>"Class which holds the geometry of an o........ ");						   
	
	foreach($documentation as $fonctions => $definitions)
	{
	 $text=preg_replace('#([^a-zA-Z0-9])('.$fonctions.')([^a-zA-Z0-9])#isU','$1<span title="'.$definitions.'"><a style=" text-decoration:none; color:ffffff; " href="'.PUN_ROOT.'include/documentation.php?fonction='.$fonctions.'">$2</a></span>$3',$text);
	}

<?php
$fonction=htmlspecialchars($_GET['fonction']);
$source = implode ('', file ("http://www.google.com/search?hl=en&q=$fonction+%2Bclass%2BReference%2Bsite%3Ahttp%3A%2F%2Firrlicht.sourceforge.net%2Fdocu%2F&btnG=Search&lr=lang_fr&aq=f&oq=&aqi="));
$source = strstr($source, '<a href="http://irrlicht.sourceforge.net/docu/'); 
$fin_source = strstr($source, '.html"'); 
$proposition = str_replace("$fin_source","", $source); 
$proposition = str_replace('<a href="',"", $proposition);  
header('Location:'.$proposition.'.html');
 ?>

par contre ces instructions ne nous redirigerons pas forcement sur la page souhaité si on utilise des mots comme setposition.
car cette fonction est utilisé dans beaucoup de classe, donc google nous redirigera vers la classe qui a eu le plus de visites.
Dans mes tests, j'ai était redirigé vers la classe ICursorControl. sad , enfin c'est toujours mieux que rien mais bon, je pense que pour le moment on devrait se contenter des class, c'est déjà pas mal.

Voilà, j'espere que ça vous interrêsse, et surtout que ça pourra vous aider.
Dit moi si ça t'interresse tmike, et je t'explique la procédure.
Création du message 21-08-2009 21:14:04 nico
Salut à tous, étant un newbie en 3d, j'ai du mal à me familiariser avec les termes employés, ce qui ne facilite pas l'apprentissage,
De plus, j'en ai marre de chercher pendant des heures dans la doc pour trouver une fonction.
Donc j'ai essayé de trouver des solutions pour que ces problèmes ne ce reproduise plus, ni pour moi, ni pour quiquonque dans l'univers. mdr

J'ai donc créer une fonction toute simple pour ajouter des définitions aux mots .
Pour afficher la définition d'un mot, il suffit de le survoler avec la souris, puis un cadre apparait avec la définition.
voici la fonction:
	function dico($text)
{
    $dictionnaire= array(  "vertices"=>"sommets","vertex"=>"sommet");							   
	foreach($dictionnaire as $mots => $definitions)
	{
	   $text=preg_replace('#('.$mots.')#isU','<span title="'.$definitions.'">$1</span>',$text);
	}
    return $text;
}

Voilà, c'est dejà la version finale de la fonction dictionnaire, il reste juste à ajouter des mots.(je peux aussi rajouter la gestion des acronym si ça vous dit)
Bon ça c'est surtout pour les zero de mon genre, il est évident que les habitués de la 3d n'en n'aurons pas l'utilité,
Et afin de ne pas affecter leur confort de lecture, les mots ne sont ni coloré ni souligné ni rien du tout en fait.(mais on peut changer si vous trouvé que c'est pas pratique)

Et maintenant, la fonction dont vous reviez tous smile, la documentation automatique.
Bon j'avoue que le terme n'est pas très bien choisi, mais il me plait.
En fait cela consiste a créer un lien vers la documentation des classes d'irlicht.
admettons qu'un message contienne le mot "imeshscenenode"(peu importe les majuscules), et bien en cliquant dessus on est redirigé vers sa doc sur le site d'irrlicht.
Alors pour ce faire il y a plusieurs solutions.
La première est de définir un lien pour chaque mots clés d'irrlicht, en d'autres termes cela consiste à écrire des centaines de lignes pour déclarer les liens, et je ne pense pas que quelqu'un ai le courage de remplir cette tâche,.

J'ai donc adopté une autre méthode utilisant google, qui est beaucoup plus simple mais aussi beaucoup moins rapide à l'execution.(pas d'inquiétude la rapidité ne concerne pas la navigation sur le forum).
Non vous ne revez pas, vous avez bien vu le mot google yikes
En effet c'est lui qui va chercher à notre place, il est là pour ça après tout.
La particularité de cette recherche est qu'elle est totalement transparente pour l'utilisateur et qu'elle opère uniquement sur le site officielle d'irrlicht.
Donc pour faire simple, lors d'un clic sur un mot d'irrlicht, une recherche de ce mot est effectuée de maniere invisible part google, puis on est redirigé vers le premier résultat de google, qui correspond donc à la doc d'irrlicht. Ouf.
Bon je pense que j'en ai fait fuir plus d'un avec mon roman, mais rassurez vous le code est tout rikiki.
$documentation= array( "imeshscenenode"=>"A scene node displaying a stat.....",
						   "mesh"=>"Class which holds the geometry of an o........ ");						   
	
	foreach($documentation as $fonctions => $definitions)
	{
	 $text=preg_replace('#([^a-zA-Z0-9])('.$fonctions.')([^a-zA-Z0-9])#isU','$1<span title="'.$definitions.'"><a style=" text-decoration:none; color:ffffff; " href="'.PUN_ROOT.'include/documentation.php?fonction='.$fonctions.'">$2</a></span>$3',$text);
	}

<?php
$fonction=htmlspecialchars($_GET['fonction']);
$source = implode ('', file ("http://www.google.com/search?hl=en&q=$fonction+%2Bclass%2BReference%2Bsite%3Ahttp%3A%2F%2Firrlicht.sourceforge.net%2Fdocu%2F&btnG=Search&lr=lang_fr&aq=f&oq=&aqi="));
$source = strstr($source, '<a href="http://irrlicht.sourceforge.net/docu/'); 
$fin_source = strstr($source, '.html"'); 
$proposition = str_replace("$fin_source","", $source); 
$proposition = str_replace('<a href="',"", $proposition);  
header('Location:'.$proposition.'.html');
 ?>

par contre ces instructions ne nous redirigerons pas forcement sur la page souhaité si on utilise des mots comme setposition.
car cette fonction est utilisé dans beaucoup de classe, donc google nous redirigera vers la classe qui a eu le plus de visites.
Dans mes tests, j'ai était redirigé vers la classe ICursorControl. sad , enfin c'est toujours mieux que rien mais bon, je pense que pour le moment on devrait se contenter des class, c'est déjà pas mal.

Voilà, j'espere que ça vous interrêsse, et surtout que ça pourra vous aider.
Dit moi si ça t'interresse tmike, et je t'explique la procédure.

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
135 invités en ligne
membre en ligne: -
RSS Feed