Puzzle et splines...

Discussion générale entre passionnés et amateurs de mathématiques sur des sujets mathématiques variés
kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

Puzzle et splines...

par kau » 03 Sep 2007, 13:56

Bonjour,
Je cherche à réaliser un petit logiciel capable de générer aléatoirement des images correspondant à la découpe d'un puzzle.

Bien sur, il s'agit du puzzle classique des familles...
-> Les pièces doivent pouvoir "s'accrocher" les unes aux autres.
La plupart du temps, la courbe de l'interface entre 2 pièces ressemble à un "champignon"...

Le logiciel doit pouvoir faire varier aléatoirement cette courbe pour que chaque pièce soit unique, mais toutes les pièces doivent pouvoir tenir ensemble.


Cela amène donc 2 questions:
1. Quel courbe du plan pourrait convenir?
2. Comment vérifier que les deux pièces reliées par cette courbe "tiennent" ensembles, cad qu'elle s'accrochent?


Pour la 1. J'ai pensé à des courbes de Bézier.
A priori avec un minimum de 7 points on y arrive.
Par exemple avec cette applet
http://home.nordnet.fr/~jpbaey/tipe/bezier/java/tipe_bezier_applet.htm

Mais ce n'est pas facile et il faut beaucoup tatonner pour y arriver.
De plus les courbes de Bézier ne passent pas obligatoirement par les points de contrôle, ce qui est pénible... Quelle autre courbe passe par ses points de controle?


Pour la 2. Aucune idée!
Je ne trouve pas de condition mathématique évidente...

A+
Kau

PS. je suis nouveau sur le forum, donc désolé si je ne respecte pas les us et coutumes, par exemple si je n'ai pas posté au bon endroit.



izamane95
Membre Rationnel
Messages: 620
Enregistré le: 31 Aoû 2006, 22:08

par izamane95 » 03 Sep 2007, 14:02

bonjour
tu peux le poster dans la rubrique "informatique"

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 03 Sep 2007, 14:04

T'es pas obligé de faire si compliqué ...
Un triangle suffit.
Tu règleras juste l'abscisse du sommet.

Chaque coté aura une abscisse différente garantissant l'unicité de l'emboitement.

kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

par kau » 03 Sep 2007, 14:15

Bonjour,
merci pour vos réponses...
Flodelarab: les triangles ne conviennent pas, je souhaite que les pièces tiennent ensemble.
CAD que une fois 2 pièces emboités, si je tire chacune de son coté elle ne bougent pas...
Je voudrait aussi que l'interface ressemble au puzzle de grand-mère, cad des belles courbes en forme de "champignon"... Un critère esthétique quoi!

Petite parenthèse: Tiens, Flodelarab je crois que j'ai lu des commentaires à toi sur le language Anubis ;)
En fait ce petit programme (je l'ai commencé hier) me sert d'exercice/initiation au langage Haskell ;)

izamane95: on peut déplacer la conversation ou c'est trop tard?
Il s'agit bien d'une question mathématique, pas (trop) d'informatique pour l'instant...

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 03 Sep 2007, 14:23

:ptdr: Que le monde est petit !

Je me suis vraiment intéressé a ce langage, j'ai participé, j'ai fait un petit programme de stéganographie pour voir, et j'ai abandonné le langage.

Trop de trous dans les outils disponibles.
L'absence de bugs est un leurre énorme.
La différence avec les autres langages, c'est qu'au lieu de te permettre de choisir de traiter ou non les exceptions, il t'oblige à les traiter: perte de temps évidente.


Par contre, le côté "tout est fonction mathématique" me plaisait assez.

kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

par kau » 03 Sep 2007, 22:57

Ha oui le développeur de ce langage a l'air assez isolé.
Pas facile quand même de se lancer dans un tel chantier!
Et que pense-tu de Haskell?

Sinon personne n'as d'idées pour mes 2 questions de départ?

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 03 Sep 2007, 23:27

kau a écrit:Ha oui le développeur de ce langage a l'air assez isolé.
Pas facile quand même de se lancer dans un tel chantier!
Et que pense-tu de Haskell?

Sinon personne n'as d'idées pour mes 2 questions de départ?
Pour Haskell, je ne connais pas. D'après ce que je viens de lire, ça semble être un langage parmi tant d'autres.

Pour ton puzzle, je ne comprends pas.
N'importe quel dessin qui fait un crochet fait l'affaire.
Quand à l'unicité de la reconstruction, je n'ai pas le souvenir qu'une seule pièce rentrait dans une seule pièce dans les puzzles de nos grand-meres....

non?

kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

Lagrange

par kau » 05 Sep 2007, 17:30

Cool! Je crois avoir trouvé ce que je cherche.
Il s'agit des polynômes d'interpolation de Lagrange.
Ils permettent de faire passer une jolie courbe par n points.

Je voudrais rajouter une condition:
Comment pour imposer une tangente à la courbe en certains des points de passage?

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 05 Sep 2007, 18:04

Les polynomes d'interpolation de lagrange sont des polynômes comme leur nom l'indique.
Cela signifie 1 x donne 1 y.
Tu n'auras pas ton retour en arrière. toi tu veux une bulle. Pas un dos de chameau.

kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

par kau » 05 Sep 2007, 19:36

Effectivement!
Mais je pense qu'on peut utiliser les polynômes de Lagrange dans le plan aussi.
Comme pour les courbes de Bézier, mais en remplaçant le polynôme "de Bezier" par celui "de Lagrange" ;)

En bidouillant un peu j'ai obtenu ça avec 4 points:
http://img214.imageshack.us/img214/5540/macourbeir0.jpg

Sympa non?
Maintenant je ne sais pas comment imposer des tangentes...
Remarque j'ai pas encore eu le temps d'y réfléchir :hein:

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 05 Sep 2007, 19:58

kau a écrit:Effectivement!
Mais je pense qu'on peut utiliser les polynômes de Lagrange dans le plan aussi.
Comme pour les courbes de Bézier, mais en remplaçant le polynôme "de Bezier" par celui "de Lagrange" ;)

En bidouillant un peu j'ai obtenu ça avec 4 points:
http://img214.imageshack.us/img214/5540/macourbeir0.jpg

Sympa non?
Maintenant je ne sais pas comment imposer des tangentes...
Remarque j'ai pas encore eu le temps d'y réfléchir :hein:

Et pourquoi tu considérerais pas une ellipse dont tu choisirais toi même les paramètres bleu rouge et vert ?

Image

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 05 Sep 2007, 20:00

Et jaune d'ailleurs aussi éventuellement en considérant le prolongement de l'axe vert.

kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

par kau » 06 Sep 2007, 12:44

Ah ouais bonne idée.
Quelle logiciel tu utilise pour obtenir ton image?
Et comment tu fait pour obtenir les arrondis à la base du "pied"?

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 06 Sep 2007, 12:52

kau a écrit:Ah ouais bonne idée.
Quelle logiciel tu utilise pour obtenir ton image?
Et comment tu fait pour obtenir les arrondis à la base du "pied"?
Paint.
Ou plutôt xpaint pour etre précis.

Pour la base, c'est de la fantaisie. Ne t'embetes pas. Fais juste une interpénétration de ton carré avec ton ellipse.

Et utilise la définition paramétrique de l'ellipse:

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 06 Sep 2007, 21:08

J'obtiens ça comme premier test:
Image

Les "vers le bas" sont ronds et les "vers la droite" sont exotiques.

kau
Messages: 7
Enregistré le: 03 Sep 2007, 12:53

par kau » 07 Sep 2007, 08:43

Ha oui, très sympa!
reste à ajouter un peu de diversité.
J'ai 3 heures de train ce soir, j'en profiterais pour coder ça ;)

Flodelarab
Membre Légendaire
Messages: 6574
Enregistré le: 29 Juil 2006, 14:04

par Flodelarab » 07 Sep 2007, 12:32

kau a écrit:Ha oui, très sympa!
reste à ajouter un peu de diversité.
J'ai 3 heures de train ce soir, j'en profiterais pour coder ça ;)

J'ai eu la flemme d'inclure le module random.
Mais sinon tout est paré pour la diversité.
Je trouve quand même que la plus part du temps, la différence entre les formes n'est pas flagrante.
J'ai eu une autre idée: je vais tenter de mettre du cos³ a la place du cos.... pour voir

Retourner vers ⚜ Salon Mathématique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 5 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite