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
» demande explication KGF pour imprimer en mm
SUBs de tracé de figures géométriques Emptypar JL35 Aujourd'hui à 17:28

» Petit passage furtif
SUBs de tracé de figures géométriques Emptypar Froggy One Hier à 14:26

» SPIN et aide langage (résolu)
SUBs de tracé de figures géométriques Emptypar leclode Sam 23 Mar 2024 - 15:20

» Aide-mémoire des mots-clés Panoramic
SUBs de tracé de figures géométriques Emptypar papydall Mer 20 Mar 2024 - 21:23

» Je ne comprend pas pourquoi la largeur de la scene 3d change
SUBs de tracé de figures géométriques Emptypar Marc Mar 12 Mar 2024 - 20:06

» Comment télécharger panoramic?
SUBs de tracé de figures géométriques Emptypar lepetitmarocain Sam 9 Mar 2024 - 13:31

» @lepetitmarocain <==> KGFGrid
SUBs de tracé de figures géométriques Emptypar Klaus Dim 3 Mar 2024 - 9:59

» Tangram-Toukaré
SUBs de tracé de figures géométriques Emptypar jjn4 Mer 28 Fév 2024 - 18:12

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
SUBs de tracé de figures géométriques Emptypar jjn4 Mer 28 Fév 2024 - 18:09

» KGF_dll - nouvelles versions
SUBs de tracé de figures géométriques Emptypar Klaus Mer 28 Fév 2024 - 17:01

» Mes souhaits d'amélioration de Panoramic.
SUBs de tracé de figures géométriques Emptypar Pedro Lun 26 Fév 2024 - 18:12

» Testez-votre-QI
SUBs de tracé de figures géométriques Emptypar jjn4 Dim 25 Fév 2024 - 17:12

» Utilisation d'Élip
SUBs de tracé de figures géométriques Emptypar jjn4 Sam 24 Fév 2024 - 18:33

» Récapitulatif ludothèque panoramic jjn4
SUBs de tracé de figures géométriques Emptypar jjn4 Sam 24 Fév 2024 - 18:11

» Générateur de mots de passe
SUBs de tracé de figures géométriques Emptypar mindstorm Mar 20 Fév 2024 - 20:09

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mars 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier
-15%
Le deal à ne pas rater :
(Adhérents Fnac) LEGO® Star Wars™ 75367 Le croiseur d’assaut de ...
552.49 € 649.99 €
Voir le deal

 

 SUBs de tracé de figures géométriques

Aller en bas 
3 participants
AuteurMessage
papydall

papydall


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

SUBs de tracé de figures géométriques Empty
MessageSujet: SUBs de tracé de figures géométriques   SUBs de tracé de figures géométriques EmptyDim 25 Aoû 2013 - 17:24

Salut tout le monde.

Je vous propose quelques procédures de tracé de figures géométriques.
Tout est commenté dans le code

Code:
' ******************************************************************************
' Procédures de tracé de quelques figures géométriques Par Papydall
' Figures_Geometriques.bas
' ******************************************************************************
 Ellipse(250,220,200,100)
' Ellipse(250,220,100,200)

' Spirale(300,200,10)

' Polygone(250,220,200,3)     : ' triangle ou trigone
' Polygone(250,220,200,4)     : ' carré  ou tétragone
' Polygone(250,220,200,5)     : ' pentagone
' Polygone(250,220,200,6)     : ' hexagone
' Polygone(250,220,200,7)     : ' heptagone
' Polygone(250,220,200,8)     : ' octogone
' Polygone(250,220,200,9)     : ' nonagone ou ennéagone
' Polygone(250,220,200,10)    : ' décagone
' Polygone(250,220,200,11)    : ' hendécagone
' Polygone(250,220,200,12)    : ' dodécagone
' Polygone(250,220,200,20)    : ' icosagone
' Polygone(250,220,200,100)   : ' hécatontagone (on s'approche du cercle)
' Polygone(250,220,200,1000)  : ' chiliagone (pratiquement un cercle)
' Polygone(250,220,200,10000) : ' myriagone  (pratiquement un cercle)

' Pentagramme(250,220,200)

' Coeur(200,250,10)

' concoide(300,200,100)

' Papillon(300,300,50)

' Napperon(300,220,200)

' Secteur_Circulaire(300,220,0,90,200)
' Secteur_Circulaire(300,220,60,120,180)
' Secteur_Circulaire(300,220,-30,-60,200)
' Secteur_Circulaire(300,220,-60,-30,200)

end
' ******************************************************************************
' Tracé d'une ellipse
' Appel : Ellipse(xc,yc,rx,ry)
' Paramètres:
' xc,yc : coordonnées du centre de l'ellipse
' rx et ry : respectivement rayon horizontal et rayon vertical de l'ellipse
' si rx = ry on obtient un cercle
' Exemple d'appel :
' Ellipse(250,220,100,200)
' Ellipse(250,220,200,100)

SUB Ellipse(xc,yc,rx,ry)
    dim_local x,y,t,pi,p
    pi = acos(-1) : p = pi/180
    2d_poly_from xc + rx,yc
    for t = 0 to 2*pi step p
        x = xc + rx * cos(t) : y = yc + ry * sin(t) : 2d_poly_to x,y
    next t
END_SUB
' ******************************************************************************
' Tracé d'une spirale
' Appel Spirale(xc,yc,n)
' Paramètres:
' xc,yc : coordonnées du centre de la spirale
' n     : nombre de tours
' Exemple d'appel : Spirale(300,200,10)

SUB Spirale(xc,yc,n)
    dim_local x,y,theta,pi,p
    pi = acos(-1) : p = pi/180 : 2d_poly_from xc,yc
    for theta = 0 to 2*n*pi step p
        x = xc + 3 * theta * cos(theta) : y = yc + 3* theta*sin(theta)
        2d_poly_to x,y
    next theta
END_SUB
' ******************************************************************************
' Tracé d'un polygone convexe régulier
' Paramètres :
' xc,yc : coordonnées du centre du polygone
' rayon : rayon du cercle circonscrit au polygone
' Nbcote : nombre des côtés du polygone
' Exemple d'appel :
' Polygone(250,220,200,3)  : ' triangle
' Polygone(250,220,200,4)  : ' carré
' Polygone(250,220,200,5)  : ' pentagone
' Polygone(250,220,200,10) : ' décagone
' Remarque :
' Pour un grand nombre des côtés on obtient un cercle
' Polygone(250,220,200,360) : ' un cercle

SUB Polygone(xc,yc,rayon,NbCote)
    dim_local x,y,t,pi,p
    pi = acos(-1) : p = 2*pi/NbCote
    2d_poly_from xc + rayon,yc
    for t = 0 to 2*pi+.1  step p
        x = xc + rayon * cos(t) : y = yc + rayon * sin(t) : 2d_poly_to x,y
    next t
END_SUB
' ******************************************************************************
' Tracé d'un pentagramme (étoile à 5 sommets)
' Paramètres :
' xc,yc : coordonnées du centre du pentagramme
' rayon : rayon du cercle circonscrit au pentagramme
' Exemple d'appel :
' pentagramme(250,220,200)

SUB Pentagramme(xc,yc,rayon)
    dim_local x,y,t,pi,p
    pi = acos(-1) : p = 4*pi/5
    2d_poly_from xc + rayon,yc
    for t = 0 to 4*pi  step p
        x = xc + rayon * cos(t) : y = yc + rayon * sin(t) : 2d_poly_to x,y
    next t
END_SUB
' ******************************************************************************
' Tracé d'un coeur
' Paramètres :
' rx et ry détermine l'allure du coeur dans les sens horizontal et vertical
' epais détermine l'épaisseur du tracé en pixels
' la valeur de epais doit être compris entre 1 et 20, sinon elle sera de 5 pixels
' Exemple d'appel :
' Coeur(200,250,10)

SUB Coeur(rx,ry,epais)
    dim_local x,y,xc,yc,t,pi,p
    if (epais < 1) or (epais > 20) then epais = 5
    pi = acos(-1) : p = pi/180 : xc = width(0)*.5 : yc = (ry+height(0))*.5
    2d_poly_from xc,yc-ry : 2d_pen_color 255,0,0 : 2d_pen_width epais
    for t = 0 to 2*pi step p
        x = 4*cos(t)*cos(t)*sin(t)*sin(t)*sin(t)
        y = (3-2*cos(t)*cos(t))*cos(t)*cos(t) : 2d_poly_to xc+rx*x, yc-ry*y
    next t
END_SUB
' ******************************************************************************
' Conchoïde de rosace
' Courbe étudiée par Moritz en 1917
' Autres noms :
' Pétale géométrique, courbe botanique, rosace de Troie (dans le cas e > 1)
' courbe cyclo-harmonique, sinusoïde circulaire
' ------------------------------------------------------------------------------
' Equation polaire : rho = r *(1 + e * cos(n * theta)) avec n réel > 0
' Paramètres :
' xc,yc : coordonnées du centre de la concoïde
' r : coefficient multiplicateur
' Exemple d'appel :
' Concoide(300,200,100)

SUB Concoide(xc,yc,r)
    dim_local pi,p,x,y,theta,rho,n,e
    pi = acos(-1) : p = pi/180
    n = 9/7 : e = .8 : ' Modifier les valeurs de ces 2 constantes pour obtenir différentes formes
    theta = 0 : rho = (1+e*cos(n*theta)) : x = rho*cos(theta) : y = rho*sin(theta)
    2d_poly_from xc+x*r, yc+y
    for theta = p to 20*pi step p
        rho = (1+e*cos(n*theta)) : x = rho*cos(theta) : y = rho*sin(theta)
        2d_poly_to xc+r*x, yc+r*y
    next theta
END_SUB
' ******************************************************************************
' Tracé d'un papillon
' Paramètres :
' xc,yc : coordonnées du centre du papillon
' coef  : coeffitient multiplicateur
' Exemple d'appel :
' Papillon(300,300,50)

SUB Papillon(xc,yc,coef)
    dim_local r,theta,x,y,pi,p
    pi = acos(-1) : p = pi/180
    2d_poly_from xc,yc
    for theta = 0 to 20*pi step p
        r = exp(sin(theta)) - 2 * cos(4*theta) + sin(1/24 * power((2*theta - pi),5))
        x = r*cos(theta) : y = r*sin(theta)
        2d_pen_color rnd(255),rnd(155),rnd(25) : 2d_poly_to xc+coef*x,yc-coef*y
    next theta
END_SUB
' ******************************************************************************
' Tracé d'un napperon
' Paramètres :
' xc,yc : coordonnées du centre du napperon
' r     : rayon du cercle circonscrit au napperon
' Exemple d'appel : Napperon(300,220,200)

SUB Napperon(xc,yc,r)
    dim_local a,b,x,y,n,pi,p,x0,y0
    n = 25 : pi = acos(-1) : p = 2*pi/n
    for a = 0 to 2*pi step p
        x0 = xc + r * cos(a) : y0 = yc + r * sin(a)
        for b = a + p to 2 * pi - p step p
            x = xc + r * cos(b) : y = yc + r * sin(b) : 2d_line x0,y0,x,y
        next b
     next a
END_SUB
' ******************************************************************************
' Tracé d'un secteur circulaire
' Paramètres:
' xc,yc : coordonnées du centre du secteur
' deb,fin : respectivement angle de debut et angle de fin du tracé en DEGRES
' rayon : rayon du secteur
' REMARQUES :
' * Le sens du tracé est le sens trigonométrique (sens anti-horraire)
' * les angles deb et fin peuvent être positifs, négatifs ou nuls.
' * Ils peuvent être > 360° en valeur absolue.
' Exemple d'appel :
' Secteur_Circulaire(300,220,0,90,200)
' Secteur_Circulaire(300,220,60,120,150)
' Secteur_Circulaire(300,220,-30,-60,200)
' Secteur_Circulaire(300,220,-60,-30,200)

SUB Secteur_Circulaire(xc,yc,deb,fin,rayon)
    dim_local x,y,a,pi,rad,p
    pi = acos(-1) : rad = pi/180 : deb = mod(deb,360) : fin = mod(fin,360)
    if deb < 0 then deb = deb + 360
    if fin < 0 then fin = fin + 360
    if deb > fin then  deb = deb - 360
    2d_poly_from xc,yc
       for a = deb to fin
           x = rayon*cos(a*rad) : y = rayon*sin(a*rad) : 2d_poly_to xc+x,yc-y
       next a
    2d_poly_to xc,yc
END_SUB
' ******************************************************************************
@Ygeronimi
Tu peux t’en servir pour Le Mag.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

SUBs de tracé de figures géométriques Empty
MessageSujet: re   SUBs de tracé de figures géométriques EmptyDim 25 Aoû 2013 - 17:41

@ Papydall,

Ce n' est ni contre toi, ni contre personne d' ailleurs mais
Je ne prendrai pas (plus) sur le forum pour publier sur le site.
Je pense que les démarches établies pour les publications sur le site
sont les bonnes.
Si je me mets à devoir récupérer les subs ou les articles sur le forum
je vais devoir en créer les documents explicatif et prendre sur mon temps
de programmation personnel même si j' en ai un peu aujourd'hui ce ne sera
peut être plus le cas plus tard et les mauvaises habitudes ayant la vie dure
je préfère que nous gardions les bonnes.Laughing 

Donc, si tu veux que je publie, un petit zip avec le *.bas et le *.txt qui va avec...Laughing

PS: ceux ci dit, je trouve très bien toutes ces procédures, c' est du bon boulot ...
Revenir en haut Aller en bas
Jicehel

Jicehel


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

SUBs de tracé de figures géométriques Empty
MessageSujet: Re: SUBs de tracé de figures géométriques   SUBs de tracé de figures géométriques EmptyDim 25 Aoû 2013 - 18:39

Oui, bien vu Papydall: Jolies proc bien utiles Wink
Il y a aussi la rotation d'un objet par rapport à son centre que l'on avait vu pour le jeu de chars qui serait à mettre dedans, je pense car c'est carrément pratique.

Plus qu'à les mettre sur le webdav d'Ygeronimi pour qu'elles soient ajoutées dans la collection Wink
Revenir en haut Aller en bas
papydall

papydall


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

SUBs de tracé de figures géométriques Empty
MessageSujet: Re: SUBs de tracé de figures géométriques   SUBs de tracé de figures géométriques EmptyDim 25 Aoû 2013 - 19:29

Tu as certainement raison Ygeronimi.
Mieux vaut prendre les bonnes habitudes.
Le zip est sur ton Webdav dans SUBs\Papydall\Figures_geometriques.zip
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


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

SUBs de tracé de figures géométriques Empty
MessageSujet: Re: SUBs de tracé de figures géométriques   SUBs de tracé de figures géométriques EmptyMar 27 Aoû 2013 - 18:54

@Ygernimi
Je ne voie pas mes subs de figures géométriques ni sur ton Webdav ni sur Panoramic le Mag.
Dois-je échanger mes lunettes contre un binocle ?   Shocked


Dernière édition par papydall le Lun 2 Sep 2013 - 22:57, édité 1 fois
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

SUBs de tracé de figures géométriques Empty
MessageSujet: re   SUBs de tracé de figures géométriques EmptyMar 27 Aoû 2013 - 19:25

ha,ha...Peut être... Laughing 

Plus sérieusement, j' ai pris et intégré les procédures à la maquette du site.
Comme je l' ai dit, je prépare le n° 3 avec quelques modifs ( texte de la page d' accueil,
Présentation de l' historique, et des petites bricoles ) et je mettrai tout en ligne en même
temps. Les procédures que vous me posterez d'ici là étofferont un peu la publication 
de ce n° 3 et le rendront plus attrayant pour les lecteurs.
Revenir en haut Aller en bas
papydall

papydall


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

SUBs de tracé de figures géométriques Empty
MessageSujet: Re: SUBs de tracé de figures géométriques   SUBs de tracé de figures géométriques EmptyMar 27 Aoû 2013 - 19:31

OK. Je pige.


SUBs de tracé de figures géométriques TFR9C
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

SUBs de tracé de figures géométriques Empty
MessageSujet: re   SUBs de tracé de figures géométriques EmptyMar 27 Aoû 2013 - 19:40

Tu peux continuer à envoyer des procédures, je les traite au fur et à mesure.
Je les efface du webdav quand elles sont traitées pour laisser de l' espace mémoire
sur le serveur.

Tout est stocké sur une clé USB et je fais une sauvegarde assez régulièrement 
sur le Webdav dédié ouvert par Jicehel.
Revenir en haut Aller en bas
Contenu sponsorisé





SUBs de tracé de figures géométriques Empty
MessageSujet: Re: SUBs de tracé de figures géométriques   SUBs de tracé de figures géométriques Empty

Revenir en haut Aller en bas
 
SUBs de tracé de figures géométriques
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Tracé d'ellipse / tracé d'arcs de cercle
» Figures fractales
» BAO de dessin de figures élémentaires
» Des SUBs en VBS
» Subs mp3

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: