Pile Sections (Pile Analysis)#
Download the LatAxPileAnalysis.rspile2 for this example.
Code Snippet: Manipulation of Pile Sections (Pile Analysis)#
from RSPileScripting.RSPileModeler import RSPileModeler
from RSPileScripting.enums import *
from RSPileScripting.Utilities.ColorPicker import ColorPicker
import os, inspect
current_dir = os.path.dirname(os.path.abspath(inspect.getfile(lambda: None)))
RSPileModeler.startApplication(60044)
rspile_modeler = RSPileModeler(60044)
model = rspile_modeler.openFile(rf"{current_dir}\example_models\LatAxPileAnalysis.rspile2")
pile_section_list = model.getPileSections()
pile_section1 = pile_section_list[0]
pile_section2 = pile_section_list[1]
pile_section1.setName("Reinforced Concrete Section")
pile_section1.setColor(ColorPicker.Indigo)
pile_section1.PileAnalysis.setSectionType(SectionType.REINFORCED_CONCRETE)
pile_section1.PileAnalysis.ReinforcedConcrete.setCompressiveStrength(150)
pile_section1.PileAnalysis.ReinforcedConcrete.setCrossSectionType(ReinforcedConcreteCrossSectionType.RECTANGULAR)
pile_section1.PileAnalysis.ReinforcedConcrete.CrossSection.Rectangular.setDepth(0.4)
pile_section1.PileAnalysis.ReinforcedConcrete.CrossSection.Rectangular.setWidth(0.4)
pile_section_1_ibeam_property = pile_section1.PileAnalysis.ReinforcedConcrete.CrossSection.ConcreteDesigner.IBeam
pile_section_1_ibeam_property.setUseIBeam(True)
pile_section_1_ibeam_property.setIBeamType(CanadianIBeamTypes.HP310X110)
pile_section_1_ibeam_property.setYieldStress(450)
pile_section_1_ibeam_property.setElasticModulus(200)
pile_section2.setName("Circular Concrete Section")
pile_section2.setColor(ColorPicker.Pale_Turquoise)
pile_section2.PileAnalysis.setSectionType(SectionType.ELASTIC)
pile_section2.PileAnalysis.Elastic.setYoungsModulus(30)
pile_section2.PileAnalysis.Elastic.setCrossSectionType(ElasticCrossSectionType.CIRCULAR)
pile_section2.PileAnalysis.Elastic.CrossSection.Circular.setDiameter(1.5)
print(pile_section1.getName())
print(ColorPicker.getColorName(pile_section1.getColor()))
print(pile_section1.PileAnalysis.getSectionType())
print(pile_section1.PileAnalysis.ReinforcedConcrete.getCompressiveStrength())
print(pile_section1.PileAnalysis.ReinforcedConcrete.getCrossSectionType())
print(pile_section1.PileAnalysis.ReinforcedConcrete.CrossSection.Rectangular.getDepth())
print(pile_section1.PileAnalysis.ReinforcedConcrete.CrossSection.Rectangular.getWidth())
print(pile_section_1_ibeam_property.getUseIBeam())
print(pile_section_1_ibeam_property.getIBeamType())
print(pile_section_1_ibeam_property.getYieldStress())
print(pile_section_1_ibeam_property.getElasticModulus())
print(pile_section2.getName())
print(ColorPicker.getColorName(pile_section2.getColor()))
print(pile_section2.PileAnalysis.getSectionType())
print(pile_section2.PileAnalysis.Elastic.getYoungsModulus())
print(pile_section2.PileAnalysis.Elastic.getCrossSectionType())
print(pile_section2.PileAnalysis.Elastic.CrossSection.Circular.getDiameter())
model.save()
model.close()
rspile_modeler.closeApplication()
Output#
Reinforced Concrete Section
Indigo
SectionType.REINFORCED_CONCRETE
150.0
ReinforcedConcreteCrossSectionType.RECTANGULAR
0.4
0.4
True
CanadianIBeamTypes.HP310X110
450.0
200.0
Circular Concrete Section
Pale_Turquoise
SectionType.ELASTIC
30.0
ElasticCrossSectionType.CIRCULAR
1.5