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.2.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

Polygen2D-0.1.2-py2.py3-none-any.whl (5.7 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: Polygen2D-0.1.2.tar.gz
  • Upload date:
  • Size: 6.0 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.2.tar.gz
Algorithm Hash digest
SHA256 46aa66b325362d1c6c7293314442fb871d64b23492c82593e98d808025c22938
MD5 3672c3f4d2d976c4662e3191fc0e218c
BLAKE2b-256 f88e4e9c574af1cd0820e7f5e29703aa99c69f351f5bf52f5753c7d0d756a1e2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: Polygen2D-0.1.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.7 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.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1f3ddf19f7f8b609eb60bd35794368674fb24b96cb7d7ee65e8e66e82d673844
MD5 e4a460f61902d78a071e8a9b657862fa
BLAKE2b-256 95e8645184fd02f95dc88630e20c596f54cfc7b53e4f1db2de1309d4cdc19805

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