Zhu3D Aide
Survol
Avec Zhu3D vous pouvez voir, animer des fonctions et des isosurfaces interactivement, ainsi qu'avoir un système paramètrique
indépendant. Le visualiseur OpenGL utilise le grossissement, les rotations et les translations, ainsi que les champs de lumières ou les
propriétés de surface. Les effets spéciaux sont : La déformation, la transparence, les textures, le brouillard et le mouvement
de flou. Les solutions numériques d'un système-d'équation sont résolus de façon précise et rapide avec
l'algorithme de recherche au hasard, adapté.
Table des matières
Configuration
Quand vous démarrez Zhu3D pour la première fois, la disposition est optimisée pour une résolution d'écran de 1024x768.
La raison en est que beaucoup de gens utilisent des portables ou des écrans plats ayant cette résolution par défaut. La taille des
fenêtres, leur position, les icônes dans la barre d'outils ou les polices, sont configurables selon vos besoins, de toute façon.
Toutes les configurations sont automatiquement par défaut, tant que vous ne changez pas quelque chose , encore une fois. Les polices et les
icônes sont modifier dans "Configurations/Général". Si vous voulez personnaliser votre écran de démarrage ou un test,
écraser les fichiers systèmes "startup.zhu" et "benchmark.zhu".
Le langage choisi pour les menus et les fichiers d'aide dépendent des "locales" trouvées par Zhu3D au démarrage. S'il trouve des
versions localisés adaptées à votre système, il les utilisera automatiquement. Sinon il utilisera l'anglais tant que vous ne
modifiez pas votre configuration de "locale" c'est-à-dire de la langue. L'anglais est court et précis, ce qui peut permettre l'utilisation
d'écrans plus petits.
Si Zhu3D est installé à partir de paquets de distribution (RPM, APT, ..) plutôt que de l'avoir compilé, vous pouvez manquer de
droits d'écriture en ce qui concerne le répertoire de travail et de textures. Copiez les dans un endroit adapté et ensuite remettez
à zéro les deux répertoires par défaut par le menu "Configuration/Répertoires". On en a besoin aussi quand on met
à jour une version plus récente de Zhu3D. Il est suggéré de contrôler les répertoires après chaque
installation.
Table des matières
Notes importantes
D'une importance primordiale, le bouton coloré, placé en bas à gauche. Avec lui vous pouvez basculer entre les fonctions, les
isosurfaces et le système paramètrique. Mise à l'échelle et autres opérations se réferrent au mode courant. Des
actions impossibles ou inadaptées sont voilées afin d'éviter des erreurs de fonctionnements.
En partie du à des limitations de l'écran quelques composants ou des boutons ont des noms abrégés ou ne sont pas apparement
nommés.Les objets suivent les conventions suivantes : Les boutons de directions s'appellent XYZ de gauche à droite. Pour les lumières
ou les surfaces, même chose, en RGBA. Ces lettres signifient Rouge Verte Bleue pour les lumières partagés avec le canal alpha. Il faut
savoir que chaque composant à une aide de l'outil qui explique en détail!
Table des matières
OpenGL-bases
Pour les nouveaux venus qui ne sont pas intimes avec le graphisme sur ordinateur : De loin la plus importante propriété de lumière et
de surface, est la portion diffuse, suivie par le partage ambient. Avec ces deux configurations vous pouvez régler les tâches les plus
communes.
Table des matières
Animation et déformation
En interne Zhu3D ne distingue pas le mode statique et le mode animation. Toutes les configurations et les interactions peuvent être appliquées
dans les deux modes sans aucune différences. Le contrôle de l'animation se fait à partir de "Editeurs/Animation". Sous Linux
l'utilisation du CPU réagit aussi souplement que de la soie et ainsi est très précis. Dans l'éditeur le bar de progression
reflecte principalement l'utilisation de GPU, mais l'éditeur de la déformation montre principalement l'utilisation de CPU.
Comme l'animation la déformation agit en transparence dans n'importe-quel mode. Que signifie déformer en termes mathématiques ? Une
valeur de déformation est automatiquement changée dans des limites utilisateurs déterminées. Pour les surfaces iso cela
signifie concrètement que la valeur iso est changée. Dans le cas d'une fonction explicite c'est la valeur z, qui dirige l'effet de pumping
dans la direction z. Les systèmes paramétriques changent les valeurs z aussi, mais dans ce cas c'est un effet zoom qui est automatique.
Table des matières
Tests
Les tests tourne pendant cinq secondes indépendament du système. Pour que les résultats soient comparables, tous les objets sont
voilés et les propriétés des fenêtres sont fixées. A la fin du test, l'état original est restauré
automatiquement.
Table des matières
Support de la souris
Quand vous cliquez sur une vue, vous pouvez utiliser la souris de la façon suivante :
- Rotation de la vue avec le bouton gauche
- Déplacer la croix de mesure avec le bouton droit
- Le bouton central est un zoom de haut en bas
- Les deux boutons gauche et droite déplacent dans toutes les directions.
Table des matières
Sauvegarde de fichiers
La sauvegarde enregistre complétement l'état actuel de Zhu3D. Quand l'animation est mise en marche, ses propriétés sont
enregistrées aussi. Charger un tel fichier relancera l'animation avec la vitesse enregistrée, au moins quand l'ordinateur est suffisament
rapide. Le format du fichier est transparent : Vous pouver le lire ou le modifier avec n'importe-quel éditeur de texte. Si vous n'entrez pas une
extension de fichier spécifique (telle que .zhu, .jpg ou .png), le programme choisira automatiquement celle qui est correcte selon la situation
présente.
Table des matières
Sauvegarde/impression d'images
Les paramètres sont déterminés dans "Configurations/Image". A condition que votre système puisse le supporter, vous pouvez
enregistrer les images aux formats PNG, JPG, PDF ou PostScript. De plus il y a la configuration de la dimension de l'image et de sa qualité. La
sauvegarde est lancé avec "Fichier/Save picture". Le rendu peut demander un certain temps, spécialement dans le cas de grandes images et s'il
n'y a pas assez de ressources de puissance. Pour l'impression seulement on peut utiliser la configuration de taille.
Pour PNG et JPG un facteur de 85 est un bon compromis, qui est ainsi la valeur par défaut. Des valeurs de 90 à 100 vont exploser la taille
des fichiers ce qui n'amènera rien de bon. Après le rendu et le recalibrage des valeurs XY, Zhu3D RAZ le second aux dimensions de la
fenêtre de visualisation automatiquement. De cette façon les proportions sont préservées entre la hauteur et la largeur.
Table des matières
Résolution des équations
Pour résoudre numériquement un système d'équation, vous devez fournir à Zhu3D un point de départ plausible pour
ses calculs internes. C'est fait en déplaçant la croix de mesure "proche de la relativité" vers une solution. Ensuite cliquez sur le
bouton "solver" dans la barre d'outil. Peu de temps après vous obtiendrez un rapport du solutionneur, détaillé. Quand la solution est
fiable, la croix de mesure sera déplacé en face de lui.
Dans les cas difficiles le point de départ peut être facilité, si vous :
- Utilisez des surfaces contrastées pour les fonctions
- Mettez à l'échelle les valeurs XY selon vos besoins et ensuite diminuez fortement l'échelle des Z
En faisant cela, vous obtiendrez une vue à plat de vos fonctions, où vous pourrez trouver des solutions possibles d'un seul coup d'oeil. A
côté de "solver.zhu" vous trouverez de plus amples exemples dans le repértoire de travail, qui ont des solutions simples. Quand vous
êtes en mode paramétrique ou iso, résoudre n'a aucun sens, c'est pourquoi on ne peut pas l'utiliser.
La précision de résolution est spécifiée dans "Configuration/Général" et peut être de 15 décimales.
Si le solutionneur n'arrive pas à calculer continuellement, réduisez le nombre de décimales.
Table des
matières
Transparence
L'éditeur de matériau et de lumière fournissent un réglage pour le canal alpha. Normalement la valeur alpha n'affecte en rien
l'afffichage et est ainsi réglée à 255 par défaut. L'exception étant l'affichage de graphiques transparents. Afin de
contrôler c'est effet, ouvrir l'éditeur de surface et changer les valeurs alpha de la lumière diffuse.
Quand le mode recto verso est en marche globalement, vous devez savoir que vous devrez peut être changer les valeurs de la face avant , ainsi que de
la face arrière, afin d'apercevoir l'effet. Afin de simplifier les choses, vous pouvez changer en mode recto (une face) dans l'éditeur de
lumière global.
Table des matières
Effects spéciaux
Les textures sont dans le répertoire ./work/textures par défaut et peuvent être d'un de ces formats suivants : PNG, JPG, TIF, BMP, XBM,
XPM, PPM, PBM ou PGM. Les dimensions de largeur ou hauteur doivent être une puissance de 2 par rapport à chacune d'entre elles. Vous pouvez
tourner les textures verticalement, ce qui peut être nécessaire quand on affiche des arrières plans ou des systèmes
paramétriques, où la face avant et la face arrière peuvent être interchangées. Actuellement les textures ne sont pas
sauvées dans des fichiers Zhu3D. Si un fichier est chargé avec une texture, le programme essaie de chercher dans le répertoire de
texture par défaut.
Le brouillard peut être utilisé quand un graphique est trop brillant ou ressemble trop à un graphique fait par odrdinateur. Les modes
"Exp" and "Exp2" sont utilisables directement, mais le mode linéaire montre des résultats beaucoup plus élaborés. Avec le
réglage marche/arrêt vous pouvez définir la position, la densité et bien sûr le déplacement du brouillard
très exactement. Le bouton "Sync" est un aide importante dans la section couleur. Il synchronise la couleur du brouillard avec la couleur de
l'arrière plan, ce qui normalement affiche les meilleurs résulats.
Dans le mouvement du flou les réglages s'influencent partiellement les uns les autres. Plus le nombre d'itérations est important, plus
importante est la magnitude de l'effet de flou, avant que le graphisme ne devienne trop sombre. Le décalage par itération réagie
indépendement des deux précédents réglages.
Table des matières
Sources de lumière
Zhu3D posséde jusqu'à huit sources de lumière independentes. Les positions initiales des sources sont les bords du "cube normal". Vous
pouvez imaginer les lumières 0-3 comme celles d'avant plan, 4-7 comme celles d'arrière plan. Les configurations devraient être, pour la
plupart, évidentes. Elles se font via "Editeurs/Lumières".
Les projecteurs peuvent sembler un peu bizarre, car ils dépendent de plusieurs facteurs. Pour attraper cette sorte de lumière facilement : Au
début régler l'angle et l'intensité du projecteur à leur maximum. Ensuite réduire l'angle lentement et essayer de
trouver la position de base avec le potentiomètre de la direction. Après cela ajuster finement l'angle du projecteur, son intensité et
sa position. Le réglage du projecteur est dépendent du potentiomètre de distance aussi, qui détermine la distance à
l'origine. Regardez l'exemple "spotlight.zhu", qui permet de se rendre compte du contexte complexe rapidement.
On peut aussi mentionner le réglage "infini" dans lumière globale, qui déplace les sources de lumière à l'infini. Dans
ce mode on ne peut pas utiliser les projecteurs, le potentiomètre de distance ni l'atténuation. C'est pourquoi ils sont positionnés en
arrêt automatiquement. Ce mode peut être très utile pour afficher des graphiques à plat. Si un graphique est trop sombre, la
lumière ambiante globale est un moyen rapide de l'illuminer.
Table des matières
Propriétés de surface
La plupart des choses devraient être évidente. Le seul tracas peut être la section de lumière spéculaire, qui est
responsable de la propriété de brillance des surfaces-fonction. Pour voir son effet, il faut bien sûr, qu' au moins une source de
lumière émette une certaine lumière spéculaire!
Normalement Zhu3D enregistre tous les réglages de l'éditeur de surface. Quand vous changez vos réglages globaux du double-face au
simple-face, l'éditeur change aussi rigoureusement les propriétés d'avant plan de toute façon.
Table des
matières
Note à propos de l'échelle et l'affichage
Mettre à l'échelle X ou Y règle chaque axe individuellement. Si on utilise le bouton A(ll)-button, tous les axes seront mis à
l'échelle à la même longueur automatiquement pour éviter les contraintes. Quand votre graphique dépasse le domaine de
saisie, diminuez les valeurs Z fortement. La même chose est vraie si la tessellation ne marche pas en bordure de surface. Rappelez vous : Comme votre
écran est en 2 dimensions, une rotation autour de l'axe des Z, ne peut être effectuée seulement qu'avec le potentiomètre des Z
de toute façon.
Les réglages du Triangle/Quads-tessellation et la résolution de la grille influencerons l'affichage aussi. L'échelle
précision/vitesse est déterminée avec le menu "Configuration/Echelle".
Conseil : Pour mettre à l'échelle rapidement, appuyer sur le bouton plutôt que de cliquer sur le bouton continuellement.
Table des matières
Editor de fonctions et compilateur
Terminer l'édition d'une nouvelle fonction par "entrée". Si le compilateur trouve des erreurs de syntaxe, il va vous avertir. La saisie
tolère les blancs et accepte les majuscules comme les minuscules. Le compilateur reconnait les fonctions suivantes, opérateurs et constantes
:
+, -, *, /, %, ^, sin(), cos(), tan(), asin(), acos(), atan(), sinh(), cosh(), tanh(), asinh(), acosh(), atanh(), cot(), csc(), sec(), int(), frac(),
floor(), ceil(), mod(a,b), exp(), pow(a,b), log(), log2(), log10(), sqrt(), abs(), sig(), rnd(interval), gamma(), min(a,b), max(a,b), $pi (=3,14..), $e
(=2,71..), $c (=299792458 m/s). Un commentaire commence par un dièze #.
Les opérateurs spéciaux sont : if(a,b,c), &, |, ! <, >, <=, >= et la fonction récursive eval(...). La condition
if(a,b,c) peut être comprise en tant que "si condition a remplie, alors expression b sinon expression c". Les opérateurs booléens et,
ou, non (&, |, !) peuvent être combinés pour formuler des conditions "if" plus complexes. Exemples de conditions, opérateurs
spéciaux, seront trouvés dans le répertoire de travail.
Dans certains domaines Zhu3D renvoie les messages d'erreurs de fonctionnement discrètement. Vous pouvez voir s'afficher des fonctions telles que
sqrt(x) ou 1/x sans être averti par un message comme "racine négative" ou "division par zéro". En cas de doute, utiliser des
expressions avec une syntaxe correcte telle que sqrt(abs(x)) par exemple.
L'éditeur supporte les fonctions de copie, couper et coller ainsi que annuler/refaire.
Table des matières
Options définies Par l'utilisateur
Afin de créer ses propres fonctions et constantes (personaliser), ouvrir le menu "Editeur/Personaliser". De cette façon vous obtenez un
tableau, dans lequel vous pouvez entrer vos propres définitions. Les opérations doivent avoir un signe égal et un nom unique. Les
fonctions d'un même nom, mais d'une quantité différentes de paramètres, ne sont pas permises ! Soyez prudent quand vous faites
vos définitions. Car elles peuvent s'imbriquer ou même être récursives, il est fortement recommandé de les entrer d'une
façon claire et linéaire à partir de la ligne 1 jusqu'à la fin. Un clic de la souris permet de supprimer rapidement «
blancs et commentaires » insérer dans les lignes vides.
CONSEIL: Regardez l'exemple "usrdef", dans lequel vous pouvez trouver un tas d'exemples, dans une gamme de définitons, du plus simple au plus
compliqué.
Table des matières
Function implicite et isosurfaces
Celles-ci sont de la forme générale 0=f(x,y,z) tandis que les fonctions "normale" z=f(x,y) sont valables. Les fonctions implicites
possèdent certains avantages par rapport aux fonctions normales et aux systèmes paramétriques. Les fonctions complexes peuvent
être représentées directement par exemple. Les fonctions implicites décrivent un champ scalaire tridimensionel et crée
ainsi une ci-nommée isosurface. Pour afficher ces isosurfaces Zhu3D utilises différents algorithmes de base de volumes. Vous pouvez les
choisir dans le menu "Configurations/Général".
CONSEIL: Les grilles plus denses nécessiterons un temps de calcul très long.
Table des matières
Système paramètrique
Le changement de signification est particulièrement évident. A la place de trois fonction indépendantes dans x et y, vous travaillez
dans un seul système avec les paramètres s et t, dont les valeurs sont déterminées par la fonction X(s,t), Y(s,t) et Z(s,t).
L'échelle change de signification aussi. A la place de remettre à l'échelle les valeurs de x par exemple, vous pouvez le faire avec la
fonction X(s,t) maintenant.
L'interval stantard pour s et t est [-1, 1], que vous changez en mettant à l'échelle X et Y. Dans un système paramétrique vous
pouvez avoir une quantité infinie de valeurs Z(s,t), que vous pouvez imaginez liées aux valeurs Z. Ainsi l'arrière plan et l'avant
plan peuvent s'intégrer l'un à l'autre ou ils peuvent même se chevaucher avec ambiguité. Afin d'éviter des tessellations
erronées, il faut réduire l'échelle des X et/ou Y au minimum nécessaire. Le bouton d'échelle A(ll) s'applique à
toute la taille du graphisme.
L'exemple tel que Moebius "moebis.zhu" démontre ce contexte. Si vous voulez analyser des courbes, vous devez changer en mode point. Un exemple de
cette sorte est le fichier "curve.zhu".
Table des matières
Légendes éditeur
Les trois premières entrées sont réservées aux étiquettes xyz des axes, toutes les autres sont utilisables pour les
libellés. La différence vient du fait que les étiquettes xyz sont affichées en perspectives, les autres sont planes. Pour des
raisons de simplicité, si on change la couleur d'une seule étiquette xyz cela change la couleur des autres ainsi que des axes.
Les saisies dans la colonne « taille » peuvent etre changées en double cliquant ce qui évite toute intervention du clavier. Un
clic sur le bouton cadenassé permet de déplacer une saisie rapidement avec la souris. Cette action, ainsi que les autres, se réferrent
à la ligne présente sélectionnée. Pour des raisons de simplicité on peut débloquer la souris avec le bouton droit
cliqué dans le visualiseur aussi..
Table des matières
Raccourcis
Le programme implemente d'autres raccourcis en plus de la forme <Ctrl-Letter>. Independant de la localisation U,D,L,R,+,- sont disponibles. Ces
lettres correspondent à haut, bas, gauche, droite, grossissement et réduction.
Table des matières
Qui est Zhu?
Le nom de Zhu3D vient du mathématicien chinois Zhu Shijie. Environ 1300 après la naissance du christ, il fut vraiment le premier à
résoudre un système d'équation complexe non-linéaire d'une façon moderne. Bien sûr vous trouverez sa pièce
maitresse historique dans le répertoire de travail. Elle s'appelle évidement "zhu.zhu".
Une remarque : Shijie a oublié de spécifier la seconde solution non-triviale à cause des ses signes négatifs. La raison en est
une limitation par l'imagination des numéros de pièces, qui fut finalement dépassé plusieurs centaines d'années
après. Avec Zhu3D vous pouvez trouver cette seconde solution d'un seul coup :-)
Pas vraiment spectaculaire, du moins d'un point de vue optique, est "ninebooks.zhu". L'exemple historique vient du grand livre "neuvième livre", un
receuil mathématique publié en Chine environ 200 ans avant J.C. Les anciens résolurent ce système linéaire avec un
algorithme similaire, que le fameux mathématicien Carl Friedrich Gauss réinventa quelques 2000 ans plus tard.
En comparaison vous pouvez étudier "diophant.zhu", un système qui fut publié dans le livre grecque "Arithmétique" pas avant 450
ans après le "neuvième livre". La solution de ce système simple sans coefficient fut trouvé par le célébre
mathématicien Diophant.
Table des matières

