semvec/pypi-packages huggingface dataset:
krovak05 0.0.9
geodetic package for transformation ETRS coordinates to S-JTSK

# krovak05

Geodetic package for transformation ETRS89 (ETRF2000) coordinates to S-JTSK (Czech national coordinate system)
and heights to Bpv system (Baltic vertical datum After Adjustment).

## Installation

Run the following to install:

```python
pip install krovak05
```

## Methods

- _get_available_diff_tables()_ -> table_names - List[str]
- _interpolate_dydx(Y,X)_ -> dy, dx - float,float
- _interpolate_undulation(B,L)_ -> undulation - float
- _bicubic_dotr(Y,X)_ -> dy,dx - float, float
- _etrs_jtsk05(B,L,H)_ -> Y_jtsk05,X_jtsk05,H_bpv - float, float, float
- _etrs_jtsk(B,L,H)_ -> Y_jtsk,X_jtsk,H_bpv - float, float, float
- _jtsk05_jtsk(Y_jtsk05,X_jtsk05)_ -> Y_jtsk,X_jtsk - float, float
- _jtsk_jtsk05(Y_jtsk,X_jtsk)_ -> Y_jtsk05,X_jtsk05 - float, float
- _jtsk_etrs(self,Y,X,H)_ -> B,L,H - float, float

## Usage

```python
import krovak05

krovak = krovak05.Transformation()

## Undulation of kvasigeoid
undulation = krovak.interpolate_undulation(50, 15)
print(undulation)
# --> 44.438

## Differences between S-JTSK and S-JTSK/05
dy, dx = krovak.interpolate_dydx(750000, 1050000)
print(dy, dx)
# --> 0.072 -0.037

## Get list of possible dydx grid data
grids = krovak.get_available_diff_tables()
print(grids)
# --> ['table_yx_3_v1710', 'table_yx_3_v1202', 'table_yx_3_v1005']

## Transform ETRS89 (ETRF2000) coordinates to S-JTSK/05
B_etrs_in = 50
L_etrs_in = 15
H_etrs_in = 100

Y_sjtsk05, X_sjtsk05, H_bpv = krovak.etrs_jtsk05(
    B_etrs_in, L_etrs_in, H_etrs_in)
print(Y_sjtsk05, X_sjtsk05, H_bpv)
# --> 5703011.866856858 6058147.235673166 55.562

## Transform ETRS89 (ETRF2000) coordinates to S-JTSK
Y_sjtsk, X_sjtsk, H_bpv = krovak.etrs_jtsk(B_etrs_in, L_etrs_in, H_etrs_in)
print(Y_sjtsk, X_sjtsk, H_bpv)
# --> 703011.8997768582 1058147.294883166 55.562

## Reverse transformation S-JTSK coordinate to ETRS89
B_etrs_out, L_etrs_out, H_etrs_out = krovak.jtsk_etrs(
    Y_sjtsk, X_sjtsk, H_bpv)
print(B_etrs_out, L_etrs_out, H_etrs_out)
# --> 50.00000000579285 15.000000005855975 100.0

print("Differences:")
print(f"dB = {(B_etrs_in-B_etrs_out)*(math.pi/180)*6378000*1000} mm")
print(f"dL = {(B_etrs_in-B_etrs_out)*(math.pi/180)*(6378000*math.cos(B_etrs_in*(math.pi/180)))*1000} mm")
print(f"dH = {(H_etrs_in-H_etrs_out)*1000} mm")
# --> dB = -0.64 mm
# --> dL = -0.41 mm
# --> dH = 0.0 mm
```

### Set different grid table:

```python
krovak = krovak05.Transformation("table_yx_3_v1005")
```

# TODO

- Better documentation
- Rewrite to more time efficient code - constants, less calculation of goniometric functions

# Data validation

validation of data accuracy was performed using of the [CUZK transformation service](<https://geoportal.cuzk.cz/(S(idlg1tno0nodmoby14poaa1d))/Default.aspx?mode=TextMeta&text=wcts&menu=19>)

---

[Repository](https://github.com/SteveeH/krovak05)
fuwa-gateway 1.0.2a0
The gateway implementation for the fuwa eco-system
Requires Python: >=3.8.0

# Fuwa Gateway

The gateway implementation for the fuwa eco-system

### Example
```py
import asyncio
import logging

from fuwa.gateway.connection import GatewayConnection
from fuwa.gateway.intents import IntentsFlags


logging.basicConfig(level=logging.INFO)
intents = IntentsFlags(
    guilds=True,
    guild_messages=True
)

async def launch():
    connection = GatewayConnection(
        "Your Bot Token Here",
        intents
    )

    await connection.open_connection("wss://gateway.discord.gg/") # you would preferrably
    # get this gateway url with fuwa-http

    async def my_event_handler(event_data: dict):
        content = event_data["content"]
        print(content)

    connection.add_event_handler("MESSAGE_CREATE", my_event_handler)

loop = asyncio.get_event_loop()
loop.run_until_complete(launch())
loop.run_forever()
```

You may think this is quite over the top for a gateway handler, however keep in mind, you are looking at the raw gateway library. If you wanted to, you could just use the Fuwa Gateway, however most of the time, you would use one of the other Fuwa packages along side this, such as the `command_framework`. Most of the packages will link into Fuwa Gateway, meaning you won't usually have to create your own event handlers. Also, the soon to come `bundler`, will assist you in creating Fuwa Bots.

### Install
```bash
pip install fuwa[gateway]
```
build-compiler 0.1.2
build (build-compiler) is a simple build System for C & C++
Requires Python: >=3.7

# build - Simple build System for C & C++
**You need a simple build system for C or C++? Try build!**

# What is build?
build is a build system for C and C++. It can be easily installed via pip: `pip install build-compiler`

#  How to install build?
As mentioned, with pip. See above

# How does the Build Compiler work?
To compile successfully with Build, you need a Makefile (Our is `make.py`)
Offical Example:
```py
from build.compiler import create_executeable

class Config:
    sources = "main.c var.h print.c print.h"
    output = "hello"
    compiler = "gcc"
    flags = "-Wall"
    if flags == "":
        flags = "None"

create_executeable(Config.compiler, Config.sources, Config.output, Config.flags)
```
sup3 3
Setup Utility for Python 3 - Create Installers easily for you Open Source Project!
Requires Python: >=3.7

# sup3
Setup Utility for Python 3 - Create Installers easily for you Open Source Project!

# What is sup3?
sup3 is a Python 3 framework to easily create an installer for your open source project!

# How to install sup3?
As always, just run `pip install sup3`

# How can I create an Installer?
We have programmed a simple example. This will download SecureCloud from GitHub releases, and extract them. 
```python
from sup3.installer import create_directory, do_install, extract, wait_after_installation, finish_installation

create_directory("C:\SecureCloud")
do_install("https://github.com/Strawberry-Software-Industries/SecureCloud/releases/download/v1.3/SecureCloud-Server_1.3-LTS_Win64-bin.7z", "C:\SecureCloud", "SecureCloud-Server_1.3-LTS_Win64-bin.7z")
extract("C:\SecureCloud\SecureCloud-Server_1.3-LTS_Win64-bin.7z", "C:\SecureCloud")
finish_installation()
wait_after_installation()
```