---
id: plyfile
version: "1.1.5"
license: GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license… (full text in the JSON record)
license_treatment: copyleft
maintenance: active
---
# plyfile — PLY file reader/writer
License: copyleft · Maintenance: active · Downloads: 1.1M/mo
## What it is and what it does
plyfile is a Python library for reading and writing PLY (Polygon File Format) files in both ASCII and binary forms. PLY is a standard format for storing 3D geometry data—vertices, faces, edges, and custom properties—commonly used in computer graphics, 3D scanning, and computational geometry workflows. The library wraps numpy arrays to represent mesh elements, making it straightforward to load PLY data into scientific Python pipelines or export computed geometry back to PLY format.
The package is actively maintained, supports modern Python versions (3.10–3.14), and depends only on numpy. It is licensed under GPLv3+, which means any code that modifies or redistributes plyfile must also be open-source under a compatible license. The library is stable (Production/Stable status) and has been in use since 2015, with a recent release cycle indicating ongoing support.
Use it for:
- Load 3D point clouds from LiDAR or photogrammetry scans stored as PLY files for analysis or visualization.
- Export mesh geometry computed by a 3D modeling or CAD algorithm back to PLY format for external tools.
- Batch convert PLY files between ASCII and binary formats to optimize storage or transmission.
- Extract and manipulate vertex attributes (position, color, normal, etc.) from PLY data using numpy operations.
- Integrate PLY I/O into scientific visualization or computational geometry pipelines.
## Worth the install?
AI-flagged interpretation of the facts above — verify before relying.
plyfile reads and writes ASCII and binary PLY (Polygon File Format) files, commonly used for 3D mesh and point cloud data.
Yes. plyfile is a straightforward, well-maintained library for a specific and widely-used file format. Low install friction, no security issues, and active development make it a safe choice for projects needing PLY support. The GPLv3+ license is a constraint only if you need to distribute proprietary software; for internal or open-source use, it poses no barrier.
## Install
pip install plyfile
uv add plyfile
poetry add plyfile
## Installing plyfile
Before you install: Installs with low friction—a pure Python wheel with only numpy as a runtime dependency. Actively maintained with a recent release (17 days old) and no known vulnerabilities.
License in practice: Released under GPLv3+, a copyleft license. Any derivative work or modification must also be licensed under GPLv3+; proprietary applications cannot incorporate plyfile as a library without adopting the same license.
Quickstart:
pip install plyfile
from plyfile import PlyData
ply_data = PlyData.read('model.ply')
vertices = ply_data['vertex'].data
Requires Python 3.10 or later.
Verify before relying:
- Whether the package handles malformed or truncated PLY files gracefully or with specific error modes.
- Performance characteristics on large PLY files (e.g., multi-gigabyte point clouds).
- Whether binary format support includes all PLY-specified data types and endianness variants.
## Package facts
- License: GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license… (full text in the JSON record) (copyleft)
- Python support: supports_current
- Install friction: low
- Maintenance: active
- Downloads: 1.1M/month (top 5,000 on PyPI)
- Known vulnerabilities: none known
## Tags
ply file reader writer, polygon file format python, 3d mesh file io, point cloud ply parser, ascii binary ply support, mesh data serialization, 3d geometry file handling, 3d-graphics, file-format, mesh-data
[View on SkillFed](https://skillfed.io/packages/plyfile) · [View on PyPI](https://pypi.org/project/plyfile/)