Back to index

wims  3.65+svn20090927
Public Member Functions | Public Attributes | Package Attributes | Private Member Functions
geo.PointSurCercle Class Reference

définit un point dont on peut modifier l'emplacement mais qui appartient à un cercle c est le cercle contenant le point a est l'angle (en radians) correspondant à la position du point sur le cercle c More...

Inheritance diagram for geo.PointSurCercle:
Inheritance graph
[legend]
Collaboration diagram for geo.PointSurCercle:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 PointSurCercle (double a, Cercle c, String Nom, Repere R)
 Construit un point sur le cercle c.
 PointSurCercle (int X, int Y, Cercle c, String Nom, Repere R)
 Construit un point sur le cercle c.
void bouge (int X, int Y)
 Pour un point en cours de déplacement, met à jour (X, Y) et met dans (Xp, Yp) les anciennes coordonnées "écran".
void point ()
 Redéfinit le point en cas de modification du cercle c.
boolean zone (int X, int Y)
 teste si la souris est proche du point libre, retourne alors deplace = true
void efface (Graphics g)
 efface le point (utilisé uniquement par les points libres)
void point (double x, double y)
 Redéfinit le point par des coordonnées (x, y).
void majXY ()
 Met à jour la position (X, Y) du point à l'aide des coordonnées (x, y).
void Milieu (pt A, pt B)
 Positionnement du point au milieu du bi-point AB.
void Symetrique (pt A, pt C)
 Point sur le symétrique de A par rapport au point C.
void Rotation (pt A, pt O, double a)
 Donne l'image du point A par la rotation de centre O et d'angle a.
void Homothetique (pt A, pt O, double k)
 Donne l'image du point A par l'homothétie de centre O et de rapport k.
double Distance (pt A)
 Donne la distance du point A au point courant.
void trace (Graphics g)
 Trace ou efface le point.
void traceNom (Graphics g)
 Trace ou efface uniquement le Nom du point.

Public Attributes

double a
Cercle c
int Xp
boolean deplace
int X
 Position du point sur l'écran.
double x
 Abscisse du point.
double y
 Ordonnée du point.
Repere R
 Repere associé.
boolean defini
 Existence de l'objet.
String Nom
 Nom de l'objet.

Package Attributes

int Yp
int Y

Private Member Functions

double calcule (int X, int Y, Cercle c)

Detailed Description

définit un point dont on peut modifier l'emplacement mais qui appartient à un cercle c est le cercle contenant le point a est l'angle (en radians) correspondant à la position du point sur le cercle c

Definition at line 9 of file PointSurCercle.java.


Constructor & Destructor Documentation

geo.PointSurCercle.PointSurCercle ( double  a,
Cercle  c,
String  Nom,
Repere  R 
) [inline]

Construit un point sur le cercle c.

Definition at line 17 of file PointSurCercle.java.

  { super (c.xo + c.r * Math.cos (a), c.yo + c.r * Math.sin (a), Nom, R);
    this.c = c ; defini = c.defini ;
    this.a = a % (Math.PI * 2) ; if (this.a > Math.PI) this.a = this.a - 2.0 * Math.PI ;
  }
geo.PointSurCercle.PointSurCercle ( int  X,
int  Y,
Cercle  c,
String  Nom,
Repere  R 
) [inline]

Construit un point sur le cercle c.

Definition at line 27 of file PointSurCercle.java.

  { super (R.Abs (X), R.Ord (Y), Nom, R) ;
    defini = c.defini ; this.c = c ;
    if (defini) a = calcule (X, Y, c) ; else a = 0.0 ;
  }

Here is the call graph for this function:


Member Function Documentation

void geo.PointSurCercle.bouge ( int  X,
int  Y 
) [inline]

Pour un point en cours de déplacement, met à jour (X, Y) et met dans (Xp, Yp) les anciennes coordonnées "écran".

Reimplemented from geo.pointlibre.

Definition at line 50 of file PointSurCercle.java.

  { if (deplace && defini && R.affiche (X, Y)) { Xp = this.X ; Yp = this.Y ;
                                                 a = calcule (X, Y, c) ;
                                                 x = c.xo + c.r * Math.cos (a) ;
                                                 y = c.yo + c.r * Math.sin (a) ;
                                                 this.X = R.Iabs (x) ; this.Y = R.Iord (y) ;
                                               }
  }

Here is the call graph for this function:

double geo.PointSurCercle.calcule ( int  X,
int  Y,
Cercle  c 
) [inline, private]

Definition at line 34 of file PointSurCercle.java.

  { double dx, dy ;
    dx = X - R.Iabs (c.xo) ;
    dy = R.Iord (c.yo) - Y ;
    if (dx != 0.0) a = Math.atan (dy / dx) ;
      else { a = Math.PI / 2 ; if (dy < 0) a = - a ; }
    if (dx < 0) a = a + Math.PI ;
   if (a > Math.PI) a = a - 2.0 * Math.PI ;
   return a ;
  }

Here is the call graph for this function:

Here is the caller graph for this function:

double geo.pt.Distance ( pt  A) [inline, inherited]

Donne la distance du point A au point courant.

Definition at line 128 of file pt.java.

   { if (defini && A.defini)
       { double dx = x - A.x ; double dy = y - A.y ;
         return Math.sqrt(dx * dx + dy * dy) ;
       }
     else return -1.0 ; }
void geo.pointlibre.efface ( Graphics  g) [inline, inherited]

efface le point (utilisé uniquement par les points libres)

Definition at line 59 of file pointlibre.java.

  { if (defini && deplace)
      { g.fillRect (Xp - 2, Yp - 2, 5, 5) ;
        if (Nom.length () != 0) g.drawString (Nom, Xp + 3, Yp - 3) ;
        Xp = X ; Yp = Y ;
      }
  }
void geo.pt.Homothetique ( pt  A,
pt  O,
double  k 
) [inline, inherited]

Donne l'image du point A par l'homothétie de centre O et de rapport k.

Definition at line 116 of file pt.java.

   { defini = A.defini && O.defini ;
     if (defini) { x = O.x + k * (A.x - O.x) ;
                   y = O.y + k * (A.y - O.y) ;
                   majXY () ;
                 }
   }

Here is the call graph for this function:

void geo.pt.majXY ( ) [inline, inherited]

Met à jour la position (X, Y) du point à l'aide des coordonnées (x, y).

Definition at line 74 of file pt.java.

  { X = R.Iabs (x) ; Y = R.Iord (y) ; }

Here is the call graph for this function:

Here is the caller graph for this function:

void geo.pt.Milieu ( pt  A,
pt  B 
) [inline, inherited]

Positionnement du point au milieu du bi-point AB.

Definition at line 82 of file pt.java.

  { x = (A.x + B.x) / 2.0 ; y = (A.y + B.y) / 2.0 ;
    majXY () ;
    defini = A.defini && B.defini ; }

Here is the call graph for this function:

void geo.PointSurCercle.point ( ) [inline]

Redéfinit le point en cas de modification du cercle c.

Reimplemented from geo.pointlibre.

Definition at line 63 of file PointSurCercle.java.

  { x = c.xo + c.r * Math.cos (a) ; y = c.yo + c.r * Math.sin (a) ;
    Xp = X = R.Iabs (x) ; Yp = Y = R.Iord (y) ; 
    defini = c.defini; }                   

Here is the call graph for this function:

void geo.pt.point ( double  x,
double  y 
) [inline, inherited]

Redéfinit le point par des coordonnées (x, y).

Definition at line 161 of file pt.java.

  { this.x = x ; this.y = y ; majXY () ; defini = true ; }

Here is the call graph for this function:

void geo.pt.Rotation ( pt  A,
pt  O,
double  a 
) [inline, inherited]

Donne l'image du point A par la rotation de centre O et d'angle a.

Definition at line 100 of file pt.java.

   { defini = A.defini && O.defini ;
     if (defini) { double OAx = A.x - O.x ;
                   double OAy = A.y - O.y ;
                   double cosa = Math.cos (a) ;
                   double sina = Math.sin (a) ;
                   x = O.x + cosa * OAx - sina * OAy ;
                   y = O.y + sina * OAx + cosa * OAy ;
                   majXY () ;
                 }
   }

Here is the call graph for this function:

Here is the caller graph for this function:

void geo.pt.Symetrique ( pt  A,
pt  C 
) [inline, inherited]

Point sur le symétrique de A par rapport au point C.

Definition at line 91 of file pt.java.

  { defini = A.defini && C.defini ;
    if (defini) { x = 2.0 * C.x - A.x ; y = 2.0 * C.y - A.y ; majXY () ; }
  }

Here is the call graph for this function:

void geo.pt.trace ( Graphics  g) [inline, inherited]

Trace ou efface le point.

Reimplemented from geo.ObjetRepere.

Definition at line 146 of file pt.java.

  { if (defini) { g.fillRect (X - 1, Y - 1, 3, 3);
                  if (Nom.length () != 0) g.drawString (Nom, X + 3, Y - 3); } }

Here is the caller graph for this function:

void geo.pt.traceNom ( Graphics  g) [inline, inherited]

Trace ou efface uniquement le Nom du point.

Definition at line 154 of file pt.java.

  { if (defini && (Nom.length () != 0)) g.drawString (Nom, X + 3, Y - 3) ; }
boolean geo.pointlibre.zone ( int  X,
int  Y 
) [inline, inherited]

teste si la souris est proche du point libre, retourne alors deplace = true

Reimplemented from geo.pt.

Definition at line 37 of file pointlibre.java.

  { if (deplace = (X >=  this.X - 2) && (X <= this.X + 2) && (Y >= this.Y - 2) && (Y <= this.Y + 2))
    Xp = this.X ; Yp = this.Y ;
    return deplace ; }

Member Data Documentation

Definition at line 10 of file PointSurCercle.java.

Definition at line 11 of file PointSurCercle.java.

Existence de l'objet.

Definition at line 22 of file ObjetRepere.java.

Definition at line 14 of file pointlibre.java.

String geo.ObjetRepere.Nom [inherited]

Nom de l'objet.

Definition at line 28 of file ObjetRepere.java.

Repere associé.

Definition at line 16 of file ObjetRepere.java.

int geo.pt.X [inherited]

Position du point sur l'écran.

Definition at line 21 of file pt.java.

double geo.pt.x [inherited]

Abscisse du point.

Definition at line 27 of file pt.java.

int geo.pointlibre.Xp [inherited]

Definition at line 13 of file pointlibre.java.

int geo.pt.Y [package, inherited]

Definition at line 21 of file pt.java.

double geo.pt.y [inherited]

Ordonnée du point.

Definition at line 33 of file pt.java.

int geo.pointlibre.Yp [package, inherited]

Definition at line 13 of file pointlibre.java.


The documentation for this class was generated from the following file: