Yourte - programme
Sert à générer les plans d'une yourte, tels que décrits sur tig12.net
Distribué en logiciel libre (licence GPL).
Développé en php 5.2, aussi testé avec php 7
Utilisation
Il y a 2 possibilités :
-
Le plus simple est d'utiliser la version en ligne, sur dyn.tig12.net/plans-yourte.
-
Vous pouvez aussi télécharger le programme pour l'installer sur votre ordinateur et l'exécuter en local.
Dans ce cas :
1 - Télécharger le programme.
2 - Installation : décompresser ce zip et le mettre à un endroit de votre disque visible par le logiciel serveur (par ex apache ou nginx)
3 - Configuration : le programme est fourni avec un fichier de configuration contenant les données de la yourte que j'ai construite : config-yourte.txt.
Modifiez ce fichier, en mettant les valeurs de votre yourte (voir paragraphe suivant).
4 - Utilisation : pour générer les plans de la yourte, faites ensuite pointer votre navigateur internet à la page
http://localhost/chemin/vers/plans-yourte/www
Fichier de configuration
La syntaxe de ce fichier est celle des fichiers ini (utilisée par exemple pour php.ini), légèrement modifiée :
- Sections : le document est découpé en sections, marquées par des lignes contenant un seul mot entre crochet.
Par exemple, la ligne :
[document]
marque le début de la section "document" du fichier.
- Syntaxe : chaque section contient des lignes permettant de définir les valeurs de la yourte.
La syntaxe est :
cle = valeur
Ex :
D = 6.60
permet de spécifier que le diamètre de la yourte est de 6 m 60.
- Commentaires : les lignes commençant par ; ou # sont ignorées.
Les commentaires "style C" sont aussi pris en compte : le texte compris entre /* et */ est ignoré ; le texte suivant les caractères // est ignoré jusqu'à la fin de la ligne.
- Contenu :
- La section document
, permet de spécifier quoi générer.
- La section general
, permet de spécifier les données liées à la forme générale de la yourte.
- Chaque partie de yourte correspond ensuite à une section.
A propos du code
Voila quelques indications si vous voulez modifier le programme :
Le code se trouve dans le répertoire src/, qui contient des sous-répertoires :
- yurtparts contient le code des différentes parties de la yourte.
- libext (external libraries) contient du code auxiliaire utilisé par le programme ;
- css fonts images contiennent des fichiers qui sont recopiés tels quels dans le répértoire résultat (images, CSS).
Pour fabriquer les plans, un objet de la classe Yurt est construit. Cet objet va stocker les données venant du fichier de configuration (variable privée $config).
Pour générer les plans, il faut appeler la méthode generateDocument()
. Dans cette méthode, des objets YurtPart
( = partie de yourte) vont être créés. Ces objets sont seulement capables de générer leurs plans ; l'assemblage sous forme de document est effectué par generateDocument()
.
Les objets YurtPart
stockent en leur sein une référence à l'objet Yurt
qui les créée.
Un objet Yurt
contient aussi une variable privée $results, qui permet de stocker les résultats calculées par les YurtParts ; c'est utile si une partie a besoin de résultats calculés par d'autres parties ; par exemple, la toile du toit a besoin de la longueur des perches. Les objets Perches stockent donc cette valeur dans l'objet Yurt
qui l'a créé.