Metadata-Version: 2.4
Name: RocSlope2Scripting
Version: 1.0.0
Summary: Client library for interacting with RocSlope2 through Python
Author: Rocscience
License-Expression: MIT
Project-URL: Homepage, https://www.rocscience.com/software/rocslope2
Project-URL: Documentation, https://rocscience.github.io/rocslope2_scripting/
Keywords: Rocscience,RocSlope2,Scripting,RocScript,Geotechnical,Slope Stability
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: License.txt
Requires-Dist: grpcio
Requires-Dist: protobuf<6.0
Requires-Dist: pandas>=2.2.3
Dynamic: license-file

## Introduction

This project is a library that can be used to interact with RocSlope2 through Python.

### Installation

```bash
pip install RocSlope2Scripting
```

RocSlope2 must be installed and open for the library to connect to it.

### Goal

Each function exposed corresponds to an equivalent operation you could have done through the UI.
Using this idea, the user should be able to edit models without having to go through the UI at all.

### Python UI equivalents

Events and workflows done in the UI will have equivalents in the Python library.
Wherever a dialog is shown in the UI, there will be an equivalent class with methods that mimic the dialog's behavior.
Wherever a warning or error dialog is displayed, an exception will be thrown, or a warning will be displayed in Python instead.
Wherever you can select and manipulate an entity, identifiers can be used in the library to get references to those entities in Python.

### How it works

Each function in the library is a wrapper to make an API call to the application.
Objects retrieved through function calls will often not contain any data themselves, but will instead be proxies, allowing you to get information from the objects in the application.

### Warnings

References can be *invalidated* whenever the corresponding object in the application is destroyed or reloaded. You will need to watch out for expired references and renew them when needed.

### Documentation

https://rocscience.github.io/rocslope2_scripting/
