Appendix
Block Catalog
A block-by-block reference for the 18 categories in the block editor toolbox. Each block is listed with its picture, what it does, and the data types of its inputs and outputs. The content is the same as the tooltip shown when hovering over a block in the app. Types are written in square brackets (for example, value1 [Number]), and the data types are the same as the variable types. For how to use the block editor and the common rules, see Part 8, Block Coding; for the category overview, see Blocks.
In this chapter
- VariablesBlocks that read and write project variables, plus the return block that sends the result out of the block editor. The t…
- LogicConditional statements (if), comparison, and boolean operations. Compare Values accepts two values of any type, not only…
- LoopsCount, condition, counting, and list loops, plus break/continue. The counting loop and the list loop work by storing the…
- MathArithmetic and mathematical functions. For angles, only the inputs of the trigonometric functions (sin, cos, tan) are in…
- Date/TimeCreates, calculates, and converts values of the three types Date, Time, and Duration. A date is a year-month-day, a time…
- TextCreates and manipulates text. Positions count from 1, and 0 is returned when nothing is found. The length of a text is a…
- Byte ArraysBlocks for binary data. A byte array constant is entered as hexadecimal values separated by spaces (for example, 0A 0B 0…
- ListsCreates, looks up, and manipulates lists. Items can be of any type; positions count from 1, and 0 is returned when nothi…
- Type ConversionConversion between variable types. The blocks that convert text to a number, date, time, or duration raise an error at e…
- Unit ConversionConverts length, pressure, energy, speed, temperature, astronomical distance, angle, coordinates (degrees/minutes/second…
- ScienceCalculates sun and moon rise/set times, azimuth, and altitude, psychrometric (moist air) properties, standard atmospheri…
- Bits/BytesBlocks that handle integers at the bit and byte level. Every input value is automatically converted to a 4-byte (32-bit)…
- Complex/VectorComplex number and 3D vector operations. Complex numbers and 3D vectors are separate data types: create a value with the…
- JSONParses JSON text, looks up and edits JSON objects and JSON arrays, and converts them back to text. A JSON value is one o…
- XMLParses XML text, looks up and edits the name, value, attributes, and child elements of an XML element, and converts it b…
- ColorBlocks that create color values and extract their components. RGB components range from 0 to 255; in HSV, hue (H) ranges…
- Local VariablesTemporary variables scoped to this block editor. They are separate from project variables and are not visible in the blo…
- Local FunctionsFunctions defined and called within this block editor. Functions with and without a return value can be defined, and inp…