add demos to README.md
This commit is contained in:
@@ -5,21 +5,55 @@ To create independent views inside one program window.
|
||||
<!-- __demos__ -->
|
||||
## Demos
|
||||
### DemoProxyProgram01
|
||||
[source code](src/jvmDemo/kotlin/DemoProxyProgram01.kt)
|
||||
|
||||
Demonstrates how to use a proxy program inside a [viewBox],
|
||||
how the main program can access its variables and methods,
|
||||
and execute its `extend` block by calling its `draw()` method.
|
||||

|
||||
|
||||
### DemoProxyProgram02
|
||||
[source code](src/jvmDemo/kotlin/DemoProxyProgram02.kt)
|
||||
[source code](src/jvmDemo/kotlin/DemoProxyProgram01.kt)
|
||||
|
||||
### DemoProxyProgram02
|
||||
|
||||
Demonstrates how to use two proxy programs and
|
||||
toggle between them by clicking the mouse.
|
||||
|
||||
programA draws a circle and can be moved by pressing the
|
||||
arrow keys.
|
||||
|
||||
programB draws a ring located at the current mouse
|
||||
position.
|
||||
|
||||
Note that programA keeps listening to the key events
|
||||
even if programB is currently displayed.
|
||||

|
||||
|
||||
### DemoUpdate01
|
||||
[source code](src/jvmDemo/kotlin/DemoUpdate01.kt)
|
||||
[source code](src/jvmDemo/kotlin/DemoProxyProgram02.kt)
|
||||
|
||||
### DemoUpdate01
|
||||
|
||||
Demonstrates how to create a viewBox with an interactive 2D camera and
|
||||
display it multiple times.
|
||||
|
||||
Instead of calling the viewBox's `.draw()` method multiple times,
|
||||
we call its `.update()` method once, then draw its `.result`
|
||||
repeatedly, in a grid of 4 columns and 4 rows.
|
||||
|
||||
The camera's initial rotation and scaling are specified as a transformation matrix.
|
||||
To control the camera use the mouse wheel and buttons on the top-left view.
|
||||

|
||||
|
||||
[source code](src/jvmDemo/kotlin/DemoUpdate01.kt)
|
||||
|
||||
### DemoViewBox01
|
||||
[source code](src/jvmDemo/kotlin/DemoViewBox01.kt)
|
||||
|
||||
Demonstrates how to draw multiple view boxes. The first two feature
|
||||
interactive 2D cameras, the third one uses an Orbital 3D camera.
|
||||
All three can be controlled with the mouse wheel and buttons.
|
||||
|
||||
The `shouldDraw` viewBox variable is used to avoid re-rendering the view
|
||||
unnecessarily when the camera has not changed.
|
||||
|
||||

|
||||
|
||||
[source code](src/jvmDemo/kotlin/DemoViewBox01.kt)
|
||||
|
||||
Reference in New Issue
Block a user