Parete con nicchia letto
Questa pagina ridisegna da codice la tavola di riferimento: una parete attrezzata larga 237 cm, alta 316 e profonda 80, con una nicchia letto rialzata, cassetti in alto e ante, gradini e cassetti in basso. Tutte le misure sono in cm.
Il mobile è descritto da un oggetto di parametri e da una funzione che lo trasforma in parti (scatole). Viste, quote, 3D e distinta vengono tutte da lì. Per capire come funziona il codice, passo passo: come funziona Caderò.
import cadero, parete # libreria (src/) e modello del mobile (models/)
let p = rilievo() # i parametri letti dal disegno
let m = parete(p) # il modello: una lista di parti
echo "parti: ", m.parts.len, ", altezza totale: ", fmtNum(p.altezza)
parti: 76, altezza totale: 316
La tavola
Prospetto frontale, vista laterale (sezione dentro la colonna destra guardando verso sinistra, con la libreria tagliata e il cassetto centrale aperto) e pianta (sezione all'altezza della nicchia, col materasso tratteggiato). In testa al letto la colonna destra è aperta verso la nicchia: sotto c'è la testata con il gavone, sopra il piano della testata, che fa da comodino, e la libreria con scaffali meno profondi. Dietro a destra, tratteggiata, la risega del muro: la colonna si ferma contro di essa. Le quote sono generate dai parametri: se cambia una misura, cambiano anche loro.
let svgTavola = tavola(p, m)
Vista 3D
Per vederla a tutto schermo, con viste predefinite (anche da dentro la nicchia), le parti che si aprono toccandole e l'esploso: Visore 3D - Idea.
Trascina per ruotare, pizzica o usa la rotella per lo zoom.
Cambiare le misure
Una variante: nicchia più bassa di 10 cm, quattro gradini invece di cinque e cassetti in basso tutti chiusi. L'altezza è quella della stanza e resta 316: le ribalte stanno dove sono, si allunga lo stacco tra la nicchia e le ribalte.
var p2 = rilievo()
p2.altezze.nicchia = 149.2
p2.bassa.nGradini = 4
p2.disegno.cassettoAperto = -1
let m2 = parete(p2)
echo "altezza totale: ", fmtNum(p2.altezza), ", apertura della nicchia: ", fmtNum(p2.nicchiaH)
var foglio = initSheet()
let fronte = View(kind: vFront)
foglio.draw(fronte, m2)
for q in quote(p2):
if q.view == vFront: foglio.draw(fronte, q)
altezza totale: 316, apertura della nicchia: 112
Variante: tavolino estraibile
I primi tre gradini stanno nel frontale di un blocco che si estrae del tutto. Il frontale ha gli spigoli dritti (tondi sono solo i vani) e nasconde il piano, che fa da tavolino. Davanti i gradini sono cassetti senza frontale: due fianchi da terra al piano, un fondo in comune dietro e un ripiano sotto ogni gradino. Dietro i cassetti non c'è altro, solo due gambe a pannello alte e sottili sotto il piano, messe di traverso agli angoli: tengono il blocco anche di lato e lasciano libero il fianco, da dove entrano le gambe di chi si siede. Da chiuso le gambe arrivano vicino al muro, senza toccarlo, ed è di nuovo una scaletta.
let pt = rilievo().conTavolino
let mt = parete(pt)
let piano = mt.find("piano tavolino")
let fondo = mt.find("fondo cassetti")
let gamba = mt.find("gamba tavolino")
echo "piano: ", fmtNum(piano.size.x), " × ", fmtNum(piano.size.y), " cm, alto ",
fmtNum(piano.z1), " da terra"
echo "spazio per le gambe, seduti di lato: largo ", fmtNum(gamba.pos.y - fondo.y1),
", sotto il piano ", fmtNum(piano.size.x), ", alto ", fmtNum(piano.pos.z), " cm"
var foglioT = initSheet()
let fronteT = View(kind: vFront)
foglioT.draw(fronteT, parete(rilievo().conTavolino(aperto = false)))
piano: 32.6 × 76.8 cm, alto 62.6 da terra spazio per le gambe, seduti di lato: largo 53.2, sotto il piano 32.6, alto 60.8 cm
Trascina per ruotare, pizzica o usa la rotella per lo zoom.
Cosa non torna
controlli(p) confronta le misure con le decisioni prese e segnala i conflitti.
Con i parametri attuali segnala solo il bordo davanti al materasso (vincolo soft:
almeno 16 cm); con il materasso da 80 delle prime note anche quello:
echo "controlli: ", p.controlli.len
var p80 = rilievo()
p80.materasso.larghezza = 80
for c in p80.controlli: echo "- ", c
controlli: 1 - materasso largo 80 ma tra fronte e muro ci sono 78.2 cm - il bordo davanti al materasso è alto 10 cm: meno di 16
Un controllo a parte guarda se ogni pezzo si ricava da una lastra di multistrato (ipotesi: 300 × 150). Il fronte, 316 × 237, no: va diviso, e dove dividerlo è ancora da decidere.
for f in fuoriLastra(m): echo "- ", f
- fronte 316 x 237: non sta in una lastra 300 x 150
Distinta dei pezzi
Pezzi uguali sono contati insieme; misure dalla più grande alla più piccola.
| pezzi | parte | tipo | misure (cm) |
|---|---|---|---|
| 1 | fronte | pannello | 316 × 237 × 1.8 |
| 2 | fianco gradini | pannello | 102.2 × 31.8 × 1.8 |
| 1 | fondo gradini | pannello | 102.2 × 29 × 1.8 |
| 5 | ripiano gradino | pannello | 30 × 29 × 1.8 |
| 2 | piano letto, soffitto nicchia | pannello | 237 × 78.2 × 1.8 |
| 1 | fianco sx basso | pannello | 102.2 × 78.2 × 1.8 |
| 3 | fianco dx basso, fianco anta stretta | pannello | 102.2 × 69.4 × 1.8 |
| 1 | schienale colonna basso | pannello | 102.2 × 40.6 × 1.8 |
| 1 | pannellino risega basso | pannello | 102.2 × 7 × 1.8 |
| 1 | fianco sx medio | pannello | 159.2 × 78.2 × 1.8 |
| 1 | fianco dx medio | pannello | 159.2 × 69.4 × 1.8 |
| 1 | schienale colonna medio | pannello | 159.2 × 40.6 × 1.8 |
| 1 | pannellino risega medio | pannello | 159.2 × 7 × 1.8 |
| 3 | fianco sx alto, divisorio vani alti | pannello | 78.2 × 51 × 1.8 |
| 1 | fianco dx alto | pannello | 69.4 × 51 × 1.8 |
| 1 | schienale colonna alto | pannello | 51 × 40.6 × 1.8 |
| 1 | pannellino risega alto | pannello | 51 × 7 × 1.8 |
| 1 | divisorio | pannello | 69.4 × 56.2 × 1.8 |
| 1 | materasso | materasso | 190 × 78 × 17 |
| 1 | piano testata (comodino) | pannello | 69.4 × 38.8 × 1.8 |
| 2 | coperchio gavone | pannello | 28.6 × 28.3 × 1 |
| 2 | ripiano libreria | pannello | 69.4 × 26.5 × 1.8 |
| 1 | scatola prese (schuko, 2 USB-C, interruttore luce) | accessorio | 16 × 9 × 6 |
| 3 | ribalta alta | frontale | 68 × 43 × 1.8 |
| 2 | fianco anta | pannello | 102.2 × 76.8 × 1.8 |
| 1 | fondo anta | pannello | 75 × 71 × 1.8 |
| 1 | schiena anta | pannello | 96.2 × 71 × 1.8 |
| 2 | ripiano anta | pannello | 73 × 71 × 1.8 |
| 1 | anta | frontale | 95 × 71 × 1.8 |
| 2 | fianco cassetti | pannello | 102.2 × 75 × 1.8 |
| 3 | frontale cassetto | frontale | 52 × 29 × 1.8 |
| 3 | fondo cassetto | pannello | 71.4 × 46.4 × 1.8 |
| 6 | fianco cassetto | pannello | 73.2 × 26 × 1.8 |
| 3 | schiena cassetto | pannello | 46.4 × 24.2 × 1.8 |
| 1 | fondo anta stretta | pannello | 67.6 × 38.5 × 1.8 |
| 1 | schiena anta stretta | pannello | 96.2 × 38.5 × 1.8 |
| 1 | bastone appendiabiti | accessorio | 38.5 × 2.5 × 2.5 |
| 1 | anta stretta | frontale | 95 × 38.5 × 1.8 |
Ipotesi da verificare
Le misure scritte sulla tavola sono usate così come sono. Le altre le ho
rilevate in scala dal disegno o inventate; sono tutte parametri in
models/parete.nim.
- Spessore pannelli 1.8 cm (multistrato), ipotesi.
- Posizioni orizzontali di frontali e aperture, rilevate in scala: margini laterali 12.5, nicchia da 16 a 181.5 con raggio 18, colonne in basso larghe 71, 29, 52 e 38.5.
- Risega del muro: pilastro dietro a destra per tutta l'altezza, sporge 7 e largo 38.
La colonna destra è quindi profonda 73. È rivestita da un pannello sulla faccia larga
e da un pannellino lungo sul bordo sottile, spezzati in tre come i fianchi. Variante
risegaScoperta(nel visore "Scopri risega"): niente rivestimento, la carta da parati è applicata con cura anche su tutta la risega (Pietro). - Vincoli costruttivi (Pietro): dietro, ai lati, sopra e sotto c'è il muro, quindi niente schienale, niente cielo e niente fondo. Ci sono due soli pannelli lunghi orizzontali, da un fianco all'altro: il piano letto, che sotto la testata fa da fondo al gavone, e il soffitto della nicchia, che fa anche da fondo ai vani alti (prima erano due pannelli). Dietro a destra hanno una tacca per girare intorno alla risega (e il suo rivestimento). I fianchi sono tre per lato, spezzati dai due pannelli lunghi. Il divisorio tra nicchia e colonna poggia sul piano letto e porta il comodino.
- Materasso 78 × 190, spesso 17 (su misura: 80 non entra nei 78.2 cm tra fronte e muro), appoggiato direttamente sul piano a 104.
- Testata e libreria (decisioni dopo il confronto con i nonni): piano della testata 58 sopra il piano letto (17 di materasso + 41 di schienale; era 55, alzata di 3 cm), profondo 37.9 a filo della risega, fa da comodino. Sopra, fino al soffitto della nicchia (265), tre vani alti con la stessa altezza libera (32.5, un passo di 34.3 tra i piani, quotato nella laterale) e scaffali profondi 26.5 (quotati in pianta) appoggiati al fianco destro. Il divisorio è aperto tra il comodino (162) e il soffitto; sotto fa da testata.
- Gavone: il vano chiuso dentro la colonna, tra il piano letto (104), che gli fa da fondo, e il comodino (162). Si apre dall'alto: il piano del comodino ha un'apertura stondata (28 × 57.4, a 4 cm dai fianchi e 6 da fronte e schiena) in cui appoggiano due coperchi leggeri da 1 cm, ognuno metà apertura, che si alzano.
- Scatola dei gradini: una sola, profonda 30 (da definire), che non sta sospesa: due fianchi da terra al piano letto (con il tavolino, da sopra il tavolino), un fondo dietro e un ripiano sotto ogni gradino, dove si appoggia il piede.
- Tavolino (variante): largo quanto le scatole dei gradini (32.6), piano profondo 76.8 (1.4 di gioco dal muro) a 62.6 da terra, sopra il terzo gradino. Cassetti-gradino profondi 20 (le scatole fisse 30); gambe dietro di traverso, larghe 8. Esce di tutta la sua profondità; i fianchi e le gambe scorrono sul pavimento (pattini o feltrini da scegliere).
- Antina del tavolino (variante
antinaTavolino, nel visore "Antina tavolino"): un pannello sotto il piano, solo dietro i cassetti-gradino (tra il loro fondo e le gambe), incernierato sullo spigolo destro del piano. Con il tavolino estratto si ribalta a destra e si affianca al piano alla stessa quota, raddoppiandone la larghezza nella parte dietro. Il fermo che la tiene aperta non è ancora disegnato. - Scatola delle prese (presa schuko, 2 USB-C e interruttore della luce, placca a 4
moduli; ingombro ipotizzato 6 × 16 × 9): contro il fianco destro, vicino al fronte,
rivolta verso il letto. Il cavo arriva nel muro a destra, dietro il fianco, e passa da
un foro nel fianco. Due posizioni: appesa sotto il primo scaffale (di base) oppure,
con
preseSulComodino(nel visore "Prese sul comodino"), appoggiata sul comodino; in quel caso l'apertura del gavone si stringe e finisce 2 cm prima della scatola. - Cassetti in basso profondi 75, con cassa (fondo, fianchi, schiena) 1 cm più stretta del frontale per lato; scorrono tra due fianchi fissi da terra al piano letto (le guide, nel centimetro per lato, non sono disegnate); escono di 60, il centrale è disegnato aperto.
- Ante in basso: dietro ognuna una scatola con i fianchi da terra al piano letto, che fa da cielo, fondo e schiena. Nell'anta a sinistra due ripiani, a un terzo e due terzi dell'altezza; nell'anta stretta un bastone appendiabiti da fianco a fianco, a metà profondità e 7 cm sotto il cielo.
- Vani alti: sotto il soffitto della nicchia, dietro e sopra il muro, ai lati i fianchi alti; due divisori tra le ribalte, dal soffitto della nicchia al muro.
- Fori maniglia di 4 cm; quelli delle ante a 10 cm dal bordo e 12 dall'alto.
- Le linee tratteggiate davanti al mobile nella laterale e nella pianta del disegno originale non sono riprodotte: non è chiaro cosa rappresentino.
- In alto ci sono tre vani con ribalte che si alzano (nel disegno sembravano cassetti).
- Carta da parati Vårklockor (Josef Frank, Svenskt Tenn): le misure non sono note. Dalla foto il motivo è a mezza caduta; ho assunto rotolo da 53 cm e rapporto di 53.