Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Problème addin
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Problème addin

Posté le 09/12/2013 13:45

voila, je suis en train de préparer quelques graphisme pour mon prochain jeu et il y a un problème. mon programme peut afficher des lignes mais dès que je mets un GetKeyWait, mon écran est blanc. Comment faire pour que les traits restent pendant que le GetKeyWait fonctionne?

PS, mon programme est en fichier joint

Fichier joint


Précédente 1, 2, 3 ··· 10 ··· 13, 14, 15, 16, 17, 18, 19, 20 Suivante
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 23/04/2014 19:52 | #


Parec que j'ai une fonction main et une autre fonction qui lit le fichier et qui crée un tableau d'une taille indiqué dans le fichier
Dark storm En ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 23/04/2014 19:52 | #


Heu, t'as fait une grosse boulette : t'a oublié de faire "free(p);"
Enfin, OSEF, mais faut bien penser à libérer la mémoire allouée après utilisation (quand t'en a plus besoin quoi)
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 23/04/2014 19:54 | #


Mea culpa
Je corrige ça tout de suite.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 28/04/2014 14:58 | #


est il possible d'ajouter(comme en c++) des cases à un tableau?

a part avec un malloc et un boucle qui copie le tableau dans l'autre plus grand, j'espère qu'il y a une fonction qui permet de le faire.
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 28/04/2014 14:59 | #


Des tableaux dynamiques ?
Non, ça n'existe pas, sauf à coups de realloc().
Quant au copies, il y a memcpy() ou memmove().
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/06/2014 15:29 | #


me revoila pour un détérrage (petit quand même)

ceci s’adresse au Cplusplusien tel que ...ben j'en sais rien(à part lephen mais lui,il fait tout )7

j'ai créé divers classe mais quand je veux les utiliser dans une fonction normale(hors classe)

ça me donne plus de
undefined reference to `tampon1()'


voici la fonction:

void section(Face face1, Face face2){
    Vecteur normale1();
    Vecteur normale2();
    Vecteur tampon1();
    Vecteur tampon2();
    int x, y, z;

//normale1
    tampon1() = face1.getVecteur1();
    tampon2() = face1.getVecteur2();

    x = tampon1().getYv() * tampon2().getZv() - tampon1().getZv() * tampon2().getYv();

    y = tampon1().getZv()*tampon2().getXv() - tampon1().getXv()*tampon2().getZv();

    z = tampon1().getXv()*tampon2().getYv() - tampon1().getYv()*tampon2().getXv();

    normale1().SetDirection(x,y,z);

//normale2
    tampon1()=face2.getVecteur1();
    tampon2()=face2.getVecteur2();

    x = tampon1().getYv()*tampon2().getZv() - tampon1().getZv()*tampon2().getYv();

    y = tampon1().getZv()*tampon2().getXv() - tampon1().getXv()*tampon2().getZv();

    z = tampon1().getXv()*tampon2().getYv() - tampon1().getYv()*tampon2().getXv();

    normale2().SetDirection(x,y,z);


}


Vecteur et Face sont des classes
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 17/06/2014 15:31 | #


Quand utilises ton objet, c'est
x = tampon1.getYv() //...

Ne mets de parenthèses qu'à la création. Tu peux même les enlever tout le Temps tant que tu utilises le constructeur par défaut.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/06/2014 15:34 | #


quand je ne les mets pas, ça me met des
error: request for member 'getYv' in 'tampon1', which is of non-class type 'Vecteur()
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 17/06/2014 15:41 | #


C'est déjà mieux.
Ça exprime que ton objet "tampon1" n'est pas de type Vecteur. Tu as bien inclus la définition de la classe au fichier, et le déclaration de la méthode à la définition de la classe ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/06/2014 15:46 | #


normalement, oui

class Point{

public:
    Point(int x, int y, int z);    //Point constructor
    void SetLocation(int x,int y,int z);    //define the point's location at (x ,y ,z)
    int getXp();    //get X location
    int getYp();    //get Y location
    int getZp();    //get Z location

private:
    int m_Xp;
    int m_Yp;
    int m_Zp;

};

class Vecteur{

public:
    Vecteur(int x=0, int y=0, int z=0);  //Vecteur constructor
    void SetDirection(int x,int y,int z);   //set the vector's direction
    void SetDirectionBP(Point point1,Point point2); //set the vector's direction with two point
    int getXv();    //get X location
    int getYv();    //get Y location
    int getZv();    //get Z location

private:
    int m_Xv;
    int m_Yv;
    int m_Zv;
};

class Face{

public:
    Face(); //Face constructor
    ~Face();    //Face destructor
    Vecteur getVecteur1();
    Vecteur getVecteur2();
    void SetComp(Vecteur vec1,Vecteur vec2); //set the face with 2 vector

private:
    Point* point;
    Vecteur* vecteur1;
    Vecteur* vecteur2;
};

class Camera{

public:
    Camera();
    ~Camera();
    void SetLocation(int xp, int yp, int zp);
    void SetDirection(int xv, int yv, int zv);
    void MoveTranslation(Vecteur vec);
    void MoveRotationH(int angleX);
    void MoveRotationV(int angle);

private:
    Point* cameraLocation;
    Vecteur* direction;

};
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 17/06/2014 15:49 | #


tampon1() = face1.getVecteur1();

Que font ces parenthèses ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/06/2014 15:51 | #


quand je ne les met pas,
error: assignment of function 'Vecteur tampon1()
error: cannot convert 'Vecteur' to 'Vecteur()' in assignment
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 17/06/2014 16:45 | #


Bon.
void section(Face face1, Face face2)
{
    Vecteur normale1;
    Vecteur normale2;
    Vecteur tampon1;
    Vecteur tampon2;
    int x, y, z;

    tampon1 = face1.getVecteur1();
    tampon2 = face1.getVecteur2();

    x = tampon1.getYv() * tampon2.getZv() - tampon1.getZv() * tampon2.getYv();
    y = tampon1.getZv()*tampon2.getXv() - tampon1.getXv()*tampon2.getZv();
    z = tampon1.getXv()*tampon2.getYv() - tampon1.getYv()*tampon2.getXv();

    normale1.SetDirection(x,y,z);

    tampon1 = face2.getVecteur1();
    tampon2 = face2.getVecteur2();

    x = tampon1.getYv()*tampon2.getZv() - tampon1.getZv()*tampon2.getYv();
    y = tampon1.getZv()*tampon2.getXv() - tampon1.getXv()*tampon2.getZv();
    z = tampon1.getXv()*tampon2.getYv() - tampon1.getYv()*tampon2.getXv();

    normale2.SetDirection(x,y,z);
}

Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 17/06/2014 19:17 | #


ça marche, par contre, je ne vois pas ce qui a changé à part les parenthèses
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 17/06/2014 20:31 | #


Rien.
Ce qui tend très fortement à montrer que tu n'as pas su enlever les parenthèses.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 19/06/2014 13:12 | #


j'ai trouvé l'erreur que j'avais fait

tampon1 = face1.getVecteur1[red]()[/red];


mais pourquoi il n'accepte pas les parenthèses alors que j'appelle une méthode :huh:
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 19/06/2014 13:14 | #


Mais il faut les mettre !
Je ne sais pas ce que tu fais, là tu stockes l'adresse de la fonction.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 26/06/2014 18:30 | #


Question: est ce que ,en quittant l'addin avec le GetKey->Menu, les tableaux alloué dynamiquement sont libérées?
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 26/06/2014 18:39 | #


Non, toutes tes données locales sont conservées tant que tu n'as pas lancé une autre application
Lephenixnoir En ligne Administrateur Points: 24227 Défis: 170 Message

Citer : Posté le 26/06/2014 18:48 | #


La question c'est, est-ce qu'au lancement d'un autre application les données sont libérées ? Si non, ça pourrait être très intéressant.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 28/06/2014 11:40 | #


pourquoi
C5291 (E) No default constructor exists for class "Point"
alors que
Point::Point(int x=0, int y=0, int z=0):m_Xp(x),m_Yp(y),m_Zp(z){ //Point constructor
}
Précédente 1, 2, 3 ··· 10 ··· 13, 14, 15, 16, 17, 18, 19, 20 Suivante

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 76 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd