Browsed by
Tag: standards

Rectangular Hollow Formed Profiles

Rectangular Hollow Formed Profiles

Compatible with WizoScript versions: 2.01

Rectangular hollow hot and cold formed profiles according to BS/EN-10210-2:1997 and BS/EN-10219:1997 kindly provided by Niels Linnemann

# Rectangular hollow hot and cold formed profiles according to BS/EN-10210-2:1997 and BS/EN-10219:1997
 
# Measurements table H,B,T,ro,ri from here http://www.roymech.co.uk/Useful_Tables/Sections/RHS_cf.html
 
from collections import OrderedDict
 
 
PData = 0
 
HData = {}
HData[50.0]={}
HData[50.0][25.0]=[2.5, 3.75, 2.5],[3.0, 4.5, 3.0]
HData[50.0][30.0]=[2.5, 3.75, 2.5],[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0]
HData[60.0]={}
HData[60.0][40.0]=[2.5, 3.75, 2.5],[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3]
HData[76.2]={}
HData[76.2][50.8]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[80.0]={}
HData[80.0][40.0]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[90.0]={}
HData[90.0][50.0]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[100.0]={}
HData[100.0][50.0]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[100.0][60.0]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[120.0]={}
HData[120.0][60.0]=[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 12.0, 8.0]
HData[120.0][80.0]=[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0]
HData[140.0]={}
HData[140.0][80.0]=[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0]
HData[150.0]={}
HData[150.0][100.0]=[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5]
HData[160.0]={}
HData[160.0][80.0]=[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5]
HData[180.0]={}
HData[180.0][100.0]=[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5]
HData[200.0]={}
HData[200.0][100.0]=[4.0, 7.5, 5.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[200.0][120.0]=[6.0, 9.45, 6.3],[6.3, 12.0, 8.0],[8.0, 15.0, 10.0],[10.0, 18.0, 12.0],[12.0, 18.75, 12.5],[12.5, 24.0, 16.0]
HData[250.0]={}
HData[250.0][150.0]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[260.0]={}
HData[260.0][180.0]=[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[300.0]={}
HData[300.0][200.0]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[350.0]={}
HData[350.0][250.0]=[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[400.0]={}
HData[400.0][200.0]=[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[450.0]={}
HData[450.0][250.0]=[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[500.0]={}
HData[500.0][300.0]=[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0],[20.0, 30.0, 20.0]
 
CData = {}
CData[40.0]={}
CData[40.0][20.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0]
CData[50.0]={}
CData[50.0][25.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0]
CData[50.0][30.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0]
CData[60.0]={}
CData[60.0][40.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[70.0]={}
CData[70.0][50.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[80.0]={}
CData[80.0][40.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[80.0][60.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[90.0]={}
CData[90.0][50.0]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[3.6, 7.2, 3.6],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[100.0]={}
CData[100.0][40.0]=[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[100.0][50.0]=[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45]
CData[100.0][60.0]=[3.0, 6.0, 3.0],[3.6, 7.2, 3.6],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45]
CData[100.0][80.0]=[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45]
CData[120.0]={}
CData[120.0][60.0]=[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[3.6, 7.2, 3.6],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0]
CData[120.0][80.0]=[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0]
CData[140.0]={}
CData[140.0][80.0]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0]
CData[150.0]={}
CData[150.0][100.0]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[160.0]={}
CData[160.0][80.0]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[180.0]={}
CData[180.0][100.0]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[200.0]={}
CData[200.0][100.0]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[200.0][120.0]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[250.0]={}
CData[250.0][100.0]=[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.5, 37.5, 25.0]
CData[250.0][150.0]=[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[260.0]={}
CData[260.0][180.0]=[5.0, 10.0, 5.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[300.0]={}
CData[300.0][100.0]=[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[300.0][150.0]=[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[300.0][200.0]=[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[350.0]={}
CData[350.0][250.0]=[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[400.0]={}
CData[400.0][200.0]=[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[400.0][300.0]=[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
 
 
#--- INPUT HERE ---#
print("Select hot or cold formed profiles")
print("0 = Hot\n1 = Cold")
HorC = int(Read())
 
if HorC == 0:
    PData = OrderedDict(sorted(HData.items(), key=lambda t: t[0]))
else:
    PData = OrderedDict(sorted(CData.items(), key=lambda t: t[0]))
 
print("Please select height")
for i,j in enumerate(PData):
    print i,'-',j,'mm'
     
readH = int(Read())
Size = PData.keys()[readH]
WData = PData[Size]
 
print("Please select width")
for i,j in enumerate(WData):
    print i,'-',j,'mm'
     
readW = int(Read())
Width = WData.keys()[readW]
 
 
print("Please select thickness")
for i,j in enumerate(WData[Width]):
    print i,'-',j[0],'mm'
 
readTh = int(Read())
 
Thick = WData[Width][readTh][0]
ro = WData[Width][readTh][1]
ri = WData[Width][readTh][2]
 
print("Please input length in mm")
Length = float(Read())
#--- INPUT STOP ---#
 
# all values are in millimeters
Units.Current = UnitTypes.Millimeters
 
# Create part
Square = Part("Hollow Section %dx%dx%dx%d" % (Size,Width,Thick,Length))
 
# Body
Profile = Square.AddSketch("Profile", Square.GetPlane("XY-Plane"))
# Outer square
Line = Polyline()
Line.AddPoint(PolylinePoint(-Width/2.,-Size/2.))
Line.AddPoint(PolylinePoint(Width/2.,-Size/2.))
Line.AddPoint(PolylinePoint(Width/2.,Size/2.))
Line.AddPoint(PolylinePoint(-Width/2.,Size/2.))
Line.AddPoint(PolylinePoint(-Width/2.,-Size/2.))
Profile.AddPolyline(Line,False)
 
# Inner Square
Line = Polyline()
Line.AddPoint(PolylinePoint((-Width/2.)+Thick,(-Size/2.)+Thick))
Line.AddPoint(PolylinePoint((Width/2.)-Thick,(-Size/2.)+Thick))
Line.AddPoint(PolylinePoint((Width/2.)-Thick,(Size/2.)-Thick))
Line.AddPoint(PolylinePoint((-Width/2.)+Thick,(Size/2.)-Thick))
Line.AddPoint(PolylinePoint((-Width/2.)+Thick,(-Size/2.)+Thick))
Profile.AddPolyline(Line,False)
 
# Extrude
Square.AddExtrudeBoss("Extrude",Profile,Length,False)
 
# Outer radius
Square.AddFillet("Fillet<1>",[Square.GetEdge("Edge<6>"),Square.GetEdge("Edge<2>"),Square.GetEdge("Edge<4>"),Square.GetEdge("Edge<9>")],ro,False)
 
# Inner radius
Square.AddFillet("Fillet<2>",[Square.GetEdge("Edge<30>"),Square.GetEdge("Edge<31>"),Square.GetEdge("Edge<33>"),Square.GetEdge("Edge<35>")],ri,False)
Square Hollow Formed Profiles

Square Hollow Formed Profiles

Compatible with WizoScript versions: 2.01

Square hollow hot and cold formed profiles according to BS/EN-10210-2:1997 and BS/EN-10219:1997 kindly provided by Niels Linnemann

# Square hollow hot and cold formed profiles according to BS/EN-10210-2:1997 and BS/EN-10219:1997
 
# Measurements table B,T,ro,ri from here http://www.roymech.co.uk/Useful_Tables/Sections/SHS_hf.html
PData = 0
 
HData = {}
HData[20]=[2,3,2],[2.5,3.75,2.5]
HData[25]=[2.0, 3.0, 2.0],[2.5, 3.75, 2.5],[3.0, 4.5, 3.0]
HData[30]=[2.0, 3.0, 2.0],[2.5, 3.75, 2.5],[3.0, 4.5, 3.0]
HData[40]=[2.5, 3.75, 2.5],[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0]
HData[50]=[2.5, 3.75, 2.5],[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3]
HData[60]=[2.5, 3.75, 2.5],[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[70]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[80]=[3.0, 4.5, 3.0],[3.2, 4.8, 3.2],[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[90]=[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0]
HData[100]=[3.6, 5.4, 3.6],[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0]
HData[120]=[4.0, 6.0, 4.0],[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5]
HData[140]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5]
HData[150]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[160]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[180]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[200]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[220]=[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[250]=[5.0, 7.5, 5.0],[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[260]=[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[300]=[6.0, 9.0, 6.0],[6.3, 9.45, 6.3],[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[350]=[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0]
HData[400]=[8.0, 12.0, 8.0],[10.0, 15.0, 10.0],[12.0, 18.0, 12.0],[12.5, 18.75, 12.5],[16.0, 24.0, 16.0],[20.0, 30.0, 20.0]
 
CData = {}
CData[20]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5]
CData[25]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0]
CData[30]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0]
CData[40]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0]
CData[50]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0]
CData[60]=[2.0, 4.0, 2.0],[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45]
CData[70]=[2.5, 5.0, 2.5],[3.0, 6.0, 3.0],[3.6, 7.2, 3.6],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45]
CData[80]=[3.0, 6.0, 3.0],[3.6, 7.2, 3.6],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0]
CData[90]=[3.0, 6.0, 3.0],[3.6, 7.2, 3.6],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0]
CData[100]=[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[120]=[3.0, 6.0, 3.0],[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[140]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0]
CData[150]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[160]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[180]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[200]=[4.0, 8.0, 4.0],[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[220]=[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[250]=[5.0, 10.0, 5.0],[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[260]=[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[300]=[6.0, 12.0, 6.0],[6.3, 15.75, 9.45],[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[350]=[8.0, 20.0, 12.0],[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
CData[400]=[10.0, 25.0, 15.0],[12.0, 36.0, 24.0],[12.5, 37.5, 25.0],[16.0, 48.0, 32.0]
 
 
#--- INPUT HERE ---#
print("Select hot or cold formed profiles")
print("0 = Hot\n1 = Cold")
HorC = int(Read())
 
if HorC == 0:
    PData = HData
else:
    PData = CData
 
 
print("Input dimension in mm, only integers")
print sorted(PData, key=lambda key: PData[key])
Size = int(Read())
 
 
print("Please select thickness")
for i,j in enumerate(PData[Size]):
    print i,'-',j[0],'mm'
 
readTh = int(Read())
 
Thick = PData[Size][readTh][0]
ro = PData[Size][readTh][1]
ri = PData[Size][readTh][2]
 
print("Please input length in mm")
Length = float(Read())
#--- INPUT STOP ---#
 
# all values are in millimeters
Units.Current = UnitTypes.Millimeters
 
# Create part
Square = Part("Hollow Section %dx%dx%d" % (Size,Thick,Length))
 
# Body
Profile = Square.AddSketch("Profile", Square.GetPlane("XY-Plane"))
# Outer square
Line = Polyline()
Line.AddPoint(PolylinePoint(-Size/2.,-Size/2))
Line.AddPoint(PolylinePoint(Size/2.,-Size/2))
Line.AddPoint(PolylinePoint(Size/2.,Size/2))
Line.AddPoint(PolylinePoint(-Size/2.,Size/2))
Line.AddPoint(PolylinePoint(-Size/2.,-Size/2))
Profile.AddPolyline(Line,False)
 
# Inner Square
scaleFactor = ((Size-(Thick*2.))/Size)*100.0
#print scaleFactor
Profile.CopyFrom(Profile,0,0,0,0,0,0,0,scaleFactor)
 
# Extrude
Square.AddExtrudeBoss("Extrude",Profile,Length,False)
 
# Outer radius
Square.AddFillet("Fillet<1>",[Square.GetEdge("Edge<6>"),Square.GetEdge("Edge<2>"),Square.GetEdge("Edge<4>"),Square.GetEdge("Edge<9>")],ro,False)
 
# Inner radius
Square.AddFillet("Fillet<2>",[Square.GetEdge("Edge<30>"),Square.GetEdge("Edge<31>"),Square.GetEdge("Edge<33>"),Square.GetEdge("Edge<35>")],ri,False)
TYPE 11 Flanges According to BS/EN-1092 PN16

TYPE 11 Flanges According to BS/EN-1092 PN16

Compatible with WizoScript versions: 2.01

Here is a script to create TYPE 11 DN flanges according to EN-1092 kindly provided by Niels Linnemann.

from math import cos,sin,radians
 
# Size of Flange TYPE 11 According to BS/EN-1092 PN16
 
#--- INPUT HERE ---#
print("Input DN Flange size, only numbers")
DN = int(Read())
#--- INPUT STOP ---#
 
# Measurements table D,C2,H2,H3,R,A,N1,d1,f1,K,L,N from here
http://www.roymech.co.uk/Useful_Tables/Flanges/BSEN1092_16_Dimensions.html
DNData = {}
DNData[10] = [90,14,35,6,4,17.2,28,40,2,60,14,4]
DNData[15] = [95,14,35,6,4,21.3,32,45,2,65,14,4]
DNData[20] = [105,14,38,6,4,26.9,39,58,2,75,14,4]
DNData[25] = [115,16,38,6,4,33.7,46,68,2,85,14,4]
DNData[32] = [140,16,40,6,6,42.4,56,78,2,100,18,4]
DNData[40] = [150,16,42,7,6,48.3,64,88,2,110,18,4]
DNData[50] = [165,18,45,8,6,60.3,75,102,2,125,18,4]
DNData[65] = [185,18,45,10,6,76.1,90,122,2,145,18,4]
DNData[80] = [200,20,50,10,8,88.9,105,138,2,160,18,8]
DNData[100] = [220,20,52,12,8,114.3,131,158,2,180,18,8]
DNData[125] = [250,22,55,12,8,139.7,156,188,2,210,18,8]
DNData[150] = [285,22,55,12,10,168.3,192,212,2,240,22,8]
DNData[200] = [340,24,62,16,10,219.1,235,268,2,295,22,12]
DNData[250] = [405,26,70,16,12,273,292,320,2,355,26,12]
DNData[300] = [460,28,78,16,12,323.9,344,378,2,410,26,12]
DNData[350] = [520,30,82,16,12,355.6,390,438,2,470,26,16]
DNData[400] = [580,32,85,16,12,406.4,445,490,2,525,30,16]
DNData[450] = [640,40,87,16,12,457,490,550,2,585,30,20]
DNData[500] = [715,44,90,16,12,508,548,610,2,650,33,20]
DNData[600] = [840,54,95,18,12,610,652,725,2,770,36,20]
DNData[700] = [910,36,100,18,12,711,755,795,2,840,36,24]
DNData[800] = [1025,38,105,20,12,813,855,900,2,950,39,24]
DNData[900] = [1125,40,110,20,12,914,955,1000,2,1050,39,28]
DNData[1000] = [1255,42,120,22,16,1016,1058,1115,2,1170,42,28]
DNData[1200] = [1485,48,130,30,16,1219,1262,1330,2,1390,48,32]
DNData[1400] = [1685,52,145,30,16,1420,1465,1530,2,1590,48,36]
DNData[1600] = [1930,58,160,35,16,1620,1668,1750,2,1820,56,40]
 
 
D = DNData[DN][0]
C2 = DNData[DN][1]
H2 = DNData[DN][2]
H3 = DNData[DN][3]
R = DNData[DN][4]
A = DNData[DN][5]
N1 = DNData[DN][6]
d1 = DNData[DN][7]
f1 = DNData[DN][8]
K = DNData[DN][9]
L = DNData[DN][10]
N = DNData[DN][11]
 
# all values are in millimeters
Units.Current = UnitTypes.Millimeters
 
# Create part
Flange = Part("DN%d Flange PN16" % (DN))
 
# body
Profile = Flange.AddSketch("Profile", Flange.GetPlane("XY-Plane"))
Line = Polyline()
Line.AddPoint(PolylinePoint(DN/2.,0))
Line.AddPoint(PolylinePoint(d1/2.,0))
Line.AddPoint(PolylinePoint(d1/2.,f1))
Line.AddPoint(PolylinePoint(D/2.,f1))
Line.AddPoint(PolylinePoint(D/2.,C2))
Line.AddPoint(PolylinePoint(N1/2.,C2))
Line.AddPoint(PolylinePoint(A/2.,H2-H3))
Line.AddPoint(PolylinePoint(A/2.,H2))
Line.AddPoint(PolylinePoint(DN/2.,H2))
Line.AddPoint(PolylinePoint(DN/2.,0))
Profile.AddPolyline(Line,False)
Flange.AddRevolveBoss("Body", Profile, Flange.GetAxis("Y-Axis"),360)
 
#Chamfer
Flange.AddChamfer("Chamfer<1>",Flange.GetFace("Face<2>"),1,False)
 
#Fillet
Flange.AddFillet("Fillet<1>",[Flange.GetEdge("Edge<6>"),Flange.GetEdge("Edge<7>")],R,False)
 
# Hole
Hole = Flange.AddSketch("Hole",Flange.GetFace("Face<8>"))
for i in xrange(N):
    Ang = (360/N)*i
    Hole.AddPolyhole(sin(radians(Ang))*K/2.,cos(radians(Ang))*K/2.,L,False)
Flange.AddExtrudeCut("Flange Hole",Hole,C2,True)