def MajPlateau(nouvPlateau): global plateau if plateau != None: if nouvPlateau == Calcul.Plateau2Str(plateau): EnvoieMessage("[Deja Clique] : ") else: plateau = Calcul.Str2Plateau(nouvPlateau) else: plateau = Calcul.Str2Plateau(nouvPlateau)
def DecimalToAll(decimal): Hexa = Cl.DecimalToHexa(decimal) Binaire = Cl.DecimalToBinaire(decimal) Tot = "Binaire: " + str(Binaire) + " \nHexaDecimal: " + str(Hexa) print(Tot + '\n') return [Binaire, Hexa]
def HexaToAll(hexa): Dec = Cl.HexaToDecimal(hexa) Binaire = Cl.DecimalToBinaire(Dec) Tot = "Binaire: " + str(Binaire) + " \nDecimal: " + str(Dec) print(Tot + '\n') return [Binaire, Dec]
def __init__(self,stl,masse,epsilon,g): QWidget.__init__(self) self.__stl = stl self.__iseq = False #Création d'un argument pour ne pas bouger le bateau à l'infini Fichier = Info_fichier_stl(stl) #Récupération des données du fichier stl demandé liste_normales=Fichier.getn() liste_facettes=Fichier.getf() Calcul1 = Calcul(liste_normales,liste_facettes) self.__equilibre = Calcul1.Dichotomie(g,masse, epsilon)[0] #Récupération de la profondeur d'équilibre déterminée avec la dichotomie self.__Y = Calcul1.Dichotomie(g,masse, epsilon)[1] #Récupération de la liste des valeurs prises par la dichotomie self.__X = Calcul1.Dichotomie(g,masse, epsilon)[2] #Récupération de la liste du nombre d'itérations de la dichotomie #Partie 3D self.fig = plt.figure() self.canvas = FigureCanvas(self.fig) self.__ax = plt.axes(projection='3d') self.__your_mesh = mesh.Mesh.from_file(self.__stl) #SOURCE : https://w.wol.ph/2015/07/10/rendering-stl-files-matplotlib-numpy-stl/ self.__ax.add_collection3d(mplot3d.art3d.Poly3DCollection(self.__your_mesh.vectors)) scale = self.__your_mesh.points.flatten("C") self.__ax.auto_scale_xyz(scale, scale, scale) plt.title("Représentation 3D",color = "darkcyan") self.canvas.draw() self.canvas.setFixedSize(500,500) self.setStyleSheet("background-color: rgb(17,69,93);") #Changement de la couleur de fond #Partie 2D self.fig2 = plt.figure() self.canvas2 = FigureCanvas(self.fig2) self.__ax2 = plt.axes() self.__ax2.plot() plt.title("Détermination de la position d'équilibre",color = "darkcyan") plt.xlabel("Nombre d'itérations") plt.ylabel("Profondeur") self.canvas2.draw() self.canvas2.setFixedSize(750,500) #Layout de l'IHM self.layout = QGridLayout() self.setWindowTitle("Boat Sinking Interface") self.setFixedSize(1380, 700) Icon = QIcon("Abeille_Bourbon.png") self.setWindowIcon(Icon) self.button1 = QPushButton("Lancer") self.button1.setStyleSheet("QPushButton { font : 18pt ;color : white }") #self.button1.setStyleSheet("QPushButton { color : blue }") self.button1.setFixedSize(200,100) self.layout.addWidget(self.button1,0,2,1,1) self.layout.addWidget(self.canvas,1,1,1,1) self.layout.addWidget(self.canvas2,1,2,1,1) self.button1.clicked.connect(self.buttonLoad3DClicked) self.setLayout(self.layout)
def BinaireToAll(binaire): Dec = Cl.BinaireToDecimal(binaire) Hexa = Cl.DecimalToHexa(Dec) Tot = "Decimal: " + str(Dec) + " \nHexaDecimal: " + str(Hexa) print(Tot + '\n') return [Dec, Hexa]
def test_add(self): self.assertEqual(Calcul.add(2, 5), 7)
def test_add(self): self.assertNotEqual(Calcul.add(10, 14), 7)
def test_divide(self): self.assertEqual(Calcul.divide(150, 5), 10)
def test_subtract(self): self.assertEqual(Calcul.subtract(79, 19), 60)
def test_divide(self): self.asserEqual(Calcul.divide(100, 10), 10)
def test_subtract(self): self.assertEqual(Calcul.subtract(240, 150), 90)
def test_multiply(self): self.assertEqual(Calcul.multiply(5, 8), 40)
def test_multiply(self): self.assertEqual(Calcul.multiply(2, 10), 20)
def setUp(self): self.calculator = Calcul.Calculator()