InterpretData#

class SurfaceFilterType(*values)#

Bases: Enum

NUM_SURF = 1#
ERRORS = 2#
BETWEEN_SF = 3#
BELOW_SF = 4#
NONE = 0#
class ScenarioGraphDataType(*values)#

Bases: Enum

NAME = 0#
MAX_LOAD_MAGNITUDE = 1#
MAX_BOLT_LENGTH = 2#
PONDED_WATER_HEIGHT = 3#
SEISMIC_COEFFICIENT_X = 4#
SEISMIC_COEFFICIENT_Y = 5#
SPATIAL_CORRELATION_LENGTH_X = 6#
SPATIAL_CORRELATION_LENGTH_Y = 7#
class FilterDataType(*values)#

Bases: Enum

ALL_DATA = 1#
MINIMUM_IN_EACH_BIN = 2#
class AnalysisMethod(index: int, name: str)#

Bases: object

getIndex() → int#
getName() → str#
class Stage(index: int, display_name: str)#

Bases: object

getIndex() → int#
getDisplayName() → str#
class SurfaceFilter(filter_type: <google.protobuf.internal.enum_type_wrapper.EnumTypeWrapper object at 0x00000217CA8382D0>, below_sf_value: float = 2.0, below_kc_value: float = 0.1, below_newmark_value: float = 1.0, surface_count: int = 10, error_code: int = 0, between_min: float = 0.5, between_max: float = 1.5, between_min_kc: float = 0.0, between_max_kc: float = 0.1, between_min_newmark: float = 1.0, between_max_newmark: float = 20.0)#

Bases: object

getFilterType() → SurfaceFilterType#
setFilterType(value: SurfaceFilterType) → None#
getBelowSFValue() → float#
setBelowSFValue(value: float) → None#
getBelowKcValue() → float#
setBelowKcValue(value: float) → None#
getBelowNewmarkValue() → float#
setBelowNewmarkValue(value: float) → None#
getSurfaceCount() → int#
setSurfaceCount(value: int) → None#
getErrorCode() → int#
setErrorCode(value: int) → None#
getBetweenMin() → float#
setBetweenMin(value: float) → None#
getBetweenMax() → float#
setBetweenMax(value: float) → None#
getBetweenMinKc() → float#
setBetweenMinKc(value: float) → None#
getBetweenMaxKc() → float#
setBetweenMaxKc(value: float) → None#
getBetweenMinNewmark() → float#
setBetweenMinNewmark(value: float) → None#
getBetweenMaxNewmark() → float#
setBetweenMaxNewmark(value: float) → None#
toProto() → SurfaceFilterProperties#
static fromProto(props: SurfaceFilterProperties) → SurfaceFilter#
class RawExportOptions(export_fs: bool = True, export_radius: bool = True, export_all_grid_data: bool = False, export_slope_intersections: bool = False, export_grid_minimums: bool = False, export_single_centers: bool = True, export_center_location: bool = True)#

Bases: object

getExportFS() → bool#
setExportFS(value: bool) → None#
getExportRadius() → bool#
setExportRadius(value: bool) → None#
getExportAllGridData() → bool#
setExportAllGridData(value: bool) → None#
getExportSlopeIntersections() → bool#
setExportSlopeIntersections(value: bool) → None#
getExportGridMinimums() → bool#
setExportGridMinimums(value: bool) → None#
getExportSingleCenters() → bool#
setExportSingleCenters(value: bool) → None#
getExportCenterLocation() → bool#
setExportCenterLocation(value: bool) → None#
toProto() → RawExportOptions#
class SfAlongSlopeResult(points: list[SfAlongSlopePoint], analysis_method_name: str)#

Bases: object

getPoints() → list[SfAlongSlopePoint]#
getAnalysisMethodName() → str#
class SupportForceData(rows: list[SupportForceRow], analysis_method_name: str, force_units: str)#

Bases: object

getRows() → list[SupportForceRow]#
getAnalysisMethodName() → str#
getForceUnits() → str#
class SfWithTimeSeries(method_name: str, method_flag: int, points: list[SfWithTimePoint])#

Bases: object

getMethodName() → str#
getPoints() → list[SfWithTimePoint]#
class SfWithTimeResult(series: list[SfWithTimeSeries], time_units: str, y_axis_label: str)#

Bases: object

getSeries() → list[SfWithTimeSeries]#
getRows() → list[SfWithTimePoint]#
getTimeUnits() → str#
getYAxisLabel() → str#
class LambdaFsData(rows: list[LambdaFsPoint])#

Bases: object

getRows() → list[LambdaFsPoint]#
class ScenarioGraphSeries(method_name: str, method_flag: int, points: list[ScenarioGraphPoint])#

Bases: object

getMethodName() → str#
getPoints() → list[ScenarioGraphPoint]#
class ScenarioGraphResult(series: list[ScenarioGraphSeries], x_axis_label: str, y_axis_label: str)#

Bases: object

getSeries() → list[ScenarioGraphSeries]#
getRows() → list[ScenarioGraphPoint]#
getXAxisLabel() → str#
getYAxisLabel() → str#
class SupportPressureData(rows: list[SupportPressureRow], analysis_method_name: str, pressure_units: str)#

Bases: object

getRows() → list[SupportPressureRow]#
getAnalysisMethodName() → str#
getPressureUnits() → str#
class BoltTensionDiagram(bolt_id: int, start_x: float, start_y: float, end_x: float, end_y: float, rows: list[SupportTensionRow])#

Bases: object

getBoltId() → int#
getStartX() → float#
getStartY() → float#
getEndX() → float#
getEndY() → float#
getRows() → list[SupportTensionRow]#
class SupportTensionData(diagrams: list[BoltTensionDiagram], analysis_method_name: str, force_units: str)#

Bases: object

getDiagrams() → list[BoltTensionDiagram]#
getRows() → list[SupportTensionRow]#
getAnalysisMethodName() → str#
getForceUnits() → str#
class InterpretData(model_id: str, client: Client)#

Bases: object

Examples: Code Snippet: Interpret Data

Interpret Data menu: analysis methods, surface filter, all surfaces, raw export, SF along slope, support force.

listStages() → list[Stage]#
getActiveStage() → int#
setActiveStage(stage: int) → None#
listAnalysisMethods() → list[AnalysisMethod]#
getActiveAnalysisMethod() → AnalysisMethod#
setActiveAnalysisMethod(methodIndex: int) → None#
getSurfaceFilter() → SurfaceFilter#
setSurfaceFilter(surfaceFilter: SurfaceFilter) → None#
getAllSurfaces(stage: int | None = None) → list[SlipSurfaceRecord]#

Returns slip surfaces for the active analysis method that pass the current surface filter.

Fetches one surface per RPC (same pattern as support diagrams) to avoid oversized responses.

copyRawExportToClipboard(options: RawExportOptions | None = None, stage: int = 0) → None#

Build raw export text in Interpret and copy it to the system clipboard. Avoids returning large payloads over gRPC.

exportRawExportToFile(filePath: str, options: RawExportOptions | None = None, stage: int = 0) → None#

Build raw export text in Interpret and write it to filePath. Avoids returning large payloads over gRPC.

getAllSurfacesVisible() → bool#
setAllSurfacesVisible(visible: bool) → None#
getSfAlongSlope(stage: int = 0, includeLeftSlopeIntercept: bool = True, includeRightSlopeIntercept: bool = True, filterType: FilterDataType = FilterDataType.MINIMUM_IN_EACH_BIN, numberOfBins: int = 20) → SfAlongSlopeResult#

Return Graph SF Along Slope points for the active analysis method (one series).

getSupportForceData(stage: int = 0) → SupportForceData#

Return Support Force Diagram rows for all supports. Internally lists supports and fetches one support per RPC, then combines the results.

getSfWithTime(methodFlags: list[int] | None = None) → SfWithTimeResult#

Return Graph SF with Time series for the requested analysis methods (or all when methodFlags is None).

getLambdaFsData(stage: int = 0) → LambdaFsData#

Return Graph Lambda vs FS points for all surfaces. Internally lists surfaces and fetches one surface per RPC, then combines force and moment series.

getScenarioGraphData(stage: int = 0, scenarioNames: list[str] | None = None, dataType: ScenarioGraphDataType = ScenarioGraphDataType.NAME, material: str | int | None = None, probabilityOfFailure: bool = False) → ScenarioGraphResult#

Return Graph Scenarios series for the requested scenarios and data type.

scenarioNames: bare scenario names or “Model - Scenario” labels (None/empty = all). material: material name (str) or 0-based index (int); required for spatial correlation types.

getSupportPressureData(stage: int = 0) → SupportPressureData#

Return Support Pressure Diagram rows for all supports. Internally lists supports and fetches one support per RPC, then combines the results.

getSupportTensionData(stage: int = 0) → SupportTensionData#

Return Support Tension Diagram data for all bolts. Internally lists bolts and fetches one bolt per RPC, then combines the results.