Coder Social home page Coder Social logo

enuiskov / sienna Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 1.0 2.17 MB

Visual representation of systems and data structures, an example of a stack-based programming language.

License: GNU General Public License v3.0

C# 93.90% C++ 6.05% C 0.05%
construction-kit n-gon system-visualization stack-language visual-programming

sienna's Introduction

Sienna

N-gon scheme editor

Command Function
[LeftMouse] Create, paste, select, drag objects
[RightMouse] Pan view, toggle menu, select menu item
[MiddleMouse] Incline viewpoint, 'arc rotate' in the perspective mode
[MouseWheel] Zoom in/out
[Ctrl] Hold to select multiple objects
[Delete] Delete selected objects
[Backspace] Delete last created node
[Space] Update node information and line connections
[H] Hold to draw lines with the arc helper
[U],[I],[O] Set port type: Undefined, Input, Output
[Q]/[W] Change polygon type
[A]/[S], [Alt]+[Wheel] Change color
[Z]/[X], [Shift]+[Wheel] Rotate object
[=]/[-], [Ctrl]+[Wheel] Scale object
[Ctrl]+[C] Copy selected nodes
[Ctrl]+[V] Paste selected nodes
[Ctrl]+[O] Load scheme from current slot
[Ctrl]+[S] Save scheme to current slot ('Num0' by default)
[NumPad0..9] Load scheme from specified slot
[Ctrl]+[NumPad0..9] Save scheme to specified slot
[F11] Toggle gradient mode
[F12] Toggle perspective/orthographic view
[Alt]+[F12] Toggle volume rendering mode (perspective view)

Use console commands to set names, descriptions, and behaviours of selected nodes

Command Function
nn NewName Set node name
nt I[K] Set node type
nd New description\r\ngoes here Set node description

Only ~I[KeyCode] input node types are currently supported.

More screenshots

Code editor

Most keys and keyboard shortcuts work just like they do in any text editor on the Windows platform, with these additions:

Command Function
[RightMouse] Hold to scroll document
[F4] Reset interpreter
[F5] Continue
[F10] Step over
[F11] Step into
[Shift]+[F11] Step out
[F12] Toggle hexadecimal numbers
[Alt]+[F12] Toggle syntax tokens
[ScrollLock] Toggle execution
[CapsLock] Toggle skipping breakpoints
[Ctrl]+[Shift]+[C] Comment selection
[Ctrl]+[Shift]+[X] Uncomment selection
[Ctrl]+[S] Save file
[F9] Toggle light/dark theme

Continuous execution is active as long as ScrollLock and CapsLock are active, and there must be at least one !!!-breakpoint in the executable code. Missing breakpoint causes hanging of execution because the interpreter updates the screen every time a breakpoint is hit.

Note that the supported programming language is stack-oriented. The key feature is the order of execution of various syntax nodes: expressions are executed in direct order, lists - in reverse, and finally list-items are executed in direct order again. Atoms are only supported by the lexer and syntax parser.

Miscellaneous controls (GL)

Command Function
[Ctrl]+[~] / [Escape] Toggle console
[Alt]+[E/D],[R/F] Toggle graphics blending modes
[Alt]+[Enter] Toggle fullscreen mode
[F9] Toggle light/dark theme
[Alt]+[=/-] Adjust gamma correction

sienna's People

Contributors

enuiskov avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

koson

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.