Metadata-Version: 2.1
Name: ros-pointcloud-recorder
Version: 0.1.0
Summary: ROS Point Cloud Recorder and Exporter
Home-page: https://github.com/Knighthood2001/ros-pointcloud-recorder
Author: knighthood2001
Author-email: 2109695291@qq.com
License: MIT
Keywords: ros pointcloud recorder pcl rosbag lidar
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development
Description-Content-Type: text/markdown
Requires-Dist: numpy (>=1.18.0)
Requires-Dist: pcl-ros
Requires-Dist: rosbag
Requires-Dist: rospy
Requires-Dist: sensor-msgs
Requires-Dist: setuptools (>=45.0.0)
Provides-Extra: dev
Requires-Dist: flake8 ; extra == 'dev'
Requires-Dist: pytest ; extra == 'dev'

# ROS PointCloud Recorder

一个简单的Python库，用于录制ROS点云话题并导出为PCD文件。

## 安装

```bash
pip install ros-pointcloud-recorder
```
## 快速开始

```python
from ros_pointcloud_recorder import PointCloudRecorder
```
# 创建录制器
```python
recorder = PointCloudRecorder(
    topics=['/points_raw1', '/points_raw2'],
    output_dir='./data',
    recording_duration=2.0
)

# 执行录制并导出
pcd_paths = recorder.record_and_export()

print("导出完成:")
for topic, path in pcd_paths.items():
    print(f"{topic} -> {path}")
```

## 高级功能

- 自定义导出路径
- 单独控制录制和导出流程
- 自定义日志配置
- 保留中间bag文件

详细用法请参考[示例代码](examples/)。

## 依赖

- ROS (必须安装`rosbag`和`pcl_ros`)
- Python 3.6+


## 设计要点

1. **模块化设计**：将功能分解为可独立调用的方法
2. **灵活性**：支持自定义路径、录制时长等参数
3. **健壮性**：完善的错误处理和日志记录
4. **易用性**：提供简单的一键录制导出方法
5. **可扩展性**：设计良好的API便于未来扩展功能

通过这种封装，用户只需简单的几行代码就可以实现点云录制功能，同时保留了高级用户需要的灵活性。

