/// <summary> /// Creation du noeud et ajout dans l'arbre de rendu /// </summary> /// <param name="x">Position courante du x de la souris</param> /// <param name="y">Positinn y courante de la souris</param> public override void Action(int x, int y) { //Création d'un Noeud if (objectType != null && objectType != ModeEditeur.NOM_PORTAIL && objectType != ModeEditeur.NOM_MUR) { FonctionsNatives.ajouterNoeud(objectType.ToCharArray(0, objectType.Length), x, y); firstClick = true; } ///Création d'un Noeud Portail partieRapide 1 else if ((objectType == ModeEditeur.NOM_PORTAIL || objectType == ModeEditeur.NOM_MUR) && firstClick) { firstClickX = x; firstClickY = y; firstClick = false; } ///Création d'un Noeud Portail partieRapide 2 else if (objectType == ModeEditeur.NOM_PORTAIL && !firstClick) { FonctionsNatives.ajouterNoeudPortail(firstClickX, firstClickY, x, y); firstClick = true; } ///Création d'un Noeud Mur partieRapide 1 else if (objectType == ModeEditeur.NOM_MUR && !firstClick) { FonctionsNatives.ajouterNoeudMur(firstClickX, firstClickY, x, y); firstClick = true; } }
/// <summary> /// Fonction qui effectue la translation sur les objets selectionnes /// </summary> /// <param name="x">position courante en x de la souris</param> /// <param name="y">position courante en y de la souris</param> public override void Action(int x, int y) { if (lastPos.X != 0 && lastPos.Y != 0) { FonctionsNatives.translation(lastPos.X, lastPos.Y, x, y); lastPos = new Point(x, y); } }
/// <summary> /// /// </summary> /// <param name="x"></param> /// <param name="y"></param> public override void Action(int x, int y) { if (lastPos_ != new Point()) { FonctionsNatives.translater(lastPos_.X - x, y - lastPos_.Y); lastPos_ = new Point(x, y); } }
/// <summary> /// On effectue la rotaion des objets selectionnes /// </summary> /// <param name="x">position en x de la souris</param> /// <param name="y">position en y de la souris</param> public override void Action(int x, int y) { if (lastPos_ != new Point()) { double angle = (lastPos_.Y - y) / 400.0 * 360.0; FonctionsNatives.rotation(angle); } lastPos_ = new Point(x, y); }
/// <summary> /// /// </summary> /// <param name="x"></param> /// <param name="y"></param> public override void Action(int x, int y) { if (lastPos_ != new Point()) { double rotX = (x - lastPos_.X); if (rotX != 0) { rotX /= Math.Abs(x - lastPos_.X); } double rotY = (y - lastPos_.Y); if (rotY != 0) { rotY /= Math.Abs(y - lastPos_.Y); } FonctionsNatives.rotaterXY(rotX * 0.02, rotY * 0.02); lastPos_ = new Point(x, y); } }
/// <summary> /// Fonction utilise pour faire une translation en y avec l'affiche de propriete /// </summary> /// <param name="x">translation en y</param> public void translationY(int y) { FonctionsNatives.translationY(y); }
/// <summary> /// Fonction utilise pour faire une translation en x avec l'affiche de propriete /// </summary> /// <param name="x">translation en x</param> public void translationX(int x) { FonctionsNatives.translationX(x); }
/// <summary> /// On supprime les objets selectionnes /// </summary> /// <param name="x">Ne sert a rien pour la suppression puisqu'on supprime les objets selectionnes</param> /// <param name="y">Ne sert a rien ici aussi</param> public override void Action(int x, int y) { FonctionsNatives.supprimerObjets(); }
/// <summary> /// Fonction pour le zoom out dans le rectangle elastique /// </summary> /// <param name="minX">x de gauche du rectangle</param> /// <param name="minY">y du bas du rectangle</param> /// <param name="maxX">x de droite du rectangle</param> /// <param name="maxY">y du haut du rectangle</param> public void zoomOutRect(int minX, int minY, int maxX, int maxY) { FonctionsNatives.ZoomOutRectangle(minX, minY, maxX, maxY); }
/// <summary> /// On duplique les objets selectionnees /// </summary> /// <param name="x">Position en x du clique</param> /// <param name="y">Position en y du clique</param> public override void Action(int x, int y) { FonctionsNatives.duplication(x, y); }
/// <summary> /// On effectue une mise a l'echelle /// </summary> /// <param name="x">Position en x de la souris</param> /// <param name="y">Position en y de la souris</param> public override void Action(int x, int y) { FonctionsNatives.scaling(x, y); }