https://github.com/cr1337/ellipse-fitter

https://github.com/cr1337/ellipse-fitter

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (4.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: CR1337
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 31.3 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme

README.md

EllipseFitter

This is a small tool to fit an ellipse to a polyline and then determine if any point lies inside or outside of this ellipse.

Setup

Clone this repository and cd into it. git clone https://github.com/CR1337/ellipse-fitter.git && cd ellipse-fitter

Create and activate a virtual environment. python3 -m venv .venv && source .venv/bin/activate

Install the requirements. pip3 install -r requirements.txt

Usage

```python from ellipse_fitter import EllipseFitter

This is a polyline approximating an ellipse, consisting of tuples of x- and y-values.

polyline = [(-1, -1), (1, -1), (1, 1), (-1, 1)]

Instantiate an EllipseFitter.

fitter = EllipseFitter(polyline)

Now you can check if a point is inside the ellipse.

isinside = fitter.containspoint(0, 0) assert is_inside == True

isinside = fitter.containspoint(10, 10) assert is_inside == False ```

Owner

  • Name: Christian Raue
  • Login: CR1337
  • Kind: user
  • Location: Berlin/Germany

Studying IT-Systems Engineering M.Sc. at Hasso-Plattner-Institute Potsdam

GitHub Events

Total
  • Public event: 1
Last Year
  • Public event: 1

Dependencies

requirements.txt pypi
  • Pygments ==2.18.0
  • asttokens ==2.4.1
  • comm ==0.2.2
  • contourpy ==1.3.0
  • cycler ==0.12.1
  • debugpy ==1.8.7
  • decorator ==5.1.1
  • exceptiongroup ==1.2.2
  • executing ==2.1.0
  • fonttools ==4.54.1
  • iniconfig ==2.0.0
  • ipykernel ==6.29.5
  • ipython ==8.29.0
  • jedi ==0.19.1
  • jupyter_client ==8.6.3
  • jupyter_core ==5.7.2
  • kiwisolver ==1.4.7
  • matplotlib ==3.9.2
  • matplotlib-inline ==0.1.7
  • nest-asyncio ==1.6.0
  • numpy ==2.1.3
  • packaging ==24.1
  • parso ==0.8.4
  • pexpect ==4.9.0
  • pillow ==11.0.0
  • platformdirs ==4.3.6
  • pluggy ==1.5.0
  • prompt_toolkit ==3.0.48
  • psutil ==6.1.0
  • ptyprocess ==0.7.0
  • pure_eval ==0.2.3
  • pyparsing ==3.2.0
  • python-dateutil ==2.9.0.post0
  • pyzmq ==26.2.0
  • scipy ==1.14.1
  • six ==1.16.0
  • stack-data ==0.6.3
  • tomli ==2.0.2
  • tornado ==6.4.1
  • traitlets ==5.14.3
  • typing_extensions ==4.12.2
  • wcwidth ==0.2.13