Preskoči na glavni sadržaj
← CutOptim Engine APIEngine API · dostupno danas

API za rezanje drva i konstrukcijske građe

Da — postoji API za rezanje konstrukcijske građe po duljini. Rezanje greda, rogova, stupova, letvi i dasaka po duljini jest 1D problem rezanja zalihe s jednim dodatnim pravilom koje obično linearno rezanje zanemaruje: poprečni presjek mora odgovarati. Dio 50×150 ne može se izrezati iz šipke 50×100. CutOptim Engine API rješava to putem HTTP-a na POST /v1/optimize/wood — vaš ERP, softver za ponude ili skladište građe šalje popis rezanja i raspoloživu zalihu kao JSON i dobiva optimiziran plan rezanja, uparen i riješen po poprečnom presjeku, s brojem šipki i iskoristivošću.

Ovo je zaseban način rada, a ne omotač oko /v1/optimize/1d: obično 1D rezanje svaku šipku smatra zamjenjivom, dok građa ima identitet — presjek se mora podudarati. Slanje N grupiranih 1D zahtjeva umjesto toga košta N poziva za jedan posao, prebacuje upravljanje zalihom na vas i daje ukupnu vrijednost koja se ne slaže s onom u aplikaciji. Ova krajnja točka obavlja podudaranje i vraća cijeli posao u jednom pozivu, po presjeku i za posao u cjelini.

POST /v1/optimize/wood
{
  "parts": [
    { "name": "Rafter", "sw": 50, "sh": 150, "length": 3200, "qty": 8 },
    { "name": "Noggin", "sw": 50, "sh": 100, "length": 600, "qty": 24,
      "meta": { "ref": "C24-50x100" } }
  ],
  "stock": [
    { "name": "C24 50x150", "sw": 50, "sh": 150, "length": 4800, "qty": 20, "price": 18.4 },
    { "name": "C24 50x100", "sw": 50, "sh": 100, "length": 4800, "qty": 30, "price": 12.5 }
  ],
  "options": { "kerf": 3 }
}
Koristi javni demo ključ — ograničen, samo mali poslovi, nikad se ne naplaćuje.
  • Dostupno danas na POST /v1/optimize/wood — isti motor kao u aplikaciji, svjestan poprečnog presjeka.
  • Presjeci se uparuju i rješavaju neovisno: dio 50×150 reže se samo iz zalihe 50×150.
  • sections[] nosi šipke, zbrojeve i plan rezanja po presjeku; unmatched prijavljuje potražnju koja uopće nema zalihe.
  • Deterministički i vezano uz verziju — ponovite ponudu za rezanje za reviziju ili ponovljenu narudžbu.
  • Prijavljeni ostatak jest iskoristiv ostatak — širina reza već je oduzeta (po šipki).
  • Besplatna validacija: POST /v1/validate/wood provjerava posao bez ključa i bez kvote.

Zašto ga trebaju stolari i trgovci građom

Konstrukcijska građa kupuje se u dugim duljinama i reže na mnogo dijelova, a rezanje redoslijedom s popisa ostavlja kratak ostatak na gotovo svakoj duljini. Optimizator koji poznaje poprečni presjek preraspodjeljuje rezove unutar svakog presjeka kako bi svaki trebao što manje duljina. Unutar tijeka izrade ponuda, ERP-a ili prodajnog mjesta API to radi automatski na svakom poslu — trgovac građevinskim materijalom može izravno iz narudžbe izračunati cijenu i isplanirati uslugu rezanja, a plan se slaže s onim što skladište stvarno reže.

Podudaranje poprečnog presjeka — dio problema koji 1D izostavlja

Svaki dio i svaki redak zalihe nosi dvije stranice poprečnog presjeka, sw i sh, bilo kojim redoslijedom (50×150 i 150×50 ista su greda okrenuta na drugu stranu). Motor dijeli posao po poprečnom presjeku, svaki dio uparuje samo sa zalihom kompatibilnog presjeka i svaki presjek rješava neovisno. Odgovor stiže kao sections[], svaki sa svojim šipkama, svojim zbrojevima i svojim planom rezanja, uz metrike za posao u cjelini — a potražnja čiji presjek uopće nema zalihe prijavljuje se zasebno u unmatched, odvojeno od dijelova koji su imali zalihu pa jednostavno nisu stali, jer je rješenje drukčije.

Deterministički — ponovljivo za ponude i revizije

Isti zahtjev uvijek vraća isti plan rezanja: bez slučajnosti, bez sata u algoritmu. Ponuda za rezanje izrađena iz API poziva može se mjesecima poslije ponoviti za reviziju ili ponovljenu narudžbu, a rezultate možete predmemorirati i uspoređivati u testovima. Prijavljeni ostatak na svakoj šipki iskoristiv je ostatak — širina reza već je oduzeta — a svaki meta objekt koji priložite (broj artikla, redak narudžbe) vraća se uz svaki postavljeni rez, pa se plan usklađuje s vašim sustavom.

Materijal za preuzimanje
Sažetak API-ja za rezanje drva i građe (na engleskom)

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.

PDF2 straniceBesplatno
Preuzmi PDF

Česta pitanja

Postoji li API za rezanje drva ili konstrukcijske građe?
Da. Rezanje građe — greda, rogova, stupova, letvi, dasaka — po duljini s podudaranjem poprečnog presjeka jest wood način rada CutOptim Engine API-ja, POST /v1/optimize/wood. Pošaljete popis rezanja i zalihu kao JSON, svaki s dvije stranice poprečnog presjeka, a dobijete optimiziran plan rezanja uparen i riješen po presjeku, s brojem šipki, iskoristivošću i iskoristivim ostacima. To je isti motor koji pokreće aplikaciju, putem HTTP-a.
Zašto za građu jednostavno ne koristiti 1D krajnju točku?
Zato što 1D svaku šipku smatra zamjenjivom, a građa nije: dio 50×150 ne može se izrezati iz šipke 50×100. Wood krajnja točka dijeli posao po poprečnom presjeku, svaki dio uparuje s kompatibilnom zalihom i svaki presjek rješava zasebno, vraćajući zbrojeve po presjeku i za cijeli posao. Razdvajanje posla na više 1D poziva umjesto toga koštalo bi jedan poziv po presjeku, prebacilo bi upravljanje zalihom na vas i dalo ukupnu vrijednost koja se ne slaže s aplikacijom.
Što se događa s dijelom čijeg presjeka nema na zalihi?
Vraća se u zasebnom unmatched popisu — potražnja čiji presjek uopće nema zalihe — odvojeno od unplaced (dijelovi koji su imali odgovarajuću zalihu pa nisu stali), jer je rješenje drukčije: jedno je „kupi ili navedi presjek", drugo „dodaj duljinu". Dio koji se ne može u potpunosti postaviti nikad nije greška; to je odgovor 200 s prijavljenim komadima, pa možete djelovati prema planu. Besplatno možete validirati i na POST /v1/validate/wood, bez ključa i bez kvote.
Uzima li u obzir širinu lista pile i ravnanje krajeva?
Da. options.kerf je širina lista pile, oduzima se pri svakom rezu; options.trim.start i options.trim.end rezerviraju rez za ravnanje na svakom kraju duljine. Ostatak prijavljen na svakoj šipki iskoristiv je ostatak nakon oba, a options.minOffcut prijavljuje samo ostatke dovoljno dugačke da se zadrže. Iste opcije vrijede za svaki poprečni presjek u poslu.
Može li planirati samo s građom koju imam u skladištu?
Da. Postavite options.respectStock i količina svakog retka zalihe postaje čvrsto ograničenje, presjek po presjek. Dijelovi koji imaju odgovarajuću zalihu, a ne stanu, vraćaju se u unplaced, dok se dijelovi čijeg presjeka uopće nema na zalihi vraćaju u unmatched, pa plan govori treba li rezati dulje duljine ili kupiti presjek koji nedostaje.

Primjer za obradu drva (aplikacija) · Mjerila