Skip to main content

Polygen2D: Polygen in 2D with Python.

Project description

Polygen2D

standard-readme compliant

背景

在使用Python处理2D散点图时,发现当下Python库中对平面坐标系的少之又少,想要对点、线、多边形进行操作和判断实在不方便,Polygen2D应运而生,Polygen2D旨在解决2D平台下对散点的处理,将散点抽象为多边形等。

安装

这个项目基于Python3。请确保你本地安装的Python版本大于3。

$ pip install Polygen2D
$ # pip3 install Polygen2D # 如果使用的是pip3

示例

这里的参考程序通过Numpy生成了多边形数据点后生成对应的点、线和面来进行判断点是否在多边形内、计算点到线的距离。

from Polygen2D import Point, Line, Polygen
import numpy as np
x = np.array([0, 5, 5, 0])
y = np.array([0, 0, 5, 5])
points: [Point] = [] # 多边形点集
for i in range(len(x)):
  points.append(Point(x=x[i],y=y[i]))
polygen = Polygen(points) # 多边形初始化
test_point1 = Point(x=1, y=1)
test_point2 = Point(x=-1, y=-1)
test_point3 = Point(x=5, y=2)
test_line = Line(test_point1, test_point2)
print("test_point1 In Polygen?", polygen.contain(test_point1)) # 判断test_point1是否在多边形内
print("test_point2 In Polygen?", polygen.contain(test_point2)) # 判断test_point2是否在多边形内
print("the distance between test_point3 and test_line:", test_line.distance(test_point3)) # 点test_point3到线test_line的距离

更多

如果想要将散点图生成具体图像可以借助matplotlib来实现。

维护者

@Littleor

如何贡献

非常欢迎你的加入!提一个 Issue 或者提交一个 Pull Request。

标准 Readme 遵循 Contributor Covenant 行为规范。

使用许可

MIT © Littleor

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

Polygen2D-0.1.0.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

Polygen2D-0.1.0-py2.py3-none-any.whl (3.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file Polygen2D-0.1.0.tar.gz.

File metadata

  • Download URL: Polygen2D-0.1.0.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.6.5

File hashes

Hashes for Polygen2D-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c597ddaf83e94e309f2a21ea4f2419b475fc43528fb2aff8051badf39c838677
MD5 e6a03d2c81d82eb6b8e7a78e663ee31b
BLAKE2b-256 c0a05fbee03bda65db2915434da3d2519b9ace0ab6f8ffb8ab630b4ddce29f8b

See more details on using hashes here.

File details

Details for the file Polygen2D-0.1.0-py2.py3-none-any.whl.

File metadata

  • Download URL: Polygen2D-0.1.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 3.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.6.5

File hashes

Hashes for Polygen2D-0.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 98f0ee670a3dedeb8b440d661834273962956866e1d9b5f9bdf30fc7455e8e4b
MD5 3ba62dd10a7fa5bda6a539693e3d2b59
BLAKE2b-256 c8f57e4fbcbf975957292e7ce30ffe30c8f113549ae2b68404da63d25e80d6dc

See more details on using hashes here.

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