.
PPMWriter(String filename, int width, int height) construit un objet de type PPMWriter ouvert sur le fichier de nom filename pour y créer une image de taille width×height.writePixel(byte red, byte green, byte blue) écrit un pixel dans le fichier. On commence par le pixel en haut à gauche de l'écran, on trouve ensuite les pixels de la première ligne de gauche à droite, puis ceux de la deuxième ligne, jusqu'au pixel en bas à droite. red, green et blue sont des entiers dans l'intervalle [0,255].union { objets } est l'union des objets.
intersection { objets } est l'intersection des objets.
negation(objet) est la négation de objet.translate(vecteur, objet) représente l'objet image de objet par la translation de vecteur vecteurrotateX(angle, objet) représente l'objet image de objet par la rotation d'angle angle autour de l'axe X (sens direct).rotateY(angle, objet) représente l'objet image de objet par la rotation d'angle angle autour de l'axe Y (sens direct).rotateZ(angle, objet) représente l'objet image de objet par la rotation d'angle angle autour de l'axe Z (sens direct).scale(réel, objet) représente l'objet image de objet par l'homothétie de rapport scale.scale(vecteur, objet) représente l'objet image de objet par l'affinité orthogonale de rapports donnés par les coordonnées de vecteur sur les 3 axes.scene(objet, { lumières } ) représente la scène physique comprenant l'objet objet éclairé par les lumières.
normalCamera(origin, direction, right, down) représente la caméra dont la position de l'œil est au point origin, la direction de vision
est direction, le vecteur donnant la direction de la droite de l'écran est right et le vecteur donnant la direction du bas de l'écran est down.
scène,caméra représente la vision de la scène par la caméra.


java -jar ray-tracer.jar fichier.jray fichier.ppm largeur hauteur.
Elle est également disponible en ligne (vous devez disposer pour cela d'un navigateur supportant Java 1.4) :