Sudoku: NSMatrix, NSTableView ou custom NSView ?
damdam
Membre
Bonjour tout le monde,
J'ai un petit souci avec un resolveur de sudoku que je suis en train d'écrire. J'ai un tableau de 16x16 contenant un nombre de 0 à F. Pour l'instant, tout fonctionne, j'utilise un NSTableView et un bout de code trouvé http://www.artlogic.com/resources/grid-effect/ pour avoir un look Sudoku. J'ai transplanter ce matin la majeure partie du code d'un NSTableView vers un NSMatrix. Tout fonctionne mais je me demande comment aller plus loin et si j'utilise la meilleure méthode.
Mais je souhaite éditer mon tableau, et pouvoir sélectionner un nombre arbitraire de cellules, par forcément de façon contigà¼e. Si je ne m'abuse, NSTableView ne permet pas ce type d'utilisation alors que NSMatrix si. Mais NSMatrix ne permet pas de trop customiser le look général de la grille et je n'aime pas trop la manière de fonctionner de cette classe (c'est peut-être moi). Je suis en train de bouquiner la différence entre NSControl, NSCell et autres NSView, et je sens que je vais devoir écrire de toute façon une classe SudokuCell ou SudokuCellView
Mon problème n'est pas technique, mais plutôt de l'ordre de la philosophie Cocoa.
Dans le cas de plateaux de jeu tabulaires (Sudoku, Démineur, etc), quel style de vues vaut-il mieux utiliser ? Je penche pour une NSView custom, mais j'ai pas super envie de réimplémenter une partie des méthodes de NSTableView ou NSMatrix (en particulier tout le code graphique), qui sont quand même pratiques.
Merci d'avance.
J'ai un petit souci avec un resolveur de sudoku que je suis en train d'écrire. J'ai un tableau de 16x16 contenant un nombre de 0 à F. Pour l'instant, tout fonctionne, j'utilise un NSTableView et un bout de code trouvé http://www.artlogic.com/resources/grid-effect/ pour avoir un look Sudoku. J'ai transplanter ce matin la majeure partie du code d'un NSTableView vers un NSMatrix. Tout fonctionne mais je me demande comment aller plus loin et si j'utilise la meilleure méthode.
Mais je souhaite éditer mon tableau, et pouvoir sélectionner un nombre arbitraire de cellules, par forcément de façon contigà¼e. Si je ne m'abuse, NSTableView ne permet pas ce type d'utilisation alors que NSMatrix si. Mais NSMatrix ne permet pas de trop customiser le look général de la grille et je n'aime pas trop la manière de fonctionner de cette classe (c'est peut-être moi). Je suis en train de bouquiner la différence entre NSControl, NSCell et autres NSView, et je sens que je vais devoir écrire de toute façon une classe SudokuCell ou SudokuCellView
Mon problème n'est pas technique, mais plutôt de l'ordre de la philosophie Cocoa.
Dans le cas de plateaux de jeu tabulaires (Sudoku, Démineur, etc), quel style de vues vaut-il mieux utiliser ? Je penche pour une NSView custom, mais j'ai pas super envie de réimplémenter une partie des méthodes de NSTableView ou NSMatrix (en particulier tout le code graphique), qui sont quand même pratiques.
Merci d'avance.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Enfin NSTableView n'est pas fait pour ça. A priori, je prendrais NSMatrix, avec une NSCell custom ... NSMatrix contient l'économie automatique au niveau du rafraà®chissement.
http://www.versiontracker.com/dyn/moreinfo/macosx/32490
Puis quand j'aurai le temps, faudra que je sorte la 2.0 avec la gestion des erreurs et des hypothèses...
Parfait, c'est exactement ce que je voulais savoir. J'avais pensé à la même chose pour les mêmes raisons. Merci.
Mais, je connais, je connais. Y'a beaucoup de choses très intéressantes dans ton logiciel. Tu t'es fait plaisir, cela se voit J'avais hésité à t'envoyer un message pour jeter un coup d'oeil sur les sources. J'ai pas osé
Perso, mon programme va généré un PDF contenant des grilles 16X16. Je compte offrir un livre entier à mon père à Noel.
Sur la centaine de l'AppStore, combien de potables ?
Tu sais, les 16x16 et les 25x25 ne sont pas si durs qu'ils n'y paraissent. Juste longs et fastidieux à résoudre à la main.
Je connais pas toutes les techniques du sudoku, mais la plupart du temps, t'as pas besoin des techniques évoluées pour les grosses grilles. Evidemment, tu peux générer des sudoku aussi durs que tu veux, mais personnellement, c'est pas mon but. C'est pour mon père, et il arrive pas à résoudre les (pourtant faciles) hexadokus d'elektor.
Très peu. Disons 10%. soit une petite dizaine. Si tu prend le top 1%, ça en fait toujours 1 à (a)battre . Même en ayant le savoir faire, il faut également le "faire savoir" (tout ce qui est marketing, reviews, placement préférentiels dans l'AppStore). Perso, c'est pas ce qui m'arrêterait, mais bon...
Si tu as des problèmes algorithmiques de résolution logique (à la base de la génération de grilles de niveaux), n'hésite pas.
Le plus difficile à coder curieusement, ce sont les ensembles nus / cachés...