Wall#
Important
Wall represents an open RSWall project session,
not a single wall definition. Named walls inside the project come from
listWalls() / getWallDetails().
The class is the project facade: materials, section profiles, MSE/gabion libraries, loads, geometry, soil and topography, leveling pad, reinforcement layout, analysis, and the wall wizard. Compute and factor-of-safety results live on this same object (there is no separate interpreter package).
Method groups (by source order in the class):
Session / units / project summary —
save,close,getProjectUnits, …Materials —
getAllMaterials,createMaterial, …Gravity / cantilever / abutment section profiles
MSE and gabion wall units and section profiles
Reinforcement library
Wall geometry and segments —
listWalls,createSingleSegmentWall, …Base strength
Loads —
createLineLoad,createUniformLoad,createPointLoad, …Soil, topography, groundwater
Leveling pad
Reinforcement layout —
setReinforcementLayout, …Analysis —
computeSegment,computeWall,computeAll, FoS helpersWall wizard —
generateMultiSegmentWall,getAvailableWallWizardUnits
Layer placement strings for reinforcement layout are
"BY_COURSE", "BY_ELEVATION", and "BY_HEIGHT_FROM_BOTTOM" (see
setReinforcementLayout()).
Topography payloads can be built with helpers in
rswall.SoilTopography (see SoilTopography).
- class rswall.Wall.Wall#
Bases:
_ProxyObjectOpen RSWall project session (not a single wall definition).
Obtained from
rswall.RSWallModeler.RSWallModeler.openFile()orrswall.RSWallModeler.RSWallModeler.attachActiveProject(). Named walls inside the project are strings fromlistWalls().Provides materials, concrete/MSE/gabion libraries, loads, wall geometry, soil and topography, leveling pad, reinforcement layout, analysis (compute and factors of safety), and the multi-segment wall wizard.
Numeric values use the project’s native unit system; call
getProjectUnits()after opening.- __init__(client, projectId)#
Initialize the project session proxy.
- Parameters:
client (
Client) – gRPC client connected to RSWallprojectId (
str) – Server-side project reference ID
- close(saveProject=False)#
Close the project document window(s) and release this scripting session.
Matches File → Close Window. Optionally saves first. After close, this Wall proxy must not be used. An
attachActiveProjectsession closes the project open in the RSWall UI; if it was the last document, RSWall opens a blank new project.- Parameters:
saveProject (
bool) – If True, save before closing- Raises:
RuntimeError – If the close RPC reports failure (same channel as
save)- Return type:
- getProjectUnits()#
Return project unit metadata for all scripting wire values.
Numeric getters and setters on this project use these native units. No client-side conversion is applied.
- getProjectSummary()#
Read Project Summary metadata (title, author, company, date, comments).
This mirrors the Project Summary dialog fields, not Report Generator output.
- setProjectSummary(project_title=None, analysis=None, author=None, company=None, date_created=None, comment1=None, comment2=None, comment3=None, comment4=None, comment5=None)#
Write Project Summary metadata fields.
Omitted arguments keep their current values. Pass an empty string to clear a field. The underlying RPC is still a full replace; this method merges with getProjectSummary before writing.
- getAllMaterials()#
Get all soil materials in the project.
Ids are stable across repeated list/getByName calls. After delete, the old proxy is rejected by the server (RFC ObjectReferences cannot remove entries; liveness is library membership).
- getMaterialByName(materialName)#
Get a specific soil material by name.
- Parameters:
materialName (
str) – Name of the material (case-sensitive)- Return type:
- Returns:
Material object
- Raises:
ValueError – If material not found
- createMaterial(name='')#
Create a new soil material in this project.
- deleteMaterial(material)#
Delete a soil material from the project.
- copyMaterial(material, name='')#
Copy an existing soil material to a new library entry.
- getAllGravityWallProfiles()#
Get all gravity wall section profiles in the project.
- Return type:
- Returns:
List of GravityWallProfile objects
- getGravityWallProfileByName(profileName)#
Get a specific gravity wall section profile by name.
- Parameters:
profileName (
str) – Name of the profile (case-sensitive)- Return type:
- Returns:
GravityWallProfile object
- Raises:
ValueError – If profile not found
- createGravityWallProfile(name='')#
Create a new gravity wall section profile in this project.
- Parameters:
name (
str) – Display name for the new profile. Auto-generated if empty.- Return type:
- Returns:
GravityWallProfile proxy for the created profile.
- deleteGravityWallProfile(profile)#
Delete a gravity wall section profile from the project.
- Parameters:
profile (
Union[GravityWallProfile,str]) – Profile proxy or display name.- Return type:
- copyGravityWallProfile(profile, name='')#
Copy an existing gravity wall section profile to a new library entry.
- Parameters:
profile (
Union[GravityWallProfile,str]) – Source profile proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
GravityWallProfile proxy for the copied profile.
- getAllCantileverWallProfiles()#
Get all cantilever wall section profiles in the project.
- Return type:
- Returns:
List of CantileverWallProfile objects
- getCantileverWallProfileByName(profileName)#
Get a specific cantilever wall section profile by name.
- Parameters:
profileName (
str) – Name of the profile (case-sensitive)- Return type:
- Returns:
CantileverWallProfile object
- Raises:
ValueError – If profile not found
- createCantileverWallProfile(name='')#
Create a new cantilever wall section profile in this project.
- Parameters:
name (
str) – Display name for the new profile. Auto-generated if empty.- Return type:
- Returns:
CantileverWallProfile proxy for the created profile.
- deleteCantileverWallProfile(profile)#
Delete a cantilever wall section profile from the project.
- Parameters:
profile (
Union[CantileverWallProfile,str]) – Profile proxy or display name.- Return type:
- copyCantileverWallProfile(profile, name='')#
Copy an existing cantilever wall section profile to a new library entry.
- Parameters:
profile (
Union[CantileverWallProfile,str]) – Source profile proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
CantileverWallProfile proxy for the copied profile.
- getAllAbutmentWallProfiles()#
Get all abutment wall section profiles in the project.
- Return type:
- Returns:
List of AbutmentWallProfile objects
- getAbutmentWallProfileByName(profileName)#
Get a specific abutment wall section profile by name.
- Parameters:
profileName (
str) – Name of the profile (case-sensitive)- Return type:
- Returns:
AbutmentWallProfile object
- Raises:
ValueError – If profile not found
- createAbutmentWallProfile(name='')#
Create a new abutment wall section profile in this project.
- Parameters:
name (
str) – Display name for the new profile. Auto-generated if empty.- Return type:
- Returns:
AbutmentWallProfile proxy for the created profile.
- deleteAbutmentWallProfile(profile)#
Delete an abutment wall section profile from the project.
- Parameters:
profile (
Union[AbutmentWallProfile,str]) – Profile proxy or display name.- Return type:
- copyAbutmentWallProfile(profile, name='')#
Copy an existing abutment wall section profile to a new library entry.
- Parameters:
profile (
Union[AbutmentWallProfile,str]) – Source profile proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
AbutmentWallProfile proxy for the copied profile.
- getManufacturerLibraryOptions()#
Return the built-in MSE wall unit manufacturer library catalog.
Entries come from the shipped CSV (same built-in profiles shown in Define Wall Units → Load Manufacturer). User-defined manufacturer files available in that dialog are not included. Each entry can be passed to MSEWallUnit.applyManufacturerPreset(guid) to populate a wall unit’s engineering properties from catalog data.
- Returns:
guid - stable identifier (use with applyManufacturerPreset) manufacturer - e.g. “RediRock”, “MagnumStone”, “Verti-Crete” set - e.g. “Blocks”, “Standard”, “Verti-Block” type - full catalog label, e.g. “28 in (710 mm) solid - R28T”
- Return type:
List of dicts, one per available profile. Keys
- getGabionManufacturerLibraryOptions()#
Return the built-in gabion wall unit manufacturer library catalog.
Same shape as getManufacturerLibraryOptions(); use with GabionWallUnit.applyManufacturerPreset(guid). User-defined libraries are not included.
- getAllMseWallUnits()#
Get all MSE wall units in the project.
- Return type:
- Returns:
List of MSEWallUnit objects
- getMseWallUnitByName(unitName)#
Get a specific MSE wall unit by name.
- Parameters:
unitName (
str) – Name of the wall unit (case-sensitive)- Return type:
- Returns:
MSEWallUnit object
- Raises:
ValueError – If unit not found
- createMseWallUnit(name='')#
Create a new MSE wall unit in this project.
- Parameters:
name (
str) – Display name for the new unit. Auto-generated if empty.- Return type:
- Returns:
MSEWallUnit proxy for the created unit.
- deleteMseWallUnit(unit)#
Delete an MSE wall unit from the project.
- Parameters:
unit (
Union[MSEWallUnit,str]) – Wall unit proxy or display name.- Return type:
- copyMseWallUnit(unit, name='')#
Copy an existing MSE wall unit to a new library entry.
- Parameters:
unit (
Union[MSEWallUnit,str]) – Source unit proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
MSEWallUnit proxy for the copied unit.
- getAllGabionWallUnits()#
Get all gabion wall units in the project.
- Return type:
- Returns:
List of GabionWallUnit objects
- getGabionWallUnitByName(unitName)#
Get a specific gabion wall unit by name.
- Parameters:
unitName (
str) – Name of the wall unit (case-sensitive)- Return type:
- Returns:
GabionWallUnit object
- Raises:
ValueError – If unit not found
- createGabionWallUnit(name='')#
Create a new gabion wall unit in this project.
- Parameters:
name (
str) – Display name for the new unit. Auto-generated if empty.- Return type:
- Returns:
GabionWallUnit proxy for the created unit.
- deleteGabionWallUnit(unit)#
Delete a gabion wall unit from the project.
- Parameters:
unit (
Union[GabionWallUnit,str]) – Wall unit proxy or display name.- Return type:
- copyGabionWallUnit(unit, name='')#
Copy an existing gabion wall unit to a new library entry.
- Parameters:
unit (
Union[GabionWallUnit,str]) – Source unit proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
GabionWallUnit proxy for the copied unit.
- getAllGabionSectionProfiles()#
Get all gabion section profiles in the project.
- Return type:
- Returns:
List of GabionSectionProfile objects
- getGabionSectionProfileByName(profileName)#
Get a specific gabion section profile by name.
- Parameters:
profileName (
str) – Name of the profile (case-sensitive)- Return type:
- Returns:
GabionSectionProfile object
- Raises:
ValueError – If profile not found
- createGabionSectionProfile(name='')#
Create a new gabion section profile in this project.
- Parameters:
name (
str) – Display name for the new profile. Auto-generated if empty.- Return type:
- Returns:
GabionSectionProfile proxy for the created profile.
- deleteGabionSectionProfile(profile)#
Delete a gabion section profile from the project.
- Parameters:
profile (
Union[GabionSectionProfile,str]) – Profile proxy or display name.- Return type:
- copyGabionSectionProfile(profile, name='')#
Copy an existing gabion section profile to a new library entry.
- Parameters:
profile (
Union[GabionSectionProfile,str]) – Source profile proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
GabionSectionProfile proxy for the copied profile.
- getAllMseSectionProfiles()#
Get all MSE section profiles in the project.
- Return type:
- Returns:
List of MSESectionProfile objects
- getMseSectionProfileByName(profileName)#
Get a specific MSE section profile by name.
- Parameters:
profileName (
str) – Name of the profile (case-sensitive)- Return type:
- Returns:
MSESectionProfile object
- Raises:
ValueError – If profile not found
- createMseSectionProfile(name='')#
Create a new MSE section profile in this project.
- Parameters:
name (
str) – Display name for the new profile. Auto-generated if empty.- Return type:
- Returns:
MSESectionProfile proxy for the created profile.
- deleteMseSectionProfile(profile)#
Delete an MSE section profile from the project.
- Parameters:
profile (
Union[MSESectionProfile,str]) – Profile proxy or display name.- Return type:
- copyMseSectionProfile(profile, name='')#
Copy an existing MSE section profile to a new library entry.
- Parameters:
profile (
Union[MSESectionProfile,str]) – Source profile proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
MSESectionProfile proxy for the copied profile.
- getAllReinforcements()#
Get all reinforcement properties in the project.
- Return type:
- getReinforcementByName(reinforcementName)#
Get a reinforcement property by name.
- Return type:
- Parameters:
reinforcementName (str)
- createReinforcement(name='')#
Create a new reinforcement property in this project.
- Return type:
- Parameters:
name (str)
- deleteReinforcement(reinforcement)#
Delete a reinforcement property from the project.
- Parameters:
reinforcement (
Union[Reinforcement,str]) – Reinforcement proxy or display name.- Return type:
- copyReinforcement(reinforcement, name='')#
Copy an existing reinforcement property to a new library entry.
- Parameters:
reinforcement (
Union[Reinforcement,str]) – Source reinforcement proxy or display name.name (
str) – Name for the copy. Auto-generated if empty.
- Return type:
- Returns:
Reinforcement proxy for the copied property.
- getWallDetails(wall_name)#
Get a wall and all of its segment rows.
- createSingleSegmentWall(profile_name, wall_name='')#
Create a single-segment wall with the given section profile.
The profile must belong to the active wall-type library (gravity profile on gravity projects, MSE section profile on SRW projects, etc.).
- setWallName(wall_name, new_wall_name)#
Rename a wall.
- assignProfileToSegment(wall_name, segment_name, profile_name)#
Assign a section profile from the active wall-type library to a segment.
- deleteWall(wall_name)#
Delete a wall and all of its segments.
- addSegmentRow(wall_name, *, start_x=None, start_y=None, end_x=None, end_y=None, profile_name='', top_elevation=None)#
Add one segment row to a wall.
When geometry/profile fields are omitted, the next row is generated from the last segment using the multi-segment table rules.
- appendSegmentRows(wall_name, count)#
Append multiple auto-generated segment rows to a wall.
- deleteSegmentRows(wall_name, segment_names)#
Delete one or more segment rows from a wall.
- setSegmentStartPoint(wall_name, segment_name, start_x, start_y)#
Set the plan-view start point of a segment.
Validation matches the Walls dialog and lives in RSWall: only the first segment’s start is editable; later segments copy start from the previous end point. RSWall rejects invalid edits via RPC; this client re-raises those errors (no extra client-side geometry checks).
- setSegmentEndPoint(wall_name, segment_name, end_x, end_y)#
Set the plan-view end point of a segment.
- setSegmentTopElevation(wall_name, segment_name, top_elevation)#
Set the top elevation (Z) of a segment.
- getValidBaseStrengthOptions()#
Valid base-strength enum values for the current project design standard.
- getSegmentBaseStrength(wall_name, segment_name)#
Read base strength settings for a wall segment.
- setUseUserSpecifiedBearingCapacity(wall_name, segment_name, use_user_specified, apply_to_all_segments_in_wall=False)#
Set base strength mode to soil-based or user-specified.
- setUserSpecifiedBearingCapacity(wall_name, segment_name, bearing_capacity_kpa, apply_to_all_segments_in_wall=False)#
Set user-specified unfactored bearing capacity in project native stress units.
The parameter is named
bearing_capacity_kpafor historical wire reasons; pass the value in the project’s native stress unit fromgetProjectUnits().
- setSoilContactType(wall_name, segment_name, soil_contact_type, apply_to_all_segments_in_wall=False)#
Set AASHTO soil contact type using a display name from
getValidBaseStrengthOptions.Option lists are design-standard dependent: soil contact types apply only when
isAashtois true. CallgetValidBaseStrengthOptionsfirst and check the flags / returned names before calling this setter.
- setBaseGroundwaterLocation(wall_name, segment_name, groundwater_location, apply_to_all_segments_in_wall=False)#
Set NCMA base groundwater location using a display name from
getValidBaseStrengthOptions.Option lists are design-standard dependent: groundwater locations apply only when
isNcmais true. CallgetValidBaseStrengthOptionsfirst and check the flags / returned names before calling this setter.
- getLoads()#
Get scriptable loads in the project.
Returns LineLoad, UniformLoad, and PointLoad proxies.
- Return type:
- getLoadByName(loadName)#
Get a load by name.
Returns a LineLoad, UniformLoad, or PointLoad proxy depending on type.
- Parameters:
loadName (str)
- createLineLoad(name)#
Create a new line load in this project.
- createUniformLoad(name)#
Create a new uniformly distributed load in this project.
- Parameters:
name (
str) – Display name for the new load.- Return type:
- Returns:
UniformLoad proxy for the created load.
- createPointLoad(name)#
Create a new point load in this project.
- deleteLoad(load)#
Delete a load from the project.
- Parameters:
load – LineLoad / UniformLoad / PointLoad proxy, or load display name.
- Return type:
- getValidLoadDirections()#
Strings allowed for load direction in the current application context.
- getValidLoadClassifications()#
Strings allowed for load classification in the current application context.
- getValidSoilRegionNames(wall_name, segment_name)#
Region display names valid for soil assignment on this segment.
- getSegmentSoilAssignments(wall_name, segment_name)#
Current soil assignments for a wall segment.
- assignSoilToRegion(wall_name, segment_name, region_name, material, apply_to_all_segments_in_wall=False)#
Assign a soil material to one region on a segment.
- assignSoilToAllRegions(wall_name, segment_name, material, apply_to_all_segments_in_wall=False)#
Assign the same soil material to every valid region on a segment.
- getToggleBackslopeSoil(wall_name, segment_name)#
Whether separate backslope soil is enabled (MSE walls).
- setToggleBackslopeSoil(wall_name, segment_name, enabled, apply_to_all_segments_in_wall=False)#
Enable or disable separate backslope soil (MSE walls, non-NCMA).
- getBackslopeTopography(wall_name, segment_name)#
Read backslope terrain settings for a wall segment.
- setBackslopeTopography(wall_name, segment_name, topography, apply_to_all_segments_in_wall=False)#
Write backslope terrain settings for a wall segment.
Returns the resulting state (same shape as getBackslopeTopography), so callers can confirm the stored slope without a follow-up getter.
- getFrontFaceTopography(wall_name, segment_name)#
Read front-face terrain settings for a wall segment.
- setFrontFaceTopography(wall_name, segment_name, topography, embedment_depth_meters=None, consider_passive_resistance=None, apply_to_all_segments_in_wall=False)#
Write front-face terrain settings for a wall segment.
This is a full-replace setter, so
embedment_depth_metersandconsider_passive_resistancekeep their current values when omitted rather than reverting to a default the caller never asked for.Returns the resulting state (same shape as getFrontFaceTopography), including considerPassiveResistance, so callers need not issue a follow-up getter.
- getGroundwater(wall_name, segment_name)#
Read groundwater settings for a wall segment.
Returns dict with isGroundwaterEnabled, isFrontFaceWtDefined (True = differential profile), elevation fields in project native length units (do not convert as SI meters;
*Meterskeys are historical aliases), and doesWaterExtendIntoReinforcedZone (MSE). Alias keys withoutMeters(elevWtConstant,elevWtBack,elevWtFront) are included alongside the wire names.
- setGroundwater(wall_name, segment_name, groundwater, apply_to_all_segments_in_wall=False)#
Write groundwater settings for a wall segment.
groundwatermust containisGroundwaterEnabled; any other field it omits keeps its current value rather than silently reverting to a default. Unknown keys are rejected so a misspelling cannot quietly disable groundwater.Returns the resulting state (same shape as getGroundwater), so callers need not issue a follow-up getter.
- getLevelingPadDetails(wall_name, segment_name)#
Read leveling pad settings for a wall segment.
Returns dict with isEnabled, padDepth, padWidth, setback, padExists. Depth and setback are in project native very-small-length units; width uses native length units.
- setLevelingPadEnabled(wall_name, segment_name, is_enabled, apply_to_all_segments_in_wall=False)#
Enable or disable the leveling pad on a segment.
- setLevelingPadDepth(wall_name, segment_name, pad_depth, apply_to_all_segments_in_wall=False)#
Set leveling pad depth in project native very-small-length units.
- setLevelingPadWidth(wall_name, segment_name, pad_width, apply_to_all_segments_in_wall=False)#
Set leveling pad width in project native length units.
- setLevelingPadSetback(wall_name, segment_name, setback, apply_to_all_segments_in_wall=False)#
Set leveling pad setback in project native very-small-length units.
- getReinforcementLayoutDetails(wall_name, segment_name)#
Read reinforcement layout settings for a wall segment.
Returns dict with hasLayout, uniform flags, spacing fields, layerPlacementType, and layers list.
- setReinforcementLayout(wall_name, segment_name, layout_length, default_reinforcement_name, layer_placement_type, layers, *, apply_uniform_length=True, apply_uniform_property=True, apply_uniform_placement=True, num_courses_below_first=0, num_courses_between=1, elevation_first_layer=0.0, elevation_spacing=0.6, height_first_layer=0.0, height_spacing=0.6, apply_to_all_segments_in_wall=False)#
Create or replace the reinforcement layout on a segment.
Mirrors Segment > Reinforcement Layout dialog checkboxes:
apply_uniform_length— Apply uniform length (default True)apply_uniform_property— Apply uniform reinforcements (default True)apply_uniform_placement— Apply uniform placement (default True)
Changelog:
apply_uniform_placementdefault changed fromFalsetoTrueto match the dialog. Scripts that previously relied on the old default and passed irregular per-layer courses/elevations/heights must now passapply_uniform_placement=Falseexplicitly (otherwise layouts can be wrong, or duplicate placeholders can hit the strictly-increasing check).Decide flags from the intended layers before calling (do not assume all True). Mixed lengths → length False; mixed reinforcements → property False; irregular or hand-listed elevations/courses/heights → placement False.
When
apply_uniform_placementis True, spacing is controlled bynum_courses_below_first+num_courses_between(or the elevation/height spacing pair for those modes). Per-layer placement fields are still validated as strictly increasing (same as C#ValidateLayout), so do not reuse the same course/elevation/height on every layer — use distinct placeholders that increase, e.g.0then1for a two-layerBY_COURSElayout. Setapply_uniform_placement=Falsewhenever each layer must keep its own elevation/course/height.Preferred kwargs JSON (uniform placement, two layers):
{ "wall_name": "Wall 1", "segment_name": "Segment 1", "layout_length": 5, "default_reinforcement_name": "Strip 1", "layer_placement_type": "BY_COURSE", "layers": [ {"reinforcementName": "Strip 1", "length": 5, "numCoursesBelow": 0}, {"reinforcementName": "Strip 1", "length": 5, "numCoursesBelow": 1} ], "apply_uniform_length": true, "apply_uniform_property": true, "apply_uniform_placement": true, "num_courses_below_first": 0, "num_courses_between": 1 }
The six required parameters accept positional or keyword arguments; the optional tuning parameters are keyword-only.
layer_placement_typemust be one of:BY_COURSE,BY_ELEVATION, orBY_HEIGHT_FROM_BOTTOM.Each entry in
layersmust use camelCase keys:reinforcementName,length,numCoursesBelow(required forBY_COURSE),elevation(forBY_ELEVATION), andheightFromBottom(forBY_HEIGHT_FROM_BOTTOM).Returns the resulting layout (same shape as getReinforcementLayoutDetails).
- Return type:
- Parameters:
wall_name (str)
segment_name (str)
layout_length (float)
default_reinforcement_name (str)
layer_placement_type (str)
apply_uniform_length (bool)
apply_uniform_property (bool)
apply_uniform_placement (bool)
num_courses_below_first (int)
num_courses_between (int)
elevation_first_layer (float)
elevation_spacing (float)
height_first_layer (float)
height_spacing (float)
apply_to_all_segments_in_wall (bool)
- deleteReinforcementLayout(wall_name, segment_name, apply_to_all_segments_in_wall=False)#
Remove the reinforcement layout from a segment.
- getComputableSegments()#
Segments that can be analyzed (profile assigned / SectionIsComputable).
- getResultsStatus(wall_name='', segment_name='')#
Results presence and overall status for segments.
- Parameters:
- Return type:
- Returns:
List of dicts with wallName, segmentName, isComputable, hasResults, overallStatus (“None” | “Success” | “Warning” | “Error”).
- computeSegment(wall_name, segment_name)#
Analyze one segment, write .rswall_results, and reload the results cache.
- computeWall(wall_name)#
Analyze all computable segments in a wall (continue-on-error).
- computeAll()#
Analyze all computable segments in the project (continue-on-error).
- getFactorsOfSafety(wall_name, segment_name)#
Factor of safety / CDR / ODR rows for a segment with loaded results.
- getCriticalFactorOfSafety(wall_name, segment_name, failure_mode_abbr='', load_case_abbr='', location_code='')#
Minimum FS/CDR/ODR for a segment, optionally filtered by metadata abbreviations.
- getAnalysisIssues(wall_name, segment_name)#
Analysis issues for a segment: failed checks, warnings, and errors.
- getRelevantSymbols(wall_name, segment_name, scope_to_factor_of_safety_row=False, factor_of_safety_row_index=0)#
Relevant symbols for a segment (or one FS row when scoped).
- Parameters:
- Return type:
- Returns:
dict with hasResults and symbols. Each symbol includes symbol, description, siValue, units, and reference. siValue is the project-native numeric value paired with units (field name is historical; not always SI). Non-finite values become None.
- getAvailableWallWizardUnits()#
Return the names of all wall units (MSE or Gabion) in the project.
These names can be passed as
wall_unit_nametogenerateMultiSegmentWall().
- generateMultiSegmentWall(plan_points, wall_unit_name, wall_name='', minimum_segment_length=0.0, minimum_embedment_depth=0.0, reference_block_elevation=0.0, keep_bottom_at_same_elevation=False, keep_top_at_same_elevation=False, define_courses_setback=False, use_layer_setback_distance=True, layer_setback_distance_mm=25.0, batter_angle_degrees=0.0, flip_backslope=False)#
Run the Wall Wizard to generate a multi-segment MSE/SRW or Gabion wall.
Mirrors Wall > Multi-Segment Wall > Wizard. Each
plan_pointsentry is one vertex = Plan coordinate (X, Y) + Elevation coordinate (Top, Bottom). The elevation pair is not a second XY / segment start-end point.Preferred vertex shape (self-explanatory for LLMs):
{ "plan": {"x": 12, "y": 5}, "elevation": {"top": 2.4, "bottom": 0} }
Also accepted: flat keys (
x/PlanX,elevationTop/Top, …) or legacy[planX, planY, elevTop, elevBottom]rows. Rejected: pair-of-XY shapes like[[0,0], [2,0]](elevation mistaken for plan).Preferred
rswall_call_functionarguments_json:{ "plan_points": [ {"plan": {"x": 0, "y": 0}, "elevation": {"top": 2, "bottom": 0}}, {"plan": {"x": 12, "y": 0}, "elevation": {"top": 2, "bottom": 0}}, {"plan": {"x": 12, "y": 5}, "elevation": {"top": 2.4, "bottom": 0}} ], "wall_unit_name": "Wall Unit 1", "wall_name": "My MSE Wall" }
Also accepted:
[plan_points, wall_unit_name, {options...}]where the third element is an options dict (promoted automatically).Omitted design-requirements kwargs match Wall Wizard page-2 GUI defaults (see
rswall.wizard_requirements).- Parameters:
plan_points (
List) – Ordered vertices (≥ 2). Native length units. Prefer nestedplan/elevationobjects per vertex.wall_unit_name (
str) – MSE/Gabion unit fromgetAvailableWallWizardUnits().wall_name (
Union[str,Dict[str,Any]]) – Display name for the created wall (auto if empty). May also be an options dict when callers pack[points, unit, options].minimum_segment_length (
float) – Shortest segment (native length). Use0(or omit) for the GUI default (10 m, applied server-side in project native units).minimum_embedment_depth (
float) – Front-face embedment floor (native length). Use0(or omit) for the GUI default (0.3 m, applied server-side in project native units).reference_block_elevation (
float) – Block-coursing reference (native length).keep_bottom_at_same_elevation (
bool) – Force equal segment bottoms.keep_top_at_same_elevation (
bool) – Force equal segment tops.define_courses_setback (
bool) – Enable per-course batter setback.use_layer_setback_distance (
bool) – When setback is enabled,Trueuseslayer_setback_distance_mm(GUI default);Falseusesbatter_angle_degrees(must be in[0, 30]).layer_setback_distance_mm (
float) – Setback in millimetres (UI default 25). When setback + distance mode are enabled,<= 0remaps to 25; values in(0, 0.01)raiseValueError(GUI MinValue).batter_angle_degrees (
float) – Batter degrees when setback uses angle mode.flip_backslope (
bool) – Flip backslope side on generated segments.
- Return type:
- Returns:
WizardWallResultwith wall id/name and per-segment summaries.- Raises:
ValueError – If plan points or page-2 requirements are invalid.
RuntimeError – If the server reports a generation failure.
- __enter__()#
Context manager entry.
- __exit__(exc_type, exc_val, exc_tb)#
Context manager exit - close without saving.