Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2994 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [C++Builder] Rotation de Canvas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++Builder] Rotation de Canvas

n°131117
lkolrn
<comment ça marche?>
Posté le 26-04-2002 à 10:57:37  profilanswer
 

j'aimerais effectuer une rotation sur le canvas d'une image, mais je n'y arrive po... Klk1 peut-il me dire komen ça marche...?
 
MERCI D'AVANCE  ;)

mood
Publicité
Posté le 26-04-2002 à 10:57:37  profilanswer
 

n°131203
LetoII
Le dormeur doit se réveiller
Posté le 26-04-2002 à 13:14:03  profilanswer
 

Qu'est ce que tu veux faire exactement?


---------------
Le Tyran
n°131227
lkolrn
<comment ça marche?>
Posté le 26-04-2002 à 14:03:39  profilanswer
 

ben faire une rotation sur l'image pardi...

n°131288
mikegyver
Le H de Hawaï, ça sert à rien
Posté le 26-04-2002 à 14:39:09  profilanswer
 

LKoLRn a écrit a écrit :

ben faire une rotation sur l'image pardi...  




 
void TForm1::Rotate(double angle)
{
        AnsiString vide;
        double x = 0;
        double y = 0;
        double newx, newy;
        double radians;
 
        radians = 2 * M_PI * angle / 36;
 
        for(y = 0; y < 50; y++) {
      for(x = 0; x < 50; x++) {
             if(Sample -> Canvas -> Pixels[x][y] != Sample -> Canvas -> Pixels[0][0]) {
                      newx = x * cos(radians) + y * sin(radians);
                      newy = y * cos(radians) - x * sin(radians);
 
                      Sprites -> Canvas -> Pixels[newx + X][newy + Y] = Sample -> Canvas -> Pixels[x][y];
                      Sprites -> Canvas -> Pixels[newx + X + 1][newy + Y] = Sample -> Canvas -> Pixels[x][y];
 
                }
            }
        }
 
        X = X - 2 * M_PI * cos(((angle * 10) + 45) / 180 * M_PI);
        Y = Y + 2 * M_PI * sin(((angle * 10) + 45) / 180 * M_PI);
 
        Indice++;
        if(Indice < 9) X += 50;
        else {
             X -= 400;
             Y += 50;
             Indice = 0;
        }
}
 
Voilà, ça laisse des trous d'un pixel par-ci par-là mais ça permet de faire pivoter une bitmap.


---------------
...m'enfin !!!

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [C++Builder] Rotation de Canvas

 

Sujets relatifs
[C++ Builder] composant pour la saisi d'un nombre[BC++ Builder 5] --> Créer et afficher une image dynamiquement ?
Probleme avec FMOD pour C++ BuilderDeveloppement C++ Builder
[C++Builder] Effacement de texte dans un canvasDeveloppement C++ Builder
[C++ Builder] Composant sans aide !!![VB] Rotation d'un label
[C++Builder] Initialisation de canvas[C++ Builder] Transparence 2 le retour
Plus de sujets relatifs à : [C++Builder] Rotation de Canvas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR