Traduction de C++ en DELPHI

Fermé
Kirbal Messages postés 1 Date d'inscription dimanche 5 février 2006 Statut Membre Dernière intervention 10 mars 2007 - 10 mars 2007 à 17:16
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 10 mars 2007 à 19:26
salut, je dois traduire des sources en C++ en Delphi
<!-- BEGIN TEMPLATE: bbcode_code -->

class TCamera {
      private:
             
             Point3D Orientation;
             Point3D* Focalisation;
      public :
             Point3D Position;
             TCamera(float x, float y, float z);
             ~TCamera( void );
             void SetOrientation(float x, float y, float z);
             void SetPosition(float x, float y, float z);
             void SetFocalisation(Point3D* Focale);
             void Focalise(void);
             void Distance(float distance);
             void RotationY(float angle);
             void RotationZX(float angle);
};


<!-- END TEMPLATE: bbcode_code -->
donc voila je n'arrive pas a le traduire,une bonne ame ne pourrait-elle pas m'aider??? ,
sinon -void équivaut a procedure en delphi ?
-* equivaut a un pointeur en delphi (^) ?

<!-- / message -->

2 réponses

WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 3
10 mars 2007 à 17:28
Bonjour




type
  TFloat = Extended ; // ou single, ou double
  PPoint3D = ^TPoint3D ;
  TPoint3D = record
    X,y,z : TFLoat ;
  end ;





  // Attention !!! TPoint3D pourrait également être une classe






  TCamera = class
  private
    Orientation  : TPoint3D ;
    Focalisation : PPoint3D ;
  public
    Position : TPoint3D ;






    //  TCamera(float x, float y, float z); = Constructeur
    constructor Create( x,y,z:TFloat);
    // ~TCamera( void ); = destructeur
    destructor Destroy ; override ;






    // void SetOrientation(float x, float y, float z);
    procedure SetOrientation(x,y,z:TFloat);






    // void SetPosition(float x, float y, float z);
    procedure SetPosition(x,y,z:TFloat);






    // void SetFocalisation(Point3D* Focale);
    procedure SetFocalisation(Focale :PPoint3D);






    // void Focalise(void); (void) = Aucun paramètres
    procedure Focalise; // on aurait pu ecrire aussi procedure Focalise();






    // void Distance(float distance);
    // Attention pas de différence majuscules minuscules d'où le dist
    procedure Distance(dist:TFloat);






    // void RotationY(float angle);
    procedure RotationY(angle:TFLoat);






    // void RotationZX(float angle);
    procedure RotationZX(angle:TFloat);
  end ;




Cordialement.
<hr />"L'imagination est plus importante que le savoir." Albert Einstein
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
10 mars 2007 à 19:26
Salut,


On utilise courament les réels sur 32 bits (float/single), vu que les
cartes graphiques sont faites pour, malgrès la faible précision de ce
type.
0
Rejoignez-nous