|
2 년 전 | |
---|---|---|
src/main/sarl/io/sarl/demos/sierpinski | 2 년 전 | |
.gitignore | 2 년 전 | |
Fractal_en.png | 2 년 전 | |
LICENSE | 2 년 전 | |
MVC_en.png | 2 년 전 | |
README.md | 2 년 전 | |
sierpinski-fractales.iml | 2 년 전 | |
sierpinski_screenshot.png | 2 년 전 |
This application follows a MVC (Model-View-Controller) pattern for the GUI communication.
This demo is about Sierpinski’s fractals. Those are 3 triangles inside a triangle.
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.
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
}
...
}