I want to erase an impact in to a canvas

Link to the project : App Lab - Code.org

Actually :

//Activer le canvas et l’image du terrain
setActiveCanvas(“impacts”);
setStrokeColor(“#d410dd00”);
setFillColor(“#d410dd”);
drawImageURL(“bad.PNG”);
onEvent(“impacts”, “click”, function(event) {
circle(event.offsetX, event.offsetY, 5);
playSound(“button_sound.wav”, false);
});

Sorry for my english, i’m a french teacher.
the user can make a point on the canvas after he chooses a color. But if he makes a mistake, he can’t erase the impact. it’s that i want to create but i’ve no idea to make it

Some help please
Thank you

Marc,

J’ai révisé le projet et je pense que cela pourrait être fait, mais il faudrait peut-être créer un “array” pour enregistrer les positions X et Y des impacts (avec le “fillColor”).

Comme ça, vous pourriez redessiner le terrain et redessiner les impacts (sauf le dernier).

Autrement, j’ai fait un “remix” du project avec une solution simple mais elle n’est pas parfaite. Voici le lien. App Lab - Code.org

Avec ma version, vous pouvez “effacer” le dernier impact, mais vous la remplacez avec la couleur verte du terrain. Ça marche sauf si l’impact tombe sur les lignes noires …

Peut-être une solution qui marche? peut-être pas.

Mike

Je suis désolé si j’ai fait des fautes de français. Je suis prof d’informatique et de français à un college aux états-unis, mais ça fait un peu de temps depuis que j’ai fait ma maîtrise en français à l’université. :slight_smile:

1 Like

Merci beaucoup pour tout ceci
Je vais regarder dans le détail votre proposition
Et félicitation pour votre français, surtout à l’écrit, j’aimerai avoir votre niveau dans votre langue.
Bonne fin de journée et merci encore une fois

Encore une fois
Merci
je vais adopter cette solution qui me suffit amplement

1 Like

Je ne veux pas abuser de votre patience
mais j’ai un autre problème :slight_smile: App Lab - Code.org

je ne comprends pas comment accéder à l’index de la base de données dans mon projet
pour l’instant je précise le numéro (3), ou index de l’élément, mais je souhaite stocker cette valeur dans une variable en fonction du choix à partir d’une liste
pouvez-vous m’orienter dans mes recherches s’il vous plait
merci

Pas du tout un problème!

Je pense savoir ce que vous cherchez. Est-ce que ça marche?

// Je fixe en dur la valeur [3] pour l'index mais
  //comment récupérer la valeur de l'index de l'entrée sélectionnée dans "liste_notion" ?
  var index=0;
  var notions = getColumn("ScEduc", "Notion");  
  
  var notion = "";//Pour stocker le choix dans la liste deroulante des notions
  onEvent("liste_notion", "click", function( ) {
    notion = getText("liste_notion");
    setText("text_notion", notion);// Afficher le choix dans la zone de texte bleue
    
for (var i = 0; i < notions.length; i++) {
    if (notion==notions[i]){
      index=i;
      console.log(index);
    }
  }
  });

Je n’avais pas accès à votre data, mais j’ai refait le projet avec une base de données différent et je crois que c’est ce que vous cherchez (utilisant votre propre base de données, bien sûr.)

Sinon, faîtes moi savoir et j’en parlerai avec un collègue avec plus d’expérience avec App Lab.

Mike

Je regarde tout ça dans le détail
merci

je suis désolé, mais je ne comprends pas

ça y est, j’ai compris et ça marche
merci

1 Like