space-optimiser
收藏space-optimiser API 数据集概述
基本信息
- API名称: space-optimiser
- 类别: Logistics
- 提供商: kasyap dharanikota
- 订阅模式: Freemium
- 当前版本: 1.1.0
- 服务等级: 100%
- 延迟: 254ms
定价计划
- BASIC: $0.00 / 月
- PRO: $4.00 / 月
API 概述
此 API 解决三维装箱问题,能够将各种尺寸的物品高效地装入容器(箱子)中,同时最小化空间浪费。适用于物流、仓库管理、运输优化和库存规划。
核心功能
- 智能打包算法: 使用先进启发式算法(首次适应递减法、Guillotine 启发式)最大化空间利用率。
- 多箱支持: 尝试不同的箱子尺寸并自动选择最佳匹配。
- 3D可视化: 获取打包结果的交互式 3D 视图。
- 旋转支持: 物品可在所有 6 个方向旋转以获得最佳适配。
- 实时结果: 快速计算并提供详细统计信息。
API 端点
POST /pack
使用优化的 3D 装箱算法将物品打包入箱。
请求体
json { "items": [ { "id": "item-1", "w": 10, "h": 10, "d": 10, "quantity": 2 } ], "boxes": [ { "id": "small-box", "w": 15, "h": 15, "d": 15 } ] }
请求参数
| 字段 | 类型 | 必需 | 描述 |
|---|---|---|---|
items |
Array | 是 | 待打包物品列表 |
items[].id |
String | 是 | 物品的唯一标识符 |
items[].w |
Integer | 是 | 物品宽度 |
items[].h |
Integer | 是 | 物品高度 |
items[].d |
Integer | 是 | 物品深度 |
items[].quantity |
Integer | 是 | 此物品的打包数量 |
boxes |
Array | 是 | 可用箱子类型 |
boxes[].id |
String | 是 | 箱子的唯一标识符 |
boxes[].w |
Integer | 是 | 箱子宽度 |
boxes[].h |
Integer | 是 | 箱子高度 |
boxes[].d |
Integer | 是 | 箱子深度 |
响应示例
json { "packed_boxes": [ { "box_id": "large-box", "contents": [ { "item_id": "item-2", "x": 0, "y": 0, "z": 0, "w": 20, "h": 20, "d": 20 } ] } ], "unpacked_items": [], "total_volume": 27000, "utilization_percent": 25.93, "visualization_data_uri": "data:text/html;base64,PCFET0NUWVBFIGh0bWwgbGFuZz0iZW4iPjxoZWFkPi4uLjwvaGVhZD48Ym9keT4uLi48L2JvZHk+PC9odG1sPg==", "visualization_html": "<!DOCTYPE html>...[Full HTML with 3D visualization]..." }
响应字段
| 字段 | 类型 | 描述 |
|---|---|---|
packed_boxes |
Array | 装有已打包物品的箱子列表 |
packed_boxes[].box_id |
String | 所用箱子的 ID |
packed_boxes[].contents |
Array | 装入此箱的物品 |
packed_boxes[].contents[].item_id |
String | 已打包物品的 ID |
packed_boxes[].contents[].x |
Integer | 物品位置的 X 坐标 |
packed_boxes[].contents[].y |
Integer | 物品位置的 Y 坐标 |
packed_boxes[].contents[].z |
Integer | 物品位置的 Z 坐标 |
packed_boxes[].contents[].w |
Integer | 物品宽度(可能已旋转) |
packed_boxes[].contents[].h |
Integer | 物品高度(可能已旋转) |
packed_boxes[].contents[].d |
Integer | 物品深度(可能已旋转) |
unpacked_items |
Array | 无法装入任何箱子的物品 |
total_volume |
Integer | 所用所有箱子的总体积 |
utilization_percent |
Float | 箱子空间利用率百分比 |
visualization_data_uri |
String | 用于即时 3D 可视化的数据 URI(粘贴到浏览器地址栏) |
visualization_html |
String | 用于保存为 .html 文件并在本地打开的原始 HTML 字符串 |
状态码
200 OK: 打包成功完成。400 Bad Request: 请求格式无效或缺少必填字段。500 Internal Server Error: 处理过程中服务器错误。
3D 可视化
每个打包结果包含两种可视化选项:
- HTML 下载(推荐): 复制
visualization_html值,在计算机上另存为.html文件,然后用浏览器打开。 - 数据 URI(支持有限): 从响应中复制
visualization_data_uri值并直接粘贴到浏览器地址栏。
可视化功能
- 交互式控制: 旋转、平移和缩放 3D 场景。
- 颜色编码物品: 每个物品具有唯一颜色以便识别。
- 详细统计: 查看箱子数量、物品数量和使用率百分比。
- 专业 UI: 现代、响应式设计,带深色主题。
控制方式
- 左键单击 + 拖动: 旋转视图。
- 右键单击 + 拖动: 平移相机。
- 滚动滚轮: 缩放。
使用场景
- 电子商务与运输: 优化包裹选择以降低运输成本并减少材料浪费。
- 仓库管理: 规划存储布局并优化集装箱装载。
- 搬家与搬迁: 确定搬家所需的箱子或卡车数量。
算法详情
API 使用先进的 3D 装箱算法,具有以下特点:
- 首次适应递减法: 按体积(从大到小)对物品排序以实现更好打包。
- Guillotine 启发式: 高效的空间分割和管理。
- 6向旋转支持: 物品可在所有方向旋转。
- 最佳适配选择: 选择浪费空间最少的箱子。
- 空间合并: 合并相邻的自由空间以减少碎片。
性能
- 快速处理: 标准请求的典型响应时间 < 100ms。
- 可扩展: 可处理数百个物品和多种箱子类型。
- 优化: 使用高效的数据结构和算法。
最佳实践
- 提供多种箱子选项。
- 使用现实的尺寸(确保所有测量使用相同单位,如厘米)。
- 考虑重量限制(此 API 仅针对体积进行优化,而非重量)。
- 检查未打包物品(查看
unpacked_items数组)。 - 可视化结果(使用可视化数据验证打包准确性)。
示例代码
提供了 cURL、Python 和 JavaScript (Node.js) 的调用示例。
常见问题解答
- 尺寸应使用什么单位?: 使用任何一致的单位(厘米、英寸、毫米等)。算法适用于相对大小。
- 物品可以旋转吗?: 可以!算法会自动尝试每个物品所有 6 种可能的旋转。
- 如果并非所有物品都装得下怎么办?: 装不下的物品会在
unpacked_items数组中返回。请考虑提供更大的箱子。 - 如何查看可视化?: 有两种选择:1) 复制
visualization_data_uri并粘贴到浏览器地址栏;2) 复制visualization_html,另存为.html文件,然后用浏览器打开。 - 物品或箱子的数量是否有限制?: 为了获得最佳性能,建议请求保持在 1000 个物品和 50 种箱子类型以下。
支持
- 邮箱: kasyap3103@gmail.com
- RapidAPI 市场: https://rapidapi.com/kasyap3103/api/space-optimiser




