Mu - Bring power to your Numworks

Documentation du module python Mu pour la calculatrice Numworks

Sommaire

Avant de démarrer

Le module python Mu (anciennement Thot) est disponible sur la calculatrice Numworks à partir de la version 1.2.0.
Il inclut de nombreuses fonctions python qui sauront vous être utiles, autant par leurs simplicité d'utilisation que par leur effets.
Il vous faut donc installer Mu, créer un script python, et importer mu.
(à noter que mu est importé de base dans les scripts python que vous créerez.)

Démarrer avec Mu

Importer Mu

from mu import *

Pour utiliser Mu de la façon la plus facile qu'il soit.

Importer Mu (2)

import mu

Une autre façon d'importer Mu.

Utiliser Mu

mu.function()

Dans le cas de la deuxième importation.

Fonctions LED

Allumer la LED

mu.set_led(color)

Allume la LED en color (en hexadécimal ou en RGB). La LED reste allumée tant que la calculatrice n'est pas éteinte ou qu'elle n'est pas ré-allumée en noir.

Faire clignoter la LED

mu.set_blinking(duration,duty)

Fait clignoter la LED de la calculatrice, qui sera allumée duty pourcent de son cycle de duration millisecondes.

Obtenir la couleur de la LED

mu.get_led()

Renvoie la couleur actuelle de la LED au format RGB.

Fonctions Draw

Remplir l'écran d'une couleur

mu.fill(color)

Remplit l'écran en color (hexadécimal ou RGB). Cette fonction peut s'utiliser sans arguments, comme ci-dessous, auquel cas l'écran sera remplis en blanc.

mu.fill()

Obtenir une couleur aléatoire

mu.gen_color()

Renvoie une couleur aléatoire au format RGB.

Le logo de Kojiverse Productions

mu.logo()

Etant donné la collaboration entre Mu et Kojiverse Productions, est intégré au module Mu une fonction afin de leur permettre d'afficher leur logo au début de leurs jeux, ainsi qu'aux créateurs qui auraient reçus leur aide. Attention toutefois à ne pas l'utiliser si Kojiverse Productions ne vous en a pas donné l'autorisation.
Tous les jeux officiels de Kojiverse Productions sont référencés sur leur site.

Fonctions Collide

Détecter la collision entre deux rectangles

mu.collideRect(rect1,rect2)

Renvoie True s'il y a une collision entre les rectangles rect1 et rect2 sinon False.

## Exemple
import mu

rect1 = (10,10,100,100,(255,0,0))
rect2 = (80,90,60,160,(0,0,255))

print(mu.collideRect(rect1,rect2))
          
>>> True

Détecter la collision entre deux cercles

mu.collideCircle(circle1,circle2)

Renvoie True s'il y a une collision entre les cercles circle1 et circle2 sinon False.

## Exemple
import mu

circle1 = (100,100,40,(255,0,0))
circle2 = (130,120,20,(0,0,255))

print(mu.collideCircle(circle1,circle2))
          
>>> True

Détecter la collision entre un cercle et un rectangle

mu.collideCircleRect(circle,rect)

Renvoie True s'il y a une collision entre le cercle circle et le rectangle rect sinon False.

## Exemple
import mu

rect = (100,100,80,80,(255,0,0))
circle = (130,120,20,(0,0,255))

print(mu.collideCircleRect(circle,rect))
          
>>> True

Obtenir le déplacement vers un point

mu.get_dir(pos1,pos2)

Renvoie les valeurs à ajouter à x et y de pos1 pour parvenir à x2 et y2 de pos2.

## Exemple
import mu

p1 = (10,10)
p2 = (300,200)

print(mu.get_dir(p1,p2,3))
        
>>> (2.509383381501323, 1.644078767190522)

Fonctions Draw

Obtenir les touches préssées

mu.get_pressed()

Retourne un set contenant la valeur numérique des touches préssées.

A venir

Ce que nous prévoyons :

  • Une fonction exam_mode() pour mettre la calculatrice en mode examen depuis python,
  • Une fonction draw_string() améliorée, en reprenant le principe de draw_string_b(),
  • Peut être un jour une fonction save(), qui transformera un script python spécifié en application externe (un jeu par exemple).

Crédits

Ressources utilisées :

  • La Toolbox de la version 1.4.3 de Mu,
  • La documentation déjà existante,
  • Le code source.

contributeurs :

  • Gauthier M.