public int AjouterObjetIdentifiableListIdCategories_sansParametre(CObjetIdentifiable objetIdentifiable) { this.listObjetsIdentifiables.Add(objetIdentifiable); int index = this.listObjetsIdentifiables.IndexOf(objetIdentifiable); return(index); }
public void ChargerObjetIdentifiable(CObjetIdentifiable objetIdentifiable) { this.setLibelle(objetIdentifiable.getLibelle()); this.setProprietesDefaut(objetIdentifiable.getProprietesDefaut()); this.SetRendu(objetIdentifiable.GetRendu()); this.SetGeometrie(objetIdentifiable.GetGeometrie()); this.SetIdObj(objetIdentifiable.GetIdObj()); this.SetListeCategoriesObjets(objetIdentifiable.GetListeCategoriesObjets()); }
public int AjouterObjetIdentifiableListIdCategories_avecParametres(string libelle, int idObj, double taille_x, double taille_y, double taille_z, double rotation_x, double rotation_y, double rotation_z) { CObjetIdentifiable objetIdentifiable = new CObjetIdentifiable(); this.listObjetsIdentifiables.Add(objetIdentifiable); int index = this.listObjetsIdentifiables.IndexOf(objetIdentifiable); this.listObjetsIdentifiables[index].setLibelle(libelle); this.listObjetsIdentifiables[index].SetIdObj(idObj); this.listObjetsIdentifiables[index].setProprietesDefaut_taille_X(taille_x); this.listObjetsIdentifiables[index].setProprietesDefaut_taille_Y(taille_y); this.listObjetsIdentifiables[index].setProprietesDefaut_taille_Z(taille_z); this.listObjetsIdentifiables[index].setProprietesDefaut_rotation_X(rotation_x); this.listObjetsIdentifiables[index].setProprietesDefaut_rotation_Y(rotation_y); this.listObjetsIdentifiables[index].setProprietesDefaut_rotation_Z(rotation_z); return(index); }
public int AjouterCategorie_ObjetIdentifiableListIdCategories(CObjetIdentifiable objetIdentifiable, int idCategorieObjet) { return(objetIdentifiable.AjouterCategorieListIdCategories(idCategorieObjet)); }
public void GenererScene3d() { if (this.listeSPositionObjetDansImage != null) { if (this.environnement != null) { for (int i = 0; i < this.listeSPositionObjetDansImage.Count; i++) { int idObj = this.listeObjetsIdentifiables.RecupererIdobjetAvecLibelle(this.listeSPositionObjetDansImage[i].libelle); if (this.environnement.ObjetDansEnvironnement_idObj(idObj)) { CObjetIdentifie nouvelobjetIdentifie = new CObjetIdentifie(); //Recuperer elevation et azimut centre pour les ajouter a elevationAuCentre... //Élevation de l'objet par rapport au centre de l'image float elevationCentre = image.CalculerAngleElevationCentre(image.GetSecteurAngulaire_elevation_Max() - image.GetSecteurAngulaire_elevation_Min()); float elevationObjet = image.CalculerAngleElevationObjet(this.listeSPositionObjetDansImage[i], image.GetSecteurAngulaire_elevation_Max() - image.GetSecteurAngulaire_elevation_Min()); float elevationCentreVersObjet = elevationObjet - elevationCentre; float elevationReel = image.GetSecteurAngulaire_elevation_Min() + elevationObjet; //Azimut de l'objet par rapport au centre de l'image float azimutCentre = image.CalculerAngleAzimutCentre(image.GetSecteurAngulaire_azimut_Max() - image.GetSecteurAngulaire_azimut_Min()); float azimutObjet = image.CalculerAngleAzimutObjet(this.listeSPositionObjetDansImage[i], image.GetSecteurAngulaire_azimut_Max() - image.GetSecteurAngulaire_azimut_Min()); float azimutCentreVersObjet = azimutObjet - azimutCentre; float azimutReel = image.GetSecteurAngulaire_azimut_Min() + azimutObjet; double distance = this.nuagePoint3D.GetDistance((int)Math.Ceiling(elevationReel), (int)Math.Ceiling(azimutReel)); if (distance == -1) { Console.WriteLine("Distance non disponnible dans le nuage de point 3D"); } if (azimutCentreVersObjet < 0) { nouvelobjetIdentifie.SetPosition3D_X(this.image.GetPosition3D_X() - (Math.Sin((Math.Abs(azimutCentreVersObjet) * Math.PI) / 180) * distance)); } if (azimutCentreVersObjet >= 0) { nouvelobjetIdentifie.SetPosition3D_X(this.image.GetPosition3D_X() + (Math.Sin((Math.Abs(azimutCentreVersObjet) * Math.PI) / 180) * distance)); } nouvelobjetIdentifie.SetPosition3D_Y(this.image.GetPosition3D_Y() + (Math.Cos((Math.Abs(azimutCentreVersObjet) * Math.PI) / 180) * distance)); if (elevationCentreVersObjet < 0) { nouvelobjetIdentifie.SetPosition3D_Z(this.image.GetPosition3D_Z() - (Math.Sin((Math.Abs(elevationCentreVersObjet) * Math.PI) / 180) * distance)); } if (elevationCentreVersObjet >= 0) { nouvelobjetIdentifie.SetPosition3D_Z(this.image.GetPosition3D_Z() + (Math.Sin((Math.Abs(elevationCentreVersObjet) * Math.PI) / 180) * distance)); } nouvelobjetIdentifie.setLibelle(this.listeSPositionObjetDansImage[i].libelle); CObjetIdentifiable objetIdentifiableTemp = this.listeObjetsIdentifiables.RecupererObjetIdentifiable_Libelle(this.listeSPositionObjetDansImage[i].libelle); if (objetIdentifiableTemp != null) { nouvelobjetIdentifie.ChargerObjetIdentifiable(objetIdentifiableTemp); this.scene3D.AjouterObjetIdentifie(nouvelobjetIdentifie); } else { Console.WriteLine("L'objet \"" + this.listeSPositionObjetDansImage[i].libelle + "\" n'est répertorié dans la liste des objets identifiables."); } } else { Console.WriteLine("L'objet \"" + this.listeSPositionObjetDansImage[i].libelle + "\" ne fait pas partie de l'environnement\"" + this.environnement.GetLibelle() + "\"."); } } } else { Console.WriteLine("L'environnement\"" + this.image.GetLibelle() + "\" n'est pas déninit dans comme étant un environnement identifiable."); } } else { Console.WriteLine("+----------------------------------------------------------------------------------------------+"); Console.WriteLine("| " + DateTime.Now.ToString("HH:mm:ss", System.Globalization.DateTimeFormatInfo.InvariantInfo) + " | Méthode: \"GenererScene3d(List<SPositionObjetDansImage> sPositionObjetDansImage)\" |"); Console.WriteLine("| La variable \"sPositionObjetDansImage\" vaut: null. |"); Console.WriteLine("+----------------------------------------------------------------------------------------------------------------+"); Console.WriteLine("| Conseil: Vérifier que la méthode \"application.PositionnerObjetsDansImage()\" soit appelée avant cette méthode. |"); Console.WriteLine("+----------------------------------------------------------------------------------------------------------------+"); Console.WriteLine(" "); } }