import streamlit as st def calculate_bricks(wall_length, wall_height, wall_thickness, brick_length, brick_height, brick_thickness): wall_volume = wall_length * wall_height * wall_thickness brick_volume = brick_length * brick_height * brick_thickness mortar_ratio = 0.1 # Assuming 10% of volume is mortar effective_wall_volume = wall_volume * (1 - mortar_ratio) total_bricks = effective_wall_volume / brick_volume return int(total_bricks), round(wall_volume * mortar_ratio, 2) st.title("Brick Masonry Estimator") st.write("Estimate the number of bricks and mortar required for a given wall size.") st.sidebar.header("Wall Dimensions (in meters)") wall_length = st.sidebar.number_input("Wall Length", min_value=0.1, value=10.0, step=0.1) wall_height = st.sidebar.number_input("Wall Height", min_value=0.1, value=3.0, step=0.1) wall_thickness = st.sidebar.number_input("Wall Thickness", min_value=0.1, value=0.2, step=0.01) st.sidebar.header("Brick Dimensions (in meters)") brick_length = st.sidebar.number_input("Brick Length", min_value=0.1, value=0.2, step=0.01) brick_height = st.sidebar.number_input("Brick Height", min_value=0.05, value=0.1, step=0.01) brick_thickness = st.sidebar.number_input("Brick Thickness", min_value=0.05, value=0.1, step=0.01) if st.button("Estimate"): bricks, mortar = calculate_bricks(wall_length, wall_height, wall_thickness, brick_length, brick_height, brick_thickness) st.success(f"Estimated Number of Bricks: {bricks}") st.info(f"Estimated Mortar Volume: {mortar} cubic meters")