Skip to main content

Experimental Tapir utility for supercharging Archicad automation.

Project description

Perisso

Short for "perissodactyla" /pəˌrɪsoʊˈdæktɪlə/ – the zoological order Tapiridae reside in. It's an experimental Tapir utility.

Overview

Tapir provides a collection of tooling to assist the usage of the JSON API of Archicad.
Perisso is a Python package based on this fantastic work and aims to make it even easier to interact with and manipulate digital architectural model elements, by employing a fluent interface. This includes offering an efficient way to filter elements based on various criteria.

Installation

  1. Make sure you have the Tapir plugin for Archicad installed.
  2. Install perisso.
    My recommendation: Always use uv. Use it for everything.
uv venv
uv pip install perisso

Alternatively, you just download the source files. Oldschool.

[!WARNING]
Perisso is under development. Please expect breaking changes between versions.

Usage

The simplest way is to just call perisso(). This will select all elements by default. To limit the elements to the current selection in Archicad use the selection parameter:

sel_elem = perisso(selection=True)

Here is a basic example of how to use perisso:

from perisso import perisso, Filter, ElType

elements = perisso()
filtered_elements = elements.filterBy(Filter.ELEMENT_TYPE).equals(ElType.COLUMN).get()
print(filtered_elements)

[!CAUTION] The resulting element list is compatible with Tapir, but not with the native Archicad-Python connection.
For that you need to call the toNative() function on the perisso collection. The result uses the classes of the AC-Py connection and can then be fed into it.

See the examples for more.

[!NOTE]
If a filter does not apply the element concerned is silently removed (not included in the result, that is). Example: A Property is not used on it.

Contributing

Please open an issue or submit a pull request for any enhancements or bug fixes. Contributions are welcome, but might not be accepted until perisso reached a somewhat stable state.

License

Perisso is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

perisso-0.4.1.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

perisso-0.4.1-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file perisso-0.4.1.tar.gz.

File metadata

  • Download URL: perisso-0.4.1.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for perisso-0.4.1.tar.gz
Algorithm Hash digest
SHA256 9c103ef5c9a0e5f2ee034440dcf7ac8310fb5ba2f0a2a122776aea34505f033d
MD5 548a64253f879c328373961d0dcdff44
BLAKE2b-256 c7dc7179bfb21d5673f097267a751465e5c0363a6006577a061fc85a4cfdc7ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for perisso-0.4.1.tar.gz:

Publisher: release.yml on runxel/perisso

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file perisso-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: perisso-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for perisso-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 992036975ff5bde14403bf5bc59d5207900d2b699c0e5bde1225ff6b506209f6
MD5 f54fea86279c62dcd96aa9b45fd9e8c1
BLAKE2b-256 5d094132dfc6d20303d571cf59287ad0621cc7c201108b3183de8327c82120e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for perisso-0.4.1-py3-none-any.whl:

Publisher: release.yml on runxel/perisso

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page