CutOptim Engine API
Deterministické jádro pro optimalizaci řezání, volatelné přes HTTP: stejný požadavek vrací vždy stejný plán řezání — takže ho můžete auditovat, cenit podle něj, urovnat s ním spor a znovu spustit loňskou zakázku a dostat loňský plán. Je to stejné jádro, které pohání CutOptim, napříč třemi obdélníkovými režimy (2D desky, 1D lineární materiál a dřevo s přiřazením průřezu), plus nesting podle skutečného tvaru pro nepravidelné polygonální díly — POST /v1/optimize/nest, pro řezání laserem, plazmou a vodním paprskem. Pošlete díly a materiál a zpátky dostanete celé rozvržení, plán řezání i využití — připravené k zapojení do ERP, kalkulačního nástroje nebo vlastního softwaru stroje.
Zobrazit celý benchmark → · Naměřeno, ne tvrzeno
Proč na tom stavět
Stejný vstup vrací vždy stejný výstup — žádná náhoda, žádné hodiny v algoritmu. Výsledky můžete cachovat a v testech je porovnávat.
Nejen obdélníky: gilotinová sekvence řezů, řezy versus průjezdy pily, délka řezu a příznak, který říká, zda je plán vyrobitelný na formátovací pile.
Šířka řezu (kerf), ořez po jednotlivých hranách, tolerance, režim nákladů, skupiny vzoru dřeva, limit fází řezání, minimalizace otáčení — stejné volby, jaké nabízí aplikace.
Co API dělá
Po jednom volání pro 2D desky, 1D lineární materiál, dřevo s párováním průřezu a nesting nepravidelných polygonů podle skutečného tvaru — POST /v1/optimize/2d, /1d, /wood a /nest.
POST /v1/optimize/nest rozmisťuje libovolné polygony (i s otvory) na pevné desky a zaklesává díly do vzájemných konkávních kapes — 6 desek tam, kde tytéž díly podle opsaného obdélníku potřebují 9. Pro řezání laserem, plazmou a vodním paprskem. Součástí jsou i vyloučené zóny po jednotlivých deskách (vada, upínka).
Označte díly a zásobu štítkem material a optimalizátor rozdělí úlohu: každý material se řeže jen z vlastní zásoby. V každém režimu; vrací se souhrn podle material.
Pojmenujte typ hrany pro každou hranu (2D) a odpověď sečte běžné metry podle typu — na díl a na zakázku. Metadata: díl nikdy neposune.
Požádejte o include:["svg","csv","dxf"] a odpověď ponese rozvržení jako hotový soubor, přímo v ní — samostatný 2D výkres SVG, DXF ve formátu R12/AC1009 nebo seznam řezů v CSV. Žádné úložiště, žádné druhé volání.
Připojte objekt meta — číslo artiklu z vašeho ERP, id řádku zakázky, referenci zákazníka — k jakémukoli dílu nebo řádku materiálu a vrátí se doslovně u každého umístěného kusu i u každé desky/tyče, takže plán sedí s vaším systémem.
POST /v1/validate/{2d,1d,wood} zvaliduje stejné tělo vůči schématu bez výpočtu — bez klíče, bez kvóty. Ověřte, že požadavek nebude odmítnut, a získejte upozornění na proveditelnost dřív, než utratíte volání.
minimizeCost řadí podle nejnižší celkové ceny napříč naceněnými velikostmi zásoby a mísí formáty; výchozí nastavení minimalizuje materiál. Oba spouštějí stejný guillotine algoritmus.
Označte zásobu, která se spotřebuje jako první, považujte množství za tvrdý limit pomocí respectStock a označte díly nutné k řezání, které při nedostatku materiálu získají místo na desce.
Nejen obdélníky: gilotinová sekvence řezů s pozicemi dorazu pro každý krok, řezy versus průjezdy pily, délka řezu a příznak vyrobitelnosti na formátovací pile.
kerf, ořez po jednotlivých hranách, tolerance, grain groups, maxCutStages a minimalizace otáčení — stejné volby, jaké nabízí aplikace.
Stejný vstup vrací vždy stejný výstup — cachujte jej a porovnávejte. Připnutelná verze enginu a dokument OpenAPI 3.1 popisují celý kontrakt.
Pošlete SVG nebo DXF místo souřadnic: parts[].source načte obrys a jeho otvory z výkresu a POST /v1/import/nest nejprve rozdělí soubor s více díly. Nic se neukládá — soubor se zpracuje v paměti a zmizí spolu s odpovědí.
Který engine obsluhuje který režim
Endpoint, na který posíláte POST, určuje režim; parametr engine určuje algoritmus. Výchozí engine heuristic obsluhuje 2D, 1D i dřevo; balanced a asynchronní engine max jsou pouze pro 2D; a nesting podle skutečného tvaru běží na vlastním enginu lbf. Stejný engine jako v aplikaci, přes HTTP.
- heuristic — Výchozí — gilotinový packer s více strategiemi. Nejvyšší výtěžnost, každé rozvržení je řezatelné na pile a vždy vrací plán řezání. Obsluhuje 2D, 1D i dřevo.
- balanced — Volitelný MaxRects free-nester pro 2D. U velmi velkých úloh výrazně rychlejší za mírně nižší výtěžnost, jeho rozvržení však často nelze rozřezat od kraje ke kraji, takže neobsahují plán řezání.
- max — Asynchronní stromové prohledávání pro 2D. Dosahuje prokazatelného optima u mnohem více úloh, za několik sekund až minutu na výpočet — úlohu odešlete a výsledek získáte dotazováním GET /v1/jobs/{id}. Stále deterministické a řezatelné na pile.
- lbf — Engine pro nesting podle skutečného tvaru. Zaklesává nepravidelné polygony do vzájemných kapes pro laser, plazmu a vodní paprsek; plánuje se build sparrow s vyšší hustotou.
Který endpoint pro který materiál: ploché desky — překližka, MDF, sklo, akrylát, plech — jdou na /v1/optimize/2d; tyče, trubky, roury a profily na /v1/optimize/1d; konstrukční dřevo (50×150 jen z 50×150) na /v1/optimize/wood; nepravidelné polygony pro laser, plazmu a vodní paprsek na /v1/optimize/nest.
Jedno volání, celý plán
curl https://api.cutoptim.com/v1/optimize/2d \
-H "Authorization: Bearer co_live_…" \
-H "Content-Type: application/json" \
-d '{
"parts": [
{ "name": "Door", "w": 600, "h": 400, "qty": 4 },
{ "name": "Shelf", "w": 800, "h": 300, "qty": 6 }
],
"stock": [{ "w": 2440, "h": 1220, "price": 42 }],
"options": { "kerf": 3, "effort": "balanced" },
"engine": "heuristic"
}'Vrátí se:
{
"metrics": { "sheetCount": 1, "yieldPct": 80.62, "placed": 10, "total": 10,
"cutLines": 10, "sawPasses": 13, "cutLength": 10720, "totalPrice": 42 },
"sheets": [ … ],
"cutPlan": [{ "sheet": 0, "step": 1, "axis": "h", "pos": 400, "length": 2440, "stage": 1 }, … ],
"guillotineValid": true,
"engineVersion": "1.0.0+10e0c941",
"deterministic": true
}Kompletní podoba požadavku a odpovědi, všechny volby, všechny chybové kódy a všechna tři jádra:Reference API →
Fast, nebo hustě? Vyberte jednou volbou
Volba effort vyvažuje čas výpočtu proti využití. Tady je ten kompromis, změřený na jedné náročné zakázce — každé číslo pochází ze skutečného packeru.
A tak jako tak je to rychlé: i největší výrobní zakázky — 2000 dílů a více — se na výchozím enginu vyřeší v řádu sekund, pohodlně v časovém rozpočtu API.
Ceník
Větší objemy. 10,000 požadavků za měsíc je standardní tarif, ne strop toho, co dokážeme provozovat. Pokud potřebujete více — vyšší objem, oddělené klíče pro staging a produkci nebo individuální řešení — napište nám svá čísla a naceníme to individuálně. Napište nám svůj objem →
Běžné tarify CutOptim (Zdarma / Pro / Dílna) s API nijak nesouvisejí — optimalizátor v aplikaci v nich zůstává zahrnutý. Ceník aplikace →
Solutions by industry
The same engine, positioned for the way one trade cuts. Each page shows the endpoint, a request and a response, and the fields that matter for that material.
1D cut-to-length for tube, pipe and hollow section. POST /v1/optimize/1d
1D cut-to-length for steel and aluminium profile, bar and section, with cost mode. POST /v1/optimize/1d
2D guillotine, zero-kerf score-and-snap for float, tempered and mirror glass. POST /v1/optimize/2d
1D cut-to-length for structural timber with cross-section matching. POST /v1/optimize/wood
True-shape nesting of irregular polygons, with exclusion zones. POST /v1/optimize/nest
True-shape nesting onto plate for laser, plasma or waterjet. POST /v1/optimize/nest
Bar bending schedule optimization for reinforcement steel. · design partners wanted
The why, what and how of the CutOptim Engine API on two pages — the three modes, a request and response, determinism and pricing. Print-ready, with a QR back to this page.