Inserisci le misure del pannello, la larghezza di taglio, la direzione della venatura e la larghezza, l’altezza e la quantità dei pezzi da tagliare (fino a 8 tipi di pezzo; le righe senza larghezza né altezza vengono ignorate). Lo spessore e il prezzo di un pannello possono restare vuoti.
Indice
-
Cosa puoi fare in questa pagina
-
A cosa serve questo calcolo?
-
Come si usa
-
Formule e figure
-
Pezzi per pannello con un solo tipo di pezzo
-
Pannelli se ogni pezzo si compra separatamente
-
Schema con il metodo a fasce (condizione per stare in una fascia e per impilare le fasce)
-
Superficie di sfrido e resa
-
Numero minimo teorico dalla superficie (limite inferiore)
-
Pannelli risparmiati e costo stimato
-
-
Simboli e termini
-
Cosa conviene sapere prima
-
Come calcolarlo con Excel
-
Come calcolarlo con Fogli Google
-
Come calcolarlo con Python
-
La formula in LaTeX e in altre notazioni matematiche (da copiare)
-
Come chiedere a ChatGPT di fare il calcolo
-
I punti di forza di DataChef
-
Funzioni correlate
-
Tutte le calcolatrici di NumberChef
Cosa puoi fare in questa pagina
- Inserisci le misure del pannello (compensato, OSB o MDF da 2500 × 1250 mm, 2440 × 1220 mm, 2800 × 2070 mm… nell’elenco, o a mano) e la larghezza, l’altezza e la quantità dei pezzi da tagliare (fino a 8 tipi): vedi subito quanti pannelli comprare
- Il calcolo tiene conto della larghezza di taglio (lo spessore della lama, 3 mm di default) e della direzione della venatura (se i pezzi si possono ruotare di 90°). Per un solo tipo di pezzo conta una griglia «in larghezza × in altezza» (confrontando anche l’orientamento ruotato e i pezzi ruotati nella fascia che avanza); per più tipi li raggruppa con il metodo a fasce, riempiendo le fasce dal pezzo più alto al più basso
- Ottieni uno schema di taglio a colori per ogni pannello, che mostra dove va ogni pezzo, e una tabella come «Pannello 1: Piano×2+Fianco×2, sfrido 0,695 m²». Indica anche quanti pannelli si risparmiano raggruppando i pezzi invece di tagliare ogni tipo dai propri pannelli
- Mostra la superficie degli sfridi, la resa (superficie totale dei pezzi ÷ superficie totale dei pannelli) e il numero minimo teorico di pannelli dalla superficie (il limite inferiore), e indica se lo schema lo raggiunge. Inserisci il prezzo di un pannello (facoltativo) per ottenere il costo stimato
- Trovi anche una spiegazione semplice delle formule e le formule da copiare per Excel, Fogli Google e Python
A cosa serve questo calcolo?
Per esempio, per una libreria con 2 piani da 1200 × 600 mm, 4 fianchi da 900 × 550 mm e 3 ripiani da 800 × 450 mm in compensato da 2500 × 1250 mm, comprare pannelli per ogni tipo di pezzo richiede 3 pannelli, ma raggrupparli in fasce per altezza ne richiede solo 2 (pannello 1: piani×2 + fianchi×2; pannello 2: fianchi×2 + ripiani×3).
I pannelli sono ingombranti e difficili da caricare in auto, e i resti occupano posto: fissare il numero di pannelli e lo schema prima di andare in negozio evita lo spreco. Calcola con «Allinea» un compensato decorativo la cui venatura deve restare allineata, e con «Indifferente» un compensato da costruzione o un pannello da verniciare, per risparmiare pannelli.
Il servizio di taglio dei negozi di bricolage (sezionatrice) taglia solo «da un bordo all’altro, in linea retta»; il taglio si paga spesso a ogni taglio, e alcuni negozi limitano il numero di tagli per pannello. Lo schema di questa pagina rispetta questo modo di tagliare (taglio a ghigliottina): seguendo il disegno, «taglia prima dritto per tutta la lunghezza a 600 mm dall’alto, poi taglia di nuovo il pezzo in alto a 1200 mm da sinistra…», non ti perderai al banco (la larghezza di taglio è la parte che toglie la lama: le misure di taglio sono le misure dei pezzi).
Contare i tagli permette di stimare il prezzo del taglio e di verificare di essere entro il limite del negozio. Regola la larghezza di taglio sullo spessore della lama della sezionatrice del negozio (di solito intorno ai 3 mm; chiedi lì). Alcuni negozi rifiutano le fasce molto strette (di pochi centimetri) o i tagli in diagonale o che si fermano a metà: informati prima se hai molti pezzi sottili.
Pezzi di 625 × 625 mm (un quarto di un pannello di 2500 × 1250 mm) sembrano dare 8 pezzi senza larghezza di taglio, ma con 3 mm se ne ricavano solo \(\lfloor 2503 \div 628 \rfloor = 3\) in larghezza e \(\lfloor 1253 \div 628 \rfloor = 1\) in altezza, cioè 3 pezzi. Passando a 622 × 622 mm, se ne ricavano 4 in larghezza × 2 in altezza = 8.
Modificare un poco le misure fin dal progetto può cambiare molto il numero di pannelli. Prova in questa calcolatrice, prima di comprare, aggiustamenti come ridurre di qualche millimetro la profondità di un ripiano o tagliare un piano in due: risparmierai materiale.
Nelle falegnamerie e nelle fabbriche di mobili, nelle aziende di insegne (pannelli compositi di alluminio, plexiglas) o nelle carpenterie in lamiera, il materiale pesa molto sul costo: lì si segue ogni giorno lo schema di taglio (l’ottimizzazione o «nesting») e la resa. La resa di questa pagina, superficie totale dei pezzi divisa per la superficie totale dei pannelli, segue la stessa definizione dell’azienda.
In un’officina si dispongono centinaia di pezzi diversi con programmi specializzati di ottimizzazione del taglio. Il metodo a fasce è un’euristica da manuale per disporre rettangoli, e una delle basi di quei programmi.
Tutto ciò che consiste nel «tagliare rettangoli da una lastra di formato standard» si calcola con le stesse formule del compensato: lastre di plexiglas o di PVC, lastre di cartongesso (spesso da 2000 o 2500 × 1200 mm), pannelli decorativi, OSB (2500 × 1250 mm), e così via. Per un materiale che si incide e poi si spezza, come il vetro, metti la larghezza di taglio a 0 (lo stesso con la piastrella tagliata con il tagliapiastrelle manuale; con una sega ad acqua conta lo spessore del disco), e scegli «Indifferente» per un materiale senza venatura per risparmiare lastre.
Il vetro e il plexiglas sottile si rompono facilmente, e i pannelli con un disegno impongono un verso: regola la larghezza di taglio e la rotazione in base al materiale.
Formule e figure
Simboli e termini
Simboli
| \(W\) | doppia vu | La larghezza del pannello (mm), cioè la lunghezza orizzontale di un pannello comprato. Dalla parola inglese «width» (larghezza), maiuscola per distinguerla dalla larghezza \(w\) dei pezzi. |
| \(H\) | acca | L’altezza del pannello (mm), la sua lunghezza verticale. Dalla parola inglese «height» (altezza), maiuscola per distinguerla dall’altezza \(h\) dei pezzi. Se la direzione della venatura non conta, scambiare larghezza e altezza non cambia il numero (con «Allinea» vanno fatte coincidere con il verso dei pezzi). |
| \(w\), \(w_i\) | doppia vu, doppia vu i | La larghezza di un pezzo (il pannello che vuoi tagliare, in mm). La \(i\) di \(w_i\) è un numero: «l’\(i\)-esimo tipo di pezzo» (ci sono più tipi, come i piani, i fianchi e i ripiani). |
| \(h\), \(h_i\) | acca minuscola, acca i | L’altezza di un pezzo (mm). Nella formula del metodo a fasce, \(h_1,\ h_2,\ \ldots\) indicano anche l’altezza di ogni fascia (altezza della fascia = altezza del pezzo più alto della fascia). |
| \(k\) | cappa | La larghezza di taglio (spessore della lama, in mm). Ogni taglio fa perdere quella larghezza di legno. Dalla parola inglese «kerf» (larghezza del taglio). |
| \(c\) | ci | Il numero di pezzi allineati in larghezza quando si taglia un solo tipo di pezzo. Vale \(\lfloor (W + k) \div (w + k) \rfloor\). Dalla parola inglese «column» (colonna). |
| \(r\) | erre | Il numero di pezzi allineati in altezza quando si taglia un solo tipo di pezzo. Vale \(\lfloor (H + k) \div (h + k) \rfloor\). Dalla parola inglese «row» (riga). |
| \(m\), \(m_i\) | emme, emme i | Il numero di pezzi che si ricavano da un pannello quando si taglia un solo tipo di pezzo: \(m = c \times r\). |
| \(q_i\) | cu i | La quantità necessaria del pezzo \(i\). Dalla parola inglese «quantity» (quantità). |
| \(B_i\) | bi i | Il numero di pannelli necessari solo per il pezzo \(i\). Vale \(\lceil q_i \div m_i \rceil\). |
| \(B_{\text{sep}}\) | bi separato | Il numero totale di pannelli quando ogni tipo di pezzo si taglia dai propri pannelli (acquisto separato): la somma dei \(B_i\). |
| \(B\) | bi | Il numero di pannelli necessari raggruppando i pezzi (schema con il metodo a fasce e simili). È il valore principale di questa pagina. |
| \(n\) | enne | Il numero di pezzi allineati in una fascia. Tra di essi ci sono \(n - 1\) tagli, da qui il suo ruolo nella condizione per stare in una fascia. Da «numero». |
| \(s\) | esse | Il numero di fasce impilate su un pannello. Tra di esse ci sono \(s - 1\) tagli, da qui il suo ruolo nella condizione per impilare. Dalla parola inglese «shelf» (il nome inglese delle fasce). |
| \(A_{\text{sfr}}\) | a sfrido | La superficie degli sfridi (mm², m²): la superficie totale dei pannelli comprati meno quella dei pezzi, con la segatura della larghezza di taglio inclusa. \(A\) viene dalla parola inglese «area» (area). |
| \(Y\) | ipsilon | La resa (%): la superficie totale dei pezzi divisa per quella dei pannelli, moltiplicata per 100. Dalla parola inglese «yield» (resa). |
| \(B_{\min}\) | bi min | Il numero minimo teorico dalla superficie (il limite inferiore). Vale \(\lceil \sum_i q_i (w_i + k)(h_i + k) \div ((W + k)(H + k)) \rceil\); se il numero \(B\) raggruppando è uguale, lo schema è ottimale. «min» abbrevia minimo. |
| \(\Delta\) | delta | Il numero di pannelli risparmiati: \(B_{\text{sep}} - B\). La lettera greca delta si usa spesso per indicare una differenza. |
| \(u\) | u | Il prezzo di un pannello (€). Dalla «u» di «prezzo unitario». |
| \(T\) | ti | Il costo stimato (€), dalla prima lettera di «totale». Copre solo i pannelli, non il taglio né il trasporto. |
| \(\lfloor x \rfloor\) | parte intera | Il simbolo che arrotonda un numero per difetto (per esempio \(\lfloor 3{,}11 \rfloor = 3\), \(\lfloor 2 \rfloor = 2\)). Il numero di pezzi che si ricavano «lascia da parte ciò che non ci sta», da qui questo simbolo. |
| \(\lceil x \rceil\) | parte intera superiore | Il simbolo che arrotonda un numero per eccesso (per esempio \(\lceil 1{,}45 \rceil = 2\), \(\lceil 2 \rceil = 2\)). Il numero di pannelli che si comprano «aggiunge un pannello per ciò che manca», da qui questo simbolo. |
| \(\sum\) | sigma (sommatoria) | Il simbolo «somma tutto». \(\sum_i q_i w_i h_i\) vuol dire: calcolare \(q_i w_i h_i\) (quantità × larghezza × altezza) per ogni tipo di pezzo \(i\) e sommare tutto. È la lettera greca sigma, che corrisponde alla S di «somma». |
Termini
| pannello | La grande tavola da cui si tagliano i pezzi. Compensato, MDF, truciolare, melaminico, plexiglas, lamiera… qualsiasi materiale venduto in lastre di formato standard. Questa pagina lo tratta come un rettangolo di larghezza \(W\) × altezza \(H\). |
| schema di taglio | Il modo di ripartire i pezzi sui pannelli prima di tagliarli (si parla anche di distinta di taglio o di ottimizzazione del taglio). Questa pagina tratta il taglio in due dimensioni (larghezza e altezza); il taglio in una dimensione, solo in lunghezza, come listelli o tubi, si fa con la «Calcolatrice di taglio del legno». |
| larghezza di taglio | La larghezza di legno che si perde a ogni taglio, pari allo spessore della lama (in inglese «kerf»). Le lame delle seghe circolari o delle sezionatrici misurano di solito da 1,5 a 3 mm; si calcolano in genere circa 3 mm per le schegge e il segno a matita. Se conosci lo spessore della tua lama (di solito è inciso sulla lama), inseriscilo. La larghezza di taglio si somma a ogni taglio: pesa di più quanto più i pezzi sono piccoli e numerosi. |
| direzione della venatura | Il disegno della superficie del legno, che segue il verso delle fibre. In un compensato decorativo o nel legno massiccio, i pezzi con la venatura in disordine danno una finitura poco naturale: allora non si possono ruotare i pezzi di 90° nello schema di taglio. Questa pagina permette di scegliere la «Direzione della venatura». Per un compensato da costruzione o un pannello da verniciare, «Indifferente» è la scelta giusta. |
| taglio a ghigliottina | Un taglio dritto che attraversa il pannello da un bordo all’altro; poi i pezzi si tagliano di nuovo allo stesso modo. Le sezionatrici dei servizi di taglio dei negozi fanno solo questo tipo di taglio, ed è per questo che questa calcolatrice si limita agli schemi che si possono tagliare così (metodo a fasce). Ammettere tagli che si fermano a metà (tagli a L) permetterebbe a volte di sfruttare di più il pannello, ma sono difficili anche con una sega circolare. |
| metodo a fasce | Un metodo di disposizione che ordina i pezzi dal più alto al più basso e riempie il pannello dall’alto verso il basso con «fasce» che lo attraversano. In inglese FFDH (First Fit Decreasing Height, «nella prima fascia che va bene, per altezza decrescente»); è un’euristica classica di disposizione di rettangoli. I tagli attraversano il pannello da bordo a bordo: si può consegnare lo schema così com’è a un servizio di taglio. Semplice ed efficace, non dà sempre il minor numero possibile di pannelli. |
| sfrido | Il materiale che resta dopo aver tagliato i pezzi, come la striscia stretta al bordo del pannello o il pezzo che avanza a destra di una fascia. Meno sfridi ci sono, meno spreco c’è e maggiore è la resa. Gli sfridi grandi servono per piccoli ripiani o rinforzi. |
| resa | La parte di materiale realmente usata per i pezzi. In questa pagina è «superficie totale dei pezzi ÷ superficie totale dei pannelli comprati»; si avvicina al 100% quando diminuiscono gli sfridi e la larghezza di taglio. Si parla anche di tasso di utilizzo o di rendimento del materiale. |
| limite inferiore | Un valore al di sotto del quale non si può scendere, per quanto ingegnosi si sia. Il numero minimo teorico di questa pagina è un limite inferiore ricavato dalla superficie; se il numero di pannelli dello schema è uguale, si sa che lo schema è ottimale. Altrimenti, nel taglio in due dimensioni la forma dei pezzi di solito impedisce di raggiungerlo. |
| soluzione ottimale | La risposta migliore tra tutti i modi possibili; qui, lo schema che usa meno pannelli. Se il numero raggruppando eguaglia il limite inferiore, è una soluzione ottimale; altrimenti questa calcolatrice non esplora tutte le combinazioni e non può confermarlo. |
| euristica | Un metodo che dà in fretta una buona risposta con passi fissi, senza garanzia di raggiungere la soluzione ottimale. Nei problemi di combinazioni come il taglio dei pannelli, il numero di disposizioni possibili esplode con il numero di pezzi e non si può provare tutto: per questo si usano le euristiche, anche in ambito professionale. Il metodo a fasce e il calcolo a griglia di questa pagina lo sono. |
| compensato | Un pannello fatto di sottili fogli di legno (impiallacciature) incollati con la venatura incrociata (si chiama anche multistrato). Si deforma poco ed esiste in grandi formati, da cui il suo uso comune nel fai da te per ripiani, scatole e supporti. Esiste compensato di pioppo, di okoumé, di betulla, da costruzione e così via; gli spessori comuni sono 5, 10, 15, 18 e 22 mm, e i formati comuni sono 2500 × 1250 mm e 2440 × 1220 mm (misure non verificate per l’Italia). |
| MDF | Il pannello di fibre a media densità (Medium Density Fiberboard), detto in Italia MDF: fibre di legno incollate sotto pressione. La sua superficie è liscia e uniforme, ideale da verniciare. I formati comuni sono 2440 × 1220 mm e 2800 × 2070 mm (misure non verificate per l’Italia). |
| OSB | Il pannello di grandi scaglie di legno orientate e incollate (Oriented Strand Board). Economico e resistente, si usa soprattutto nell’edilizia (pareti, pavimenti, coperture) e si trova spesso in 2500 × 1250 mm (c’è anche il 2440 × 1220 mm, o con bordo ad incastro; misure non verificate per l’Italia). |
Cosa conviene sapere prima
Ecco cosa conviene sapere per usare il calcolo di questa pagina capendone il senso, e non solo premendo il pulsante.
| Divisione con resto (classi 3ª–4ª della primaria, 8-10 anni) |
|
| Arrotondamenti (classi 4ª–5ª della primaria, 9-11 anni) |
|
| Area del rettangolo (classi 3ª–5ª della primaria, 8-11 anni) |
|
| Percentuali (classe 5ª della primaria e classe 1ª della secondaria di primo grado, 10-12 anni) |
|
| Espressioni letterali e disuguaglianze (classi 1ª–2ª della secondaria di primo grado, 11-13 anni) |
|
Come calcolarlo con Excel
| Larghezza del pannello (mm) | 2500 |
| Altezza del pannello (mm) | 1250 |
| Larghezza del pezzo (mm) | 800 |
| Altezza del pezzo (mm) | 500 |
| Larghezza di taglio (mm) | 3 |
| Numero in larghezza | =INT((B1+B5)/(B3+B5)) |
| Numero in altezza | =INT((B2+B5)/(B4+B5)) |
| Pezzi per pannello | =B6*B7 |
| Quantità di pezzi | 8 |
| Pezzi per pannello | 6 |
| Pannelli necessari | =ARROTONDA.PER.ECC(B1/B2;0) |
| Numero di pannelli | 2 |
| Larghezza del pannello (mm) | 2500 |
| Altezza del pannello (mm) | 1250 |
| Superficie totale dei pezzi (mm²) | 4500000 |
| Superficie di sfrido (mm²) | =B1*B2*B3-B4 |
| Superficie di sfrido (m²) | =B5/1000000 |
| Resa (%) | =B4/(B1*B2*B3)*100 |
| Somma per tutti i pezzi di (larghezza + larghezza di taglio) × (altezza + larghezza di taglio) (mm²) | 4539531 |
| (larghezza del pannello + larghezza di taglio) × (altezza del pannello + larghezza di taglio) (mm²) | 3136259 |
| Numero minimo teorico | =ARROTONDA.PER.ECC(B1/B2;0) |
| Pannelli comprando separatamente | 3 |
| Pannelli raggruppando | 2 |
| Prezzo di un pannello (€) | 60 |
| Pannelli risparmiati | =B1-B2 |
| Costo stimato (€) | =B3*B2 |
«INT(valore)» arrotonda per difetto (il ⌊ ⌋ delle formule) e «ARROTONDA.PER.ECC(valore; 0)» arrotonda per eccesso (il ⌈ ⌉ delle formule).
B8 della prima tabella vale 6 (3 in larghezza × 2 in altezza), B3 della seconda tabella 2 pannelli, B6 della terza tabella 1,75 m² e B7 il 72% (2 piani, 4 fianchi e 3 ripiani su 2 pannelli), B3 della quarta tabella 2 pannelli, e la quinta tabella dà 1 pannello risparmiato per un costo di 120 €.
Lo schema con il metodo a fasce richiede di ordinare i pezzi per altezza e di disporli a mano da fascia a fascia: in un foglio di calcolo usa le tabelle soprattutto per verificare il numero di pezzi, gli sfridi e il limite inferiore, e fai lo schema in questa pagina o con il codice Python qui sotto.
Come calcolarlo con Fogli Google
| Larghezza del pannello (mm) | 2500 |
| Altezza del pannello (mm) | 1250 |
| Larghezza del pezzo (mm) | 800 |
| Altezza del pezzo (mm) | 500 |
| Larghezza di taglio (mm) | 3 |
| Numero in larghezza | =INT((B1+B5)/(B3+B5)) |
| Numero in altezza | =INT((B2+B5)/(B4+B5)) |
| Pezzi per pannello | =B6*B7 |
| Quantità di pezzi | 8 |
| Pezzi per pannello | 6 |
| Pannelli necessari | =ARROTONDA.PER.ECC(B1/B2;0) |
| Numero di pannelli | 2 |
| Larghezza del pannello (mm) | 2500 |
| Altezza del pannello (mm) | 1250 |
| Superficie totale dei pezzi (mm²) | 4500000 |
| Superficie di sfrido (mm²) | =B1*B2*B3-B4 |
| Superficie di sfrido (m²) | =B5/1000000 |
| Resa (%) | =B4/(B1*B2*B3)*100 |
| Somma per tutti i pezzi di (larghezza + larghezza di taglio) × (altezza + larghezza di taglio) (mm²) | 4539531 |
| (larghezza del pannello + larghezza di taglio) × (altezza del pannello + larghezza di taglio) (mm²) | 3136259 |
| Numero minimo teorico | =ARROTONDA.PER.ECC(B1/B2;0) |
| Pannelli comprando separatamente | 3 |
| Pannelli raggruppando | 2 |
| Prezzo di un pannello (€) | 60 |
| Pannelli risparmiati | =B1-B2 |
| Costo stimato (€) | =B3*B2 |
Come calcolarlo con Python
import math
sheet_w, sheet_h = 2500, 1250 # larghezza e altezza del pannello (mm)
kerf = 3 # larghezza di taglio (spessore della lama, mm)
rotate = True # True se la venatura non conta (i pezzi si possono ruotare di 90°)
unit_price = 60 # prezzo di un pannello (€), solo un esempio
# pezzi da tagliare: (nome, larghezza mm, altezza mm, quantità)
parts = [("Piano", 1200, 600, 2), ("Fianco", 900, 550, 4), ("Ripiano", 800, 450, 3)]
# pannelli se ogni pezzo si compra separatamente (griglia in larghezza × in altezza; se si può ruotare, si prova anche l’altro verso)
def per_sheet(w, h):
return ((sheet_w + kerf) // (w + kerf)) * ((sheet_h + kerf) // (h + kerf)) # arrotondamento per difetto (il ⌊ ⌋ delle formule)
sheets_separate = 0
for name, w, h, qty in parts:
m = max(per_sheet(w, h), per_sheet(h, w) if rotate else 0)
sheets_separate += math.ceil(qty / m) # arrotondamento per eccesso (il ⌈ ⌉ delle formule)
# pezzi raggruppati: metodo a fasce (per altezza decrescente, nella prima fascia che va bene; se si può ruotare, lato lungo in larghezza)
pieces = []
for name, w, h, qty in parts:
pw, ph = (max(w, h), min(w, h)) if rotate else (w, h)
pieces += [(name, pw, ph)] * qty
pieces.sort(key=lambda p: (-p[2], -p[1]))
sheets = [] # per ogni pannello {"y": posizione della fascia successiva, "shelves": [{"y", "h", "x", "parts"}]}
for name, pw, ph in pieces:
for sheet in sheets:
shelf = next((s for s in sheet["shelves"] if ph <= s["h"] and pw <= sheet_w - s["x"]), None)
if shelf is None and ph <= sheet_h - sheet["y"]:
shelf = {"y": sheet["y"], "h": ph, "x": 0, "parts": []}
sheet["shelves"].append(shelf)
sheet["y"] += ph + kerf
if shelf is not None:
shelf["parts"].append((name, shelf["x"], shelf["y"], pw, ph))
shelf["x"] += pw + kerf
break
else:
sheets.append({"y": ph + kerf, "shelves": [{"y": 0, "h": ph, "x": pw + kerf, "parts": [(name, 0, 0, pw, ph)]}]})
# sfridi, resa e limite inferiore dalla superficie
parts_area = sum(qty * w * h for name, w, h, qty in parts)
total_area = len(sheets) * sheet_w * sheet_h
lower_bound = math.ceil(sum(qty * (w + kerf) * (h + kerf) for name, w, h, qty in parts) / ((sheet_w + kerf) * (sheet_h + kerf)))
print(f"Acquisto separato di ogni pezzo: {sheets_separate} pannelli")
print(f"Pezzi raggruppati (metodo a fasce): {len(sheets)} pannelli (limite inferiore dalla superficie: {lower_bound})")
for i, sheet in enumerate(sheets, 1):
for shelf in sheet["shelves"]:
print(f" Pannello {i} fascia (y={shelf['y']}): " + ", ".join(f"{n}@x={x} {pw}x{ph}" for n, x, y, pw, ph in shelf["parts"]))
print(f"Superficie di sfrido: {(total_area - parts_area) / 1e6:.3f} m² Resa: {parts_area / total_area * 100:.1f} %")
print(f"Costo stimato: {unit_price * len(sheets)} €")
La formula in LaTeX e in altre notazioni matematiche (da copiare)
c = ⌊(W + k) ÷ (w + k)⌋, r = ⌊(H + k) ÷ (h + k)⌋, m = c × r
c = \left\lfloor \frac{W + k}{w + k} \right\rfloor,\quad r = \left\lfloor \frac{H + k}{h + k} \right\rfloor,\quad m = c \times r
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>c</mi>
<mo>=</mo>
<mo>⌊</mo>
<mfrac>
<mrow><mi>W</mi><mo>+</mo><mi>k</mi></mrow>
<mrow><mi>w</mi><mo>+</mo><mi>k</mi></mrow>
</mfrac>
<mo>⌋</mo>
<mo>,</mo>
<mi>r</mi>
<mo>=</mo>
<mo>⌊</mo>
<mfrac>
<mrow><mi>H</mi><mo>+</mo><mi>k</mi></mrow>
<mrow><mi>h</mi><mo>+</mo><mi>k</mi></mrow>
</mfrac>
<mo>⌋</mo>
<mo>,</mo>
<mi>m</mi>
<mo>=</mo>
<mi>c</mi>
<mo>×</mo>
<mi>r</mi>
</mrow>
</math>
c = |__ (W + k) / (w + k) __|, r = |__ (H + k) / (h + k) __|, m = c * r
c = Floor[(W + k)/(w + k)]; r = Floor[(H + k)/(h + k)]; m = c*r
c := floor((W + k)/(w + k)); r := floor((H + k)/(h + k)); m := c*r;
c = floor((W + k)/(w + k)); r = floor((H + k)/(h + k)); m = c*r;
c = ⌊(W + k)/(w + k)⌋, r = ⌊(H + k)/(h + k)⌋, m = c × r
Bᵢ = ⌈qᵢ ÷ mᵢ⌉, Bsep = B₁ + B₂ + …
B_i = \left\lceil \frac{q_i}{m_i} \right\rceil,\quad B_{\text{sep}} = \sum_i B_i
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>B</mi><mi>i</mi></msub>
<mo>=</mo>
<mo>⌈</mo>
<mfrac><msub><mi>q</mi><mi>i</mi></msub><msub><mi>m</mi><mi>i</mi></msub></mfrac>
<mo>⌉</mo>
<mo>,</mo>
<msub><mi>B</mi><mtext>sep</mtext></msub>
<mo>=</mo>
<munder><mo>∑</mo><mi>i</mi></munder>
<msub><mi>B</mi><mi>i</mi></msub>
</mrow>
</math>
B_i = |~ q_i / m_i ~|, B_"sep" = sum_i B_i
Total[Ceiling[q/m]]
B := add(ceil(q[i]/m[i]), i = 1 .. n);
B = sum(ceil(q ./ m));
B_i = ⌈q_i/m_i⌉, B_sep = ∑_i B_i
w₁ + w₂ + … + wₙ + (n − 1)k ⩽ W, h₁ + h₂ + … + hₛ + (s − 1)k ⩽ H
\sum_{j=1}^{n} w_j + (n - 1)k \leqslant W,\quad \sum_{t=1}^{s} h_t + (s - 1)k \leqslant H
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<munderover><mo>∑</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover>
<msub><mi>w</mi><mi>j</mi></msub>
<mo>+</mo>
<mo>(</mo><mi>n</mi><mo>−</mo><mn>1</mn><mo>)</mo><mi>k</mi>
<mo>≤</mo>
<mi>W</mi>
<mo>,</mo>
<munderover><mo>∑</mo><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>s</mi></munderover>
<msub><mi>h</mi><mi>t</mi></msub>
<mo>+</mo>
<mo>(</mo><mi>s</mi><mo>−</mo><mn>1</mn><mo>)</mo><mi>k</mi>
<mo>≤</mo>
<mi>H</mi>
</mrow>
</math>
sum_(j=1)^n w_j + (n - 1) k <= W, sum_(t=1)^s h_t + (s - 1) k <= H
Total[w] + (Length[w] - 1)*k <= W && Total[h] + (Length[h] - 1)*k <= H
add(w[j], j = 1 .. n) + (n - 1)*k <= W; add(h[t], t = 1 .. s) + (s - 1)*k <= H;
sum(w) + (numel(w) - 1)*k <= W && sum(h) + (numel(h) - 1)*k <= H
∑_(j=1)^n w_j + (n − 1)k ≤ W, ∑_(t=1)^s h_t + (s − 1)k ≤ H
Asfr = B × W × H − Σ qᵢ wᵢ hᵢ, Y = Σ qᵢ wᵢ hᵢ ÷ (B × W × H) × 100
A_{\text{sfr}} = B\,W\,H - \sum_i q_i w_i h_i,\quad Y = \frac{\sum_i q_i w_i h_i}{B\,W\,H} \times 100
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>A</mi><mtext>sfr</mtext></msub>
<mo>=</mo>
<mi>B</mi><mo>⁢</mo><mi>W</mi><mo>⁢</mo><mi>H</mi>
<mo>−</mo>
<munder><mo>∑</mo><mi>i</mi></munder>
<msub><mi>q</mi><mi>i</mi></msub><msub><mi>w</mi><mi>i</mi></msub><msub><mi>h</mi><mi>i</mi></msub>
<mo>,</mo>
<mi>Y</mi>
<mo>=</mo>
<mfrac>
<mrow><munder><mo>∑</mo><mi>i</mi></munder><msub><mi>q</mi><mi>i</mi></msub><msub><mi>w</mi><mi>i</mi></msub><msub><mi>h</mi><mi>i</mi></msub></mrow>
<mrow><mi>B</mi><mo>⁢</mo><mi>W</mi><mo>⁢</mo><mi>H</mi></mrow>
</mfrac>
<mo>×</mo>
<mn>100</mn>
</mrow>
</math>
A_"sfr" = B W H - sum_i q_i w_i h_i, Y = (sum_i q_i w_i h_i) / (B W H) * 100
{B*W*H - Total[q*w*h], Total[q*w*h]/(B*W*H)*100}
Awaste := B*W*H - add(q[i]*w[i]*h[i], i = 1 .. n); Y := add(q[i]*w[i]*h[i], i = 1 .. n)/(B*W*H)*100;
Awaste = B*W*H - sum(q .* w .* h); Y = sum(q .* w .* h)/(B*W*H)*100;
A_sfr = BWH − ∑_i q_i w_i h_i, Y = (∑_i q_i w_i h_i)/(BWH) × 100
Bmin = ⌈Σ qᵢ (wᵢ + k)(hᵢ + k) ÷ ((W + k)(H + k))⌉
B_{\min} = \left\lceil \frac{\sum_i q_i (w_i + k)(h_i + k)}{(W + k)(H + k)} \right\rceil
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>B</mi><mi>min</mi></msub>
<mo>=</mo>
<mo>⌈</mo>
<mfrac>
<mrow><munder><mo>∑</mo><mi>i</mi></munder><msub><mi>q</mi><mi>i</mi></msub><mo>(</mo><msub><mi>w</mi><mi>i</mi></msub><mo>+</mo><mi>k</mi><mo>)</mo><mo>(</mo><msub><mi>h</mi><mi>i</mi></msub><mo>+</mo><mi>k</mi><mo>)</mo></mrow>
<mrow><mo>(</mo><mi>W</mi><mo>+</mo><mi>k</mi><mo>)</mo><mo>(</mo><mi>H</mi><mo>+</mo><mi>k</mi><mo>)</mo></mrow>
</mfrac>
<mo>⌉</mo>
</mrow>
</math>
B_min = |~ (sum_i q_i (w_i + k)(h_i + k)) / ((W + k)(H + k)) ~|
Ceiling[Total[q*(w + k)*(h + k)]/((W + k)*(H + k))]
Bmin := ceil(add(q[i]*(w[i] + k)*(h[i] + k), i = 1 .. n)/((W + k)*(H + k)));
Bmin = ceil(sum(q .* (w + k) .* (h + k))/((W + k)*(H + k)));
B_min = ⌈(∑_i q_i (w_i + k)(h_i + k))/((W + k)(H + k))⌉
Δ = Bsep − B, T = u × B
\Delta = B_{\text{sep}} - B,\quad T = u \times B
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>Δ</mi>
<mo>=</mo>
<msub><mi>B</mi><mtext>sep</mtext></msub>
<mo>−</mo>
<mi>B</mi>
<mo>,</mo>
<mi>T</mi>
<mo>=</mo>
<mi>u</mi>
<mo>×</mo>
<mi>B</mi>
</mrow>
</math>
Delta = B_"sep" - B, T = u * B
{bSep - b, u*b}
Delta := Bsep - B; T := u*B;
Delta = Bsep - B; T = u*B;
Δ = B_sep − B, T = u × B
Come chiedere a ChatGPT di fare il calcolo
Sei un assistente di calcolo per il taglio dei pannelli (schema di taglio). Esegui il calcolo seguente eseguendo davvero codice Python e basa la risposta solo sui numeri ottenuti dall’esecuzione (non rispondere a memoria o a intuito). Da pannelli di compensato da 2500 × 1250 mm, con una larghezza di taglio di 3 mm e pezzi che si possono ruotare di 90°, si tagliano 2 piani da 1200 × 600 mm, 4 fianchi da 900 × 550 mm e 3 ripiani da 800 × 450 mm. Calcola ciascuno dei seguenti valori: 1. Per ogni pezzo, il numero di pezzi per pannello se si taglia solo quel pezzo (⌊(2500+3)÷(larghezza+3)⌋ × ⌊(1250+3)÷(altezza+3)⌋; calcola anche l’orientamento con larghezza e altezza scambiate e tieni il maggiore) 2. Il numero totale di pannelli se ogni tipo di pezzo si taglia dai propri pannelli (somma delle quantità ÷ pezzi per pannello, arrotondate per eccesso) 3. Il numero di pannelli e la posizione dei pezzi su ogni pannello con il metodo a fasce (First Fit Decreasing Height: pezzi ordinati per altezza decrescente, fasce che attraversano il pannello riempite dall’alto verso il basso; dentro una fascia si avanza di larghezza + larghezza di taglio, e le fasce scendono di altezza + larghezza di taglio) 4. La superficie di sfrido (superficie totale dei pannelli − superficie totale dei pezzi) e la resa (%) 5. Il numero minimo teorico dalla superficie (somma per tutti i pezzi di (larghezza+3) × (altezza+3), divisa per (2500+3) × (1250+3), arrotondata per eccesso) Indica il codice usato e i numeri ottenuti dall’esecuzione.
Come si usa
-
1Inserisci i numeriScrivi nei campi i numeri con cui vuoi fare il calcolo
-
2CalcolaFai clic sul pulsante «Calcola»
-
3Guarda il risultatoIl risultato compare subito. Nella stessa pagina trovi anche lo svolgimento del calcolo e la spiegazione della formula
I punti di forza di DataChef
Nessuna competenza richiesta, semplice e intuitivo
Nessun dato personale richiesto
Il file viene eliminato automaticamente dopo il download
Nessun obbligo di attribuzione
Nessuna autorizzazione preventiva necessaria