0% found this document useful (0 votes)
8 views

Py

This document describes automating the drawing of continuous beams in Autocad using Python. It contains functions to draw beam lines, dimensions, longitudinal rebar, and add stirrup details like spacing, number and annotations. The code takes user input for number of storeys and other parameters and draws the beam layout automatically.

Uploaded by

ciyopo3479
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Py

This document describes automating the drawing of continuous beams in Autocad using Python. It contains functions to draw beam lines, dimensions, longitudinal rebar, and add stirrup details like spacing, number and annotations. The code takes user input for number of storeys and other parameters and draws the beam layout automatically.

Uploaded by

ciyopo3479
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

{

"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# <u><font face=\"courier\" size=\"+3.0\" color=#160>Automation of Continuous
Beam Drawing on Autocad using <font face=\"courier\" size=\"+2.9\"
color='Blue'>#BasicPYTHON<font face=\"courier\" size=\"+2.9\" color='purple'>
#PYAUTOCAD</u>"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"from pyautocad import Autocad, APoint"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Continuous_Beam.dwg\n"
]
}
],
"source": [
"acad=Autocad() ###create_if_not_exists=True\n",
"\n",
"print(acad.doc.Name)\n",
"doc=acad.ActiveDocument\n",
"ms=doc.ModelSpace"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Enter No Of Storey : 3\n"
]
}
],
"source": [
"z=0\n",
"N=int(input('Enter No Of Storey : '))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# <u>Functions for Drawing....</u>"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [],
"source": [
"def draw(p1x,p1y,p2x,p2y):\n",
" for j in range(len(p1x)):\n",
" p1=APoint(p1x[j],p1y[j]+z)\n",
" p2=APoint(p2x[j],p2y[j]+z)\n",
" line1=acad.model.AddLine(p1,p2)\n",
" line1.layer='Beam_LSection' \n",
" \n",
"def l_dimdraw(long_dim_x0,long_dim_y0,long_dim_x1,long_dim_y1):\n",
" for j in range(len(long_dim_x0)):\n",
" p1=APoint(long_dim_x0[j],long_dim_y0[j]+z)\n",
" p2=APoint(long_dim_x1[j],long_dim_y1[j]+z)\n",
" line1=acad.model.AddLine(p1,p2)\n",
" line1.layer='text' \n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [],
"source": [
"def draw_longitudinal_rebar(p1x,p1y,p2x,p2y):\n",
" for j in range(len(p1x)):\n",
" p1=APoint(p1x[j],p1y[j]+z)\n",
" p2=APoint(p2x[j],p2y[j]+z)\n",
" line1=acad.model.AddLine(p1,p2)\n",
" line1.layer='Long_rebar'\n",
" \n",
"def draw_without_cantilever(column_width,column_cc,a,a_initial,d,beam_cc):\n",
" ###---lower longitdudinal rebar(first three points---------##----\n",
"
p3x=[a_initial-column_width+column_cc,a_initial-column_width+column_cc,a-column_cc,a
_initial-column_width+column_cc,a_initial-column_width+column_cc,a-column_cc]\n",
" p3y=[beam_cc,beam_cc,beam_cc,d-beam_cc,d-beam_cc,d-beam_cc]\n",
"\n",
"
p4x=[a_initial-column_width+column_cc,a-column_cc,a-column_cc,a_initial-column_width
+column_cc,a-column_cc,a-column_cc]\n",
" p4y=[d*2,beam_cc,d*2,-d,d-beam_cc,-d]\n",
" \n",
" drawing_1=draw_longitudinal_rebar(p3x,p3y,p4x,p4y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# <u>For Stirrups Details .....</u>"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"beam_cc=20\n",
"cc=beam_cc\n",
"\n",
"def stirrup(l_next,z,d,cc,a):\n",
"\n",
" l=l_next\n",
"##For stirrups\n",
" print('')\n",
" print('For stirrups : ')\n",
" spacing_left=int(input('Enter Spacing(mm) on left section(l/3) of Beam :
'))\n",
" spacing_center=int(input('Enter Spacing(mm) on center section of Beam :
'))\n",
" spacing_right=int(input('Enter Spacing(mm) on right section(l/3) of Beam :
'))\n",
" \n",
" print('')\n",
" sp=0\n",
" \n",
" ##ForStirrups\n",
" #print('')\n",
" #print('**********Stirrup Diameter***********')\n",
" #print('')\n",
" stirrup_dia=8#int(input('Enter diameter of stirrup : '))\n",
" for j in range(3):\n",
" if j==0:\n",
" n_left=round(((l/3-50*2)/spacing_left))+1\n",
" ##Annotation\n",
" ##inclined line\n",
" ptext_1=APoint(a+l/6,d/2+z)\n",
" ptext_2=APoint(a+l/6+46.6,-86.4+z)\n",
" #Line1\n",
" line1=acad.model.AddLine(ptext_1,ptext_2)\n",
" line1.layer='text'\n",
" ##Flat line\n",
" ptext_3=APoint(a+l/6+46.6,-86.4+z)\n",
" ptext_4=APoint(a+46.6+77+l/6,-86.4+z)\n",
" line2=acad.model.AddLine(ptext_3,ptext_4)\n",
" line2.layer='text'\n",
" ##Text To beshown\n",
" text_dim=[n_left,stirrup_dia,spacing_left]\n",
" text_length=acad.model.AddText(' %s-%smmdia@%smm
c/c'%(text_dim[0],text_dim[1],text_dim[2]),ptext_4,25)\n",
" text_length.layer='text'\n",
"\n",
" \n",
" ##Stirrup lines @middle\n",
" ptext_5=APoint(a+l/6-250,d/2+z)\n",
" ptext_6=APoint(a+l/6+250,d/2+z)\n",
" line3=acad.model.AddLine(ptext_5,ptext_6)\n",
" line3.linetype='strrp'\n",
" \n",
" for j in range(n_left):\n",
" if j == 0:\n",
" p3=APoint(a+50,cc+z)\n",
" p4=APoint(a+50,z+d-cc)\n",
" line=acad.model.AddLine(p3,p4)\n",
" line.layer='Stirrups_sides'\n",
" sp=sp+50\n",
" # print(sp)\n",
" else:\n",
" sp=sp+spacing_left\n",
" #print(sp)\n",
" p3=APoint(a+sp,z+cc)\n",
" p4=APoint(a+sp,z+d-cc)\n",
" line=acad.model.AddLine(p3,p4)\n",
" line.layer='Stirrups_sides' \n",
" \n",
" elif j==1:\n",
" n_center=round(((l/3-50*2)/spacing_center))+1\n",
" ##inclined line\n",
" ptext_1=APoint(a+l/2,d/2+z)\n",
" ptext_2=APoint(a+46.6+l/2,d+z+86.4)\n",
" #Line1\n",
" line1=acad.model.AddLine(ptext_1,ptext_2)\n",
" line1.layer='text'\n",
" ##Flat line\n",
" ptext_3=APoint(a+46.6+l/2,d+z+86.4)\n",
" ptext_4=APoint(a+46.6+77+l/2,d+z+86.4)\n",
" line2=acad.model.AddLine(ptext_3,ptext_4)\n",
" line2.layer='text'\n",
" ##Text To beshown\n",
" text_dim=[n_center,stirrup_dia,spacing_center]\n",
" text_length=acad.model.AddText(' %s-%smmdia@%smm
c/c'%(text_dim[0],text_dim[1],text_dim[2]),ptext_4,25)\n",
" text_length.layer='text'\n",
" \n",
" ##Stirrup lines @middle\n",
" ptext_5=APoint(a+l/2-250,d/2+z)\n",
" ptext_6=APoint(a+l/2+250,d/2+z)\n",
" line3=acad.model.AddLine(ptext_5,ptext_6)\n",
" line3.linetype='strrp'\n",
" \n",
" for j in range(n_center):\n",
" sp=sp+spacing_center\n",
" #print(sp)\n",
" p3=APoint(a+sp,z+cc)\n",
" p4=APoint(a+sp,z+d-cc)\n",
" line=acad.model.AddLine(p3,p4)\n",
" line.layer='Stirrups_center' \n",
" \n",
"\n",
" else:\n",
" n_right=round(((l/3-50*2)/spacing_right))+1\n",
" \n",
" ##Annotation\n",
" ##inclined line\n",
" ptext_1=APoint(a+5*l/6,d/2+z)\n",
" ptext_2=APoint(a+5*l/6-46.6,-86.4+z)\n",
" #Line1\n",
" line1=acad.model.AddLine(ptext_1,ptext_2)\n",
" line1.layer='text'\n",
" ##Flat line\n",
" ptext_3=APoint(a+5*l/6-46.6,-86.4+z)\n",
" ptext_4=APoint(a+5*l/6-46.6-77,-86.4+z)\n",
" ptext_5=APoint(a+5*l/6-46.6-77-468,-86.4+z)\n",
" line2=acad.model.AddLine(ptext_3,ptext_4)\n",
" line2.layer='text'\n",
" ##Text To beshown\n",
" text_dim=[n_right,stirrup_dia,spacing_right]\n",
" text_length=acad.model.AddText(' %s-%smmdia@%smm
c/c'%(text_dim[0],text_dim[1],text_dim[2]),ptext_5,25)\n",
" text_length.layer='text'\n",
"\n",
" \n",
" ##Stirrup lines @middle\n",
" ptext_5=APoint(a+5*l/6-250,d/2+z)\n",
" ptext_6=APoint(a+5*l/6+250,d/2+z)\n",
" line3=acad.model.AddLine(ptext_5,ptext_6)\n",
" line3.linetype='strrp'\n",
" \n",
" \n",
" for j in range(n_right):\n",
" sp=sp+spacing_right\n",
" # print(sp)\n",
" if sp>l-50:\n",
" sp=sp-50\n",
" #print(sp)\n",
" #p3=APoint(sp,cc)\n",
" #p4=APoint(sp,d-cc)\n",
" #line=acad.model.Addline(p3,p4)\n",
" #line.layer='Stirrups_sides'\n",
" break\n",
" p3=APoint(a+sp,z+cc)\n",
" p4=APoint(a+sp,z+d-cc)\n",
" line=acad.model.AddLine(p3,p4)\n",
" line.layer='Stirrups_sides' \n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# <u>For Section Details....</u>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<b><u><font face=\"courier\" size=\"+2.3\" color=\"green\">1.Section
A-A</u></b>"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [],
"source": [
"def section_draw_AA(l_next,z,d,beam_cc,b,a):\n",
" l=l_next\n",
" cc=beam_cc\n",
" left_cut=l/6\n",
" center_cut=l/2\n",
" right_cut=l/2+l/3\n",
"\n",
" section_cutx1=[a+left_cut,a+center_cut,a+right_cut]\n",
" section_cuty1=[-300,-300,-300]\n",
"\n",
" section_cutx2=[a+left_cut,a+center_cut,a+right_cut]\n",
" section_cuty2=[b+300,b+300,b+300]\n",
"\n",
" text=['A','B','C'] #####\n",
"\n",
" for j in range(len(section_cutx1)):\n",
" Cut_line1=APoint(section_cutx1[j],section_cuty1[j]+z)\n",
" text1=acad.model.AddText(' %s'%text[j],Cut_line1,50)\n",
" text1.layer='text'\n",
" Cut_line2=APoint(section_cutx2[j],section_cuty2[j]+z)\n",
" text2=acad.model.AddText(' %s'%text[j],Cut_line2,50)\n",
" text2.layer='text'\n",
" line1=acad.model.AddLine(Cut_line1,Cut_line2)\n",
" line1.layer='Section_line'\n",
" \n",
" ###Cross Sections\n",
"##Section AA\n",
"
p5x=[a+l/6-(b/2),a+l/6-(b/2),a+l/6+(b/2),a+l/6-(b/2),a+l/6-(b/2)+cc,a+l/6-(b/2)+cc,a
+l/6+(b/2)-cc,a+l/6-(b/2)+cc,a+l/6-(b/2)+cc+20,a+l/6-(b/2)+cc]\n",
"
p5y=[-600,-(600+d),-600,-600,-600-cc,-(600+d)+cc,-600-cc,-600-cc,-600-cc,-600-cc-20]
\n",
"\n",
"
p6x=[a+l/6-(b/2),a+l/6+(b/2),a+l/6+(b/2),a+l/6+(b/2),a+l/6-(b/2)+cc,a+l/6+(b/2)-cc,a
+l/6+(b/2)-cc,a+l/6+(b/2)-cc,a+l/6-(b/2)+cc+43,a+l/6-(b/2)+cc+23]\n",
"
p6y=[-(600+d),-(600+d),-(600+d),-600,-(600+d)+cc,-(600+d)+cc,-(600+d)+cc,-600-cc,-60
0-cc-23,-600-cc-43]\n",
"\n",
" for i in range(len(p5x)):\n",
" Cut_line1=APoint(p5x[i],p5y[i]+z)\n",
" #acad.model.AddText(' %s'%text[i],Cut_line1,50)\n",
" Cut_line2=APoint(p6x[i],p6y[i]+z)\n",
" #acad.model.AddText(' %s'%text[i],Cut_line2,50)\n",
" line1=acad.model.AddLine(Cut_line1,Cut_line2)\n",
" if i <=3:\n",
" line1.layer='Beam_CSection'\n",
" else:\n",
" line1.layer='Stirrups_sides'\n",
" \n",
" ##Rebars ##\n",
" ##Need to manually enter these values\n",
" no_rebar_lower=4\n",
" no_rebar_upper=4\n",
" dia_rebar_lower=10\n",
" dia_rebar_upper=10\n",
" \n",
" ##Section__AA\n",
" l=l_next\n",
" cc=beam_cc\n",
" v_interval=50\n",
" text=['SECTION : A-A','SECTION : B-B','SECTION : C-C']\n",
" for i in range(2):\n",
" \n",
" if i==0:\n",
" ptext=APoint(a+l/6-b/2,-600-d-150+z)\n",
" text=acad.model.AddText(' %s'%text[i],ptext,30)\n",
" text.layer='text'\n",
" ##Lower rebar \n",
" #print('Section AA Lower: ')\n",
" #int(input('Corner Bar lower(mm) :'))\n",
" dia_rebar_lower_corner=16#int(input('Corner Bar
lower(mm) :'))\n",
" sp=a+l/6-(b/2)+cc+dia_rebar_lower_corner\n",
"
spacing=round(b-cc*2-2*dia_rebar_lower)/(no_rebar_lower-1)\n",
" for i in range(no_rebar_lower):\n",
" if i == 0:\n",
"
p_center=APoint(sp,-(600+d)+cc+dia_rebar_lower_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+l/6,z-600-d-72)\n",
" ptext_5=APoint(a+l/6+b/2+50,z-600-d-72)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_lower_corner]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" \n",
" elif i == no_rebar_lower-1:\n",
"
p_center=APoint(a+l/6+(b/2)-cc-dia_rebar_lower_corner,-(600+d)+cc+dia_rebar_lower_co
rner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+l/6,z-600-d-72)\n",
" #ptext_5=APoint(l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" #line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" #text_dim=[dia_rebar_lower_corner]\n",
" #text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" else:\n",
" #print(sp)\n",
" sp=sp+spacing\n",
" #print(sp)\n",
"
p_center=APoint(sp,-(600+d)+cc+dia_rebar_lower+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower)\n",
" rebar1.layer='rebar_section' \n",
" \n",
" #Annotations\n",
"
ptext_4=APoint(sp,-(600+d)+cc+dia_rebar_lower+z+v_interval)\n",
"
ptext_5=APoint(a+l/6+b/2+50,-(600+d)+cc+dia_rebar_lower+z+v_interval)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" \n",
" \n",
" text_dim=[dia_rebar_lower]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" #v_interval-=100\n",
"\n",
" elif i==1:\n",
" ##Upper rebar\n",
" #print('Section AA Upper: ')\n",
" dia_rebar_upper_corner=16#int(input('Corner Bar
Upper(mm) :'))\n",
" sp=a+l/6-(b/2)+cc+dia_rebar_upper_corner\n",
"
spacing=round(b-cc*2-dia_rebar_upper_corner*2)/(no_rebar_upper-1)\n",
" for i in range(no_rebar_upper):\n",
" if i == 0:\n",
"
p_center=APoint(sp,-600-cc-dia_rebar_upper_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper_corner)\n",
" rebar1.layer='rebar_section'\n",
" ##For annotation\n",
" ptext_4=APoint(a+l/6,z-500-28)\n",
" ptext_5=APoint(a+l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_upper_corner]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" elif i == no_rebar_upper-1:\n",
"
p_center=APoint(a+l/6+(b/2)-cc-dia_rebar_upper_corner,-600-cc-dia_rebar_upper_corner
+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper_corner)\n",
" rebar1.layer='rebar_section'\n",
" ##For annotation\n",
" ptext_4=APoint(a+l/6,z-500-28)\n",
" #ptext_5=APoint(l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" #line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" #text_dim=[dia_rebar_upper_corner]\n",
" #text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" else:\n",
" sp=sp+spacing\n",
"
p_center=APoint(sp,-600-cc-dia_rebar_upper+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" #Annotations\n",
"
ptext_4=APoint(sp,-600-cc-dia_rebar_upper+z-v_interval)\n",
"
ptext_5=APoint(a+l/6+b/2+50,-600-cc-dia_rebar_upper+z-v_interval)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_upper]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" #v_interval-=100\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<b><u><font face=\"courier\" size=\"+2.3\" color=\"magenta\">2.Section
B-B</u></b>"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [],
"source": [
"def section_draw_BB(l_next,z,d,beam_cc,b,a):\n",
" ###Cross Sections\n",
" l=l_next\n",
" cc=beam_cc\n",
" #left_cut=l/6\n",
" center_cut=a+l/2\n",
" v_interval=50\n",
" right_cut=center_cut\n",
"##Section CC\n",
"
p5x=[right_cut-(b/2),right_cut-(b/2),right_cut+(b/2),right_cut-(b/2),right_cut-(b/2)
+cc,right_cut-(b/2)+cc,right_cut+(b/2)-cc,right_cut-(b/2)+cc,right_cut-(b/2)+cc+20,r
ight_cut-(b/2)+cc,]\n",
"
p5y=[-600,-(600+d),-600,-600,-600-cc,-(600+d)+cc,-600-cc,-600-cc,-600-cc,-600-cc-20]
\n",
"\n",
"
p6x=[right_cut-(b/2),right_cut+(b/2),right_cut+(b/2),right_cut+(b/2),right_cut-(b/2)
+cc,right_cut+(b/2)-cc,right_cut+(b/2)-cc,right_cut+(b/2)-cc,right_cut-(b/2)+cc+43,r
ight_cut-(b/2)+cc+23]\n",
"
p6y=[-(600+d),-(600+d),-(600+d),-600,-(600+d)+cc,-(600+d)+cc,-(600+d)+cc,-600-cc,-60
0-cc-23,-600-cc-43]\n",
"\n",
" for i in range(len(p5x)):\n",
" Cut_line1=APoint(p5x[i],p5y[i]+z)\n",
" #acad.model.AddText(' %s'%text[i],Cut_line1,50)\n",
" Cut_line2=APoint(p6x[i],p6y[i]+z)\n",
" #acad.model.AddText(' %s'%text[i],Cut_line2,50)\n",
" line1=acad.model.AddLine(Cut_line1,Cut_line2)\n",
" if i <=3:\n",
" line1.layer='Beam_CSection'\n",
" else:\n",
" line1.layer='Stirrups_center'\n",
" \n",
"##Rebars\n",
" no_rebar_lower=3\n",
" no_rebar_upper=3\n",
" dia_rebar_lower=10\n",
" dia_rebar_upper=10\n",
"\n",
"\n",
"##Section__CC\n",
" text=['SECTION : B-B']\n",
" for i in range(2): \n",
" if i==0:\n",
" ptext=APoint(right_cut-b/2,-600-d-150+z)\n",
" text=acad.model.AddText(' %s'%text[i],ptext,30)\n",
" text.layer='text' \n",
" \n",
"##Lower rebar\n",
" #print('Section CC Lower: ')\n",
" dia_rebar_lower_corner=16#int(input('Corner Bar
Lower(mm) :'))\n",
" sp=right_cut-(b/2)+cc+dia_rebar_lower_corner\n",
"
spacing=round(b-cc*2-2*dia_rebar_lower_corner)/(no_rebar_lower-1)\n",
" for i in range(no_rebar_lower):\n",
" if i == 0:\n",
"
p_center=APoint(sp,-(600+d)+cc+dia_rebar_lower_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+l/2,z-600-d-72)\n",
" ptext_5=APoint(a+l/2+b/2+50,z-600-d-72)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_lower_corner]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" elif i == no_rebar_lower-1:\n",
"
p_center=APoint(right_cut+(b/2)-cc-dia_rebar_lower_corner,-(600+d)+cc+dia_rebar_lowe
r_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+l/2,z-600-d-72)\n",
" #ptext_5=APoint(a+5*l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" #line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" #text_dim=[dia_rebar_lower_corner]\n",
" #text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" else:\n",
" sp=sp+spacing\n",
"
p_center=APoint(sp,-(600+d)+cc+dia_rebar_lower+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower)\n",
" rebar1.layer='rebar_section' \n",
" \n",
" #Annotations\n",
"
ptext_4=APoint(sp,-(600+d)+cc+dia_rebar_lower+z+v_interval) \n",
"
ptext_5=APoint(a+l/2+b/2+50,-(600+d)+cc+dia_rebar_lower+z+v_interval)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" \n",
" \n",
" text_dim=[dia_rebar_lower]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" #v_interval-=100\n",
" \n",
" \n",
" elif i==1:\n",
" ##Upper rebar\n",
" #print('Section CC Upper: ')\n",
" dia_rebar_upper_corner=16#int(input('Corner Bar
Upper(mm) :'))\n",
" \n",
" sp=right_cut-(b/2)+cc+dia_rebar_upper_corner\n",
"
spacing=round(b-cc*2-2*dia_rebar_upper_corner)/(no_rebar_upper-1)\n",
" for i in range(no_rebar_upper):\n",
" if i == 0:\n",
"
p_center=APoint(sp,-600-cc-dia_rebar_upper_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+l/2,z-500-28)\n",
" ptext_5=APoint(a+l/2+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_upper_corner]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" elif i == no_rebar_upper-1:\n",
"
p_center=APoint(right_cut+(b/2)-cc-dia_rebar_upper_corner,-600-cc-dia_rebar_upper_co
rner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+l/2,z-500-28)\n",
" #ptext_5=APoint(a+5*l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" #line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" #text_dim=[dia_rebar_lower_corner]\n",
" #text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" else:\n",
" sp=sp+spacing\n",
"
p_center=APoint(sp,-600-cc-dia_rebar_upper+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper)\n",
" rebar1.layer='rebar_section' \n",
" #Annotations\n",
"
ptext_4=APoint(sp,-600-cc-dia_rebar_upper+z-v_interval)\n",
"
ptext_5=APoint(a+l/2+b/2+50,-600-cc-dia_rebar_upper+z-v_interval)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_upper]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" #v_interval-=100"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<b><u><font face=\"courier\" size=\"+2.3\" color=\"green\">3.Section
C-C</u></b>"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [],
"source": [
"def section_draw_CC(l_next,z,d,beam_cc,b,a):\n",
" ###Cross Sections\n",
" l=l_next\n",
" cc=beam_cc\n",
" #left_cut=l/6\n",
" #center_cut=l/2\n",
" v_interval=50\n",
" right_cut=a+l/2+l/3\n",
"##Section CC\n",
"
p5x=[right_cut-(b/2),right_cut-(b/2),right_cut+(b/2),right_cut-(b/2),right_cut-(b/2)
+cc,right_cut-(b/2)+cc,right_cut+(b/2)-cc,right_cut-(b/2)+cc,right_cut-(b/2)+cc+20,r
ight_cut-(b/2)+cc,]\n",
"
p5y=[-600,-(600+d),-600,-600,-600-cc,-(600+d)+cc,-600-cc,-600-cc,-600-cc,-600-cc-20]
\n",
"\n",
"
p6x=[right_cut-(b/2),right_cut+(b/2),right_cut+(b/2),right_cut+(b/2),right_cut-(b/2)
+cc,right_cut+(b/2)-cc,right_cut+(b/2)-cc,right_cut+(b/2)-cc,right_cut-(b/2)+cc+43,r
ight_cut-(b/2)+cc+23]\n",
"
p6y=[-(600+d),-(600+d),-(600+d),-600,-(600+d)+cc,-(600+d)+cc,-(600+d)+cc,-600-cc,-60
0-cc-23,-600-cc-43]\n",
"\n",
" for i in range(len(p5x)):\n",
" Cut_line1=APoint(p5x[i],p5y[i]+z)\n",
" #acad.model.AddText(' %s'%text[i],Cut_line1,50)\n",
" Cut_line2=APoint(p6x[i],p6y[i]+z)\n",
" #acad.model.AddText(' %s'%text[i],Cut_line2,50)\n",
" line1=acad.model.AddLine(Cut_line1,Cut_line2)\n",
" if i <=3:\n",
" line1.layer='Beam_CSection'\n",
" else:\n",
" line1.layer='Stirrups_sides'\n",
" \n",
"##Rebars\n",
" no_rebar_lower=4\n",
" no_rebar_upper=4\n",
" dia_rebar_lower=10\n",
" dia_rebar_upper=10\n",
"\n",
"\n",
"##Section__CC\n",
" text=['SECTION : C-C']\n",
" for i in range(2): \n",
" if i==0:\n",
" ptext=APoint(right_cut-b/2,-600-d-150+z)\n",
" text=acad.model.AddText(' %s'%text[i],ptext,30)\n",
" text.layer='text' \n",
" \n",
"##Lower rebar\n",
" #print('Section CC Lower: ')\n",
" dia_rebar_lower_corner=16#int(input('Corner Bar
Lower(mm) :'))\n",
" sp=right_cut-(b/2)+cc+dia_rebar_lower_corner\n",
"
spacing=round(b-cc*2-2*dia_rebar_lower_corner)/(no_rebar_lower-1)\n",
" for i in range(no_rebar_lower):\n",
" if i == 0:\n",
"
p_center=APoint(sp,-(600+d)+cc+dia_rebar_lower_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+5*l/6,z-600-d-72)\n",
" ptext_5=APoint(a+5*l/6+b/2+50,z-600-d-72)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_lower_corner]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" elif i == no_rebar_lower-1:\n",
"
p_center=APoint(right_cut+(b/2)-cc-dia_rebar_lower_corner,-(600+d)+cc+dia_rebar_lowe
r_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+5*l/6,z-600-d-72)\n",
" #ptext_5=APoint(a+5*l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" #line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" #text_dim=[dia_rebar_lower_corner]\n",
" #text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" else:\n",
" sp=sp+spacing\n",
"
p_center=APoint(sp,-(600+d)+cc+dia_rebar_lower+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_lower)\n",
" rebar1.layer='rebar_section' \n",
" \n",
" #Annotations\n",
"
ptext_4=APoint(sp,-(600+d)+cc+dia_rebar_lower+z+v_interval)\n",
"
ptext_5=APoint(a+5*l/6+b/2+50,-(600+d)+cc+dia_rebar_lower+z+v_interval)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" \n",
" \n",
" text_dim=[dia_rebar_lower]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" #v_interval-=100\n",
" \n",
" \n",
" elif i==1:\n",
" ##Upper rebar\n",
" #print('Section CC Upper: ')\n",
" dia_rebar_upper_corner=16#int(input('Corner Bar
Upper(mm) :'))\n",
" sp=right_cut-(b/2)+cc+dia_rebar_upper_corner\n",
"
spacing=round(b-cc*2-2*dia_rebar_upper_corner)/(no_rebar_upper-1)\n",
" for i in range(no_rebar_upper):\n",
" if i == 0:\n",
"
p_center=APoint(sp,-600-cc-dia_rebar_upper_corner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+5*l/6,z-500-28)\n",
" ptext_5=APoint(a+5*l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_upper_corner]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" elif i == no_rebar_upper-1:\n",
"
p_center=APoint(right_cut+(b/2)-cc-dia_rebar_upper_corner,-600-cc-dia_rebar_upper_co
rner+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper_corner)\n",
" rebar1.layer='rebar_section'\n",
" \n",
" ##For annotation\n",
" ptext_4=APoint(a+5*l/6,z-500-28)\n",
" #ptext_5=APoint(a+5*l/6+b/2+50,z-500-28)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" #line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" #text_dim=[dia_rebar_lower_corner]\n",
" #text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" else:\n",
" sp=sp+spacing\n",
"
p_center=APoint(sp,-600-cc-dia_rebar_upper+z)\n",
"
rebar1=acad.model.AddCircle(p_center,dia_rebar_upper)\n",
" rebar1.layer='rebar_section' \n",
" #Annotations\n",
"
ptext_4=APoint(sp,-600-cc-dia_rebar_upper+z-v_interval)\n",
"
ptext_5=APoint(a+5*l/6+b/2+50,-600-cc-dia_rebar_upper+z-v_interval)\n",
" line2=acad.model.AddLine(p_center,ptext_4)\n",
" line3=acad.model.AddLine(ptext_4,ptext_5)\n",
" text_dim=[dia_rebar_upper]\n",
" text_length=acad.model.AddText(' %s mm
dia'%(text_dim[0]),ptext_5,20)\n",
" \n",
" #v_interval-=100\n",
" \n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# <u>For Final Output....</u>\n"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Storey no 0 :\n",
"\n",
"Enter the no of span : 3\n",
"Enter starting grid(mm) origin or shift from origin on right : 0\n",
"\n",
"***********************************************************\n",
"\n",
"Enter Beam Span(mm) no 1 : 3000\n",
"\n",
"\n",
"For stirrups : \n",
"Enter Spacing(mm) on left section(l/3) of Beam : 110\n",
"Enter Spacing(mm) on center section of Beam : 150\n",
"Enter Spacing(mm) on right section(l/3) of Beam : 110\n",
"\n",
"***********************************************************\n",
"\n",
"Enter Beam Span(mm) no 2 : 3500\n",
"\n",
"\n",
"For stirrups : \n",
"Enter Spacing(mm) on left section(l/3) of Beam : 150\n",
"Enter Spacing(mm) on center section of Beam : 200\n",
"Enter Spacing(mm) on right section(l/3) of Beam : 150\n",
"\n",
"***********************************************************\n",
"\n",
"Enter Beam Span(mm) no 3 : 3000\n",
"\n",
"\n",
"For stirrups : \n",
"Enter Spacing(mm) on left section(l/3) of Beam : 110\n",
"Enter Spacing(mm) on center section of Beam : 150\n",
"Enter Spacing(mm) on right section(l/3) of Beam : 110\n",
"\n",
"\n",
"Storey no 1 :\n",
"\n",
"Enter the no of span : 2\n",
"Enter starting grid(mm) origin or shift from origin on right : 3300\n",
"\n",
"***********************************************************\n",
"\n",
"Enter Beam Span(mm) no 1 : 3500\n",
"\n",
"\n",
"For stirrups : \n",
"Enter Spacing(mm) on left section(l/3) of Beam : 150\n",
"Enter Spacing(mm) on center section of Beam : 200\n",
"Enter Spacing(mm) on right section(l/3) of Beam : 150\n",
"\n",
"***********************************************************\n",
"\n",
"Enter Beam Span(mm) no 2 : 3000\n",
"\n",
"\n",
"For stirrups : \n",
"Enter Spacing(mm) on left section(l/3) of Beam : 110\n",
"Enter Spacing(mm) on center section of Beam : 150\n",
"Enter Spacing(mm) on right section(l/3) of Beam : 110\n",
"\n",
"\n",
"Storey no 2 :\n",
"\n",
"Enter the no of span : 1\n",
"Enter starting grid(mm) origin or shift from origin on right : 7100\n",
"\n",
"***********************************************************\n",
"\n",
"Enter Beam Span(mm) no 1 : 3000\n",
"\n",
"\n",
"For stirrups : \n",
"Enter Spacing(mm) on left section(l/3) of Beam : 110\n",
"Enter Spacing(mm) on center section of Beam : 150\n",
"Enter Spacing(mm) on right section(l/3) of Beam : 110\n",
"\n",
"\n",
"****************************************************\n",
"\n",
"Drawing has been created....\n",
"\n",
"****************************************************\n"
]
}
],
"source": [
"###Output @ Autocad\n",
"for i in range(N):\n",
" beam_cc=20\n",
" column_cc=40\n",
" \n",
" print('')\n",
" print('Storey no {} :'.format(i))\n",
" print('')\n",
" \n",
" span_no = int(input('Enter the no of span : '))\n",
" a=int(input('Enter starting grid(mm) origin or shift from origin on right :
')) ## put span+no*width of column\n",
" \n",
" print('')\n",
" \n",
" a_initial=a\n",
" \n",
" \n",
" l_initial = 0\n",
" l_next = 0\n",
" z1=0\n",
" storey_height=3000##int(input('Enter the floor height(mm): ')) ###clear
floor height\n",
" for i in range(0,span_no):\n",
" \n",
" ##Parameters input\n",
"
print('***********************************************************')\n",
" print('')\n",
" l=int(input('Enter Beam Span(mm) no {} : '.format(i+1)))\n",
" l_next=l\n",
" b=300#int(input('Enter breadth(mm) : '))\n",
" d=400#int(input('Enter depth(mm) : '))\n",
" column_width=300#int(input('Enter the column width(mm) : '))\n",
" print('')\n",
" l_initial=a+l\n",
" l=l_initial\n",
" \n",
" \n",
" long_dim_x0 =
[a,a,a,a+l_next,a+l_next,a+l_next/6-b/2,a+l_next/6-b/2,a+l_next/6-b/2,a+l_next/6+b/2
,a+l_next/6+b/2,a+l_next/6-b/2-90,a+l_next/6-b/2-90,a+l_next/6-b/2-90,a+l_next/6-b/2
-90,a+l_next/6-b/2-90]\n",
" long_dim_y0 =
[d+420,d+420,d+420,d+420,d+420,-460+z1,-460+z1,-460+z1,-460+z1,-460+z1,-600+z1,-600+
z1,-600+z1,-600+z1-d,-600+z1-d]\n",
" long_dim_x1 =
[a+l_next,a+35.36,a+35.36,a+l_next-35.36,a+l_next-35.36,a+l_next/6+b/2,a+l_next/6-b/
2+27.36,a+l_next/6-b/2+27.36,a+l_next/6+b/2-27.36,a+l_next/6+b/2-27.36,a+l_next/6-b/
2-90,a+l_next/6-b/2-90-27.36,a+l_next/6-b/2-90+27.36,a+l_next/6-b/2-90-27.36,a+l_nex
t/6-b/2-90+27.36]\n",
" long_dim_y1 =
[d+420,d+420+35.36,d+420-35.36,d+420+35.36,d+420-35.36,-460+z1,-460+z1+27.36,-460+z1
-27.36,-460+z1+27.36,-460+z1-27.36,-600+z1-d,-600+z1-27.36,-600+z1-27.36,-600+z1+27.
36-d,-600+z1+27.36-d]\n",
" \n",
" if span_no == 1:\n",
" \n",
" ###--------beam concrete longitudinal section
---------------------------------------###---------extra rebar------###
###l dimension of beam with arrow##\n",
"
p1x=[a-column_width,a,a,a+l_next,a+l_next+column_width,a-column_width,a-column_width
,a+0,a+0,l_next+a,a+l_next+column_width,a+l_next/3,a+l_next/3,a+(l_next-(l_next/3)),
a+(l_next-(l_next/3))]\n",
" p1y=[0,0,0,0,d,d,d,d,d,d,d,d-beam_cc,beam_cc,beam_cc,d-beam_cc]\n",
"\n",
"
p2x=[a-column_width,a,a+l_next,a+l_next,a+l_next+column_width,a-column_width,a-colum
n_width,a+0,a+l_next,a+l_next,a+l_next+column_width,a+l_next/3+40,a+l_next/3+40,a+(l
_next-(l_next/3))-40,a+(l_next-(l_next/3))-40]\n",
"
p2y=[-(d+200),-(d+200),0,-(d+200),-(d+200),d*2+200,-d,d*2+200,d,2*d+200,2*d+200,d-be
am_cc-40,beam_cc+40,beam_cc+40,d-beam_cc-40]\n",
"\n",
"\n",
" drawing=draw(p1x,p1y,p2x,p2y)\n",
" draw_stirrup=stirrup(l_next,z,d,beam_cc,a)\n",
" draw_section_AA=section_draw_AA(l_next,z,d,beam_cc,b,a)\n",
" draw_section_BB=section_draw_BB(l_next,z,d,beam_cc,b,a)\n",
" draw_section_CC=section_draw_CC(l_next,z,d,beam_cc,b,a)\n",
"
draw_l_dim=l_dimdraw(long_dim_x0,long_dim_y0,long_dim_x1,long_dim_y1)\n",
"\n",
"\n",
"\n",
" text_dim=[l_next,b,d]\n",
" ptext_length=APoint(a+l_next/2-b/4,d+460+z)\n",
" ptext_width=APoint(a+l_next/6-b/4,-430+z)\n",
" ptext_depth=APoint(a+l_next/6-b-100,z-600-d/2)\n",
"\n",
" text_length=acad.model.AddText('
%s'%text_dim[0],ptext_length,30)\n",
" text_length.layer='text'\n",
"\n",
" text_width=acad.model.AddText(' %s'%text_dim[1],ptext_width,30)\n",
" text_width.layer='text'\n",
"\n",
" text_depth=acad.model.AddText(' %s'%text_dim[2],ptext_depth,30)\n",
" text_depth.layer='text'\n",
"\n",
" else:\n",
" \n",
" \n",
" if i == 0 :\n",
"\n",
" ###--------beam concrete longitudinal section
---------------------------------------###---------extra rebar------###
###l dimension of beam with arrow##\n",
"
p1x=[a-column_width,a,a,a+l_next,a+l_next+column_width,a-column_width,a-column_width
,a+0,a+0,l_next+a,a+l_next+column_width,a+l_next/3,a+l_next/3,a+(l_next-(l_next/3)),
a+(l_next-(l_next/3))]\n",
"
p1y=[0,0,0,0,0,d,d,d,d,d,d,d-beam_cc,beam_cc,beam_cc,d-beam_cc]\n",
"\n",
"
p2x=[a-column_width,a,a+l_next,a+l_next,a+l_next+column_width,a-column_width,a-colum
n_width,a+0,a+l_next,a+l_next,a+l_next+column_width,a+l_next/3+40,a+l_next/3+40,a+(l
_next-(l_next/3))-40,a+(l_next-(l_next/3))-40]\n",
"
p2y=[-(d+200),-(d+200),0,-(d+200),-(d+200),d*2+200,-d,d*2+200,d,2*d+200,2*d+200,d-be
am_cc-40,beam_cc+40,beam_cc+40,d-beam_cc-40]\n",
"\n",
"\n",
" drawing=draw(p1x,p1y,p2x,p2y)\n",
" draw_stirrup=stirrup(l_next,z,d,beam_cc,a)\n",
" draw_section_AA=section_draw_AA(l_next,z,d,beam_cc,b,a)\n",
" draw_section_BB=section_draw_BB(l_next,z,d,beam_cc,b,a)\n",
" draw_section_CC=section_draw_CC(l_next,z,d,beam_cc,b,a)\n",
"
draw_l_dim=l_dimdraw(long_dim_x0,long_dim_y0,long_dim_x1,long_dim_y1)\n",
"\n",
"\n",
" \n",
"\n",
" text_dim=[l_next,b,d]\n",
" ptext_length=APoint(a+l_next/2-b/4,d+460+z)\n",
" ptext_width=APoint(a+l_next/6-b/4,-430+z)\n",
" ptext_depth=APoint(a+l_next/6-b-100,z-600-d/2)\n",
"\n",
" text_length=acad.model.AddText('
%s'%text_dim[0],ptext_length,30)\n",
" text_length.layer='text'\n",
"\n",
" text_width=acad.model.AddText('
%s'%text_dim[1],ptext_width,30)\n",
" text_width.layer='text'\n",
"\n",
" text_depth=acad.model.AddText('
%s'%text_dim[2],ptext_depth,30)\n",
" text_depth.layer='text'\n",
"\n",
"\n",
" elif i == span_no-1:\n",
"\n",
"
p1x=[a,a,l,l,l+column_width,a+l_next/3,a+l_next/3,a+(l_next-(l_next/3)),a+(l_next-(l
_next/3))]\n",
" p1y=[d,0,d,0,d*2+200,d-beam_cc,beam_cc,beam_cc,d-beam_cc]\n",
"\n",
"
p2x=[l,l,l,l,l+column_width,a+l_next/3+40,a+l_next/3+40,a+(l_next-(l_next/3))-40,a+(
l_next-(l_next/3))-40]\n",
"
p2y=[d,0,2*d+200,-(d+200),-(d+200),d-beam_cc-40,beam_cc+40,beam_cc+40,d-beam_cc-40]\
n",
"\n",
" drawing=draw(p1x,p1y,p2x,p2y)\n",
" draw_stirrup=stirrup(l_next,z,d,beam_cc,a)\n",
" draw_section_AA=section_draw_AA(l_next,z,d,beam_cc,b,a)\n",
" draw_section_BB=section_draw_BB(l_next,z,d,beam_cc,b,a)\n",
" draw_section_CC=section_draw_CC(l_next,z,d,beam_cc,b,a)\n",
"
draw_l_dim=l_dimdraw(long_dim_x0,long_dim_y0,long_dim_x1,long_dim_y1)\n",
"\n",
" text_dim=[l_next,b,d]\n",
" ptext_length=APoint(a+l_next/2-b/4,d+460+z)\n",
" ptext_width=APoint(a+l_next/6-b/4,-430+z)\n",
" ptext_depth=APoint(a+l_next/6-b-100,z-600-d/2)\n",
"\n",
" text_length=acad.model.AddText('
%s'%text_dim[0],ptext_length,30)\n",
" text_length.layer='text'\n",
"\n",
" text_width=acad.model.AddText('
%s'%text_dim[1],ptext_width,30)\n",
" text_width.layer='text'\n",
"\n",
" text_depth=acad.model.AddText('
%s'%text_dim[2],ptext_depth,30)\n",
" text_depth.layer='text'\n",
"\n",
"\n",
" else:\n",
"
p1x=[a,a,l,l,l+column_width,l+column_width,a+l_next/3,a+l_next/3,a+(l_next-(l_next/3
)),a+(l_next-(l_next/3))]\n",
" p1y=[d,0,d,0,d,0,d-beam_cc,beam_cc,beam_cc,d-beam_cc]\n",
"\n",
"
p2x=[l,l,l,l,l+column_width,l+column_width,a+l_next/3+40,a+l_next/3+40,a+(l_next-(l_
next/3))-40,a+(l_next-(l_next/3))-40]\n",
"
p2y=[d,0,2*d+200,-(d+200),(d*2+200),-(d+200),d-beam_cc-40,beam_cc+40,beam_cc+40,d-be
am_cc-40]\n",
"\n",
" drawing_1=draw(p1x,p1y,p2x,p2y)\n",
" draw_stirrup=stirrup(l_next,z,d,beam_cc,a)\n",
" draw_section_AA=section_draw_AA(l_next,z,d,beam_cc,b,a)\n",
" draw_section_BB=section_draw_BB(l_next,z,d,beam_cc,b,a)\n",
" draw_section_CC=section_draw_CC(l_next,z,d,beam_cc,b,a)\n",
"
draw_l_dim=l_dimdraw(long_dim_x0,long_dim_y0,long_dim_x1,long_dim_y1)\n",
"\n",
"\n",
" text_dim=[l_next,b,d]\n",
" ptext_length=APoint(a+l_next/2-b/4,d+460+z)\n",
" ptext_width=APoint(a+l_next/6-b/4,-430+z)\n",
" ptext_depth=APoint(a+l_next/6-b-100,z-600-d/2)\n",
"\n",
" text_length=acad.model.AddText('
%s'%text_dim[0],ptext_length,30)\n",
" text_length.layer='text'\n",
"\n",
" text_width=acad.model.AddText('
%s'%text_dim[1],ptext_width,30)\n",
" text_width.layer='text'\n",
"\n",
" text_depth=acad.model.AddText('
%s'%text_dim[2],ptext_depth,30)\n",
" text_depth.layer='text'\n",
" \n",
" \n",
" \n",
" a=l_initial+column_width\n",
"\n",
" l_initial=l_initial+column_width\n",
"\n",
" dimension_each=a-l\n",
" #print(l,a)\n",
" #print(dimension_each)\n",
" \n",
"\n",
" draw_without_cantilever(column_width,column_cc,a,a_initial,d,beam_cc)\n",
" \n",
" \n",
" \n",
" \n",
" z=z+storey_height+d\n",
" z1=z-storey_height-d\n",
" \n",
"\n",
"print('')\n",
"print('****************************************************')\n",
"print('')\n",
"print(\"Drawing has been created....\")\n",
"print('')\n",
"print('****************************************************')\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"span_1+column_width+span_2+column_width=3000+300+3500+300"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 4
}

You might also like