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.
BAO de dessin de figures élémentaires Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
BAO de dessin de figures élémentaires Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
BAO de dessin de figures élémentaires Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
BAO de dessin de figures élémentaires Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
BAO de dessin de figures élémentaires Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
BAO de dessin de figures élémentaires Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
BAO de dessin de figures élémentaires Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
BAO de dessin de figures élémentaires Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
BAO de dessin de figures élémentaires Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
BAO de dessin de figures élémentaires Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
BAO de dessin de figures élémentaires Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
BAO de dessin de figures élémentaires Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
BAO de dessin de figures élémentaires Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
BAO de dessin de figures élémentaires Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
BAO de dessin de figures élémentaires 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 du moment :
LEGO Icons 10331 – Le martin-pêcheur
Voir le deal
35 €

 

 BAO de dessin de figures élémentaires

Aller en bas 
3 participants
AuteurMessage
JL35




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

BAO de dessin de figures élémentaires Empty
MessageSujet: BAO de dessin de figures élémentaires   BAO de dessin de figures élémentaires EmptyVen 18 Juin 2021 - 13:55

Sans prétention ni originalité, une petite sub boîte à outil de dessin de figures élémentaires sur la cible 2D,
picture, ou image existante.
Code:
PICTURE 1: FULL_SPACE 1: 2D_TARGET_IS 1
Dessin_BAO()
END

SUB Dessin_BAO()
  ' BAO de dessin de figures élémentaires sur la cible 2D
  DIM_LOCAL p,fa,ff,we,im,pc,sp,co,r,g,b,x,y,x1,y1,x2,y2,mj,fig
  IF LABEL("Chcol") = 0 THEN LABEL Chcol
  IF LABEL("Anuder") = 0 THEN LABEL Anuder
  IF LABEL("Kit") = 0 THEN LABEL Kit
  p = NUMBER_2D_TARGET
  we = 18
  fa = 600: FORM fa: BORDER_SMALL fa: font_size fa,10
            LEFT fa,30: TOP fa,40: WIDTH fa,5*we+60: HEIGHT fa,185
            COLOR fa,255,0,0: ON_CLOSE fa,Kit: CAPTION fa," -  OUTILS  DESSIN  -"
  im = fa+1: IMAGE im
  pc = im+1: PICTURE pc: PARENT pc,fa: TOP pc,3: LEFT pc,3: WIDTH pc,we*5: HEIGHT pc,we*2
  2D_TARGET_IS pc: 2D_FILL_COLOR 0,0,0: 2D_RECTANGLE 0,0,we-2,we*2
  2D_FILL_COLOR 0,0,0: 2D_RECTANGLE we,0,we*2,we
  2D_FILL_COLOR 255,255,255: 2D_RECTANGLE we*2,0,we*3,we
  2D_FILL_COLOR 255,0,0: 2D_RECTANGLE we*3,0,we*4,we
  2D_FILL_COLOR 0,255,0: 2D_RECTANGLE we*4,0,we*5,we
  2D_FILL_COLOR 0,0,255: 2D_RECTANGLE we,we,we*2,we*2
  2D_FILL_COLOR 255,255,0: 2D_RECTANGLE we*2,we,we*3,we*2
  2D_FILL_COLOR 255,0,255: 2D_RECTANGLE we*3,we,we*4,we*2
  2D_FILL_COLOR 0,255,255: 2D_RECTANGLE we*4,we,we*5,we*2
  ON_CLICK pc,Chcol
  sp = pc+1: SPIN sp: PARENT sp,fa: TOP sp,8: LEFT sp,WIDTH(pc)+4: WIDTH sp,40
      MIN sp,1: MAX sp,20: POSITION sp,1
  co=sp+1: CONTAINER_OPTION co: PARENT co,fa: TOP co,HEIGHT(pc)+6: WIDTH co,WIDTH(fa)-26
      LEFT co,6: HEIGHT co,90: CAPTION co,"      FIGURE :"
      COLOR co,255,255,128
  OPTION co+1: PARENT co+1,co: TOP co+1,15: CAPTION co+1,"Tracé libre": MARK_ON co+1
  OPTION co+2: PARENT co+2,co: TOP co+2,TOP(co+1)+14: CAPTION co+2,"Trait"
  OPTION co+3: PARENT co+3,co: TOP co+3,TOP(co+2)+14: CAPTION co+3,"Rectangle"
  OPTION co+4: PARENT co+4,co: TOP co+4,TOP(co+3)+14: CAPTION co+4,"Ellipse"
  OPTION co+5: PARENT co+5,co: TOP co+5,TOP(co+4)+14: CAPTION co+5,"Remplir"
      FOR x1 = co+1 TO co+5: LEFT x1,5: NEXT x1
  x=co+10: BUTTON x: PARENT x,fa: TOP x,TOP(co)+HEIGHT(co)+1: WIDTH x,82
          LEFT x,WIDTH(fa)-100: HEIGHT x,17: CAPTION x,"Annul dernier"
          ON_CLICK x,Anuder
  2D_TARGET_IS p: 2D_FILL_OFF
  WHILE ff = 0
    WHILE MOUSE_LEFT_DOWN(p) = 0
      IF ff = 1 THEN EXIT_SUB
      fig = 0: IF CHECKED(co+2) = 1 THEN fig = 1
      IF CHECKED(co+3) = 1 THEN fig = 2
      IF CHECKED(co+4) = 1 THEN fig = 3
      IF CHECKED(co+5) = 1 THEN fig = 4
      PAUSE 100
    END_WHILE
    x1 = MOUSE_X_POSITION(p): y1 = MOUSE_Y_POSITION(p)
    2D_IMAGE_COPY im,0,0,WIDTH(p),HEIGHT(p): ' sauvegarde préalable
    2D_PEN_COLOR r,g,b: 2D_PEN_WIDTH POSITION(sp)
    WHILE MOUSE_LEFT_UP(p) = 0
      mj = SCANCODE: SCANCODE = 0
      x2 = MOUSE_X_POSITION(p): y2 = MOUSE_Y_POSITION(p)
      IF fig = 4
          2D_FLOOD x2,y2,r,g,b: 2D_FILL_OFF
      ELSE
          IF x2<>x1 OR y2<>y1
              IF mj = 160 THEN y2 = y1+x2-x1
              IF fig > 0 THEN 2D_IMAGE_PASTE im,0,0
              SELECT fig
                  CASE 0: 2D_LINE x1,y1,x2,y2: x1=x2: y1=y2
                  CASE 1: 2D_LINE x1,y1,x2,y2: ' trait
                  CASE 2: 2D_RECTANGLE x1,y1,x2,y2
                  CASE 3: 2D_ELLIPSE x1,y1,x2,y2
                  ' CASE 4: 2D_FLOOD x2,y2,r,g,b
              END_SELECT
          END_IF
      END_IF
      TO_FOREGROUND fa: PAUSE 100
    END_WHILE
    PAUSE 100
  END_WHILE
  DELETE pc: DELETE im: DELETE fa: EXIT_SUB
Chcol:
  x = MOUSE_X_LEFT_DOWN(pc): y = MOUSE_Y_LEFT_DOWN(pc)
  r=COLOR_PIXEL_RED(pc,x,y): g=COLOR_PIXEL_GREEN(pc,x,y): b=COLOR_PIXEL_BLUE(pc,x,y)
  2D_TARGET_IS pc: 2D_FILL_COLOR r,g,b: 2D_RECTANGLE 0,0,we-2,we*2: 2D_TARGET_IS p
RETURN
Anuder:
  2D_IMAGE_PASTE im,0,0: ' annul dernier
RETURN
Kit:
  DELETE pc: DELETE im: DELETE fa: ff=1
RETURN
END_SUB
BAO de dessin de figures élémentaires Bao110

Évidemment on déplace cette boîte à outils où on veut par rapport au dessin.
On choisit la couleur de tracé ou de remplissage parmi 8, l'épaisseur (1 à 20) et la figure à dessiner.
Cas 'Rectangle' et 'Ellipse': maintenir 'Maj' enfoncé pour dessiner un carré ou un cercle.
Le remplissage se limite à la rencontre d'une couleur différente de celle du point cliqué (fonction 2d_flood).

PS Ajouté la possibilité d'annuler la dernière opération.
Revenir en haut Aller en bas
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

BAO de dessin de figures élémentaires Empty
MessageSujet: Re: BAO de dessin de figures élémentaires   BAO de dessin de figures élémentaires EmptyVen 18 Juin 2021 - 17:54

Merci pour ton partage JL35 !
Le programme fonctionne bien, c’est efficace.
Dans ma version première version je n’avais pas encore l’option "Annul dernier". Je viens de mettre à jour le source et cela fonctionne parfaitement.

Bravo !
Revenir en haut Aller en bas
JL35




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

BAO de dessin de figures élémentaires Empty
MessageSujet: Re: BAO de dessin de figures élémentaires   BAO de dessin de figures élémentaires EmptyVen 18 Juin 2021 - 19:34

et merci Marc pour ton appréciation !
Rien de révolutionnaire, mais ça peut être utile pour un usage ponctuel.
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

BAO de dessin de figures élémentaires Empty
MessageSujet: Re: BAO de dessin de figures élémentaires   BAO de dessin de figures élémentaires EmptyDim 20 Juin 2021 - 10:18

Petit outil 'sans prétention' certes, mais qui peut avoir son utilité...

Merci pour ton partage JL35. Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Contenu sponsorisé





BAO de dessin de figures élémentaires Empty
MessageSujet: Re: BAO de dessin de figures élémentaires   BAO de dessin de figures élémentaires Empty

Revenir en haut Aller en bas
 
BAO de dessin de figures élémentaires
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Dessins élémentaires
» Dessin
» Dessin d'arc
» SUBs de tracé de figures géométriques
» Dessin 2d

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: