{"id":24497,"library":"quadrilateral-fitter","title":"QuadrilateralFitter","description":"QuadrilateralFitter is an efficient and easy-to-use Python library for fitting irregular quadrilaterals from irregular polygons or any noisy data. Current version is 1.12, released on PyPI. The library is actively maintained and provides a simple API to fit quadrilaterals to polygon data, often used in computer vision and geometry processing. Release cadence is irregular, with minor updates.","status":"active","version":"1.12","language":"python","source_language":"en","source_url":"https://github.com/Eric-Canas/quadrilateral-fitter","tags":["quadrilateral","fitting","polygon","computer-vision","geometry"],"install":[{"cmd":"pip install quadrilateral-fitter","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"The correct import uses underscore (quadrilateral_fitter) matching the package name.","wrong":"from quadrilateral_fitter import QuadrilateralFitter","symbol":"QuadrilateralFitter","correct":"from quadrilateral_fitter import QuadrilateralFitter"}],"quickstart":{"code":"from quadrilateral_fitter import QuadrilateralFitter\n\n# Example polygon: coordinates (x, y) list of points\npolygon = [(0, 0), (1, 0), (1, 1), (0.5, 1.5), (0, 1)]\n\n# Create fitter instance\nfitter = QuadrilateralFitter(polygon)\n\n# Fit the quadrilateral\nfitted_quad = fitter.fit()\n\n# Access fitted vertices\nprint(fitted_quad.vertices)","lang":"python","description":"Basic usage: fit a quadrilateral to a noisy polygon."},"warnings":[{"fix":"Ensure polygon is closed? Not required but points should be in order. For unordered points, the fit may produce unexpected results.","message":"Input polygon must be a list of (x, y) tuples or a numpy array with shape (N, 2). Order matters: vertices should be in sequential order around the polygon.","severity":"gotcha","affected_versions":"all"},{"fix":"Check documentation for any changes when upgrading.","message":"In version 1.x, the method 'fit' returns a 'Quadrilateral' object. In future versions, the API might change. Use the current pattern.","severity":"deprecated","affected_versions":"<=1.12"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run 'pip install quadrilateral-fitter' and use 'from quadrilateral_fitter import QuadrilateralFitter'.","cause":"Trying to import from the wrong module path or the package not installed correctly.","error":"ImportError: cannot import name 'QuadrilateralFitter' from 'quadrilateral_fitter'"},{"fix":"Provide the polygon as a list of coordinates: QuadrilateralFitter([(x1,y1), (x2,y2), ...])","cause":"QuadrilateralFitter requires the polygon argument at initialization.","error":"TypeError: __init__() missing 1 required positional argument: 'polygon'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}