Problème d'affichage avec certains motif

Golderack Messages postés 5 Date d'inscription mardi 18 novembre 2003 Statut Membre Dernière intervention 17 décembre 2004 - 18 nov. 2003 à 05:45
Golderack Messages postés 5 Date d'inscription mardi 18 novembre 2003 Statut Membre Dernière intervention 17 décembre 2004 - 19 nov. 2003 à 06:36
Allo, J'ai dison un petit problème (niaiseux mais il est quand même là) je dois faire afficher des motifs selon ce qu'il aura été lu auparavant dans un fichier texte; jusque la tout va comme sur des roulettes. Le fichier comporte 4 nombre; le premier pour le type de figure à afficher, le second pour le nombre et les deux derniers pour la taille de la figure. Dans les quatres figures j,ai un rectangle ( lui est ok ), un triangle rectangle (lui aussi) et un triangle isocèle (lui me cose de sérieux problème). Pour pouvoir afficher les figures il faut que j'utilise de petit carré 10 x 10 et créer une condition permettant de faire afficher mes figures. Mais pour le triangle, je ne réussi pas à faire afficher le triangle comme il faut. Voici à quoi ressemble le bout de code que j,utilise pour mon triangle :

     else if liType = 3 then
        begin
        While liNombre > 0 do
            begin
            AfficherTriangleIsocele (liEtage,liNbreLigne,liNbreColonne,liColonne);
            Dec(liNombre);
            liColonne := liColonne + liNbreLigne;
            end;
        end

Procedure TFrmTP3GL.AfficherTriangleIsocele (piEtage,
                                             piNbreLigne,
                                             piNbreColonne,
                                             piColonne     : integer);
var
    liCentre,
    liLigne,
    liPosition,
    liPositionGauche,
    liPositionDroite :integer;
begin

liCentre := piColonne + piNbreLigne - 1;
liPosition := piEtage - piNbreLigne -1;

(*Afficher la première figure au-dessus du triangle*)
Biblio.AfficherCercle (self, piEtage ,liCentre + piColonne - 4);
liLigne := 1;
liLigne := liLigne + piEtage;

(*Tant que la variable ligne est inférieur au nombre de ligne
+ l'étage - 1*)
While liLigne < (piNbreLigne + piEtage -1) do
    begin
    liPositionGauche := piNbreLigne + piColonne - liLigne ;
    liPositionDroite :=(piColonne * 2) + liLigne;
    AfficherDeuxColonnes ( liLigne, liPositionGauche, liPositionDroite);
    liLigne := liLigne + 1;
    end;

(*Afficher la dernière ligne du triangle*)
AfficherUneLigne (liLigne, piColonne - 1, piNbreLigne * 2 -1);
end;


Je vous en remerci d'avance :)

3 réponses

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
18 nov. 2003 à 23:03
Je cite : "Mais pour le triangle, je ne réussi pas à faire afficher le triangle comme il faut".
C'est quoi le problème au juste ?
Un problème :
- de calcul des positions des sommets
- de dessin sur un canvas
- autre ?

Une image vaut mieux qu'un long discours. Alors, si tu pouvais exprimer clairement ton problème et nous montrer ce qui ne va pas, ce serait mieux pour obtenir de l'aide.
May Delphi be with you
0
Golderack Messages postés 5 Date d'inscription mardi 18 novembre 2003 Statut Membre Dernière intervention 17 décembre 2004
19 nov. 2003 à 06:35
Dsl pour l'autre fois mais voici une image de ce que mon programme fait lorsque je l'éxécute. Je n,arrive pas à disposer mes côtés comme il faut.

Je ne sais pas vraiment quoi dire de plus je commencè à programmer alors je ne peux vraiment dire s'il y aurait autre chose qui pourrait aider. Merci quand même.
0
Golderack Messages postés 5 Date d'inscription mardi 18 novembre 2003 Statut Membre Dernière intervention 17 décembre 2004
19 nov. 2003 à 06:36
Problème d'image je crois juste aller voir la pour pouvoir voir l'image : http://www.chez.com/starsun
0
Rejoignez-nous