Besoin d'aide pour programme d'affichage graphique
cs_prado
Messages postés8Date d'inscriptionvendredi 10 décembre 2004StatutMembreDernière intervention19 août 2006
-
13 août 2006 à 16:29
cs_prado
Messages postés8Date d'inscriptionvendredi 10 décembre 2004StatutMembreDernière intervention19 août 2006
-
19 août 2006 à 01:39
salut je suis un jeune etudiant senegalais debutant en informatique . j'ai un probleme avec mon programme .le libele est le suivant : on souhaite simuler a l'ecran la chute d'une balle qui rebondit sur le sol et qui remonte , a chaque rebond , des deux tiers de la hauteur de sa precedente chute .
A voir également:
Besoin d'aide pour programme d'affichage graphique
Galmiza
Messages postés573Date d'inscriptionsamedi 16 novembre 2002StatutMembreDernière intervention 9 avril 20081 15 août 2006 à 18:16
J'ai toujours pas compris ou tu avais des soucis (utilisation de librairie graphique pour l'affichage, problemes de physique pour calculer les positions consécutives de la balle...).
Sinon, un indice:
L'énergie de ta balle est proportionelle a sa hauteur
donc tu dois retirer 1/3 de l'énergie de la balle a chaque rebond.
Sachant que l'énergie cinétique est proportionelle au carré de la vitesse,
tu dois avoir en valeur absolue v_apres_rebond = v_avant_rebond/racine(3).
Bonne chance
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_prado
Messages postés8Date d'inscriptionvendredi 10 décembre 2004StatutMembreDernière intervention19 août 2006 16 août 2006 à 14:00
merci beaucoup pour l'aide que tu m'apporte mais le probleme de mon programme ne ce situe pas a ce niveau . en faite le probleme sais que je j'ai deja une bonne partie du code sur a chute de ballle mais j'ai besoin de faire tomber la balle sur le sol avec emission d'un son a chaque fois quelle touche le sol et la balle dois remonter a 2/3 de sa chute jusqu'a un arrete total . mais ce probleme de chuute de balle ne tient pas conmpte des notion de physique ou de math spécialiser sais une chute simple . j'utilise le borlan c++ pour compiler . je te passe le code que j'ai pour te donner une idée . donc comme je t'ai expliquer le but rechercher est de faire rebondire la bale sur le sol jusqu'a un arrete total avec emission de son a chaque fois que la balle touche le sol . voici le code :
/*************************************************************/
/* NOM : EFFA OBAME */
/* PRENOM : PRADINO */
/* EXERCICE : Lancer d'une balle */
/*************************************************************/
class Point
{protected:int x;
int y;
short visible;
int couleur_trace;
public: Point(int initx,int inity);
int getx(void);
int gety(void);
short isvisible(void);
void moveto(int newx,int newy);
};
class Cercle : public Point
{protected:int couleur_plein;
short colorie;
int rayon;
public: Cercle(int initx, int inity, int initradius);
void setfillcolor(int newfillcolor);
void show(void);
void hide(void);
};
class Rectangle : public Point
{protected:int couleur_plein;
short colorie;
int base_x, hauteur_y;
double angle_z;
public: Rectangle(int initx, int inity, int base, int hauteur,double angle);
void setfillcolor(int newfillcolor);
void show(void);
void hide(void);
void moveto(int,int,double);
};
void Cercle :: hide(void)
{setcolor(getbkcolor());
if (colorie)
{setfillstyle(EMPTY_FILL, getbkcolor());
fillellipse(x, y, rayon, rayon);
}
else circle(x, y, rayon);
return;
}
Rectangle::Rectangle(int initx, int inity, int base, int hauteur,double angle) :
Point (initx, inity)
{base_x=base;
hauteur_y=hauteur;
angle_z=angle;
colorie=0;
return;
}
/*******************************************************************/
/* */
/* Programme principal */
/* */
/*******************************************************************/
int main(void)
{int i,j;
int gdriver;
int gmode;
int errorcode;
int cax=40,cay=200,cab=80,cah=45;
double ang=0.5;
gdriver = DETECT;
initgraph(&gdriver,&gmode,"C:\\borlanc\\bgi");
errorcode = graphresult();
if (errorcode != grOk)
{printf("Erreur graphique: %s\n",grapherrormsg(errorcode));
printf("Taper une touche pour arreter");
printf("\nModifier le chemein d'acces au compilateur dans le programme principale!!!");
getch();
exit(1);
}
for (k=0;k<10;k++) // on ne fait que 10 rebond
{
while (y>hauteur_sol)
{
vy = vy - 9.81*delta_temps; // acceleration de la pesanteur
y = y + vy*delta_temps;
x = x + vx*delta_temps;
// Affichage
balle.moveto(x,y);
balle.show();
}
y=y+2*(hauteur_sol-y);
vy = vy/sqrt(3); // vrai que si vx=0, mais ca ne choquera pas les yeux
}
Bien sur il n'y a que les grandes lignes, il te faut trouver les bons parametres pour ton pc.
cs_prado
Messages postés8Date d'inscriptionvendredi 10 décembre 2004StatutMembreDernière intervention19 août 2006 18 août 2006 à 00:24
salut mon frere excuse moi de te deranger j'ai finalement concu un code beaucoup plus simple mais le problement qui ce pose a moi est d'emeliorer mon afichage graphique pour rendre mon travaille plus plaisent a regarder donc j'aurai besoin de ton aide pour ameliorer ma presentation , je laisse ton imagination faire je te fais confiance merci d'avance . le code est le suivant :
salut sais tres sympa tous ce que vous m'avez dit . j'ai suivie vos conseilles je me suis debrouiller . ce que je vous demande maintenent sais de m'aider a ameliorer la presentation de mon travailler en me proposent des graphique qui sorte de l'ordinaire . merci d'avance je vous passe le code de mon travail qui compile .
#include <graphics.h>
#include <conio.h>
#include <stdio.h>
#include <dos.h>
#include <stdlib.h>
Galmiza
Messages postés573Date d'inscriptionsamedi 16 novembre 2002StatutMembreDernière intervention 9 avril 20081 18 août 2006 à 09:55
Pour les graphismes, utilise des librairies.
SDL (qui utilise OpenGL et DirectX) doit etre le plus simple.
OpenGL aussi.
DirectX est plus compliqué mais avec ca t'es sur de pouvoir faire des graphismes qui sortent de l'ordinaire !
Je n'utilise que DirectX, fais des recherches sur le Net. Internet regorge de tutoriaux.