Carlo (Member)
Guru^2
Messaggi: 1420
Iscritto: 29/01/2018
|
Si.
in programmazione tutto è permesso |
|
Carlo (Member)
Guru^2
Messaggi: 1420
Iscritto: 29/01/2018
|
Postato originariamente da bernie:
Hai ragione, larghezzamm 1000, altezzamm 2000, framemm65,gapmm5, mmpixel 14,17
Perché dici che non cambio nome? Ogni case ha un valore diverso di nome che passo alla sub. |
E' ambiguo mmpixel 14,17 significa mmpixel = 14.17 ?
non so quanto vale nteste
in programmazione tutto è permesso |
|
Carlo (Member)
Guru^2
Messaggi: 1420
Iscritto: 29/01/2018
|
Alla riga 81:
Dim ind As UInt32 = colonna + riga * immagine.Width
Non puoi usare immagine.Width perché è un numero assoluto non rapportato al vettore (pixel pari o dispari e/o 2 pixel a byte). Devi usare (come avevo fatto nell'esempio quando passavo larghezza) bmpData.Stride (che contiene la larghezza reale rappresentata nel vettore).
La riga 81 diventa:
Dim ind As UInt32 = colonna + riga * bmpData.Stride
Il programma sembra che funzioni, ma non ti fare ingannare, il vettore è nero all'inizio (tutti zeri), il rettangolo bianco (15) è il secondo che hai creato, ed ecco che appaiono il nero default e il bianco disegnato, il disegno del rettangolo nero è perso perché sovrascritto.
Poi vedo che vuoi il nero sul livello 15 e il bianco sul livello 0. Per ottenerlo devi invertire la palette quando la crei. (già lo avevi fatto in un esempio che mi avevi mandato)
Potresti anche considerare (quando avrai invertito la palette) che l'mmagine è tutta bianca (con tutti zeri) ed andare a scrivere solo il rettangolo nero (con tutti 15) evitando di disegnare due rettangoli, se è sufficiente...
Ultima modifica effettuata da Carlo il 10/08/2021 alle 0:14
in programmazione tutto è permesso |
|
bernie (Normal User)
Pro
Messaggi: 164
Iscritto: 23/10/2019
|
mmpixel 14.17 mentre nteste 1 . Per quanto riguarda le palette, devo cambiare per usare solo 3 bpp. Per quando riguarda fare solo un rettangolo nero, in effetti dovrebbe andare bene, in quanto il rettangolo bianco è praticamente grande come il bmp. Il punto è che in pratica i rettangoli dovrebbero essere 3 , il primo bianco della dimensione della grafica, il secondo non bianco il terzo dentro il secondo ma bianco. Il salvataggio nella funzione è solo per vedere se il risultato è quello che voglio, in quanto dopo devo tagliarle verticalmente a una data larghezza e poi solo allora salvare il tutto. Oggi pomeriggio provo. Grazie
|
|
bernie (Normal User)
Pro
Messaggi: 164
Iscritto: 23/10/2019
|
Ti allego un esempio della grafica che vorrei creare . Come avrai capito , tutti i vanno impostati da esterno .
Per questo pensavo di creare il primo rettangolo bianco ( la grafica totale ) poi aggiungere il rettangolo nero e infine sul rettangolo nero il terzo rettangolo più piccolo.
In fin dei conti si può scomporre in 3 rettangoli inscritti uno dentro l'altro.
Grazie
|
|
Carlo (Member)
Guru^2
Messaggi: 1420
Iscritto: 29/01/2018
|
L'immagine che hai postato è chiara, ma le spiegazioni no o viceversa.
Per questo pensavo di creare il primo rettangolo bianco ( la grafica totale ) (ok) poi aggiungere il rettangolo nero (ok) e infine sul rettangolo nero il terzo rettangolo più piccolo (non capisco).
In fin dei conti si può scomporre in 3 rettangoli inscritti uno dentro l'altro (non capisco, i rettangoli dell'immagine non sono inscritti).
Per quando riguarda fare solo un rettangolo nero, in effetti dovrebbe andare bene, in quanto il rettangolo bianco è praticamente grande come il bmp (ok). Il punto è che in pratica i rettangoli dovrebbero essere 3 (ok), il primo bianco della dimensione della grafica (ok), il secondo non bianco (nero va bene??) il terzo dentro il secondo ma bianco (c'entra con l'esempio allegato??).
Ultima modifica effettuata da Carlo il 10/08/2021 alle 13:55
in programmazione tutto è permesso |
|
bernie (Normal User)
Pro
Messaggi: 164
Iscritto: 23/10/2019
|
La parte nera, è un rettangolo a cui manca una parte sulla dx, per l'appunto il terzo rettangolo bianco. I rettangoli sono inscritti in quanto uno dentro l'altro. Il secondo rettangolo ( quello non bianco per intenderci) avrà il colore( toni di grigio) in accordo con il valore di colore( da 1 a 8 essendo una grafica a 3 bpp) . Il terzo trattandolo serve per " cancellare" una determinata parte del secondo rettangolo. Nell'immagine postata, i tre rettangoli hanno il punto di origine diverso, ma il punto finale ( in basso a destra) uguale. Spero di essere stato più chiaro. Scusa e grazie.
|
|
Carlo (Member)
Guru^2
Messaggi: 1420
Iscritto: 29/01/2018
|
sono ancora più confuso.
Cancelliamo e torniamo alle descrizioni. Ho allegato un'immagine che per me rappresenta quello che dici.
Non capisco quale sia la connessione con l'immagine d'esempio che invece hai postato.
EDIT:
Forse ci sono arrivato, scusa, la elle rovesciata nera, originariamente era un rettangolo nero pieno che poi fai apparire come una elle rovesciata, disegnando in basso a destra il rettangolo bianco.
Ora è chiaro anche l'ultimo post.
E' sempre così? Visto che usi dimensioni enormi, disegnare quadrati sovrapposti non mi sembra logico, potresti disegnare due rettangoli disposti ad elle...
Comunque il programma non cambierebbe, saresti solo tu a dare gli imput giusti per disegnare rettangoli oppure quadrati sovrapposti.
Ultima modifica effettuata da Carlo il 10/08/2021 alle 16:31
in programmazione tutto è permesso |
|