π
<-

Image et Canal Alpha

Programmation et implémentation d'algorithmes.

Image et Canal Alpha

Unread postby canomod74 » 10 Feb 2025, 19:53

Bonsoir,

Je viens de découvrir que les fonctionnes graphiques RECT_P, ARC_P, etc ... peuvent recevoir une valeur de canal alpha ex RECT_P(255, 0, 0, 128) donne un carré rouge transparent à 50%

J'ai cherché du côté de BLIT_P pour voir si on pouvait faire la même chose avec des png.
Mais je n'ai rien trouvé permettant d'indiquer une valeur alpha à une image.

Est-ce qu'il y'a possibilité de gérer la transparence des image ou bien faut t'il faire décomposer l'image dans tableau 2 dimensions et traiter chaque pixel ?

Cordialement,
J'ai aussi une SHARP EL-9300 et une HP PRIME G2, et une feu HP 48 GX que j'adorais, mais problème au niveau de l'écran, irréparable 🥲.
User avatar
canomod74
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 80%
 
Posts: 14
Joined: 29 Jan 2025, 22:05
Location: Haute-Savoie / ANNECY
Gender: Male
Calculator(s):
MyCalcs profile

Re: Image et Canal Alpha

Unread postby critor » 10 Feb 2025, 20:47

Bonsoir.

De mémoire, les objets graphiques G0-G9 sur HP Prime n'ont pas de canal alpha.
Le canal alpha sert uniquement pour dessiner sur chacun de ces objets, via les fonctions acceptant une couleur en paramètre (comme RECT_P ou ARC_P).

Si une image a déjà été dessinée sur un de ces objets, la copier sur un autre avec une couche de transparence va effectivement nécessiter un traitement.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 51%
 
Posts: 42173
Images: 16664
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Image et Canal Alpha

Unread postby komame » Today, 02:58

Bonjour.

BLIT_P prend en charge le canal alpha. Il dispose d’un paramètre dédié à cet effet. Lorsque vous tapez le nom de la commande BLIT_P et appuyez sur la touche [Help], la documentation de cette commande s’ouvrira.

Code: Select all
Syntaxe:
BLIT_P([trgtG], [dx1, dy1], [dx2, dy2], srcG, [sx1, sy1], [sx2, sy2], [c], [alpha])

Comme vous pouvez le voir, il existe un paramètre dédié, appelé alpha, qui permet de définir de manière fluide l’échelle de transparence lors du dessin d’une bitmap, où 0 signifie une transparence totale et 255 une opacité totale. Il y a aussi un paramètre c, qui permet d’ignorer une couleur spécifique lors du rendu. Ce paramètre permet d’afficher une bitmap sur n’importe quel fond sans l’effacer.

Découvrez mon jeu "Reversi" (en cours d’implémentation). Voici une vidéo illustrant les effets obtenus grâce à BLIT_P (lors de l’enregistrement de la vidéo directement à partir de l’écran, des saccades sont apparues, mais sur l’appareil physique, l’animation est totalement fluide).

Image

Dans la vidéo, on peut remarquer que le nom du jeu "REVERSI" sur l'écran titre est semi-transparent (on voit que l'arrière-plan animé transparaît à travers lui). Cet effet a été obtenu grâce au paramètre alpha.

De plus, tout ce texte est une seule image bitmap avec un fond blanc (qui n'est pas transparent), mais grâce au paramètre c, la couleur blanche n'est pas copiée (elle a donc une transparence à 100 %). Cela permet au fond de ne pas recouvrir l'image entre les lettres lors du dessin de cette bitmap et de copier toute l’image en un seul appel sans effacer l’arrière-plan déjà affiché à l’écran, ce qui est extrêmement rapide.

En outre, la définition de la valeur du paramètre alpha permet aux lettres d’être partiellement transparentes, laissant apparaître ce qui se trouve en dessous.

Pendant la partie, les pions apparaissent également progressivement, car leur rendu commence avec une transparence totale et, à chaque image de l’animation, ils deviennent de moins en moins transparents jusqu’à être entièrement visibles.
User avatar
komame
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Level up: 26.7%
 
Posts: 3
Joined: 08 Feb 2024, 19:26
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Image et Canal Alpha

Unread postby Adriweb » Today, 12:26

C'est très impressionnant, bravo !

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 79.6%
 
Posts: 14802
Images: 1131
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb


Return to Programmation

Who is online

Users browsing this forum: No registered users and 0 guests

-
Search
-
Social TI-Planet
-
Featured topics
Grand Concours 2024-2025 - Programmation Python
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
958 utilisateurs:
>938 invités
>13 membres
>7 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)