rehanafzal's picture
Create app.py
8de04aa verified
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")