Skip to main content

Cython wrapper for the C++ translation of the Angus Johnson's Clipper library (ver. 6.4.2)

Project description

About

https://badge.fury.io/py/pyclipper.svg https://travis-ci.org/greginvm/pyclipper.svg?branch=master https://ci.appveyor.com/api/projects/status/8w19hrxjoohu489c/branch/master?svg=true

Pyclipper is a Cython wrapper exposing public functions and classes of the C++ translation of the Angus Johnson’s Clipper library (ver. 6.4.2).

Pyclipper releases were tested with Python 2.7 and 3.4 on Linux (Ubuntu 14.04, x64) and Windows (8.1, x64).

Source code is available on GitHub. The package is published on PyPI.

About Clipper

Clipper - an open source freeware library for clipping and offsetting lines and polygons.

The Clipper library performs line & polygon clipping - intersection, union, difference & exclusive-or, and line & polygon offsetting. The library is based on Vatti’s clipping algorithm.

Angus Johnson’s Clipper library

Install

Dependencies

Cython dependency is optional. Cpp sources generated with Cython are available in releases.

Note on using the setup.py:

setup.py operates in 2 modes that are based on the presence of the dev file in the root of the project.

  • When dev is present, Cython will be used to compile the .pyx sources. This is the development mode (as you get it in the git repository).

  • When dev is absent, C/C++ compiler will be used to compile the .cpp sources (that were prepared in in the development mode). This is the distribution mode (as you get it on PyPI).

This way the package can be used without or with an incompatible version of Cython.

The idea comes from Matt Shannon’s bandmat library.

From PyPI

Cython not required.

pip install pyclipper

From source

Cython required.

Clone the repository:

git clone git@github.com:greginvm/pyclipper.git

Install:

python setup.py install

After every modification of .pyx files compile with Cython:

python setup.py build_ext --inplace

Clippers’ preprocessor directives

Clipper can be compiled with the following preprocessor directives: use_int32, use_xyz, use_lines and use_deprecated. Among these the use_int32 and use_lines can be used with Pyclipper.

  • use_int32 - when enabled 32bit ints are used instead of 64bit ints. This improve performance but coordinate values are limited to the range +/- 46340. In Pyclipper this directive is disabled by default.

  • use_lines - enables line clipping. Adds a very minor cost to performance. In Pyclipper this directive is enabled by default (since version 0.9.2b0).

In case you would want to change these settings, clone this repository and change the define_macros collection (setup.py, pyclipper extension definition). Add a set like ('use_int32', 1) to enable the directive, or remove the set to disable it. After that you need to rebuild the package.

How to use

This wrapper library tries to follow naming conventions of the original library.

  • ClipperLib namespace is represented by the pyclipper module,

  • classes Clipper and ClipperOffset -> Pyclipper and PyclipperOffset,

  • when Clipper is overloading functions with different number of parameters or different types (eg. Clipper.Execute, one function fills a list of paths the other PolyTree) that becomes Pyclipper.Execute and Pyclipper.Execute2.

Basic clipping example (based on Angus Johnson’s Clipper library):

import pyclipper

subj = (
    ((180, 200), (260, 200), (260, 150), (180, 150)),
    ((215, 160), (230, 190), (200, 190))
)
clip = ((190, 210), (240, 210), (240, 130), (190, 130))

pc = pyclipper.Pyclipper()
pc.AddPath(clip, pyclipper.PT_CLIP, True)
pc.AddPaths(subj, pyclipper.PT_SUBJECT, True)

solution = pc.Execute(pyclipper.CT_INTERSECTION, pyclipper.PFT_EVENODD, pyclipper.PFT_EVENODD)

# solution (a list of paths): [[[240, 200], [190, 200], [190, 150], [240, 150]], [[200, 190], [230, 190], [215, 160]]]

Basic offset example:

import pyclipper

subj = ((180, 200), (260, 200), (260, 150), (180, 150))

pco = pyclipper.PyclipperOffset()
pco.AddPath(subj, pyclipper.JT_ROUND, pyclipper.ET_CLOSEDPOLYGON)

solution = pco.Execute(-7.0)

# solution (a list of paths): [[[253, 193], [187, 193], [187, 157], [253, 157]]]

The Clipper library uses integers instead of floating point values to preserve numerical robustness. If you need to scale coordinates of your polygons, this library provides helper functions scale_to_clipper() and scale_from_clipper() to achieve that.

Migrating from Pyclipper 0.9.3b0

In previous version of Pyclipper (0.9.3b0) polygons could be automatically scaled using the SCALING_FACTOR variable. This was removed in version 1.0.0 due to inexact conversions related to floating point operations. This way the library now provides the original numerical robustness of the base library.

The SCALING_FACTOR removal breaks backward compatibility. For an explanation and help with migration, see https://github.com/greginvm/pyclipper/wiki/Deprecating-SCALING_FACTOR.

Authors

  • The Clipper library is written by Angus Johnson,

  • This wrapper was initially written by Maxime Chalton,

  • Adaptions to make it work with version 5 written by Lukas Treyer,

  • Adaptions to make it work with version 6.2.1 and PyPI package written by Gregor Ratajc,

  • SCALING_FACTOR removal and additions to documentation by Michael Schwarz (@Feuermurmel),

  • Bug fix sympy.Zero is not a collection by Jamie Bull (@jamiebull1),

  • Travis CI and Appveyor CI integration for continuous builds of wheel packages by Cosimo Lupo (@anthrotype).

The package is maintained by Gregor Ratajc.

License

  • Pyclipper is available under MIT license.

  • The core Clipper library is available under Boost Software License. Freeware for both open source and commercial applications.

Changelog

1.1.0

  • Updated embedded Clipper library to version 6.4.2.

1.0.6

  • Added support for Python 3.6.

1.0.3

  • added Travis CI and Appveyor CI to build wheel packages (thanks to @anthrotype)

1.0.2

  • bug fix: sympy.Zero recognized as a collection (thanks to @jamiebull1)

1.0.0

  • (breaks backwards compatibility) removes SCALING_FACTOR (thanks to @Feuermurmel)

0.9.3b0

  • Applied SCALING_FACTOR to the relevant function parameters and class properties

  • Refactored tests

0.9.2b1

  • bug fix: Fix setting of the PyPolyNode.IsHole property

0.9.2b0

  • enable preprocessor directive use_lines by default,

  • bug fix: PyPolyNode.Contour that is now one path and not a list of paths as it was previously.

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

pyclipper-1.1.0.post1.zip (135.2 kB view details)

Uploaded Source

Built Distributions

pyclipper-1.1.0.post1-cp37-cp37m-win_amd64.whl (103.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

pyclipper-1.1.0.post1-cp37-cp37m-win32.whl (90.1 kB view details)

Uploaded CPython 3.7m Windows x86

pyclipper-1.1.0.post1-cp37-cp37m-manylinux1_x86_64.whl (129.2 kB view details)

Uploaded CPython 3.7m

pyclipper-1.1.0.post1-cp37-cp37m-manylinux1_i686.whl (130.5 kB view details)

Uploaded CPython 3.7m

pyclipper-1.1.0.post1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (275.6 kB view details)

Uploaded CPython 3.7m macOS 10.10+ intel macOS 10.10+ x86-64 macOS 10.6+ intel macOS 10.9+ intel macOS 10.9+ x86-64

pyclipper-1.1.0.post1-cp36-cp36m-win_amd64.whl (103.4 kB view details)

Uploaded CPython 3.6m Windows x86-64

pyclipper-1.1.0.post1-cp36-cp36m-win32.whl (90.2 kB view details)

Uploaded CPython 3.6m Windows x86

pyclipper-1.1.0.post1-cp36-cp36m-manylinux1_x86_64.whl (129.3 kB view details)

Uploaded CPython 3.6m

pyclipper-1.1.0.post1-cp36-cp36m-manylinux1_i686.whl (130.7 kB view details)

Uploaded CPython 3.6m

pyclipper-1.1.0.post1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (276.1 kB view details)

Uploaded CPython 3.6m macOS 10.10+ intel macOS 10.10+ x86-64 macOS 10.6+ intel macOS 10.9+ intel macOS 10.9+ x86-64

pyclipper-1.1.0.post1-cp35-cp35m-win_amd64.whl (103.7 kB view details)

Uploaded CPython 3.5m Windows x86-64

pyclipper-1.1.0.post1-cp35-cp35m-win32.whl (90.1 kB view details)

Uploaded CPython 3.5m Windows x86

pyclipper-1.1.0.post1-cp35-cp35m-manylinux1_x86_64.whl (129.2 kB view details)

Uploaded CPython 3.5m

pyclipper-1.1.0.post1-cp35-cp35m-manylinux1_i686.whl (130.3 kB view details)

Uploaded CPython 3.5m

pyclipper-1.1.0.post1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (276.8 kB view details)

Uploaded CPython 3.5m macOS 10.10+ intel macOS 10.10+ x86-64 macOS 10.6+ intel macOS 10.9+ intel macOS 10.9+ x86-64

pyclipper-1.1.0.post1-cp34-cp34m-win_amd64.whl (104.6 kB view details)

Uploaded CPython 3.4m Windows x86-64

pyclipper-1.1.0.post1-cp34-cp34m-win32.whl (91.6 kB view details)

Uploaded CPython 3.4m Windows x86

pyclipper-1.1.0.post1-cp34-cp34m-manylinux1_x86_64.whl (129.0 kB view details)

Uploaded CPython 3.4m

pyclipper-1.1.0.post1-cp34-cp34m-manylinux1_i686.whl (129.4 kB view details)

Uploaded CPython 3.4m

pyclipper-1.1.0.post1-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (277.3 kB view details)

Uploaded CPython 3.4m macOS 10.10+ intel macOS 10.10+ x86-64 macOS 10.6+ intel macOS 10.9+ intel macOS 10.9+ x86-64

pyclipper-1.1.0.post1-cp27-cp27mu-manylinux1_x86_64.whl (128.2 kB view details)

Uploaded CPython 2.7mu

pyclipper-1.1.0.post1-cp27-cp27mu-manylinux1_i686.whl (129.8 kB view details)

Uploaded CPython 2.7mu

pyclipper-1.1.0.post1-cp27-cp27m-win_amd64.whl (114.1 kB view details)

Uploaded CPython 2.7m Windows x86-64

pyclipper-1.1.0.post1-cp27-cp27m-win32.whl (94.7 kB view details)

Uploaded CPython 2.7m Windows x86

pyclipper-1.1.0.post1-cp27-cp27m-manylinux1_x86_64.whl (128.2 kB view details)

Uploaded CPython 2.7m

pyclipper-1.1.0.post1-cp27-cp27m-manylinux1_i686.whl (129.8 kB view details)

Uploaded CPython 2.7m

pyclipper-1.1.0.post1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (277.3 kB view details)

Uploaded CPython 2.7m macOS 10.10+ intel macOS 10.10+ x86-64 macOS 10.6+ intel macOS 10.9+ intel macOS 10.9+ x86-64

File details

Details for the file pyclipper-1.1.0.post1.zip.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1.zip
Algorithm Hash digest
SHA256 8a8b6018d53fcce291f78dedca19994f82695eed3a2c9eff275691d4ed9aab51
MD5 d996b63cc87374589da828033c9e6fe0
BLAKE2b-256 20a3a60a7bad5246d66f3c54127b34b90e6d34b2cc006b84135bfcbfee4514b1

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 de693b6da86fbb69bf224bc89abfe479df205e827e20b4a431b03e37b2b5ee34
MD5 50810de529142673f8bc45ea0212490c
BLAKE2b-256 125fb9061fa186071624433b1383517fe6c068ff2fc2706db070f3088f4221be

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp37-cp37m-win32.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 4c4e9a643f6866f1ea4361b83a6a5c6a0d64e6a391a286e79b7f0844c2ae3c2a
MD5 0aaf4a8ab70d4fbdfbf80811555975c3
BLAKE2b-256 36c86d2e80c1c8e4a50da07ccb5e30bed181afe8e3f7cd7d60cfbe9327e7c6da

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 e17d8d1adc834112ee8b092661da6231f7cfba9700297069c6b5bce71c07b9b4
MD5 60c228b01eb5db508fd6583fb90c8f0c
BLAKE2b-256 a2ee581787141515af4d13b10a8de253dd8b5aee4d580b40c0b7e658f13fee6d

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp37-cp37m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp37-cp37m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 888e04d29717e9c47336c814094bd9523b3ec9ed371ce91dfa60636aae1de6f6
MD5 b30df724efedab6158bb3b01b33addbb
BLAKE2b-256 daf4949f1fb50b1c5c60a4647ea1bd05fc12c2e633b9f85e3e8837712f2fb5f9

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 d6a2186a8a85121ee2732bd28c2243dd0451d8095d5e8426351b845fa409b974
MD5 b6491af1bda816b69065dd54fc9ab563
BLAKE2b-256 a02f6a75e90bfb924118bd65cc16ccd23df53db697f0df7a4dfa79c6d64913fe

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 6aa4bce5111e0bd2c50d452d940ddd87ef6c2632b2da6952fe2dec4f5e103173
MD5 5dc436d98125c26b4e205c9b1d86646b
BLAKE2b-256 c2a9f8081ab6264f834887327d3f449c24a9e9b65efa2ce7b12e2ab1e2bdc954

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 acfbfe2a3e236a474100393661291681419ec89e74fb6a51db5325ddd280ab9a
MD5 e70d6741cd1737a5b2538014456b9825
BLAKE2b-256 718c32347bdb8210fac721ea1469cc645fc8705ee0ef746fed44e1236c85355c

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 c0fb993da9ef2ce62a9f62dcb14fff16f90bae57c073d8d4187072490eb41a68
MD5 5592435e57791718ff9e00488ba1725a
BLAKE2b-256 40672691f7cbb28fb9dbf423f2302fe489f9cee34d9a50a743c95032a24ac597

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp36-cp36m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 7ecf2cc782ab3e3d33120aa3fc9da1bfd72155c6ad2ee358d14b81865dda2d65
MD5 a673dd2b27dd654d49a23d9854e54310
BLAKE2b-256 87f66fda58869c2fb068bd04fb5b710b3bc43a515c61284cf32511b163d3a867

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 8bb79a30fd6078e589b39c164acd969d3f5f942a566b7e951c941f6d5c7106fe
MD5 5e3e91e07c8610d05fc79766b7cd17c0
BLAKE2b-256 f4214c13db060c2e44ab0d17973d8188ccc42c28f358659d9bc39eddf987db96

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 8f8ff492926c2d865bc58121bc15438e8698d8a9b7751b67892ef3516838d462
MD5 9d9372f50bfaf76d35f9d3bec1eac464
BLAKE2b-256 d0ce41cb8414587e2702a5ceb7b30e5ebd3f0857c8a539565eb4c3a20f90e2b9

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 ba98f5472d6066386367a3e8d44c327b5438e746a7faf356e6b116338fe6492e
MD5 425d5afa3ad2792dc41d889e31f26113
BLAKE2b-256 1269b44f874cd92fd59faf0a57f8a28a5978059a76d78b3a22fce0cc4e7445c7

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 747bfd3e219d5f2c45e50d874ea6da4ae746b3a4601f28566fd29a6ab0966a7a
MD5 f15890569abb14960a54165e1614505f
BLAKE2b-256 7c24b084410bdc8f0a7fdfe80791243b95053c7b13f77984739a901f96335174

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp35-cp35m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp35-cp35m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 0b37d39bd9d4f330918de20c169e7d74108217a752533ec6ac54c6a8825adcec
MD5 7367a51121449d1563cf543017333718
BLAKE2b-256 c2012310e8bc0be053e2790f14ecea2d53d8d50bff1dcc3f8384370aa34c174c

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 bb89da8a321a9662330f18c1f8a88dd44966160e7a9e25c86ca16fbc1be31c0d
MD5 b126856ff995189711f89094c83e3d0c
BLAKE2b-256 21aa969e0be05df8a92449a6e1fae0c1de186447c5be145f0c6de71187b4780f

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 78ebe32ccb6807bc8eac652ec9a7875dfa229e947b686a107acaf69259da3d8d
MD5 68371a79fce6c6b7b734e158eebf9a66
BLAKE2b-256 53df09eb6b0c93da059855a3376e4949c5f2d5e3bb0bca3bb80e0faa6bb94600

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 f5e003f9ec3ced16691b7b0dbee39318aba3787ba85d01ef1f6627592c3ff75d
MD5 eeed96a128c4aaebc36d694aa9b54ccd
BLAKE2b-256 b05129ffe974b8827ab7f08e5ea1f251393dd4597b91b5519890623cdaa86148

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 623ab16641e4e408359420d615c6a395cb3da23a559a20e57402bebb216bd125
MD5 758d8055a48b6b3d8bc6099b325dd50d
BLAKE2b-256 743613364bbce83605c29ed2aaefd187e8f780ffe9fd200bf17f4ebe86198e3a

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp34-cp34m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp34-cp34m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 0d99acc5618faf8772164a3a067c1d1abd4513cf66b7b7a8d7adaa150a18376d
MD5 e513ffb4fc43a2dbea1e4f79a06e9b0e
BLAKE2b-256 77990bbf2dbd3270295f0e9aeb2bdd621b0669310426e450698cbac4034288fa

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 f064528ffb7486b1b2b21f833c729a63e5331e2e6073dfbc73b1d5e96a4d00a2
MD5 189aabde4fca1388a2c50c15612461c8
BLAKE2b-256 d8810cc5006d3c6bfca419f72a6eaf2a6c20346d63162096e529f10430dc67cc

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 db6d0580bac8a642a31b0e07f220d3c94fe2dda39f559abc2d12713bff7dd3d0
MD5 cc02c8c36c2b4d1b0798d468bea05c3d
BLAKE2b-256 61c1a3d27aee0a67e962ff3c5d830c3a435ca686404b941ee2cb8211e59635c1

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27mu-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27mu-manylinux1_i686.whl
Algorithm Hash digest
SHA256 bed37f2d2517e18976aa24477cce319fd48efa8fbafe9407101c599ba4a2b481
MD5 a606b2c5e6deeaa24ea7f23920276632
BLAKE2b-256 984a174900e0890e0b8b4356d345f8a29939921cc1db86f9c575ef3ec22037f7

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 b03d1dcac192412a1f7125500dcd09baa0ccf9c27f1300870e80981907197583
MD5 a6b8a5d41de0df3a592fea69353984e9
BLAKE2b-256 f947f9e060ad8c5472a6d120bdeb8524af8d9b95b26a858ce9e6505b873f2d9a

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 abfb4c65937494bb5a3bb5fb3cf44cdb33ac88805effcd702afdb0d7bfb1803f
MD5 49eb34bef5e72d30481029c0649879d2
BLAKE2b-256 c6fbfbaa251fe059b7bb08607a4f1db2a3183ad4fd084bac223de014950fc393

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 567947b8e31de852be32941872a72e843e679af8cf0826108be0a4c6108792a3
MD5 9186f33217f2ef16d3f0471d2f5e8796
BLAKE2b-256 ea933d3ceb0cacbde9e28cfc6ed5067ee69752ba92d5594e9036b0c6866ac797

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 c964d5808aa5e44aae9500e70d3f08d5191edf6a355e183d8c6fb8f43dde77ad
MD5 4a41bd606c153523840c0be3e843c279
BLAKE2b-256 3efb16708090d02c9b3b27c9266e35e7c0a4f971432e533d39a53cd56fb12e19

See more details on using hashes here.

Provenance

File details

Details for the file pyclipper-1.1.0.post1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for pyclipper-1.1.0.post1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 fae29ba16ec075794c50242005be07fc3d5615b0cf3a86e2b60c1123446b574c
MD5 b3a06288e3e9feb28b815ee67a5d1d73
BLAKE2b-256 4fac44fd766b10ef1c7c059e745d1400d61d26e50e5f5582c5bb3a58267fd423

See more details on using hashes here.

Provenance

Supported by

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