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.
KGF_dll - nouvelles versions - Page 35 Emptypar Pedro Sam 23 Nov 2024 - 15:50

» Un autre pense-bête...
KGF_dll - nouvelles versions - Page 35 Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
KGF_dll - nouvelles versions - Page 35 Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
KGF_dll - nouvelles versions - Page 35 Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
KGF_dll - nouvelles versions - Page 35 Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
KGF_dll - nouvelles versions - Page 35 Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
KGF_dll - nouvelles versions - Page 35 Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
KGF_dll - nouvelles versions - Page 35 Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
KGF_dll - nouvelles versions - Page 35 Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
KGF_dll - nouvelles versions - Page 35 Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
KGF_dll - nouvelles versions - Page 35 Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
KGF_dll - nouvelles versions - Page 35 Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
KGF_dll - nouvelles versions - Page 35 Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
KGF_dll - nouvelles versions - Page 35 Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
KGF_dll - nouvelles versions - Page 35 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 :
Code promo Nike : -25% dès 50€ d’achats sur tout le site Nike
Voir le deal

 

 KGF_dll - nouvelles versions

Aller en bas 
+13
The Gamer
Nardo26
silverman
Minibug
Pedro
mindstorm
pascal10000
Jicehel
papydall
Jean Claude
JL35
Yannick
Klaus
17 participants
Aller à la page : Précédent  1 ... 18 ... 33, 34, 35 ... 40  Suivant
AuteurMessage
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 35 EmptyMer 23 Sep 2015 - 3:35

Merci klaus.
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyMar 29 Sep 2015 - 0:15

Nouvelle version:
KGF.dll V5.06 du 28/09/2015

Nouveautés:
- correction dans fonction GridFunction

Modules modifiés:
KGF.dll

La doc et l'aide en ligne sont inchangées. Les sources sont à jour également.

Cette modif corrige un bug si le nom de la police spécifié contenait un caractère "espace".
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 1 Oct 2015 - 10:25

Nouvelle version:
KGF.dll V5.07 du 01/10/2015

Nouveautés:
- nouveau code 6 pour foncion DTP

Modules modifiés:
KGF.dll
KGF.chm


La doc et l'aide en ligne sont à jour. Les sources sont à jour également.

Ce code fonction permet d'ouvrir ou de fermer le sélecteur de date ou d'heure, selon le format choisi. Voici une démo: les deux boutons effectuent ces actions. On peut également ouvrir le sélecteur en cliquant sur la flèche de l'objet DTP, choisir 'heure, puis fermer en cliquant sur "Fermer":
Code:
dll_on "kgf"

dim no%, res%, heure%, minute%

label change_dtp, close, open

edit 1
hide 1
no%=dll_call6("DTP",1,handle(0),handle(1),100,100,2)
on_change 1,change_dtp
button 2 : on_click 2,close : caption 2,"Fermer"
button 3 : on_click 3,open : top 3,25 : caption 3,"Ouvrir"

end

change_dtp:
  res%=dll_call6("DTP",4,1,adr(heure%),adr(minute%),0,0)
return

open:
  res%=dll_call6("DTP",6,1,1,0,0,0)
  return

close:
  res%=dll_call6("DTP",6,1,0,0,0,0)
  return
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 35 EmptyJeu 1 Oct 2015 - 15:12

-- reporté sur Isam toujours Isam --


Dernière édition par ygeronimi le Jeu 1 Oct 2015 - 16:07, édité 1 fois
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 1 Oct 2015 - 15:50

Pourrais-tu poster cela dans le fil de discussion "Isam, toujours Isam" et l'enlever ici ? Ce sera plus logique. Je te répondrai à cet endroit.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyVen 2 Oct 2015 - 12:44

Nouvelle version:
KGF.dll V5.08 du 02/10/2015

Nouveautés:
- nouveau code 7 pour foncion DTP

Modules modifiés:
KGF.dll
KGF.chm


La doc et l'aide en ligne sont à jour. Les sources sont à jour également.

Ce code permet d'activer ou de désactiver le mode "AutoHide" du sélecteur d'heures. Par défaut, ce mode est désactivé. Si ce mode est activé, le sélectueur d'heures disparaît dès que le curseur quitte le sélecteur. Voici une démo:
Code:
' DTP_cacher_popup.bas

dll_on "kgf"

dim no%, res%, heure%, minute%

label change_dtp, close, open, auto

edit 1
hide 1
no%=dll_call6("DTP",1,handle(0),handle(1),100,100,2)
on_change 1,change_dtp
button 2 : on_click 2,close : caption 2,"Fermer"
button 3 : on_click 3,open : top 3,25 : caption 3,"Ouvrir"
check 4 : top 4,50 : caption 4,"AutoHide" : on_click 4,auto
end

change_dtp:
  res%=dll_call6("DTP",4,1,adr(heure%),adr(minute%),0,0)
return

open:
  res%=dll_call6("DTP",6,1,1,0,0,0)
  return

close:
  res%=dll_call6("DTP",6,1,0,0,0,0)
  return
 
auto:
  res%=dll_call6("DTP",7,1,checked(4),0,0,0)
  return
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyMar 6 Oct 2015 - 1:13

La doc KGF.chm ainsi que la doc en ligne a été modifiée et complétée pour les fonctions:
- RandomValue
- UpdateIsamRecord
- ReplaceIsamKey

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyMar 6 Oct 2015 - 11:00

bonjour klaus

voila ma question c'est peut être trop te demandé!

pourra tu a une prochaine version de kgf
incorporé une option de manière a pouvoir bloquer
nos programme contre "Recover_Source" ceci est
très important pour moi parce que actuellement
je suis en train de développer un logiciel comme tu la remarqué
lors d'un post d'aide et c'est très important moi et a pour d'autre aussi
et apparemment satisfait la ffdj (fédération du jeu de dame français)
ce style de logiciel n'existe pas dans le domaine public. pourtant il en existe
plein mais pas comme le mien
même si le programme est compréssé, Recover_Source arrive toujours a dévoiler
le source
ceci évitera le piratage de nos programme que l'on fait
merci pour une réponse de ta part

sinon on peut le demandé a jack s'il peut faire ça
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyMar 6 Oct 2015 - 11:43

Ah, tu abordes le vaste domaine du cryptage et décryptage ! Je m'explique:

Panoramic, dans sa version actuelle, est un langage interprété. Et donc, un programme exécutable Panoramic n'est rien d'autre que l'interpréteur Panoramic complet, avec un petit bout de données collées à la fin du fichier qui sont le codce source, afin que l'interpréteur puisse travailler.

Afin de rendre plus difficile le "décodage" d'un programme Panormic, Jack a choisi de coder le source avant de le coller dans l'ecxécutable. Ainsi, en faisant un dump du fichier EXE, tu ne vois pas le source en clair.

Or, il est arrivé plus d'une fois que certains Panoramiciens aient perdu leurs fichiers source dans un crash de machine, mais aient pu récupérer un exécutable, d'une manière ou d'une autre. Alors, Jack et un autre Panoramicien, tont tout deux développé un outil permettant d'extraire le code source en le décryptant, ce qui a été une bénédiction pour certains d'entre nous.

Tu vois où je veux en venir ? Le source est crypté, mais un peut le décrypter. Et plus tu cryptes, plus ce sera peut-être difficile de décrypter, mais il n'y a aucun système impossible à décrypter. Donc, je pense que dans l'état actuel, ta demande ne pourra pas être satisfaite.

Mais, il y a une solution à l'horizon, quoique pas opérationnelle dès aujourd'hui. En effet, Jack est en train de développer une version compilée de Panoramic. Tout est traduit immédiatement dans un autre langage (FreeBasic), puis compilé et linké. Il n'y a plus que du code exécutable en langage machine. La copie, même cryptée, de la source a disparu. Et avec cette version, le problème qui te préoccupe aura disparu.

Actuellement, c'est en cours de réalisation, et ça avance selon les disponibilités de Jack. Mais je t'invite à lire les riubriques du forum qui traitent du compilateur, et en particulier les spécifications que Jack a publiées, à ce sujet.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyMar 6 Oct 2015 - 12:12

oui c'est certain une fois le compilateur fini
tout sera différent

dommage qu'on ne puisse pas
bonne journée
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 2:19

Nouvelle version:
KGF.dll V5.09 du 08/10/2015

Nouveautés:
- nouvelle fonction IsPointInPolygon
- nouvelle fonction IsPointInCircle



Modules modifiés:
KGF.dll
KGF.chm


La doc, l'aide en ligne et les sources sont à jour.

On avait déjà la fonction IsPointInRectangle (dans la section 'Gestion de la souris"). Les deux nouvelles fonctions complètent cette fonctionnalité, avec la possibilité de tester sur un polygone fermé (non croisé) jusqu'à 100 coins, ou un cercle d'un rayon quelconque. Voici une démo: choisir entre polygone et cercle, puis cliquez dans l'écran, dedans ou dehors:
Code:
' test_IsPointInPolygon.bas

label click0, poly, cercle

dim i%,x%,y%,n%, res%, form%

data 7,100,30,180,150,120,300,30,60,90,400,250,80,100,30


full_space 0
on_click 0,click0

dlist 1

button 2 : caption 2,"Polygone" : on_click 2,poly
button 3 : caption 3,"Cercle" : on_click 3,cercle : top 3,25

dll_on "KGF.dll"
end

poly:
color 0,255,255,255
restore
read n%
clear 1
for i%=1 to n%
  read x%
  read y%
  item_add 1,str$(x%)+","+str$(y%)
  if i%=1
    2d_poly_from x%,y%
  else
    2d_poly_to x%,y%
  end_if
next i%
form% = 0
return

cercle:
color 0,254,255,255
2d_circle 300,300,50
form% = 1
return

click0:
  x% = mouse_x_left_down(0)
  y% = mouse_y_left_down(0)
  select form%
    case 0
      res% = dll_call3("IsPointInPolygon",x%,y%,object_internal(1))
    case 1
      res% = dll_call5("IsPointInCircle",x%,y%,300,300,50)
  end_select
  select res%
    case -1
      message "Ce n'est pas un polygone"
    case 0
      message "Le point est en-dehors"
    case 1
      message "Le point est dedans"
  end_select
  return


Dernière édition par Klaus le Jeu 8 Oct 2015 - 4:08, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 3:37

De plus en plus fort Klaus!

Non seulement tu nous gratifie de deux super fonctions
mais en plus tu es même arrivé à remonter le temps !


version du 10/10 sortie le 08/10 là c' est inégalable.
lol!

PS : Pour le cercle, le point est toujours en dehors... scratch
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 4:09

Oups... les deux points sont corrigés ! Recharge la DLL...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 5:22

Ok Klaus, cela fonctionne.
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 7:22

super ça. jpcr, tu n'as plus d'excuses .... Smile
Revenir en haut Aller en bas
jpcr

jpcr


Nombre de messages : 276
Age : 57
Localisation : Val de Marne (94)
Date d'inscription : 06/05/2011

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 9:14

damned, oui je suis coincé la...

merci a vous tous !!
Revenir en haut Aller en bas
http://jeanpierre.creis.free.fr/Panoramic/Panoramic.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 12:02

Pour jpcr, et pour tous ceux qui s'intéressent à la détection d'un point dans un polygone, j'ai fait une petite démo un peu particulière.

Ce programme télécharge une capture d'écran officielle du jeu Warcraft et l'affiche dans un picture qui remplit l'écran. Ce picture sert de zone sensitive pour un clic. On peut y définir autant de zones actives que nécessaire. Un clic dans une de ces zones actives est alors reconnu et affiché, alors qu'un clic en-dehors de ces zones actives est signalé comme "zone neutre".

Pour aider la création des zones actives, j'ai intégré dans ce programme un mode "définition" qui est activé en ligne 7 par la variable def%. En ligne 9 et 10, il faut aussi adapter les chemins pour que ce soit conforme à vos configurations. En mode "définition", une deuxième fenêtre apapraît à droite du terrain de jeu, avec un mémo full_space. On est prêt pour définir une zone en forme de polygone. Pour cela, il suffit de cliquer sur les points qui représentent les coins du polygone souhaité. On voit les coordonnées de ces points apparaître dans le mémo, à droite, au fur et à mesure des clics, et le polygone se dessine progressivement dans l'image, par un trait noir de 1 pixel de large. Ne fermez pas le polygone - le programme s'en chargera lui-même ! Lorsque le polygone est prêt (sans le fermer !), il suffit de surligner le contenu du mémo et le mettre en mémoire par ctrl/C. Ensuite, on arrête le programme par la croix rouge, on retourne dans le source et on intègre le polygone à la suite des DATA existants, en respectant la structure: un entier contenant le nombre de points du nouveau polygone, suivi des DATA des points, insérés par ctrl/V et précédées de "data " pour chaque ligne. Ne pas oublier me mettre à jour le tout premier mot DATA de la liste qui contient le nombre de polygones définis ! Il faut aussi ajouter le signalement du polygone dans la routine clic en ajoutant un nouveau CASE pour le polygone créé.

Et voilà. Il suffit alors d'enlever le mode "Edition" dans la ligne 7 en mettant la valeur 0, et on peut exploiter.

Voici le code:
Code:
' zones_actives_dans_image_warcraft.bas

label clic

dim res%, x%, y%, nzones%, ncoins%, i%, j%

dim def% : def% = 0 : ' <======== mettre 1 ici pour passer en mode "définition" !
dim url$ : url$ = "http://jolstatic.fr/www/captures/2212/5/100245.jpg"
dim img$ : img$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\warcraft.jpg"
dim dll$ : dll$ = "KGF.dll"

width 0,970 : height 0,654
picture 1 : width 1,950 : height 1,594

dll_on dll$
res% = dll_call2("DownloadFile",adr(url$),adr(img$))
res% = dll_call1("LoadAnyImageFile",adr(img$))
clipboard_paste 1

if def%=1
  form 100 : left 100,width(0)+5 : height 100,height(0) : width 100,300
  memo 101 : parent 101,100 : full_space 101
end_if

2d_target_is 1
on_click 1,clic

' nombre de zones
data 3
' grande étoile
data 18
data 665,292
data 671,308
data 659,345
data 672,353
data 674,378
data 689,372
data 704,374
data 720,382
data 724,362
data 729,352
data 738,348
data 739,340
data 733,331
data 724,309
data 725,281
data 705,295
data 693,264
data 682,299
' charriot
data 26
data 111,478
data 127,480
data 136,472
data 135,463
data 154,458
data 170,465
data 176,461
data 170,451
data 171,436
data 167,435
data 160,446
data 136,442
data 145,431
data 139,425
data 94,432
data 91,435
data 88,431
data 81,431
data 79,447
data 68,454
data 60,473
data 76,470
data 86,448
data 96,443
data 106,443
data 107,448
' tête du gardien
data 7
data 519,342
data 524,338
data 531,339
data 533,349
data 527,351
data 525,351
data 521,346

if object_exists(100)=0
  read nzones%
  for i%=1 to nzones%
    read ncoins%
    dlist 200 + i%
    for j%=1 to ncoins%
      read x%
      read y%
      item_add 200+i%,str$(x%)+","+str$(y%)
    next j%
    item_add 200+i%,item_read$(200+i%,1)
  next i%
end_if


end

clic:
  x% = mouse_x_left_down(1)
  y% = mouse_y_left_down(1)
  if object_exists(100)=1
    if count(101)=0
      2d_poly_from x%,y%
    else
      2d_poly_to x%,y%
    end_if
    item_add 101,str$(x%)+","+str$(y%)
    return
  end_if
  for i%=1 to nzones%
    res% = dll_call3("IsPointInPolygon",x%,y%,object_internal(200+i%))
    if res%=1
      select i%
        case 1
          message "Grande étoile"
        case 2
          message "Charriot"
        case 3
          message "Tête du gardien"
      end_select
      return
    end_if
  next i%
  message "Partie neutre de l'image"
  return

Les 3 zones actives prédéfinies sont:
- la grande étoile à droite
- le charriot caché derrière des rochers en bas à gauche
- la tête du gardien (attention: il y a un piège !)
J'espère que ça vous amusera...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 13:28

Bonjour Klaus.
Tu es une providence pour Panoramic et les panoramiciens !

Bon,j’ai testé les deux nouvelles fonctions : IsPointInpolygone / IsPointInCircle.
C’est très utile, merci.

J’ai remarqué dans le code exemple que tu as donné : OBJECT_INTERNAL(1).
J’avoue que je ne connaissais pas cette variable système (honte à moi !).
J’ai revu l’aide Panoramic pour en savoir plus, mais …

Et puis je me suis posé la question de pouvoir déterminer si un point est à l’intérieur d’une ellipse.
Le cercle n'est qu'un cas particulier de l'ellipse, donc mon code fait d'une pierre deux coups.

Et voici le fruit de ma réflexion :

Code:

rem ============================================================================
rem          IsPointInEllipse
rem ============================================================================
label click0
dim x,y,xc,yc,x2,y2,pi,p,a,r,r1,r2
pi = 4*atn(1) : p = pi/180
xc = 350 : yc = 350  : ' Coordonnées du centre de l'ellipse
full_space 0
on_click 0,click0
 r1 = 200 : r2 = 100 : Tracer_Ellipse(xc,yc,r1,r2)  : ' Ellipse large
' r1 = 200 : r2 = 200 : Tracer_Ellipse(xc,yc,r1,r2)  : ' Cercle
' r1 = 200 : r2 = 300 : Tracer_Ellipse(xc,yc,r1,r2)  : ' Ellipse haute
end
rem ============================================================================
' Tracer une ellipse
' xc,yc : coordonnées du centre de l'ellipse
' r1 et r2 respectivement demi-diamètres horizontal et vertical de l'ellipse
' Si r1 = r2 alors léellipse est un cercle
SUB Tracer_Ellipse(xc,yc,r1,r2)
    dim_local x,y
    2d_poly_from xc+r1,yc
    for a = 0 to 2*pi step p
        x = xc + r1*cos(a) : y = yc +r2*sin(a) : 2d_poly_to x,y
    next a
END_SUB
rem ============================================================================
' Déterminer si le clixk est ç l'intérieur ou à l'extérieur de l'ellipse
click0:
   x = mouse_x_left_down(0)
   y = mouse_y_left_down(0)
' Soustraire des coordonnées du point cliqué celles du centre de l'ellipse
   x = x - xc : y = y - yc
' Diviser les coordonnées x par le demi-diamètre horizontal et y par le demi-diamètre vertical
   x = x/r1 : y = y/r2
' Calculer la quantité : r = x² + y²
   r = x*x + y*y
' Selon la valeur de r par rapport à l'unité
   if r > 1
       message "Le point est en dehors de l'ellipse"
   else
       if r = 1
          message "Le point est sur le contours de l'ellipse"
       else
          message "Le point est à l'intérieur de l'ellipse"
       end_if
   end_if
  
return
rem ============================================================================

Essayez respectivement avec les lignes 10 ou 11 ou 12
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 13:29

Magnifique Klaus... c'est super...je me tais et je m'incline .... Wink
Revenir en haut Aller en bas
jpcr

jpcr


Nombre de messages : 276
Age : 57
Localisation : Val de Marne (94)
Date d'inscription : 06/05/2011

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 14:04

que dire ?

un grand merci pour tout ce que tu nous apporte Klaus !!

mais aussi a tous les autres qui nous offrent de nombreux programmes ou répondent a nos questions précisement et rapidement !!!


jp
Revenir en haut Aller en bas
http://jeanpierre.creis.free.fr/Panoramic/Panoramic.html
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 14:33

C’est ce qui fait la beauté du forum et la bonté des forumistes ! I love you
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 18:01

Là, je suis sur le c... !
Bravo !

flash n' a plus qu' à bien se tenir !
Laughing
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 18:54

Nouvelle version:
KGF.dll V5.10 du 08/10/2015

Nouveautés:
- nouvelle fonction IsPointInElipse

Modules modifiés:
KGF.dll
KGF.chm


La doc, l'aide en ligne et les sources sont à jour.

Un grand MERCI à Papydall qui a fourni les formules sous forme de programme Panoramic. Bien qu'on puisse faire cela en Panoramic pur (comme l'a démontré papydall), j'ai voulu offrir une palette complète de fonctions dans ce domaine. Maintenant, on a le test si un point est dans un rectangle, polygone, cercle ou ellipse.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 19:18

klaus a écrit:
Un grand MERCI à Papydall qui a fourni les formules sous forme de programme Panoramic. Bien qu'on puisse faire cela en Panoramic pur (comme l'a démontré papydall), j'ai voulu offrir une palette complète de fonctions dans ce domaine. Maintenant, on a le test si un point est dans un rectangle, polygone, cercle ou ellipse.

sunny king I love you king sunny
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 EmptyJeu 8 Oct 2015 - 20:46

Et voici cette fonction intégrée dans le programme de démo:
Code:
' test_IsPointInPolygon.bas

label click0, poly, cercle, ellipse

dim i%,x%,y%,n%, res%, form%, sx,sy,xc%,yc%, a, pi, p, r1, r2
pi = 4*atn(1)
p = pi/180

data 7,100,60,180,180,120,330,30,90,90,430,250,110,100,60


full_space 0
on_click 0,click0

dlist 1

button 2 : caption 2,"Polygone" : on_click 2,poly
button 3 : caption 3,"Cercle"  : on_click 3,cercle  : top 3,25
button 4 : caption 4,"Ellipse"  : on_click 4,ellipse : top 4,50

dll_on "KGF.dll"
end

poly:
  color 0,255,255,255
  restore
  read n%
  clear 1
  for i%=1 to n%
    read x%
    read y%
    item_add 1,str$(x%)+","+str$(y%)
    if i%=1
      2d_poly_from x%,y%
    else
      2d_poly_to x%,y%
    end_if
  next i%
  form% = 0
  return

cercle:
  color 0,254,255,255
  2d_circle 300,300,50
  form% = 1
  return

ellipse:
  color 0,255,254,255
    xc% = 450
    yc% = 375
    r1 = 150
    r2 = 75
    2d_poly_from xc%+r1,yc%
    for a = 0 to 2*pi step p
        sx = xc% + r1*cos(a) : sy = yc% +r2*sin(a) : 2d_poly_to sx,sy
    next a
  form% = 2
  return

click0:
  x% = mouse_x_left_down(0)
  y% = mouse_y_left_down(0)
  select form%
    case 0
      res% = dll_call3("IsPointInPolygon",x%,y%,object_internal(1))
    case 1
      res% = dll_call5("IsPointInCircle",x%,y%,300,300,50)
    case 2
      res% = dll_call6("IsPointInEllipse",x%,y%,300,300,600,450)
  end_select
  select res%
    case -1
      message "Ce n'est pas un polygone"
    case 0
      message "Le point est en-dehors"
    case 1
      message "Le point est dedans"
  end_select
  return
 
 
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





KGF_dll - nouvelles versions - Page 35 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 35 Empty

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 34 sur 40Aller à la page : Précédent  1 ... 18 ... 33, 34, 35 ... 40  Suivant
 Sujets similaires
-
» KGF_dll - nouvelles versions
» Nouvelles versions
» Synedit_Editor - nouvelles versions
» KGF_dll - nouvelles versions
» KGF_dll - nouvelles versions

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: