Italian Ancora sulla trasparenza :-(

StefanoTag

Active Member
Licensed User
Longtime User
Salve a tutti, torno di nuovo a chiedere aiuto al Forum.
Non senza difficoltà, con molto impegno e sopratutto con vari aiuti della comunità, siamo riusciti a mettere a punto alla meglio una piccola App che durante un'esperienza di laboratorio, cattura e archivia delle immagini per poi confrontarle e fare dei paragoni con vari effetti grafici tra i quali appunto la trasparenza dell'immagine soprastante rispetto a quella sottostante. Allego alla presente il modulo che effettua questa comparazione e che altro non è che il frutto di vostri suggerimenti e di esempi tratti dai tutorial della comunità. Adesso però abbiamo la difficoltà di poter sovrapporre manualmente le due immagini in modo da provare a centrare o quantomeno avvicinare i punti delle immagini che devono essere tra loro confrontati. Qualcuno può fornirci qualche indicazione in merito? Abbiamo trovato degli esempi che consentono di trascinare e zoomare le immagini con le dita ma, a quel punto non riusciamo più ad effettuare la variazione in trasparenza...è un cane che si morde la coda.
Grazie in anticipo per l'attenzione e per gli eventuali suggerimenti
Stefano
 

Attachments

  • prova.zip
    229.3 KB · Views: 332

LucaMs

Expert
Licensed User
Longtime User
Eh, usi sì due immagini ma un'unica ImageView, mentre se ne dovrebbe usare un'altra, sovrapposta, da poter spostare trascinandola e "zoomarla".

Gli è tutto da rifare, come diceva quel toscano.

Come? Per il momento, personalmente, non prometto (sperò prima di lunedì, se non sia arrivato qualche altro :) generoso, volenteroso membro di B4X).
 

Star-Dust

Expert
Licensed User
Longtime User
Salve a tutti, torno di nuovo a chiedere aiuto al Forum.
Non senza difficoltà, con molto impegno e sopratutto con vari aiuti della comunità, siamo riusciti a mettere a punto alla meglio una piccola App che durante un'esperienza di laboratorio, cattura e archivia delle immagini per poi confrontarle e fare dei paragoni con vari effetti grafici tra i quali appunto la trasparenza dell'immagine soprastante rispetto a quella sottostante. Allego alla presente il modulo che effettua questa comparazione e che altro non è che il frutto di vostri suggerimenti e di esempi tratti dai tutorial della comunità. Adesso però abbiamo la difficoltà di poter sovrapporre manualmente le due immagini in modo da provare a centrare o quantomeno avvicinare i punti delle immagini che devono essere tra loro confrontati. Qualcuno può fornirci qualche indicazione in merito? Abbiamo trovato degli esempi che consentono di trascinare e zoomare le immagini con le dita ma, a quel punto non riusciamo più ad effettuare la variazione in trasparenza...è un cane che si morde la coda.
Grazie in anticipo per l'attenzione e per gli eventuali suggerimenti
Stefano

B4X:
'Alfa 0..255
Sub AlfaCorrect(BmpOriginal As Bitmap, AlfaValue As Int) As Bitmap
    Dim Bmp2 As Bitmap
    Dim Can As Canvas
    Dim Color As Long
 
    Bmp2.InitializeMutable(BmpOriginal.Width,BmpOriginal.Height)
    Can.Initialize2(Bmp2)
 
    AlfaValue=Bit.And(0xFF,AlfaValue)
    For y=0 To BmpOriginal.Height-1
        For X=0 To BmpOriginal.Width-1
            Color=Bit.Or(Bit.And(0xffffff,BmpOriginal.GetPixel(X,y)) ,Bit.ShiftLeft(AlfaValue,24))
            Can.DrawPoint(X,y,Color)
        Next
    Next
 
    Return Can.Bitmap
End Sub
ezgif.com-crop.gif
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
Scusami, Stefano, ho cambiato parecchio :( (in compenso è tutto molto più semplice).

Come noterai, ho usato due view e, precisamente, non due ImageView ma due BetterImageView di @Informatix.
Ho usato anche una classe di Erel per il trascinamento.

Manca lo zoom; per ora accontentati o cerca Pinch ;)

P.S. immediato :D:
https://www.b4x.com/android/forum/threads/pinch-zoom-and-move-view-tutorial.21639/
[Non la conosco, non ho letto, ma dal titolo direi che può andare anche a sostituire la classe DraggableView di Erel che ho aggiunto]
 

Attachments

  • Trasparenza.zip
    30.4 KB · Views: 330
Last edited:

StefanoTag

Active Member
Licensed User
Longtime User
Completissimo! ...e funziona alla perfezione. Ora non mi resta che studiarlo.
L'indicazione di Star-Dust non sono riuscito ad applicarla (...Star-Dust non scuotere la testa!!!!) ma sono certo che funzioni.
Ammiro molto (con una puntina di invidia ;)) la vostra capacità di scrivere il codice...la vostra disinvoltura.
Ancora una volta....grazie!
 
Top