import tkinter as tk
from mayavi import mlab

def mostrar_figura():
    # Obtener las dimensiones ingresadas por el usuario
    ancho = float(entry_ancho.get())
    alto = float(entry_alto.get())
    profundidad = float(entry_profundidad.get())

    # Crear los vértices de la figura
    vertices = [(0, 0, 0),
                (0, alto, 0),
                (ancho, alto, 0),
                (ancho, 0, 0),
                (0, 0, profundidad),
                (0, alto, profundidad),
                (ancho, alto, profundidad),
                (ancho, 0, profundidad)]

    # Crear las caras de la figura
    caras = [(0, 1, 2, 3),
             (4, 5, 6, 7),
             (0, 1, 5, 4),
             (1, 2, 6, 5),
             (2, 3, 7, 6),
             (3, 0, 4, 7)]

    # Crear la figura en Mayavi
    mlab.figure(bgcolor=(1, 1, 1))
    mlab.triangular_mesh([v[0] for v in vertices],
                         [v[1] for v in vertices],
                         [v[2] for v in vertices],
                         caras,
                         color=(0, 0, 1),
                         opacity=0.5)
    mlab.show()

# Crear la interfaz gráfica
root = tk.Tk()
root.title("Figura Cúbica")

# Crear los campos de entrada
label_ancho = tk.Label(root, text="Ancho:")
label_ancho.grid(row=0, column=0)
entry_ancho = tk.Entry(root)
entry_ancho.grid(row=0, column=1)

label_alto = tk.Label(root, text="Alto:")
label_alto.grid(row=1, column=0)
entry_alto = tk.Entry(root)
entry_alto.grid(row=1, column=1)

label_profundidad = tk.Label(root, text="Profundidad:")
label_profundidad.grid(row=2, column=0)
entry_profundidad = tk.Entry(root)
entry_profundidad.grid(row=2, column=1)

# Crear el botón de mostrar figura
btn_mostrar = tk.Button(root, text="Mostrar Figura", command=mostrar_figura)
btn_mostrar.grid(row=3, column=0, columnspan=2)

# Iniciar la aplicación
root.mainloop()
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence