Page 1 sur 1

Comment fixer l'échelle d'un dessin (pour faire un plan)

Posté : 07 mai 2005, 16:17
par Je Débute
Comment fixer l'echelle d'un plan
par exemple "100" = 10 cm sur l'image imprimée.

Posté : 07 mai 2005, 16:21
par Cyrano
Je Débute, j'avoue que je te suis pas trop. Ce matin, tu nous mets un message pour une question de PHP dans le forum emploi : là, j'ai pas encore compris comment tu as fait pour te gourrer à ce degré là, ensuite, tu nous arrives dans un forum de PHP pour des histoire d'échelle sur un plan : on fait du PHP ici, pas de l'architecture :langue:

Ceci dit, si c'est bien du PHP, essaye donc de nous expliquer ce que tu veux faire avec des détails pertinents si possible.

Posté : 07 mai 2005, 16:36
par Je Débute
Ce matin je me suis trompé.

En fait je veux dessiner un plan assez simple de façon dynamique

J'entre des données mathématiques... et PHP doit me renvoyer le tracé géométrique. Le rendu doit être à l'échelle.

Si j'entre 100 en donnée, je dois retrouver 10 sur le plan (correspondant à 100) echelle 1/10.

Ce n'est pas de la programation de gestion, c'est vrai .

Posté : 07 mai 2005, 16:40
par Cyrano
À l'énoncé de ton message de début, on aurait pu douter qu'il s'agissait seulement de PHP

Ceci dit : tu inscris 100 et tu veux obtenir 10: question idiote peut-être mais pourquoi n'écris-tu pas 10 directement ? Il te suffit dans tes fonctions de traçage de multiplier par 10, mais la valeur affichée sera la valeur de départ.

D'autre part, si les valeurs servent à tracer le dessin, ce dessin n'est pas le texte lui-même qui est traité à part à partir de ces valeurs: pourquoi ne pas faire la conversion lors de ce traitement avant écriture du texte ?

Posté : 07 mai 2005, 17:18
par Je Débute
Voilà un code que je viens de créer

<?php
header ("Content-type: image/png");
// Création de l'image PNG ,
$image = imagecreate(1300,500);
// Remplissage du fond de l'image (blanc)
$fond = imagecolorallocate($image,255,255,255);
// Couleur des traits (noir)
$col_trait = imagecolorallocate($image,0,0,0);
// Dessin d'un trait de longueur 10 cm
imageline($image,100, 250, 1100, 250, $col_trait);
// Dessin du trait d'echelle de longueur 1 cm
imageline($image,1000, 280, 1100, 280, $col_trait);
// Commentaire d'échelle
$textcolor = imagecolorallocate($image, 0, 0, 0);
imagestring($image, 5, 950, 270, "1 cm", $textcolor);
// Affichage de du plan
imagepng($image);
?>

Je veux juste pouvoir imprimer à l'échelle.

Pour l'instant cela m'imprime 2.23 cm réel pour 1 cm voulu.