Browse Source

Add Readme

master
Antoine Bartuccio 5 years ago
parent
commit
30d45b7d62
  1. BIN
      Fractal_en.png
  2. BIN
      MVC_en.png
  3. 51
      README.md
  4. BIN
      sierpinski_screenshot.png

BIN
Fractal_en.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

BIN
MVC_en.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

51
README.md

@ -1,2 +1,49 @@
# Explanation of demo + structure
file -> packages
# MVC pattern
This application follows a MVC (Model-View-Controller) pattern for the GUI communication.
![MVC pattern applied on this project](MVC_en.png)
# Sierpinski's fractals demo
This demo is about Sierpinski's fractals. Those are 3 triangles inside a triangle.
![Agents organization in the fractal demo](Fractal_en.png)
To create this demo, only one agent was required. The idea is to create a main agent and then create 3 other agents in the inner context of the main agent. Then the main agent becomes an event broadcaster and so on and so forth for each fractals newly created.
```Scala
agent Fractal {
...
on Initialize {
if (occurrence.parameters.size >= 2){
// If initialized with arguments
screenSurface = occurrence.parameters.get(0) as Square
positions = occurrence.parameters.get(1) as Positions
if (occurrence.parameters.size.equals(3)){
// If initialized by the GUI
var ctrl = occurrence.parameters.get(2) as FXMLViewerController
guiSpace = defaultContext.createSpace(
OpenEventSpaceSpecification, UUID.randomUUID)
ctrl.setGUISpace(guiSpace)
guiSpace.register(asEventListener)
}
} else {
// If initialized without argument
screenSurface = new Square
positions = new Positions
}
screenWidth = screenSurface.width
this.generatePoints
}
...
}
```
![Application with the GUI](sierpinski_screenshot.png)

BIN
sierpinski_screenshot.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Loading…
Cancel
Save