Un chameau, une vache, et pourquoi pas un lion ou un cochon
5 participants
Auteur
Message
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 3:05
Ce lion est tracé par une fonction paramétrique : X = f(t) Y = g(t) Le tout en Panoramic.
Comme le forum ne permet pas de poster les codes qui dépassent la limite, vous trouverez sur mon webdav : Chameau_Lion_Vache.zip qui contient le code de pas moins de 20 animaux et ... un arbre.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 10:28
Impressionnant !
Où as-tu trouvé tous ces coefficients ?
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 12:54
Bravo Papydall et merci pour ce partage.
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 13:07
Bonjour tout le monde. @ Jean_debord et @ tous ceux qui veulent en savoir plus : Lors de mes recherches je suis tombé sur cette vidéo qui a parlé de ce site qui grouille de … curves.
Un petit coup d’œil sur cette page montre ce que WolframAlpha est capable de faire.
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 14:04
Et voici la courbe de 3.14159265358979... Heu ! La courbe de Pi.
Code:
rem ============================================================================ rem Equation paramétrique de PI rem ============================================================================ dim xc,yc,i
Pi_Curve() end rem ============================================================================ ' Pi SUB Pi_Curve() dim_local x,y,t,twopi,p twopi = 2*pi : p = pi/180 caption 0,"Pi curve" color 10,100,250,250 for t = 0 to twopi step p x = 17/31 * sin(235/57 - 32 * t) x = x + 19/17 * sin(192/55 - 30 * t) x = x + 47/32 * sin(69/25 - 29 * t) x = x + 35/26 * sin(75/34 - 27 * t) x = x + 6/31 * sin(23/10 - 26 * t) x = x + 35/43 * sin(10/33 - 25 * t) x = x + 126/43 * sin(421/158 - 24 * t) x = x + 143/57 * sin(35/22 - 22 * t) x = x + 106/27 * sin(84/29 - 21 * t) x = x + 88/25 * sin(23/27 - 20 * t) x = x + 74/27 * sin(53/22 - 19 * t) x = x + 44/53 * sin(117/25 - 18 * t) x = x + 126/25 * sin(88/49 - 17 * t) x = x + 79/11 * sin(43/26 - 16 * t) x = x + 43/12 * sin(41/17 - 15 * t) x = x + 47/27 * sin(244/81 - 14 * t) x = x + 8/5 * sin(79/19 - 13 * t) x = x + 373/46 * sin(109/38 - 12 * t) x = x + 1200/31 * sin(133/74 - 11 * t) x = x + 67/24 * sin(157/61 - 10 * t) x = x + 583/28 * sin(13/8 - 8 * t) x = x + 772/35 * sin(59/16 - 7 * t) x = x + 3705/46 * sin(117/50 - 6 * t) x = x + 862/13 * sin(19/8 - 5 * t) x = x + 6555/34 * sin(157/78 - 3 * t) x = x + 6949/13 * sin(83/27 - t) x = x - 6805/54 * sin(2 * t + 1/145) x = x - 5207/37 * sin(4 * t + 49/74) x = x - 1811/58 * sin(9 * t + 55/43) x = x - 63/20 * sin(23 * t + 2/23) x = x - 266/177 * sin(28 * t + 13/18) x = x - 2/21 * sin(31 * t + 7/16)
y = 70/37 * sin(65/32 - 32 * t) y = y + 11/12 * sin(98/41 - 31 * t) y = y + 26/29 * sin(35/12 - 30 * t) y = y + 54/41 * sin(18/7 - 29 * t) y = y + 177/71 * sin(51/19 - 27 * t) y = y + 59/34 * sin(125/33 - 26 * t) y = y + 49/29 * sin(18/11 - 25 * t) y = y + 151/75 * sin(59/22 - 24 * t) y = y + 52/9 * sin(118/45 - 22 * t) y = y + 52/33 * sin(133/52 - 21 * t) y = y + 37/45 * sin(61/14 - 20 * t) y = y + 143/46 * sin(144/41 - 19 * t) y = y + 254/47 * sin(19/52 - 18 * t) y = y + 246/35 * sin(92/25 - 17 * t) y = y + 722/111 * sin(176/67 - 16 * t) y = y + 136/23 * sin(3/19 - 15 * t) y = y + 273/25 * sin(32/21 - 13 * t) y = y + 229/33 * sin(117/28 - 12 * t) y = y + 19/4 * sin(43/11 - 11 * t) y = y + 135/8 * sin(23/10 - 10 * t) y = y + 205/6 * sin(33/23 - 8 * t) y = y + 679/45 * sin(55/12 - 7 * t) y = y + 101/8 * sin(11/12 - 6 * t) y = y + 2760/59 * sin(40/11 - 5 * t) y = y + 1207/18 * sin(21/23 - 4 * t) y = y + 8566/27 * sin(39/28 - 3 * t) y = y + 12334/29 * sin(47/37 - 2 * t) y = y + 15410/39 * sin(185/41 - t) y = y - 596/17 * sin(9 * t + 3/26) y = y - 247/28 * sin(14 * t + 25/21) y = y - 458/131 * sin(23 * t + 21/37) y = y - 41/36 * sin(28 * t + 7/8) if t = 0 2d_poly_from xc+x/5,yc-y/5 else 2d_poly_to xc+x/5,yc-y/5 end_if display next t 2d_flood xc-50,yc,200,100,20 ' 2d_pen_color 250,250,250 : 2d_line 0,yc,2*xc,yc : 2d_line xc,0,xc,2*yc : ' les axes END_SUB rem ============================================================================
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 14:37
Splendide !
Merci Papydall pour tous ces partages !
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 14:52
Merci Minibug. Merci Marc.
Marc a écrit:
Splendide !
Voici le code du S de Splendide
Code:
rem ============================================================================ rem Equation paramétrique du S rem ============================================================================ dim xc,yc,i
S_Curve() end rem ============================================================================ ' S SUB S_Curve() dim_local x,y,t,twopi,p twopi = 2*pi : p = pi/180 caption 0,"S curve ... <ESC> pour arrêter ..." color 10,100,250,250 for t = 0 to twopi step p x = 7/39 * sin(17/5 - 45 * t) + 8/35 * sin(2/11 - 44 * t) x = x + 2/21 * sin(19/21 - 43 * t) + 3/20 * sin(1/22 - 42 * t) x = x + 12/41 * sin(101/42 - 41 * t) + 7/32 * sin(11/20 - 40 * t) x = x + 10/27 * sin(316/93 - 39 * t) + 8/17 * sin(22/5 - 37 * t) x = x + 1/6 * sin(141/35 - 34 * t) + 42/37 * sin(36/31 - 33 * t) x = x + 8/19 * sin(83/34 - 32 * t) + 15/11 * sin(73/27 - 31 * t) x = x + 57/34 * sin(214/55 - 29 * t) + 14/39 * sin(21/17 - 28 * t) x = x + 1/2 * sin(19/47 - 26 * t) + 76/27 * sin(10/19 - 25 * t) x = x + 17/31 * sin(728/243 - 24 * t) + 82/31 * sin(85/37 - 23 * t) x = x + 133/32 * sin(83/22 - 21 * t) + 35/53 * sin(709/177 - 18 * t) x = x + 93/19 * sin(16/33 - 17 * t) + 29/35 * sin(49/19 - 16 * t) x = x + 126/17 * sin(45/23 - 15 * t) + 112/43 * sin(45/23 - 14 * t) x = x + 203/36 * sin(189/50 - 13 * t) + 175/31 * sin(161/37 - 11 * t) x = x + 17/22 * sin(235/88 - 10 * t) + 641/30 * sin(4/33 - 9 * t) x = x + 1355/113 * sin(23/10 - 7 * t) + 444/47 * sin(98/31 - 6 * t) x = x + 18739/44 * sin(65/21 - 3 * t) + 2262/41 * sin(161/43 - 2 * t) x = x + 3310/21 * sin(53/17 - t) - 1079/33 * sin(4 * t + 18/29) x = x - 12987/382 * sin(5 * t + 24/43) - 174/37 * sin(8 * t + 10/39) x = x - 103/25 * sin(12 * t + 6/43) - 83/25 * sin(19 * t + 47/33) x = x - 167/168 * sin(20 * t + 35/39) - 17/28 * sin(22 * t + 17/26) x = x - 17/10 * sin(27 * t + 21/37) - 5/17 * sin(30 * t + 23/34) x = x - 4/11 * sin(35 * t + 4/17) - 14/69 * sin(36 * t + 18/55) x = x- 9/20 * sin(38 * t + 8/13)
y = 20/23 * sin(107/31 - 45 * t) + 8/31 * sin(1/20 - 44 * t) y = y + 4/11 * sin(19/34 - 42 * t) + 27/35 * sin(5/31 - 41 * t) y = y + 3/22 * sin(59/32 - 40 * t) + 34/35 * sin(28/19 - 39 * t) y = y + 7/24 * sin(175/46 - 38 * t) + 5/6 * sin(68/23 - 37 * t) y = y + 13/14 * sin(137/32 - 35 * t) + 15/41 * sin(65/22 - 32 * t) y = y + 38/49 * sin(28/25 - 31 * t) + 12/29 * sin(88/25 - 30 * t) y = y + 8/17 * sin(82/35 - 29 * t) + 6/11 * sin(100/57 - 28 * t) y = y + 7/15 * sin(70/19 - 27 * t) + 3/11 * sin(6/19 - 26 * t) y = y + 2/23 * sin(101/34 - 25 * t) + 5/8 * sin(16/23 - 23 * t) y = y + 1/31 * sin(35/12 - 20 * t) + 19/27 * sin(29/48 - 18 * t) y = y + 42/25 * sin(173/72 - 17 * t) + 36/13 * sin(123/28 - 16 * t) y = y + 73/14 * sin(74/29 - 15 * t) + 89/35 * sin(87/52 - 14 * t) y = y + 421/41 * sin(190/41 - 13 * t) + 39/22 * sin(97/26 - 12 * t) y = y + 203/16 * sin(11/34 - 11 * t) + 137/31 * sin(32/21 - 10 * t) y = y + 667/39 * sin(17/11 - 9 * t) + 164/25 * sin(145/33 - 8 * t) y = y + 1843/39 * sin(46/21 - 7 * t) + 605/59 * sin(93/58 - 6 * t) y = y + 566/25 * sin(7/19 - 2 * t) + 10889/18 * sin(55/13 - t) y = y - 1680/11 * sin(3 * t + 27/35) - 326/19 * sin(4 * t + 15/22) y = y - 3826/31 * sin(5 * t + 52/35) - 48/37 * sin(19 * t + 1/19) y = y - 35/32 * sin(21 * t + 14/11) - 14/31 * sin(22 * t + 10/59) y = y - 1/23 * sin(24 * t + 2/25) - 11/16 * sin(33 * t + 15/26) y = y - 13/43 * sin(34 * t + 27/28) - 7/27 * sin(36 * t + 17/60) y = y - 22/27 * sin(43 * t + 58/37) if t = 0 2d_poly_from xc+x/5,yc-y/5 else 2d_poly_to xc+x/5,yc-y/5 end_if display next t repeat 2d_flood xc,yc,200,100,20 : pause 500 2d_flood xc,yc,20,100,200 : pause 500 until scancode = 27
END_SUB rem ============================================================================
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 15:09
Papydall a écrit:
Voici le code du S de Splendide
Ah oui ! En plus il clignote
Noël arrive à grands pas... Peut-être aurons-nous un sapin de Noël "Papydall paramétrique clignotant" ?
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 15:15
En attendant, voici le Psi tout aussi clignotant !
Code:
rem ============================================================================ rem Equation paramétrique du Psi rem ============================================================================ dim xc,yc,i
Psi_Curve() end rem ============================================================================ ' Psi SUB Psi_Curve() dim_local x,y,t,twopi,p twopi = 2*pi : p = pi/180 caption 0,"Psi curve ... <ESC> pour arrêter ..." color 10,100,250,250 for t = 0 to twopi step p x = 8/17 *sin(28/11 - 60 *t) + 13/9 *sin(11/5 - 59 *t) + 11/12 *sin(23/9 - 57 *t) x = x + 5/6 *sin(40/13 - 56 *t) + 13/19 *sin(22/7 - 55 *t) + 3/4 *sin(4/11 - 54 *t) x = x + 1/7 *sin(10/19 - 53 *t) + 2/9 *sin(50/13 - 52 *t) + 2/5 *sin(21/5 - 51 *t) x = x + 1/20 *sin(8/3 - 50 *t) + 12/7 *sin(19/14 - 49 *t) + 2/3 *sin(14/3 - 48 *t) x = x + 8/13 *sin(5/3 - 47 *t) + 9/11 *sin(15/7 - 46 *t) + 99/49 *sin(7/3 - 45 *t) x = x + 1/7 *sin(47/11 - 44 *t) + 1/5 *sin(19/10 - 43 *t) + 14/13 *sin(31/10 - 41 *t) x = x + 14/9 *sin(4/7 - 39 *t) + 2/13 *sin(109/27 - 38 *t) + 12/13 *sin(33/8 - 37 *t) x = x + 21/16 *sin(40/9 - 36 *t) + 6/7 *sin(23/17 - 35 *t) + 29/19 *sin(19/10 - 34 *t) x = x + 11/6 *sin(9/5 - 33 *t) + 57/13 *sin(16/7 - 31 *t) + 3/2 *sin(17/6 - 30 *t) x = x + 4/3 *sin(8/3 - 29 *t) + 49/25 *sin(31/10 - 27 *t) + 51/19 *sin(80/23 - 26 *t) x = x + 17/5 *sin(34/9 - 25 *t) + 47/16 *sin(7/8 - 24 *t) + 47/11 *sin(18/19 - 23 *t) x = x + 45/8 *sin(13/3 - 22 *t) + 95/11 *sin(13/9 - 21 *t) + 37/8 *sin(13/7 - 20 *t) x = x + 219/16 *sin(21/11 - 19 *t) + 9/11 *sin(29/10 - 18 *t) + 89/12 *sin(19/8 - 17 *t) x = x + 17/12 *sin(27/10 - 16 *t) + 141/11 *sin(37/13 - 15 *t) + 222/11 *sin(1/6 - 13 *t) x = x + 58/3 *sin(39/11 - 12 *t) + 134/15 *sin(6/11 - 11 *t) + 85/19 *sin(17/16 - 10 *t) x = x + 354/11 *sin(15/14 - 9 *t) + 103/12 *sin(11/8 - 8 *t) + 305/4 *sin(17/11 - 7 *t) x = x + 616/41 *sin(13/7 - 6 *t) + 615/8 *sin(2 - 5 *t) + 403/7 *sin(8/3 - 2 *t) x = x + 4773/13 *sin(32/11 - t) - 614/9 *sin(3 *t + 2/3) - 614/11 *sin(4 *t + 13/14) x = x - 194/15 *sin(14 *t + 1/25) - 13/6 *sin(28 *t + 2/9) - 5/4 *sin(32 *t + 9/7) x = x - 2/9 *sin(40 *t + 3/7) - 4/9 *sin(42 *t + 2/5) - 3/7 *sin(58 *t + 11/12) - 153/22
y = 1/6 *sin(269/67 - 60 *t) + 1/11 *sin(31/10 - 59 *t) + 3/13 *sin(2/3 - 58 *t) y = y + 7/9 *sin(21/5 - 57 *t) + 3/8 *sin(31/7 - 55 *t) + 1/8 *sin(27/8 - 53 *t) y = y + 7/13 *sin(14/5 - 50 *t) + 7/11 *sin(22/7 - 47 *t) + 7/15 *sin(38/11 - 45 *t) y = y + 9/14 *sin(49/11 - 44 *t) + 6/5 *sin(38/9 - 43 *t) + 11/15 *sin(37/8 - 42 *t) y = y + 3/4 *sin(20/11 - 40 *t) + 2/11 *sin(37/15 - 39 *t) + 1/5 *sin(64/15 - 38 *t) y = y + 14/13 *sin(33/14 - 37 *t) + 1/2 *sin(23/9 - 35 *t) + 21/22 *sin(24/7 - 33 *t) y = y + 9/11 *sin(37/10 - 32 *t) + 17/9 *sin(47/12 - 31 *t) + 52/51 *sin(74/17 - 29 *t) y = y + 3/10 *sin(10/3 - 28 *t) + 9/8 *sin(8/5 - 27 *t) + 43/13 *sin(19/9 - 25 *t) y = y + 5/3 *sin(33/14 - 24 *t) + 3/11 *sin(1/27 - 21 *t) + 29/12 *sin(1/13 - 20 *t) y = y + 2/9 *sin(175/44 - 19 *t) + 7/13 *sin(5/4 - 18 *t) + 10/13 *sin(19/5 - 17 *t) y = y + 191/19 *sin(38/9 - 16 *t) + 74/11 *sin(13/10 - 15 *t) + 95/8 *sin(3/2 - 14 *t) y = y + 42/17 *sin(23/12 - 12 *t) + 278/3 *sin(57/17 - 6 *t) + 18/5 *sin(6/13 - 5 *t) y = y + 1336/9 *sin(11/17 - 4 *t) + 2879/12 *sin(133/33 - 3 *t) + 1519/9 *sin(17/4 - 2 *t) y = y + 3027/7 *sin(76/17 - t) y = y - 2582/89 *sin(7 *t) - 414/17 *sin(8 *t + 1/4) y = y - 337/21 *sin(9 *t + 1/2) - 29/3 *sin(10 *t + 5/7) - 35/13 *sin(11 *t + 13/14) y = y - 22/5 *sin(13 *t + 10/7) - 3/8 *sin(22 *t + 1/15) - 12/25 *sin(23 *t + 8/11) y = y - 2/5 *sin(26 *t + 5/4) - 1/6 *sin(30 *t + 1/35) - 2/9 *sin(34 *t + 7/10) y = y - 5/12 *sin(36 *t + 8/11) - 14/15 *sin(41 *t + 3/2) - 2/5 *sin(46 *t + 1/22) y = y - 2/3 *sin(48 *t + 1/11) - 1/31 *sin(49 *t + 1/70) - 1/13 *sin(51 *t + 4/7) y = y - 1/12 *sin(52 *t + 1/4) - 7/20 *sin(54 *t + 25/26) - 1/6 *sin(56 *t + 9/13) + 444/11 if t = 0 2d_poly_from xc+x/5,yc-y/5 else 2d_poly_to xc+x/5,yc-y/5 end_if display next t repeat 2d_flood xc,yc,200,100,20 : pause 500 2d_flood xc,yc,20,100,200 : pause 500 until scancode = 27
END_SUB rem ============================================================================
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Mer 30 Sep 2020 - 15:46
Je termine maintenant avec le Tau
Code:
rem ============================================================================ rem Equation paramétrique du Tau rem ============================================================================ dim xc,yc,i
La méthode utilise une seule formule, et un seul paramètre, quel que soit le dessin ! Le "truc", c'est que le paramètre contient dans ses décimales les coordonnées de tous les points. Il faut donc pouvoir calculer en multiprécision.
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Ven 2 Oct 2020 - 18:58
C'est très intéressant. Merci Jean_debord.
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Ven 2 Oct 2020 - 23:10
C'est quand même fou comme technique ! Des cercles dans les cercles dans les cercles...
Bravo Papydall pour ton travail et merci Jean pour nous avoir permet de mieux comprendre la façon dont c'est réalisé.
Vraiment bluffant !
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Un chameau, une vache, et pourquoi pas un lion ou un cochon Sam 3 Oct 2020 - 0:51
Minibug a écrit:
C'est quand même fou comme technique ! Des cercles dans les cercles dans les cercles...
Plutôt ce sont les lieux géométriques des points tournant autour des cercles qui tournent autour d’autres cercles qui …
Bon, comme il s'agit des cercles qui tournent autour des cercles, voici un code qui risque de donner le tournis. Pour arrêter le supplice, presser la touche ESCAPE.
Code:
rem ============================================================================ rem Tourne ... Tourne ... Tourne encore ! ... rem ============================================================================ dim A,A3,A4,x,x1,x2,x3,x4,x5,y,y1,y2,y3,y4,y5,C1,C2,C3 width 0,620 : height 0,500 picture 10 : full_space 10 : 2d_target_is 10 : color 10,0,0,0 caption 0,"Tourne ... Tourne ... Tourne encore ! ... <ESC> pour arrêter ..." C1 = 50 : C2 = 50 : C3 = 0 Tourne() end rem ============================================================================ SUB Tourne() while "tourne" <> "tourne encore" FOR A = 0 TO 2 * pi STEP .08 A3 = A3 + .003 : A4 = A4 + .01 IF A3 >= 2 * pi THEN A3 = .003 IF A4 >= 2 * pi THEN A4 = .01