Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Crucigramas

bhran
April 01, 2012
87

 Crucigramas

Outline para el proyecto de Crucigramas de Cronobit

bhran

April 01, 2012
Tweet

Transcript

  1. Introducción • Desde tiempos inmemoriables, los crucigramas han sido compañeros

    infaltables de las publicaciones periodicas en papel. • La tecnología ha ido dejando atrás a este hobbie de los adictos a los diccionarios o a los datos anecdóticos. • Cronobit tiene la oportunidad de llevar esta actividad de vuelta a la gente con un incentivo social. • En este documento, pasaremos por describir un crucigrama a definir las bases para la plataforma.
  2. Algo más sobre crucigramas • Los crucigramas vienen en varias

    formas y organizaciones. • Culturalmente, estamos más relacionados con el estilo sueco. • En estos, las pistas están colocadas directamente en las celdas del crucigrama.
  3. Algo más sobre crucigramas • Pero también existen distribuciones como

    la norteamericana. • Las pistas están puestas en columnas de texto que acompañan al crucigrama, y a veces son bastante específicas. • Se organizan numéricamente en pistas verticales y horizontales.
  4. Algo más sobre crucigramas • Note el clásico recuadro negro

    que aparece en el espacio que no corresponde a ninguna letra, esta es una caracteristica de todas las distribuciones. • en algunos casos se hacen patrones con estos, como en los crucigramas simétricos.
  5. Algo más sobre crucigramas • Los crucigramas vienen en muchos

    tamaños, algunos incluso incorporan imágenes para algunas pistas. • Algunos tamaños estándar son: • 15 x 15 recuadros. • 21 x 21 recuadros. • 23 x 23 recuadros. • 25 x 25 recuadros. • Generalmente el tamaño del crucigrama tendrá relación con su dificultad.
  6. Creando un motor de crucigramas • Cuando usamos el concepto

    de motor, nos referimos a una aplicación con la cual el usuario pueda crear, reproducir y jugar sus crucigramas. • A partir de ahora, nos centraremos en estas 3 partes fundamentales para describir el funcionamiento de nuestra aplicación.
  7. Crear • Un crucigrama tiene 3 partes fundamentales que lo

    definen: – Estilo (sueco, norteamericano) – Pistas – Tablero • Lo que intentaremos programar le dará al usuario la mayor libertad posible para construir su crucigrama, así como facilitarle la tarea de construcción a traves de algoritmos.
  8. Crear - Tablero • El usuario tendrá la posiblidad de

    elejir el estilo de su crucigrama. • El estilo definirá que elementos podrán ser agregados a este. • Por ejemplo, uno de estilo sueco le permitirá el uso de imágenes para sus pistas. • También tendrá libertad de elejir la posición de cada palabra y como estas se cruzarán. • La aplicación partirá con un tablero totalmente en negro, donde el usuario irá colocando cada una de sus palabras. • Opcionalmente, puede hacerse aparecer una grilla para guiarse.
  9. Crear - Algoritmos • Uno de los algoritmos que hará

    destacar a nuestro programa será el autocruzador. • Cuando el usuario haya definido la totalidad de sus palabras, pero no haya podido cruzarlas, la herramienta de autocruzado le ayudará en la tarea. • El algoritmo analiza caracter por caracter la forma más efectiva de cruzar cada palabra y presentará al usuario varias opciones de distribución. • Otro algoritmo permite el rellanar los espacios que queden sin palabras con palabras que se acomoden. • Se puede usar un API de diccionario online o una base de datos de palabras comunes para esos casos.
  10. Crear - Widgets • Se crearán algunos controles estandar para

    escribir cada palabra. • Colocar una palabra nueva podría crear un nuevo recuadro en la grilla, que se va alargando mientras el usuario escribe la palabra. • Opcionalmente, puede definir las palabras en una lista y luego tomarlas y arrastrarlas al tablero. • Temas de diseño permiten agregarle un color particular a cada palabra. • Cada palabra en la grilla puede destacarse por el borde. • El borde tiene un set de botones para manejar la palabra: – Rotar – Mover – Romper (en las esquinas del estilo sueco). • En el caso del editor de estilo sueco, un pequeño editor para editar la pista.
  11. Reproducir • Significa que el usuario es capaz de guardar

    y recomponer un crucigrama desde información almacenada, ya sea de manera local o en una base de datos. • De esta forma la información del crucigrama tiene que estar almacenada en un formato que sea fácil de convertir nuevamente en información para el programa editor.
  12. Jugar • Que gracia tendría una aplicación de crucigramas si

    es que no puedes usarlos una vez terminados? • El programa de juego es bastante poderoso como para cambiar de modo horizontal a vertical con solo presionar una tecla y poder navegar el tablero con el cursor.
  13. El Elemento Social • El sitio web puede mantener una

    base de datos de crucigramas que los editores pueden publicar para uso publico o reservado. • Un algoritmo puede determinar la dificultad de un crucigrama por el tamaño y la cantidad de pistas o símbolos. • Se crea un ranking de los mejores crucigramas, mejores editores y los mejores jugadores. • Salidos de la beta pública, se le permite al usuario un número limitado de crucigramas almacenados, pero se permite ampliar la cantidad mediante un sistema de subscripción. • Se vende espacio premium con diseños propios para empresas (diarios, revistas). • Se permite integrar un crucigrama en otro sitio a traves de un código. • Se recupera el lugar del crucigrama como el pasatiempo nerd por excelencia.
  14. Fin