FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Pedro Sam 23 Nov 2024 - 15:50

» Un autre pense-bête...
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Insertion d'icônes rudimentaires (symboles) dans un objet Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le deal à ne pas rater :
Boutique Nike : -25% dès 50€ sur TOUT le site Nike avec le code ...
Voir le deal

 

 Insertion d'icônes rudimentaires (symboles) dans un objet

Aller en bas 
2 participants
AuteurMessage
JL35




Nombre de messages : 7112
Localisation : 77
Date d'inscription : 29/11/2007

Insertion d'icônes rudimentaires (symboles) dans un objet Empty
MessageSujet: Insertion d'icônes rudimentaires (symboles) dans un objet   Insertion d'icônes rudimentaires (symboles) dans un objet EmptyVen 23 Juil 2010 - 15:38

Pour obtenir par exemple:
Insertion d'icônes rudimentaires (symboles) dans un objet 10icones
Les icônes sont dessinées en N/B avec l'éditeur d'icônes, sauvegardées en datas dans le clipboard, puis les datas sont 'collés' dans le programme source.
On insère un nom en data avant chaque vignette, et on peut dessiner cette vignette n'importe où en donnant au sous-programme le nom de la vignette, le numéro de l'objet récepteur, et les coordonnées x et y dans l'objet.
Le dessin se superpose à ce qui est éventuellement déjà présent dans l'objet, seules les parties en noir sont dessinées (le dernier exemple est la superposition de l'icône triangle et de l'icône cercle).
L'exemple ci-dessus (l'élément essentiel est évidemment le s/p Desico):
Code:
DATA "Flh"
DATA "2020": ' largeur, hauteur
DATA "0000000000000000000000000001000000038000000380000007C0000007C000"
DATA "000FE000000FE000001FF000001FF000003FF800003FFC00007FFC00007FFE00"
DATA "00FFFE0000FFFF0001FFFF0001FFFF8003FFFFC003FFFFC007FFFFE007FFFFE0"
DATA "0FFFFFF00FFFFFF0000000000000000000000000000000000000000000000000"
DATA "Flb"
DATA "2020": ' largeur, hauteur
DATA "0000000000000000000000001FFFFFF00FFFFFE007FFFFE007FFFFC003FFFFC0"
DATA "03FFFF8001FFFF8001FFFF0000FFFF0000FFFE00007FFE00003FFC00003FF800"
DATA "001FF000001FF000000FE000000FE0000007C0000007C0000003800000038000"
DATA "0001000000010000000000000000000000000000000000000000000000000000"
DATA "Flg"
DATA "2020": ' largeur, hauteur
DATA "00000000000000000000000000000030000000F0000003F000000FF000003FF0"
DATA "0000FFF00003FFF0000FFFF0003FFFF000FFFFF003FFFFF00FFFFFF01FFFFFF0"
DATA "07FFFFF001FFFFF0003FFFF0000FFFF00003FFF00000FFF000001FF0000003F0"
DATA "000000F000000030000000000000000000000000000000000000000000000000"
DATA "Fld"
DATA "2020": ' largeur, hauteur
DATA "000000000000000000000000180000001E0000001F8000001FE000001FF80000"
DATA "1FFE00001FFF80001FFFE0001FFFFC001FFFFF001FFFFFC01FFFFFF01FFFFFC0"
DATA "1FFFFF001FFFFC001FFFF0001FFFC0001FFE00001FF800001FE000001F800000"
DATA "1E00000018000000000000000000000000000000000000000000000000000000"
DATA "Retour"
DATA "2020": ' largeur, hauteur
DATA "00000000000000000000000000000000000001C0000001C0000001C0000001C0"
DATA "000001C0000001C0000001C0000001C0000001C0000001C0000001C0000801C0"
DATA "001801C0003801C0007801C000F801C001F801C003FFFFC007FFFFC003FFFFC0"
DATA "01F8000000F80000007800000038000000180000000800000000000000000000"
DATA "Flhd"
DATA "2020": ' largeur, hauteur
DATA "00000000000000000000000000000000000000000001FFC00000FFC000007FC0"
DATA "00003FC000001FC000001FC000003FC000007FC00000F3C00001E1C00003C0C0"
DATA "00078040000F0000001E0000003C00000078000000F0000001E0000003C00000"
DATA "0780000003000000000000000000000000000000000000000000000000000000"
DATA "Dilat"
DATA "2020": ' largeur, hauteur
DATA "00000000000000003FC003FC3FC003FC3C00003C3E00007C370000EC338001CC"
DATA "31C0038C30C0030C000000000000000000000000000000000000000000000000"
DATA "00000000000000000000000000000000000000000000000030C0030C31C0038C"
DATA "338001CC370000EC3E00007C3C00003C3FC003FC3FC003FC0000000000000000"
DATA "Reduc"
DATA "2020": ' largeur, hauteur
DATA "000000000000000030C0030C38C0031C1CC003380EC0037007C003E003C003C0"
DATA "3FC003FC3FC003FC000000000000000000000000000000000000000000000000"
DATA "0000000000000000000000000000000000000000000000003FC003FC3FC003FC"
DATA "03C003C007C003E00EC003701CC0033838C0031C30C0030C0000000000000000"
DATA "Triangle"
DATA "2020": ' l,h
DATA "0000000000018000000180000002400000024000000420000004200000081000"
DATA "0008100000100800001008000020040000200400004002000040020000800100"
DATA "0080010001000080010000800200004002000040040000200400002008000010"
DATA "0800001010000008100000082000000420000004400000027FFFFFFE00000000"
DATA "Cercle"
DATA "2020": ' l,h
DATA "00000000000FE00000701C000180030003000180040000400800002018000030"
DATA "1000001020000008200000082000000840000004400000044000000440000004"
DATA "4000000440000004400000042000000820000008200000081000001018000030"
DATA "0800002004000040030001800180030000701C00000FE0000000000000000000"

DIM wp, hp, a$, et$, x%, y%, obj%, wim, him, vh$, v%, i%, j%, k%, l$,
LABEL Desico, Cvx, Rdat

wp = 40: hp = 40

Picture 1: left 1, 10: top 1, 10: width 1, wp: height 1, hp
COLOR 1, 220, 220, 220
et$ = "Flhd": x% = 0: y% = 5: obj% = 1: GOSUB Desico

Picture 2: left 2, 60: top 2, 10: width 2, wp: height 2, hp
COLOR 2, 220, 220, 220
et$ = "Flh": x% = 0: y% = 5: obj% = 2: GOSUB Desico

Picture 3: left 3, 110: top 3, 10: width 3, wp: height 3, hp
COLOR 3, 220, 220, 220
et$ = "Flg": x% = 0: y% = 5: obj% = 3: GOSUB Desico

Picture 4: left 4, 160: top 4, 10: width 4, wp: height 4, hp
COLOR 4, 220, 220, 220
et$ = "Fld": x% = 0: y% = 5: obj% = 4: GOSUB Desico

Picture 5: left 5, 10: top 5, 60: width 5, wp: height 5, hp
COLOR 5, 220, 220, 220
et$ = "Flb": x% = 0: y% = 5: obj% = 5: GOSUB Desico

Picture 6: left 6, 60: top 6, 60: width 6, wp: height 6, hp
COLOR 6, 220, 220, 220
et$ = "Retour": x% = 0: y% = 5: obj% = 6: GOSUB Desico

Picture 7: left 7, 110: top 7, 60: width 7, wp: height 7, hp
COLOR 7, 220, 220, 220
et$ = "Dilat": x% = 0: y% = 5: obj% = 7: GOSUB Desico

Picture 8: left 8, 160: top 8, 60: width 8, wp: height 8, hp
COLOR 8, 220, 220, 220
et$ = "Reduc": x% = 0: y% = 5: obj% = 8: GOSUB Desico

Picture 9: left 9, 10: top 9, 110: width 9, wp: height 9, hp
COLOR 9, 220, 220, 220
et$ = "Triangle": x% = 0: y% = 5: obj% = 9: GOSUB Desico

Picture 10: left 10, 60: top 10, 110: width 10, wp: height 10, hp
COLOR 10, 220, 220, 220
et$ = "Cercle": x% = 0: y% = 5: obj% = 10: GOSUB Desico

Picture 11: left 11, 110: top 11, 110: width 11, wp: height 11, hp
COLOR 11, 220, 220, 220
et$ = "Triangle": x% = 0: y% = 5: obj% = 11: GOSUB Desico
et$ = "Cercle": x% = 0: y% = 5: obj% = 11: GOSUB Desico

END
' ===============================================================

Desico:
' Positionnement de lecture des datas après le label et$
RESTORE: REPEAT: READ a$: UNTIL a$ = et$
' dessin des datas en x%, y% dans l'objet système obj%
READ l$: vh$ = LEFT$(l$, 2): GOSUB Cvx: wim = v%
vh$ = RIGHT$(l$, 2): GOSUB Cvx: him = v%
a$ = ""
WHILE LEN(a$) < wim*him/4: READ l$: a$ = a$ + l$: END_WHILE
2D_TARGET_IS obj%: 2D_PEN_COLOR 0,0,0
FOR j% = 0 TO him - 1
    l$ = MID$(a$, 1+j%*wim/4, wim/4)
    FOR i% = 1 TO LEN(l$)
        v% = INSTR("0123456789ABCDEF", MID$(l$, i%, 1))-1
        FOR k% = 0 TO 4
            IF BIN_AND(v%, POWER(2, 3-k%)) > 0
                2D_POINT x%+i%*4+k%, y%+j%
            END_IF
        NEXT k%
    NEXT i%
NEXT j%
GOTO Rdat
Cvx:
' conversion hexadécimal/décimal de vh$, résultat dans v%
v% = 0
FOR k% = 1 TO LEN(vh$)
    v% = v%*16 + INSTR("0123456789ABCDEF", MID$(vh$, k%, 1))-1
NEXT k%
RETURN
Rdat:
RETURN
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Insertion d'icônes rudimentaires (symboles) dans un objet Empty
MessageSujet: Re: Insertion d'icônes rudimentaires (symboles) dans un objet   Insertion d'icônes rudimentaires (symboles) dans un objet EmptyVen 23 Juil 2010 - 22:44

Intéressant, cette application de l'éditeur d'icônes. Je l'ai chargé et je vais voir ce que je peux en faire. Je vois par exemple qu'on peut aisément adapter la couleur de fond et la couleur de dessin pour les icônes - c'est intéressant - surtout dans l'idée de superposer plusieurs dessins dans une même icône. Tu peux donc aisément construire des icônes en couleur, de cette manière - il suffit d'avoir un jeu de data pour chaque couleur; on peut même imaginer, dans les data, une structure du type
Citation :
nom de l'icône
nombre de couleurs (ou "couches") de l''image
couleur RGB numéro 1
les data de la première couleur
...
couleur RGB numéro n
les data de la n-ième couleur
marque de fin pour l'icône
nom de l'icône suivante
... etc
Belle réalisation, et porteuse ne nombreuses possibilités d'évolution !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




Nombre de messages : 7112
Localisation : 77
Date d'inscription : 29/11/2007

Insertion d'icônes rudimentaires (symboles) dans un objet Empty
MessageSujet: Re: Insertion d'icônes rudimentaires (symboles) dans un objet   Insertion d'icônes rudimentaires (symboles) dans un objet EmptyVen 23 Juil 2010 - 23:01

Certainement il y a des possibilités d'évolution.
Comme je le disais, je me suis contenté du noir et blanc pour ne pas avoir des datas trop volumineux, là on est à 1 bit par pixel, avec les couleurs on passe à 24 bits par pixel ! et même avec ma limitation à 16 couleurs ça fait quand même 4 fois plus.
Toi, ton idée reviendrait à définir une espèce de palette pour l'icône, là ça devient un peu compliqué.
Enfin, on verra, ça évolue...

Tu as vu, j'ai ajouté la possibilité de pivoter l'image de 90°...
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Insertion d'icônes rudimentaires (symboles) dans un objet Empty
MessageSujet: Re: Insertion d'icônes rudimentaires (symboles) dans un objet   Insertion d'icônes rudimentaires (symboles) dans un objet EmptyVen 23 Juil 2010 - 23:11

Oui, j'ai vu, et j'ai apprécié le code utilisé pour réaliser la rotation. Copie dans un tableau, et réécriture en jouant avec les indices - une façon simple et économique avec les moyens que Panoramic offre car on ne peut travailler qu'au niveau d'un pixel et non au niveau d'une ligne ou colonne (méthode scanline). Ca me plait bien.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





Insertion d'icônes rudimentaires (symboles) dans un objet Empty
MessageSujet: Re: Insertion d'icônes rudimentaires (symboles) dans un objet   Insertion d'icônes rudimentaires (symboles) dans un objet Empty

Revenir en haut Aller en bas
 
Insertion d'icônes rudimentaires (symboles) dans un objet
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Insertion d'un petit fichier quelconque dans un programme
» Alignement de texte dans un objet EDIT.
» Déplacer dynamiquement un objet dans une form
» Saisie dans un objet GRID.
» Atteindre un objet dans une grande fenêtre

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: