Sheng Diagram WebApp Usage Guide
I intend to maintain a usable guide to the extant features of this webapp, but may fall short. Please contact me with questions and accessibility concerns.
Overview
This page is intended to be tool for the creation of nicely-formatted guides to the notes of the sheng and related instruments. Features beyond this are intended to accompany the active practice of the instrument, allowing easier navigation of the layout of the instrument, and perhaps also the optimization of the composition process for those without direct access to the instrument, the comparison of the utility of different layouts, and the analysis of the playability of pieces. Some number of these utilities may not be yet present at the time of user access, and for that I apologize.
Controls:
- JSON: Your layouts can be saved to a JSON file, and loaded from a JSON file. Once you have constructed your layout, you may click "Copy Layout", and save the resulting text anywhere you like - for instance, in a text document. Then, at a later time, you may copy and paste that JSON into the JSON input field, and click "Load Layout" - and the layout should be informationally identical. There may be some circumstances under which it is slightly different in appearance, and for this I apologize. I am working to rectify this, and provide tools for the user to rectify this as well.
- Sharps: For the currently default format of SPN as well as jianpu, sharps and flats may be utilized to express certain notes not falling into a specific key. This button toggles whether sharps are currently preferred, and should update the displayed notes to match your preference. While sharps are the default for SPN, flats are perhaps more common in jianpu, due to major-default behavior. I do not currently support mixed sharp and flat display, but may attempt this in the future - it is certainly not impossible.
- Base Note: For jianpu display, as well as for numerical 12-tone / chromatic jianpu, it is useful to begin with a root note. For my instrument, this note is G, which is not the lowest note on the instrument, but simply the key note - indicating the primary key that the instrument is intended to be played in. For chromatic display, it is a numerical offset to the midi note allowing the notes of the instrument to be more kindly displayed, making them easier to do arithmetic on. The base note is locked to the SPN format (LETTER + (b, #, or neither) + NUMBER).
- Undo/Redo: These have specific behavior: when the tube data is modified, that constitutes a saved action which can be undone and later redone. Not every action influencing the visuals is recorded in the history. The creation of a group of tubes in a circle or line can be individually undone and redone - each tube's creation is a separate event. These events can also be triggered using the standard CTRL-Z and CTRL-SHIFT-Z, and if you don't want to hold shift, caps lock works.
- Create: Tubes are generally intended to be created in linked structures, such that their radii and distances are closely linked. The circle dialog allows an arbitrary number of circles to be created simultaneously, at a set percentage of the distance from the center of the page. The tubes created by this operation have their radii maximized, for optimal clarity. A number of tubes may be omitted, the starting angle may be changed, and the number of tubes can be set to a non-integer to create a gap of inexact proportions, although it is possible to create overlap between the tubes with this behavior. The line dialog creates a line either starting from an existing tube or at an arbitrary point, and its angle and number of constituents may be modified freely. The tube that the line is built off of is highlighted, and its index is based on the order of the creation of the tubes in the complete history of the layout. The single-tube creation option is currently unavailable, as I do not need it - if you need one, just use a line, but if you want the feature, I'll build it.
- Note Display Type: The display defaults to Scientific Pitch Notation (a preposterous name), but should allow cycling between that, jianpu, and chromatic jianpu, by clicking the Note Display Type button. These changes are not reflected in the undo/redo history, as they do not effect the underlying data, which is represented by midi note number.
- "U" Keypress: The U key toggles the UI, allowing for better screenshots for printing. Ideally, I would have a separate print function, but this should do for now.