[Algorithme] Optimiser l'espace entre les blocs (en JS aussi)

Messages postés
554
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
9 juillet 2014
- - Dernière réponse : bilaloch
Messages postés
554
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
9 juillet 2014
- 9 juil. 2014 à 15:46
Bonjour à tous !

Je suis en train de développer un site internet censé afficher des blocs (dont on connait la taille) dynamiquement, chaque bloc pouvant avoir un lien avec d'autres blocs (liens schématisés par des flèches). Mon souci est simplement de savoir s'il existe un algorithme permettant d'optimiser l'espace entre les blocs afin qu'ils soient à une distance optimale entre eux (plutôt proches les uns des autres), tout en prenant compte de l'existence des flèches (donc deux blocs liés devraient être plus proches l'un de l'autre, en tout cas quand c'est possible). Le nombre de blocs varient, mais disons qu'il ne sera jamais supérieur à quelques dizaines.

Voici un exemple qui, j'espère, sera un minimum clair :


Donc en gros, il y aura toujours un bloc "central", et les autres viendront se greffer tout autour de lui, sachant qu'ils peuvent aussi se greffer à d'autres blocs voire ne pas se greffer nécessairement au bloc "central". La question qui se pose est la suivante : comment coder un algo qui permette de déterminer la position optimale des différents blocs, en tenant compte des relations des uns et des autres entre eux et sans trop s'éloigner non plus ? Des idées ?

Merci d'avance pour ceux qui se casseront la tête avec et pour moi !

Belle journée à tous.

PS : j'ai déjà posté sur PHPFrance, mais mon problème peut être résolu en JS ou en PHP.
Afficher la suite 

2 réponses

Messages postés
26526
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
18 octobre 2019
316
0
Merci
Bonjour,

Première question :
afficher des blocs (dont on connait la taille)
Les afficher comment ? (sous quelle forme ? ... avec quel code ? )



D'où proviennent les données ( la taille des blocs, la relation entre chaque bloque ) ?
Comment est-elle codée ?

Et puis enfin :

Merci de garder à l'esprit que CodeS-SourceS est une communauté d'entraide.

Toutes les réponses sur le forum sont assurées par des bénévoles
qui donnent de leur temps libre pour aider à résoudre les problèmes.

A noter également que nous ne faisons pas dans le "tout cuit" et ne sommes pas là pour remplacer votre moteur de recherches...
... Soit tu trouves ton bonheur dans la partie source du site, soit à l'aide de ton moteur de recherche favori.

Ici, nous aidons volontiers sur des sujets techniques précis.

Je t'invite à lire avec attention le contenu du lien suivant :
charte-de-commentcamarche-net : conseils-d-ecriture

Ainsi que celui concernant l'utilisation de la coloration syntaxique :
Utilisation des Balises de code

Merci donc de reformuler ta demande en respectant ces quelques points.

Quelques points essentiels à retenir :
- On ne pose qu' UNE question par discussion
- Le titre de la question doit refléter le souci rencontré ( Help.. SOS.. Urgent.. n'apporte aucune information utile !)
- Lorsque votre question est résolue.. merci de clore le sujet (lien Marquer comme résolu se trouvant sous le titre de votre question).
- Une question obtiendra de meilleurs réponses si elle est correctement rédigée, que les explications sont clairs et qu'éventuellement vous postez le code qui pose problème.
- Si vous avez un message d'erreur..... MARQUEZ LE (dans son intégralité).

Merci.




Commenter la réponse de jordane45
Messages postés
554
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
9 juillet 2014
0
Merci
Bonjour,

J'ai respecté toutes ces règles. Vous demandez des précisions que j'ai jugées inutiles puisqu'elles alourdissent le post déjà assez complexe. Et je fais moi-même partie de cette communauté, ayant aidé à résoudre bien des problèmes dans différents langages il y a longtemps. Donc je sais ce qu'il en est. Si je poste ici, c'est by the way parce que j'ai déjà cherché dans les sources ET avec mon moteur de recherches préféré, et que je n'ai pas trouvé mon bonheur. D'ailleurs, ça m'aurait bien aidé, puisque ça m'aurait évité de perdre du temps pour mon projet, et aussi de recevoir des messages déplaisants comme le vôtre. Si je n'ai pas exposé un bout de code, c'est parce que je n'en ai pas pour le moment. Mon souci étant d'ordre purement algorithmique, il est inutile d'en avoir un (puisque je ne sais même pas par où commencer). J'ai déjà fait l'effort de poster une image (okay, faite sur Paint, mais quand même !).

Bref ! Je vais quand même répondre à votre question. Les informations (taille des blocs, liens) sont contenues dans une base de données MySQL à ma disposition.

Bonne journée quand même,
À plus tard.
jordane45
Messages postés
26526
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
18 octobre 2019
316 -
Tu penses qu'avec une réponse de ce genre les gens vont vouloir t'aider ???
Non mais oh...

Premier point :Tu as respecté toutes les règles ?? Tu en es bien sûr ?
Pour moi... tu as posté en double la même question... sur les forum : Javascript et Php...
Tu le dis toi même... ta question concerne l' Algo...et non le "langage" de programmation...
.

Second point :
J'ai déjà fait l'effort de poster une image
Ah ben heureusement... car ce n'est surement pas avec ( le si peu) d'informations que tu nous donnes que nous pourrions comprendre ta question....
Et si poser des questions clairs/précises/détaillées te demandent autant d' EFFORT... vas te recoucher !

Ensuite :
ous demandez des précisions que j'ai jugées inutiles puisqu'elles alourdissent le post déjà assez complexe
La preuve qu'elles ne sont pas inutiles puisque je te les demande.....



Et pour finir... vue que ta question n'est que "purement" algorithmique je déplace la présente discussion dans la section Autres langages / Méthodes de ce forum et clos le sujet se trouvant en PHP faisant doublon.


Bonne continuation (quand même).
bilaloch
Messages postés
554
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
9 juillet 2014
-
Les gens qui veulent aider m'aideront. Quant aux autres, je n'ai pas besoin de leur aide ou de leur méchanceté.

Comme expliqué dans mon premier message, j'ai posté sur PHP et sur JS tout simplement parce que mon problème, bien qu'algorithmique, pourrait être résolu en PHP et en JS, et donc si quelqu'un s'y connaissait, il m'aurait peut-être aidé par une ébauche dans le dit langage.

Je considère que je pose des questions (ou plutôt une question) claires et précises. Le problème est complexe en soi, et c'est une lecture posée qui permettra aux gens de comprendre, pas un simple survol. Voilà pourquoi ça vous a posé autant de souci de saisir l'essence du problème. Je parlais d'effort uniquement en contre-argument de votre "non mais tu te fous de notre gueule, tu expliques mal ton problème, tu cherches rien sur le net, tu ferais bien de lire le règlement, tu ne fais aucun effort" injustifié. Donc évitez de me parler sur ce ton ("va te recoucher"). Un admin qui perd son sang-froid... On aura tout vu.

Je ne vois toujours pas en quoi les informations que vous m'avez demandé étaient utiles... Que la taille et les liens de ces blocs soient dans des variables, des fichiers texte ou une BDD, ça n'y change rien au problème originel.

Enfin, merci de l'avoir placé dans la section appropriée, je comprends que cela pose problème d'avoir ce message deux fois dans le forum.

À plus tard.
Commenter la réponse de bilaloch