Roxame Home - Diccan Home


You must install Processing. It works with all current platforms.

You must create a Roxame directory, and several surdirectorie : data, sas, Texts, Reports

You must copy the dico file in the Roxame directory
and the dicodata file in the data subdirectory
You must copy the fonts in the data subdirectory

Then you load the Roxame application proper, and launch it with the small triangle at top left in the Processing home screen.

The present state of features and assets is enormous. Hence it is easy to genrate books. But how to make them compelling. Vs/Balpe...

Idea of using words, one aftre the other, then sequences of 2 wods. Test tthe result difg2/difg1, and rank. Or a more elaborate criterium.

Processng Libraries

Text : Eliza, Fontastic, Geomerative, QScript, RiTa
Data visualization : glcentreUtils

Music, sound : ID3 (MP3 files), Minim, oscPS, Sound, tactus5, The MidiBus, ttslib, Beads

Graphics : Andrew's , ColorScheme, Dawesome, grafica, IgnoCodeLib (for Adobe Illustrator), MapThing, Ptmx (tiled maps), Sketchmapper
Textures : Free Transform

Video : IPCapture (MJPEG), Video, Video Export
Camera : OCS Obsessive Camera Direction, PeasyCam, QueasyCam
Hardware : GL Video (acceleration)

3D. Camera3D, Collada Loader, Patchy, Shapes 3D
Projection mapping : Keystone

Animation. Ani, Frames
Motion : Leap Motion, Motion

Games, Agents : AI for 2D games, Game Control Plus, Gamepad, Sprites, Culebra Behavior

GUI : Console, ControlPS, G4P, Game Control Plus, Guido, Interfascia, KinectV2, Kinect4WinSDK, OpenKinect, SimpleTouch (Raspberry Pi and Linux), Tablet, Zxing
Interaction : proscene, QRcode, spacebrew¨S

Recognition/Vision : S1 Unistroke, BlobDetection, BlobScanner, BoofCV, EyeTribe, GausseSense, OpenCV, Path Finder Sudden Motion Sensor (MacBooks)

Physical computing : Arduino, Arduino_Firmata, Blinkstick, Hardware I/O, PixelPusher, VSync
Robotics : NXTComm (Lego Mindstorm)
Timer : CountdownTimer, Executor, TimeEvents

Maths : Combinatorics, Computational geometry, Jasmine, point2line
Physics simulation : Box2D, Fisica, punktiert

Network : Carnivore (surveillance), HTTP Requests, ImageLoader, MuKCast (client/server), SFTP, ShortMessages, UDP, Websockes
Android : AndroidCapture, Cassette, Keetal, SelectFile

Varia : bRigid, GenerativeDesign, HPGL Graphics (pen plotter), MQTT (Eclipse Paho Project), Myo, OBJExport, OBJLoader, OCSI, Phidhgets, proJMS (publish and consume text messages), Redis, Sighal Filter, Spout, Steganos, SuperCollider, Syphon, Temboo, YahooWeather, UDP 01
Files : Drop

Processing code

Global design of the code

The Processing code is distributed into several « tags »), rather arbitrarily.

The customary basic functions of Processing are in the zMaintag.
The setup function is short but calls for a setupAux function which does the launching process, including for instance the loading of dico and dicodata.

The draw function is reduced do Ddo(wordtobedone). This calles the parser Ddo to execute the next "word to be done". This word comes
- from a typing on the keyboard
- from the stack (word_on-stack, indexed by the integer stkl).

Its execution is postponed
- if the program is in pause
- if it is loading a file.

All the other functions are called by Ddo. This function, but for some exceptions, does nothing else than call other functions.

Nota : to get Roxame full screen, press Control + Maj when launching Roxame with the small triangle.


zDdo : the parser and its annex functions


The pivotal function i the parser Ddo. Ddo2, Rread and List are auxiliary functions to prepare or facilitate this function, constantly called by the draw part of Roxame.

Ddo executes a characters string.
In the most simmple case, this string is a word present in the dictionary. In this case, dico provides a category and a definition, used by Ddo to execute the word.

The main caterogies are :

- color : the asked for color is chosen as the current color ; its name is assigned to the string   refColName ; the definition provides the three RGB values (refRed, refGrn et refBlu), and one computes the corresponding refHue, refSat and refVal.

- comment or Comment : display the term and its definition at the bottom of the screen
- cond : (in development), to build control structions
- doc : loads (jpgLoad) the image with this name, to be found in the subdirectory of data, as in the definition
- evaluation : calls the evaluation functions throug the switching function Evaluation() parametered by the number given in the definition
- directory : assigns as current sub-directory (in Roxame\data\ ) the address given in the definitonle
- filter : calls a filter through the swiching function Filter, parametered by the number given in the definition
- font : assigs the font from the definition
- form : lauches the generation of a form, through the switching function form, parametered by the number
- generator : id.
- geometry : id.
- list :
- loop : on development, for scripts for instance

- macro_ : the definition provides a sequence of terms, executed one by one; note that a macro_ can call for itself, and then loop indefinitely ; a macro_ can call an term in the dictionary; by a succession of calls, you can build very long processes, but presently without control structures like loops ;

- parameter : assigns a value to a parameter

- position : assigns a position for form generation
- quad : a variant of form
- text : loads the text indicated by the term ; it must be in the subdirecdtory given by the definition

Terms which are not in the dictionary

If the term (wordobobeond) is not present in the dictionary, there are several cases.

- The term is a number. Then its value ia assigned to the global variable number (not safe, but after years of use, efficient)
- The term includes a suffix, always of two letters, preceded by a point ; in this case, the execution is sent to the List instruction ;
- The term is a a sequence of several separated term; in this case, the term is analyzed by the Rread funcion, which stacks the words on word_on_stack

If none of these cases is detected, then Roxame displays   « word not found » and deals with the next word in the stack.

Main commands

BD : wwidth = 640; wheight = 480; imgCreate(); affReduc = 1
SD : wwidth = 720; wheight = 576; imgCreate(); affReduc = 1 ;
HD : wwidth = 1280; wheight = 720; imgCreate(); affReduc = 2 ;
FHD : wwidth = 1920; wheight = 1080; imgCreate(); affReduc = 2 ;
4KD : wwidth = 4096; wheight = 2160; imgCreate(); affReduc = 4 ;
TestD : wwidth = 360; wheight = 288 ; imgCreate(); affReduc = 1 ;
4KM : wwidth = 3480; wheight = 2160 ; imgCreate(); affReduc = 4 ;
4KL : wwidth = 1485; wheight = 1050 ; imgCreate(); affReduc = 2 ;
A4P : wwidth = 1050; wheight = 1485 ; imgCreate(); affReduc = 2 ;

Main variables

int wwidth, wheight cornerx cornery
String wordtobedone
Boolean isenpause, isenloop, isfunny, isnormal, noloop, nofun
String workName, workName_


int stkl
String[] word_on_stack
String[] readWord,
int readwordscount
String[] listWord
int listWordscount

boolean keyrel, keypres
Sring mystr, mystr2
int strlen
Int refDialMode
String[] lines
Boolean notscroll
Int logIndex, refLogLine
String[] logline
Boolean notlog

String differentColors = "";
String[] subject_type = {"Interior", "Country","Head", "Academy", "Town", "Forest"};
int subject_t ; //= new int[20] ;
int subject_rec_qual ;
int globscore ; 
int rangeh = 0; int ranges = 0; int  rangev = 0; 

String fileTobeloaded
boolean fileLoading to avoid interruptions
boolean loadedDoc. useful in critique functions


Main functions 

Rread : analyses a string into separate words d’un string en mots
Ddo2 : prepares Ddo, notably for key calls

Service : a large set of functions called mainly by the parser Ddo, switching on a number. Notably :
- 1 pause
- 2 new work
- 3 give name to the work presently made
- 4 dicoSave
- 5 save the present wok
- 6. saves an evaluation report
- 7 French
- 8 English
- 9 prestDown
- 10 dicoLoad
- 11 delay
- 12  tstx, displays a text
- 13 loop
- 14-20 functions presentations, animation
- 21. Assigns to number the number of regions
- 22-37 functions to create loops
- 51 selection of a region and coll to the R function
81-89 calls to Reload with different parameters
91-99 idem for Reserve
100-105 loading of images
110-115 loading of texts
121-125 selections of regions
131-135 selections of lines in a text
151-145 selections of words
146-159 selections of characters
150-158 as 91-99
160-169 as 81-89
170-173 Report functiosn with different parameters
174 Moodsynth
190. webcam captation
191 variant, under condition of changed image
202. creation of a HTML version of dico
203. assigns a position at random
905 : out of pause
1144-1282. display of values affichages de valeurs
1287. in pause
1582. Creation of a description file with fileDescr
1693. enter the dico mode
2012. display a commentaire
2009.. ?

nextBit : provides a random bit

Nov : starting a new work
nextChar : generation or presentation of a chararcter
nextWord : generation or presenation of a word
textLocate : look for a text
String : provides one of the words out of a list, and exectures the functions with suf


zkeypress : interface clavier et affichage




Affich : display
keyPressed : captation ot the deyboard

zmain : initialisation, setup, draw

reInitvar : re-initialisation for each now work
initVar : initializations at stard

fileNumberlocate : looks for the rank of a file in its directory

fileDescr : description of the image to create a report
Critique : synthetic function of critic

Use_of_color : evaluation of the usage of the color space
Use_of_luminosity : evaluation of the usage of value space
Recsu : recognition of the type or subject (country, head...)  

Stack management

Main variables

inr stkl


word-on-stack string[100]

actionStack String[20][100]

actionStackname string[20]

actionStackrank int[100]

actionStacklength int


Main functions

Stack is operated on :
- at start, with variables set to 0 or "-" in setupAux()
- then with the !!!a_day macro_
- then by rhe Ddo() and List() functions

Call of List()
List receives: DEFINITION, wordtoboneloc ( the command) and CATEGORIES





Lengrh of code
Roxame 837
A_Measure 2454
Colors 532
Dico 489
File 2018
Filters 1443
Forms 1688
Gen-Gen 2892
Geom 486
Mix 310
Primerize 637
Report 1819
Scripts 599
Temp 375
Touch 321
Gradations 416
zDdo 2023
Keypress 445
Main 17

Total, au 16 juin 2016 : 19791 lignes


Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.