Domandina del giorno.
Mi sono personalizzato un timbro zona, poche cose per la verità (carattere, posizione e colore del testo, r.i), ma ora che sto lavorando per un altro studio il r.i. (rapporto d'illuminazione) lo vogliono espresso diversamente.
Prima usciva la scritta: r.i.: mq. x.xx <1/8= y.yy
Questo studio chiede quest'altra scritta: r.i.: 0.xx (che è la divisione tra la sup. finsetrata e la superf. pavimento) Aggiungerei anche < 0.125 per chiarire ulteriormente il concetto.
Incontro un problema: guardando tutti gli altri timbri non capisco come posso utilizzare l'operazione "diviso"
In parole gdl vorrei scrivere:
room_winds_surf/" "/room_area
ma mi dice che l'operazione deve essere fatta con operatori e operandi numerici
Per fare la precedente scritta mi era uscita la stessa frase, ma impostando dei parametri a monte di tutto il testo, avevo risolto il problema. Ora non so come fare.
C'è qualche anima pia che mi può dare una mano? GRAZIE
prova a verificare le impostazioni del timbro "furbo", se non ricordo male c'è la possibilità di esprimere il rapporto illuminante come divisione ...
bye by WF
caspita! mi costringi a rileggermi tutti i post su questo timbro furbo. Ho trovato con "cerca" come utilizzare il timbro, ma non lo trovo. Ho provato a "caricare altro timbro" da "opzioni-settaggi attributi-categorie zone", ma non so dove cercare.
Ho creato un nuovo disegno con le impostazioni di default e così è apparso nella lista.
Come quel Alessandro del post che ho trovato non vedo niente al suo interno.
Creo una stanza e posiziono il timbro e non vedo nietne all'interno.
Vado nelle sue impostazioni, ma non trovo niente.
Lo apro come oggetto gdl e vedo che ci sono tutte le variabili, ma non c'è niente come testo gdl.
Ho dimenticato qualcosa?
Citazioneroom_winds_surf/" "/room_area
Non ho capito il problema. Puoi essere più chiaro, o riportare l'intera linea che ti dà errore?
Questo è la mia personalizzazione del timbro:
area_form=""
rrr=request ("Area_dimension","",area_form)
supminima = ROOM_AREA*standardmin
room_area = str (area_form, ROOM_AREA)
room_winds_surf = str (area_form, ROOM_WINDS_SURF)
supminima = str (area_form, supminima)
lin_form=""
rrr=request ("Linear_dimension","",lin_form)
room_height = altezza+str (lin_form , ROOM_HEIGHT)
room_perim = udm_lung+" "+str (lin_form , ROOM_PERIM)
unit = ""
area_unit = udm_area
lin_unit = ""
form = ""
room_area = area_unit+" "+room_area
room_winds_surf = area_unit+" "+room_winds_surf
supmin = testo1+" "+supminima
supmin2 = testo2+" "+room_winds_surf
e poi:
if min_y then
n=n+2
vlen =vlen + shight
Text2 0, -vlen, supmin
vlen =vlen + shight
Text2 0, -vlen, supmin2
endif
e nelle variabili ho messo quelle visibili nell'immagine 1.
Ora vorrei che le ultime due righe venissero sostituite da un riga così scritta:
r.i. = 0.154 > 0.125
0.154 è un esempio. Per ottenerlo ho pensato a modificare il testo gdl così:
room_area = area_unit+" "+room_area
room_winds_surf = area_unit+" "+room_winds_surf
supmin2 = room_winds_surf/" "/room_area (cioè superficie finestrata diviso l'area della stanza, ma mi esce
l'avviso della figura 3)
supmin = testo1+" "+supmin2 (se sposto questa linea sopra la precedente mi esce l'avviso nella fig. 4, immagino
perché devo determinare supmin2 prima di inserirlo in qualche sintassi)
supmin3 = testo2
Poi aggiungo questo:
if min_y then
n=n+1
vlen =vlen + shight
Text2 0, -vlen, supmin
vlen =vlen + shight
Text2 0, -vlen, supmin3
E nelle variabili scrivere come in figura 5
Come ho detto vorrei che uscisse questa frase:
r.i. = 0.154 > 0.125
Prima che intervenga lo Zio ;)
Così a occhio.. senza approfondire il listato, hai usato un operatore (la divisione "/") su delle stringhe di testo..
supmin2 = room_winds_surf/room_area
Sicuramente non ti restituirebbe almeno quel messaggio di errore.. tutto il resto purtroppo non ho modo di provarlo adesso
Per effettuare le dovute correzioni dovrei avere l'intero oggetto.
Comunque ci sono alcune cose che posso dire...
Per dividere un valore per un altro, non devi mettere le virgolette e lo spazio: " "
La corretta sintassi non è
supmin2 = room_winds_surf/" "/room_area
ma
supmin2 = room_winds_surf/room_area
Però... room_area all'inizio è un valore numerico, che con l'istruzione
room_area = str (area_form, ROOM_AREA)
viene trasformato in una stringa di testo. Dopo questa trasformazione non può essere più usato in operazioni matematiche.
Idem per room_winds_surf
___________________________________________________
Prova a mettere queste istruzioni ALL'INIZIO dello script GDL (le prime due righe possono essere sostituite da due parametri)
decimali=3
minimo=0.125
rapn = room_winds_surf/room_area
raps = STR(rapn, decimali+1, decimali)
mins = STR(minimo, decimali+1, decimali)
>>> e al posto delle istruzioni che scrivono i risultati, usa le seguenti:
if min_y then
IF rapn>=minimo THEN
testorap= "r.i. = " + raps + " > " + mins
ELSE
testorap= "r.i. = " + raps + " < " + mins
ENDIF
vlen =vlen + shight
Text2 2, -vlen, testorap !
vlen =vlen + shight
endif
>>> Se vuoi regolare correttamente anche la larghezza del timbro, cerca le istruzioni che iniziano con:
uno = ...
due = ...
tre = ...
quattro = ...
e metti SUBITO DOPO (o al posto di "due = ...)
due=stw("r.i. = 0,000 > 0,000")+3
scusate il ritardo per la risposta, ma da casa ho avuto problemi con l'autenticazione, nel senso che, anche se avevo scritto che mi doveva ricordarmi, quando ho messo login e pwd, nella pagina successiva ero sempre un visitatore. :( :shock:
Grazie ai suggerimenti che li terrò in considerazione come l'oro.
Anch' io avevo capito che i due testi non erano più numeri ma solo testo. Ma non capivo come mai in un modo funzionava e nell'altro no. Appena riesco a risolvere il mio cruccio vi posto il risultato. Solo per dovere di cronaca, naturalmente.
Ciao. :D