1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
|
# Ce fichier abrite le code de calcul de matrice d'inertie
import os
import tkinter as Tk
# Choix du matériau
fenetre=Tk.Tk()
fenetre.title('Choix du matériau')
var_choix=Tk.DoubleVar()
var_choix.set (0.0)
def masse_vol():
mvol = str (float(var_choix.get()))
print ("Masse volumique du matériau choisi :", mvol, "kg/dm3")
return mvol
choix_acier = Tk.Radiobutton(fenetre, text="Acier", variable=var_choix,
value=7.8)
choix_alu = Tk.Radiobutton(fenetre, text="Aluminium", variable=var_choix,
value=2.7)
choix_bronze = Tk.Radiobutton(fenetre, text="Bronze", variable=var_choix,
value=8.8)
choix_cuivre = Tk.Radiobutton(fenetre, text="Cuivre", variable=var_choix,
value=8.92)
choix_titane = Tk.Radiobutton(fenetre, text="Titane", variable=var_choix,
value=4.5)
choix_zinc = Tk.Radiobutton(fenetre, text="Zinc", variable=var_choix,
value=7.15)
bouton_valid = Tk.Button (fenetre, text="Validez", command = masse_vol)
choix_acier.pack(side = Tk.LEFT, padx = 5, pady = 5)
choix_alu.pack(side = Tk.LEFT, padx = 5, pady = 5)
choix_bronze.pack(side = Tk.LEFT, padx = 5, pady = 5)
choix_cuivre.pack(side = Tk.LEFT, padx = 5, pady = 5)
choix_titane.pack(side = Tk.LEFT, padx = 5, pady = 5)
choix_zinc.pack(side = Tk.LEFT, padx = 5, pady = 5)
bouton_valid.pack(side = Tk.LEFT, padx = 5, pady = 5)
fenetre.mainloop()
# Choix de la forme du volume
import os
from tkinter import *
import numpy as np
from math import *
def prog_barre_pleine():
## Données demandées ##
x = input ("Saisissez une valeur x en m : ") # valeur de x en m (cf figure)
x = float(x)
y = input ("Saisissez une valeur y en m : ") # valeur de y en m (cf figure)
y = float(y)
z = input ("Saisissez une valeur z en m : ") # valeur de z en m (cf figure)
z = float(z)
# Calcul du volume d'une barre pleine
vol = x*y*z
print ("Volume = ", vol, "m3")
# Calcul de la masse
m = mvol*vol
print ("Masse =", round (m,3), "kg")
## Calcul, en son centre de gravité, de la matrice d'inertie d'une barre pleine ##
Ixx = m*(y**2+z**2)/12
Iyy = m*(x**2+z**2)/12
Izz = m*(x**2+y**2)/12
Pxy = 0
Pxz = 0
Pyz = 0
mat_inertie = np.array([[Ixx,-Pxy,-Pxz],[-Pxy,Iyy,-Pyz],[-Pxz,-Pyz,Izz]])
print (mat_inertie)
# Création de la fenêtre principale (main window)
Mafenetre = Tk()
Mafenetre.title('Choix de la forme du volume')
Mafenetre.geometry('300x100+400+400')
# Création d'un widget Button (bouton barre_pleine)
Barre_pleine = Button(Mafenetre, text ='Barre pleine', command = prog_barre_pleine)
# Positionnement du widget avec la méthode pack()
Barre_pleine.pack(side = LEFT, padx = 5, pady = 5)
# Création d'un widget Button (bouton Quitter)
BoutonQuitter = Button(Mafenetre, text ='Quitter', command = Mafenetre.destroy)
BoutonQuitter.pack(side = LEFT, padx = 5, pady = 5)
Mafenetre.mainloop() |
Partager