Developpez.com - Rubrique JavaScript

Le Club des Développeurs et IT Pro

Arc-en-ciel : dessiner dans un Canvas et générer le code JavaScript

Un outil destiné aux développeurs

Le 2016-03-15 20:52:44, par vermine, Expert éminent sénior
Arc-en-ciel : dessiner dans un Canvas et générer le code JavaScript
Grâce à cette nouvelle bibliothèque


Arc-en-ciel, est une bibliothèque JavaScript permettant de dessiner sur l'élément Canvas d'une page HTML et de générer le code correspondant à ce qui a été réalisé pour faire du rapid prototyping de dessin et d'animation.


Avec son interface, Arc-en-ciel permet de :

  • dessiner des rectangles, des cercles, des arcs, des lignes, des polygones, des courbes de Bézier quadriques ou cubiques et d'insérer du texte ;
  • modifier, déplacer, copier, effacer et changer la couleur des formes ;
  • dupliquer les formes avec des boucles ;
  • générer du code JavaScript ;
  • changer la couleur des éléments d'une page.


C'est un outil toujours en création et qui est utile aux développeurs : ils dessinent rapidement le résultat voulu, puis récupèrent le code généré pour y glisser leurs variables et leur boucle de rendu afin de produire une petite animation.


Le site officiel.

Un tutoriel de prise en main est en cours de rédaction et sera bientôt disponible ! En attendant, pour mettre l'outil en place, il suffit d'intégrer la bibliothèque à votre page Web et d'utiliser la méthode canvasInit() sur votre Canvas :

Code javascript :
shapes.canvasInit('canvas', 1) ; // id du Canvas, et notion de bordure en pixels

L'auteur serait très heureux d'avoir vos retours d'expériences afin d'améliorer son outil. N'hésitez pas à faire vos commentaires.
  Discussion forum
9 commentaires
  • SpaceFrog
    Rédacteur/Modérateur
    Je vois les dimensions de la forme qui changent au mouvement de souris, mais c'est tout ...

    On ne sait à aucun moment dans quel mode on se trouve ... c'est ... déroutant et frustrant !

    Les boutons de la fenêtre de menu n'ont pas l'air de faire grand chose ...
    ex couleur, on s'attend a avoir un choix de couleur ...

    En gros je pense qu'il faut a chaque fois sélectionner un mode ou un type d'opération, mais à aucun moment on ne sait dans quel mode on se trouve et le type d'opération a effectuer.

    Attention, je ne remets absolument pas en cause le coté technique de l'outil qui m'a l'air vraiment puissant et sympa,
    mais niveau ergonomie ça pèche cruellement, pour moi là on dirait un tableau de bord de fusée en braille ...

    Viiiiiiiiiiiiiiiite le mode d'emploi !!!!
  • melka one
    Membre expérimenté
    jour

    et ça marche comment ?
  • vermine
    Expert éminent sénior
    Voici une mise en place rapide en partant du principe que la page Web se trouve au même endroit que le fichier JavaScript :

    Code html :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <html> 
       <head> 
          <script src="arc-en-ciel-canvas.js"></script> 
       </head> 
       <body> 
          <canvas id="id_canvas"></canvas> 
       </body> 
       <script> 
       shapes.canvasInit("id_canvas", 1); 
       </script> 
    </html>

    Pour l'utilisation proprement dite, c'est avec les clics gauche et droit de la souris. Bien entendu, le tutoriel expliquera tout ça plus en détail.
  • SpaceFrog
    Rédacteur/Modérateur
    ...
    Vivement le mode d'emploi, parce que pour l'instant l'ergonomie extraterrestre de ce truc me dépasse (pourtant je devrais être habitué)

    Mais pas moyen de tracer un simple cercle,
    pas moyen de définir un rayon une position ...

    Je vois bien le menus contextuels, mais la prise en main n'est pas aisée ...

    Je vois bien le code généré ... mais à aucun moment le cercle !!

    Il faut copier le code puis l'intégrer dans le source ???

    Bref sans mode d'emploi l'ergonomie de cet outil reste très mystérieuse ...

    [edit]
    Je viens par hasard de réussir à modifier la couleur de fond...
    Mais je suis incapable de le reproduire
    Il y a vraiment un souci d'ergonomie, les commandes ne sont ni claire, ni explicites, ni logiques, et c'est vraiment dommage car au vu du contenu des menu cela à l'air prometteur
    [/edit]
  • vermine
    Expert éminent sénior
    Il faut choisir sa forme, cliquer sur ok, aller sur le canvas, cliquer et alors la forme commence à se dessiner. On reclique pour terminer sa forme.
  • rambc
    Membre chevronné
    Bonjour.

    Sympa come idée. Un dépôt sur github ou autre serait pratique.
  • vermine
    Expert éminent sénior
    C'est pour ça que je préférais annoncer l'outil sans tutoriel, plutôt que de donner un tutoriel d'outil non annoncé. Contrairement au désir de Jack-Uzi, je l'avoue. Effectivement, un outil graphique devrait être le plus intuitif possible. Si tu avais lu le tutoriel, tu n'aurais peut-être pas fait les mêmes remarques comme celle de savoir dans quel mode on se trouve. Or, Jack-Uzi a besoin d'un maximum de retour pour améliorer son outil.
  • Bonjour,

    Les contraintes techniques que j'ai rencontrées et le souhait de vouloir une interface compacte, m'ont amené à développer ainsi.

    L'outil tel qu'il est actuellement sert essentiellement à présenter le concept et vu les retours, je pense qu'il connaîtra des évolutions.