Modif coo ok + test ok

This commit is contained in:
adri 2018-01-05 15:45:35 +01:00
parent def573899c
commit 0a5907f303
5 changed files with 37 additions and 107 deletions

View File

@ -11,7 +11,7 @@ namespace Bonhomme02
class BaseDessin class BaseDessin
{ {
#region Données membres #region Données membres
public Point coordonnee; // Les coordonée du point seront basé sur le millieux des dessin pour facilité les rotations !
private bool _Visible = true; private bool _Visible = true;
private PictureBox _Hebergeur; private PictureBox _Hebergeur;
private Color _Fond = Color.Blue; private Color _Fond = Color.Blue;
@ -24,7 +24,6 @@ namespace Bonhomme02
public BaseDessin() public BaseDessin()
{ {
this._Hebergeur = null; this._Hebergeur = null;
coordonnee = new Point();
} }
public BaseDessin(PictureBox hebergeur) public BaseDessin(PictureBox hebergeur)
@ -32,60 +31,17 @@ namespace Bonhomme02
this._Hebergeur = hebergeur; this._Hebergeur = hebergeur;
} }
public BaseDessin(PictureBox hebergeur, int xy) : this (hebergeur) public BaseDessin(PictureBox hebergeur, Color crayon, Color Fond) : this(hebergeur)
{
this.coordonnee = new Point(xy, xy);
}
public BaseDessin(PictureBox hebergeur, int x, int y) : this(hebergeur)
{
this.coordonnee = new Point(x, x);
}
public BaseDessin(int x, int y)
{
this.coordonnee = new Point(x, x);
}
public BaseDessin(PictureBox hebergeur, int xy, Color crayon) : this(hebergeur, xy)
{
Crayon = crayon;
}
public BaseDessin(PictureBox hebergeur, int x, int y, Color crayon) : this(hebergeur, x, y)
{ {
Crayon = crayon; Crayon = crayon;
this.Fond = Fond;
} }
#endregion #endregion
#region Accesseurs #region Accesseurs
public virtual Point Coordonnee
{
get
{
return coordonnee;
}
}
public int X
{
get { return Coordonnee.X; }
set
{
if (value < 0) { coordonnee.X = 0; }
else if (value > this._Hebergeur.Bounds.Size.Width) { coordonnee.X = this._Hebergeur.Bounds.Size.Width; }
else { coordonnee.X = value; }
}
}
public int Y
{
get { return Coordonnee.Y; }
set
{
if (value < 0) { coordonnee.Y = 0; }
else if (value > coordonnee.Y) { coordonnee.Y = this._Hebergeur.Bounds.Size.Height; }
else { coordonnee.Y = value; }
}
}
public bool Visible public bool Visible
{ {
@ -127,11 +83,7 @@ namespace Bonhomme02
#endregion #endregion
#region Méthodes #region Méthodes
public void Bouger(int deplX, int deplY)
{
X += deplX;
Y += deplY;
}
/* public virtual void Afficher(IntPtr handle) /* public virtual void Afficher(IntPtr handle)
{ {

View File

@ -37,12 +37,6 @@ namespace Bonhomme02
public Bonhomme(PictureBox hebergeur, ref Peau parent, double lg, double ep, double angle) : base( hebergeur, ref parent, lg, ep, angle) public Bonhomme(PictureBox hebergeur, ref Peau parent, double lg, double ep, double angle) : base( hebergeur, ref parent, lg, ep, angle)
{ {
}
public Bonhomme(int x, int y) : base( x, y)
{
}
public Bonhomme(PictureBox hebergeur, int xy, Color crayon) : base( hebergeur, xy, crayon)
{
} }
public new void Afficher(IntPtr handle) public new void Afficher(IntPtr handle)
{ {

View File

@ -10,6 +10,7 @@ namespace Bonhomme02
{ {
class Peau : BaseDessin class Peau : BaseDessin
{ {
public Point coordonnee; // Les coordonée du point seront basé sur le millieux des dessin pour facilité les rotations !
public Vecteur epaisseur; public Vecteur epaisseur;
public Vecteur longueur; public Vecteur longueur;
public Peau parent = null; public Peau parent = null;
@ -24,29 +25,23 @@ namespace Bonhomme02
public Peau(PictureBox hebergeur, double lg, double ep, double angle) : base(hebergeur) public Peau(PictureBox hebergeur, double lg, double ep, double angle) : base(hebergeur)
{ {
InitVecteurs(lg, ep, angle); InitVecteurs(lg, ep, angle);
coordonnee = new Point();
} }
public Peau(PictureBox hebergeur, int xy) : base(hebergeur, xy) public Peau(PictureBox hebergeur, int xy) : base(hebergeur)
{ {
coordonnee = new Point(xy,xy);
} }
public Peau(PictureBox hebergeur, int x, int y, double lg, double ep, double angle) : base(hebergeur, x, y) public Peau(PictureBox hebergeur, int x, int y, double lg, double ep, double angle) : base(hebergeur)
{ {
InitVecteurs(lg, ep, angle); InitVecteurs(lg, ep, angle);
coordonnee = new Point(x, y);
} }
public Peau(PictureBox hebergeur, ref Peau parent, double lg, double ep, double angle) : base(hebergeur, parent.coordonnee.X, parent.coordonnee.Y) public Peau(PictureBox hebergeur, ref Peau parent, double lg, double ep, double angle) : base(hebergeur)
{ {
this.parent = parent; this.parent = parent;
InitVecteurs(lg, ep, angle); InitVecteurs(lg, ep, angle);
} coordonnee = new Point();
public Peau(int x, int y) : base(x, y)
{
}
public Peau(PictureBox hebergeur, int xy, Color crayon) : base(hebergeur, xy, crayon)
{
}
public Peau(PictureBox hebergeur, int x, int y, Color crayon) : base(hebergeur, x, y, crayon)
{
} }
/*(0;0) /*(0;0)
* #---------------------------------------->x * #---------------------------------------->x
@ -72,7 +67,7 @@ namespace Bonhomme02
*/ */
#region accesseur #region accesseur
public override Point Coordonnee public virtual Point Coordonnee
{ {
get get
{ {
@ -81,8 +76,28 @@ namespace Bonhomme02
return parent.Coordonnee+parent.longueur; return parent.Coordonnee+parent.longueur;
} }
else else
return base.coordonnee; return coordonnee;
} }
set
{
if (parent != null)
{
Console.WriteLine("Un enfant ne peut modifier ces coordonée !");
}
else
{
coordonnee = value;
}
}
}
public int X
{
get { return Coordonnee.X; }
}
public int Y
{
get { return Coordonnee.Y; }
} }
public double Angle public double Angle
{ {

View File

@ -50,16 +50,7 @@ namespace Bonhomme02
base.parent = parent; base.parent = parent;
InitVecteurs(lg, ep, angle); InitVecteurs(lg, ep, angle);
} }
public Pied(int x, int y) : base(x, y)
{
}
public Pied(PictureBox hebergeur, int xy, Color crayon) : base(hebergeur, xy, crayon)
{
}
public Pied(PictureBox hebergeur, int x, int y, Color crayon) : base(hebergeur, x, y, crayon)
{
}
#region accesseur #region accesseur

View File

@ -23,28 +23,6 @@ namespace Bonhomme02
this.corp = corp; this.corp = corp;
} }
public Tete(PictureBox hebergeur, int xy) : base(hebergeur, xy)
{
}
public Tete(PictureBox hebergeur, int x, int y) : base(hebergeur, x, y)
{
}
public Tete(int x, int y) : base(x, y)
{
}
public Tete(PictureBox hebergeur, int xy, Color crayon) : base(hebergeur, xy, crayon)
{
}
public Tete(PictureBox hebergeur, int x, int y, Color crayon) : base(hebergeur, x, y, crayon)
{
}
public void Cacher(IntPtr handle) public void Cacher(IntPtr handle)
{ {
Point posi = new Point(corp.coordonnee.X - rayon, corp.coordonnee.Y - rayon * 2); Point posi = new Point(corp.coordonnee.X - rayon, corp.coordonnee.Y - rayon * 2);