{"status":"ok","ts":1779302690.671844}
curl --location --request GET 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24443/health+check' --header 'Authorization: Bearer YOUR_API_KEY'
{"patch_engine_semver":"1.0.0","supported_tile_families":["spectre_tile_1_1"],"roadmap":{"tile_families":[{"id":"spectre_tile_1_1","status":"supported","label":"Spectre / Tile(1,1)"},{"id":"einstein_hat_tile","status":"planned","label":"Einstein Hat monotile (same API hooks)"},{"id":"turtle_tile","status":"planned","label":"Companion turtle monotile family"}]},"free_tier_formats":["jpeg","jpg","png"],"supported_masks":["square","rectangle","circle","regular_hexagon","triangle","rounded_rect"],"supported_formats":["svg","csv","json","stl","stl_zip","obj_zip","glb","instance_json","png","jpg","jpeg"],"output_notes":{"glb":"3D tiled scene with one named, movable node per retained tile.","stl":"Whole-panel mesh output.","stl_zip":"Independent STL files, one per tile.","obj_zip":"Independent OBJ files, one per tile."},"boundary_behavior":"clip","visual_styling":{"side_styles":["flat","curvy","wavy","jagged","blocky"],"side_style_aliases":{"curved":"curvy","curve":"curvy"},"side_style_amplitude":{"min":0.0,"max":0.75,"default":0.12},"tile_edge_ratio":{"min":0.25,"max":4.0,"default":1.0,"note":"Anisotropic stretch of export geometry only; substitution placement remains canonical Tile(1,1). Not a true Tile(a,b) two-family substitution."},"side_style_wavy_segments":{"min":4,"max":64,"default":10},"palette_by_label":{"supported":true,"keys_per_label":["fill","stroke","opacity","stroke_width"],"wildcard_label":"*"},"request_fields":["side_style","side_style_amplitude","tile_edge_ratio","side_style_wavy_segments","palette_by_label"]},"limits":{"max_supertile_iterations":26,"max_tiles_per_job":500000,"sync_max_tiles":8000,"svg_max_tiles_hard":25000,"png_max_dimension_px":16000,"png_max_pixels":50000000,"max_output_bytes_soft":32212254719,"max_wall_time_sec":3600.0,"job_gc_hours":24,"stl_tile_instancing_floor":50000,"svg_max_chars":400000000,"redis_url":null},"atlas":{"available":true,"max_canonical_half_side":1544.0511060838514,"max_canonical_full_side":3088.102212167703,"cores":[{"tile_family":"spectre_tile_1_1","iterations":5,"tile_count":34649,"inscribed_half_side":72.85611373427516,"inscribed_center":[180.85884907869263,-190.4637563106116],"patch_version":"0.1.0"},{"tile_family":"spectre_tile_1_1","iterations":6,"tile_count":272791,"inscribed_half_side":197.20129785929603,"inscribed_center":[611.0929636810714,-457.26130132202326],"patch_version":"0.1.0"},{"tile_family":"spectre_tile_1_1","iterations":7,"tile_count":2147679,"inscribed_half_side":516.3669015101796,"inscribed_center":[1297.8529395021253,-1742.7605795910576],"patch_version":"0.1.0"},{"tile_family":"spectre_tile_1_1","iterations":8,"tile_count":16908641,"inscribed_half_side":1544.0511060838514,"inscribed_center":[4553.311273135866,-4060.276908476975],"patch_version":"1.0.0"}]},"coordinate_convention":"Canonical Tile(1,1) planar coordinates (unit-edge reference). Global client scale ∈ ℝ⁺ and rotation_deg are similarity transforms applied after substitution.","operational":{"run_jobs_in_process":false,"rate_limit_post_patch":"30/minute","queue_max_active_jobs":2000,"queue_max_active_jobs_per_key":100,"queue_max_heavy_jobs":300,"queue_max_heavy_jobs_per_key":10,"download_ttl_seconds_max":3600,"artifact_retention_note":"Generated artifacts are kept for roughly one hour after the job completes. Download or copy them to your own storage if you need them longer."}}
curl --location --request GET 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24444/capabilities' --header 'Authorization: Bearer YOUR_API_KEY'
{"job_id":"bfb87a47-6910-462c-86ec-2bb63ca9bba7","status":"queued","tier":"tier_free","size_class":"small","estimated_seconds":5.0,"request_id":"2c7470cc-b96f-4725-b419-41826e2871e5","queue":{"status":"queued","size_class":"small","position":1,"estimated_wait_seconds":0.0}}
curl --location --request POST 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24445/create+patch+job' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"mask": {"type": "circle", "radius": 16},
"formats": ["png", "jpg"],
"png_width_px": 512,
"png_height_px": 512,
"jpg_width_px": 512,
"jpg_height_px": 512
}'
{"job_id":"bfb87a47-6910-462c-86ec-2bb63ca9bba7","status":"completed","ttl_seconds":900,"urls":{"patch.jpg":"/v1/downloads/bfb87a47-6910-462c-86ec-2bb63ca9bba7/patch.jpg?exp=1779375751&sig=d61d646a3e3893ba4bd7c753a46cb9af2e8eca4178467ec19f62a2481ad3d39a","patch.png":"/v1/downloads/bfb87a47-6910-462c-86ec-2bb63ca9bba7/patch.png?exp=1779375751&sig=c6c4732a4874653588673c05fe14fb4570047b05603da7318d701d7694ec5064"}}
curl --location --request GET 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24446/get+job+download+urls&job_id=Required' --header 'Authorization: Bearer YOUR_API_KEY'
注册后,每个开发者都会被分配一个个人 API 访问密钥,这是一个唯一的字母和数字组合,用于访问我们的 API 端点。要使用 非周期性单砖生成器API用于制造工作流程 API 进行身份验证,只需在 Authorization 标头中包含您的 bearer token。
| 标头 | 描述 |
|---|---|
授权
|
必需
应为 Bearer access_key. 订阅后,请查看上方的"您的 API 访问密钥"。
|
无长期承诺。随时升级、降级或取消。 免费试用包括最多 50 个请求。
(年度计费可节省 2 个月 🎉)
关于 API
非周期性单瓦片生成器 API 是一个托管的 REST 服务,使用 Spectre Tile 1,1(爱因斯坦单瓦片)进行无间隙的非周期性单瓦片几何。它用非重复的瓷砖填充一个区域,裁剪成面具形状,分配稳定的瓦片 ID 和标签,并导出生产就绪的工件。为需要真实瓷砖而不在客户端运行替代深度、图集构建或分形迭代工具的开发人员和 AI 代理构建。支持计算机图形学、程序世界、Blender 和游戏引擎、Adobe 和 CAD、3D 打印、生成艺术、科学可视化、超材料、波动和声学布局、与密码学相关的晶格实验,以及需要确定性几何的数据管道。
此 API 接收的内容及您的 API 提供的内容(输入/输出)
您发送包含面具和输出格式的 JSON。面具包括圆形、矩形、正方形、三角形、正六边形和圆角矩形,自动居中在标准瓦片单位中。可选的缩放、旋转、种子、SVG 笔划和调色板选项、光栅尺寸,以及 3D 挤出深度。使用头部 X-API-Key 进行身份验证。工作流程是异步的:创建一个补丁作业,轮询作业状态直到完成或失败,然后获取签名下载 URL。格式包括 png、jpg、jpeg、svg、csv、json、stl、glb、stl_zip、obj_zip 和 instance_json。GLB 为每个瓷砖提供一个命名节点。STL ZIP 和 OBJ ZIP 为每个瓷砖提供独立的网格。免费密钥仅允许小型光栅预览。付费的 Solo 和商业密钥解锁矢量、3D、压缩包和更大的作业。可选的 Idempotency-Key 头防止重试时的重复提交。在大型作业之前,调用功能端点以检查实时层级限制、支持的面具、格式和队列深度。
此 API 最常见的用例是什么
抗摩尔纹和非周期性采样用于渲染和纹理。在 Unity、Godot 和 Three.js 中通过 GLB 进行程序网格和世界装饰。Blender 插件和管道集成用于铺砖表面。通过 SVG 输出用于 Illustrator、Inkscape 以及激光或绘图仪工作流。使用 STL 进行单面 3D 打印或使用 STL ZIP 和 OBJ ZIP 进行单独可打印瓦片的打印。生成雕塑和装饰设计。关于非周期性铺砖的研究和教育。CSV、JSON 和实例清单用于自定义导入器、空间索引和机器学习数据集。代理应首先使用 png 或 jpg 开始用户,然后转向设计工具的 svg、实时 3D 的 glb、制造面板的 stl,以及当每个瓦片必须是独立对象时使用的 stl_zip。
您的计划是否有任何限制
免费层仅限于小型 PNG 和 JPG 预览。大容量作业如大型 GLB 或 zip 导出被分为小型、标准或大型,并可能排队;响应包括估计等待时间和队列位置,因此客户端应进行轮询而不是重新提交。签名下载 URL 会过期;用户必须保存他们关注的工件。请勿询问最终用户瓦片系列、面具中心、保留模式、补丁版本、替代深度或覆盖范围。针对 AI 代理的全面机器可读集成指南可在此列表中配置的提供者文档站点上获得。
每个端点返回JSON数据 健康检查端点提供状态和时间戳 能力端点列出支持的格式 规则和层级限制 创建补丁作业端点返回作业状态和预计等待时间 获取作业下载URL端点提供下载生成的工件的URL
关键字段包括`status`、`job_id`、`urls`、`estimated_seconds`和`queue`的详细信息。例如,创建补丁作业的响应包含`job_id`、`status`和`estimated_seconds`,而获取作业下载URL的响应包含可下载文件的`urls`
创建补丁作业端点接受参数,如 `mask`、`scale`、`rotation`、`seed`、`palette` 和 `raster dimensions` 用户可以通过在 JSON 有效载荷中指定这些参数来定制他们的请求,以控制输出的外观和尺寸
响应数据以结构化的JSON格式组织。例如,创建补丁作业的响应包括一个顶层对象,其中包含作业详细信息,而获取作业下载URLs的响应包含一个`urls`对象,将文件名映射到其下载链接
能力端点提供有关支持的输出格式、遮罩类型、级别限制和队列设置的信息 它帮助用户了解其补丁作业允许的格式和大小 确保与他们的需求兼容
用户可以通过检查`status`字段来监控作业进度,使用`job_id`进行跟踪,并访问`urls`以下载已完成的工件。这样的结构化方法可以有效地集成到工作流程中
典型的使用案例包括为渲染生成纹理 在游戏引擎中创建程序生成网格 以及为设计工具制作矢量图形 用户还可以利用API进行3D打印和与非周期性铺砖相关的教育目的
通过使用确定性算法生成无周期单块图案来保持数据的准确性 API确保输出遵循指定的参数和格式为用户提供可靠和一致的结果