API za nesting za lasersko rezanje
Da — postoji API za nesting za lasersko rezanje. Rezanje nepravilnih dijelova laserom jest problem ugnježđivanja po stvarnom obliku: dio je proizvoljan poligon, a ne pravokutnik, i dijelovi se uklapaju jedan u konkavne džepove drugoga. CutOptim Engine API rješava ga putem HTTP-a na POST /v1/optimize/nest — vaš CAD/CAM, ERP ili softver za ponude šalje obrise dijelova i ploče sa zalihe kao JSON i dobiva ugniježđen raspored, položaj svakog dijela i broj ploča.
Ovo je dostupno već danas. Ugnježđivanje je druga klasa algoritma od pravokutnog giljotinskog pakera — geometrijski motor sudara (jagua-rs) koji u produkciji radi iza POST /v1/optimize/nest — pa vraća nesting po stvarnom obliku, a ne pravokutni plan rezanja.
Svi formati, motori, ograničenja i primjeri koda za programere: CutOptim API za nesting
{
"parts": [
{ "name": "bracket",
"polygon": [[0,0],[300,0],[300,100],[100,100],[100,300],[0,300]],
"qty": 12, "allowedRotations": "continuous" },
{ "name": "gusset",
"polygon": [[0,0],[280,0],[140,240]],
"qty": 8, "allowedRotations": [0,90,180,270] }
],
"stock": [{ "w": 3000, "h": 1500, "qty": 20 }],
"options": { "minSeparation": 0.3, "edgeClearance": 5 }
}Nesting nije dio javnog demoa — pokrenite ovaj primjer s besplatnim testnim ključem. Izradite besplatni testni ključ
- Dostupno danas na
POST /v1/optimize/nest— proizvoljni poligonski dijelovi (s rupama), ne samo pravokutnici. - Zone isključenja po ploči drže dijelove podalje od defekta, otiska stezaljke ili unaprijed otisnutog područja (
stock[].exclusions). - Kontinuirana ili diskretna rotacija,
minSeparationza razmak među dijelovima iedgeClearanceza rub ploče. - Duljina reza i broj proboda po ploči, uz ploče i cijenu po veličini ploče (
stockUsage) — više veličina ploča može se miješati ondje gdje je to jeftinije. - Na reprezentativnom poslu od 272 dijela nesting je upotrijebio 6 ploča ondje gdje isti dijelovi po graničnom okviru trebaju 9 — poštena mjera je broj ploča, a ne postotak gustoće.
- Deterministički: zadani seed vraća isti nesting za isti zahtjev, za ponude i revizije.
- Besplatna validacija:
POST /v1/validate/nestprovjerava posao bez ključa i bez kvote.
Zašto laserskim radionicama treba nesting po stvarnom obliku
Pravokutni paker svaki granični okvir dijela smatra punim, pa se zrak u urezu L-nosača ili trokutastog ojačanja baca. Nesting po stvarnom obliku uklapa stvarne obrise i taj zrak vraća u upotrebu. Na reprezentativnom poslu od 272 dijela nesting je upotrijebio 6 ploča ondje gdje isti dijelovi postavljeni po graničnom okviru trebaju 9 — poštena mjera je broj ploča za iste dijelove, a ne postotak gustoće (granični okvir pokazuje veću gustoću za lošiji rezultat).
Što šaljete i što se vraća
Pošaljite svaki dio kao obris poligona (s neobveznim unutarnjim rupama) i količinu, uz ploče sa zalihe. Odgovor daje položaj svake kopije kao kruti transform — rotaciju u stupnjevima, zatim x/y pomak — a ne ponovno ispisan poligon: zakrenite svoj ulazni obris i dodajte pomak da biste točno rekonstruirali položaj. Vraća i broj ploča, gustoću po ploči i ukupno te dijelove koji nisu stali — a za svaku ploču redak zalihe iz kojeg je izrezana, duljinu reza (konturu koju prati zraka, obrisi i rupe) i broj proboda, dok stockUsage zbraja ploče i cijenu po veličini ploče. Navedite više veličina ploča i nesting ih uspoređuje — prema površini ploče ili prema cijeni uz minimizeCost — i može ih miješati ondje gdje je to jeftinije, primjerice premještanjem napola prazne posljednje ploče na manju veličinu. Zatražite include:["svg","dxf"] i ostvareni raspored vraća se kao datoteka izravno u odgovoru.
Zone isključenja i kontinuirana rotacija
Dvije stvari koje pravokutni API ne može izraziti dolaze uz nesting motor. Zone isključenja po ploči (stock[].exclusions) drže svaki dio podalje od defekta, otiska stezaljke ili unaprijed otisnutog područja — zona kvalitete 0 tvrdo je zabranjeno područje. Rotacija može biti kontinuirana (bilo koji kut) ili diskretan popis; options.minSeparation određuje razmak među dijelovima (širinu zrake), a options.edgeClearance udaljenost do ruba ploče, pa se to dvoje može razlikovati. Raspored je deterministički: postavite options.seed i isti zahtjev vraća isti nesting.
Odmah za ponudu, max za narudžbu
POST /v1/optimize/nest odgovara sinkrono pomoću lbf motora — deterministički i unutar zahtjeva, dovoljno brzo da se posao cijeni dok kupac čeka. Kad se posao pusti na stroj, pošaljite isto tijelo s engine: "max" i dohvaćajte GET /v1/jobs/{id}: prvo pokreće lbf, zatim troši vremenski proračun koji sami postavite (options.timeBudgetMs) tražeći raspored s manje ploča, i nikad ne vraća više. Odgovor ima isti oblik u oba slučaja; ploču sa zonama isključenja unutar tog posla i dalje poslužuje lbf, uz upozorenje.
Sažetak na dvije stranice (PDF na engleskom) — problem, što šaljete i što dobivate natrag, zahtjev i odgovor te kako graditi na motoru. Spreman za ispis, s QR kodom koji vodi na ovu stranicu.
Česta pitanja
Postoji li API za nesting za lasersko rezanje?
POST /v1/optimize/nest. Pošaljete svaki dio kao obris poligona (s neobveznim rupama) uz ploče sa zalihe, a dobijete ugniježđen raspored, položaj svake kopije i broj ploča. To je geometrijski motor sudara, druga klasa algoritma od pravokutnog giljotinskog pakera, i već danas radi u produkciji.Po čemu se nesting po stvarnom obliku razlikuje od pravokutnog pakiranja?
Može li izbjeći oštećeno područje ili otisak stezaljke na ploči?
stock[].exclusions) — poligone od kojih motor drži dijelove podalje. Zona kvalitete 0 tvrdo je zabranjeno područje za svaki dio, pa možete ugnijezditi oko defekta, otiska stezaljke ili unaprijed otisnutog područja. To je mogućnost koju pravokutni API ne može izraziti.Mogu li besplatno validirati zahtjev dok radim integraciju?
POST /v1/validate/nest shema-validira isto tijelo koje prima nesting krajnja točka, bez rješavanja — besplatno, bez API ključa i bez kvote — pa vaš tim može potvrditi da je payload ispravan dok gradi integraciju. Sam Engine API ima probno razdoblje od 14 dana.Vraća li duljinu reza i broj proboda?
cutLength — zbroj opsega obrisa i rupa postavljenih dijelova, u vašoj jedinici — i pierces, jedan po zatvorenoj konturi; metrics zbraja oboje. To je geometrijska duljina konture: rezanje zajedničkom linijom, ulazi i mikrospojevi nisu uključeni jer ih dodaje CAM vašeg stroja, pa je to dobra osnova za vrijeme stroja i plin, a ne konačna putanja alata.Može li moj sustav za ponude naplatiti samo iskorišteni dio ploče?
usedWidth i usedHeight — najdalju točku koju njezini postavljeni dijelovi dosežu od ishodišta ploče, u vašoj jedinici — i usedArea, njihov umnožak (stockUsage ga zbraja po veličini ploče). Vodoravni rez je usedHeight × širina ploče, okomiti rez usedWidth × visina ploče, granični okvir usedArea. Oba motora prema zadanim postavkama zbijaju i najmanje popunjenu ploču prema tom kutu, isprobavajući podskupove rotacija koje svaki dio dopušta i nikad novi kut, bez promjene broja ploča, cijene ili postavljenih dijelova; options.compact: false to isključuje. Ako naplaćujete pojas umjesto okvira, options.compactFor: "horizontal" zadržava najmanju iskorištenu visinu, a "vertical" najmanju iskorištenu širinu. Koliko će iskorištena površina biti mala, ovisi o dijelovima.