====== Pattern Definitions ====== Patterns are the building blocks for shapes and are part of the [[shapes:shapefile_structure|shapefile]]. Patterns can be used in a number of shapes: a pan saw shape, a tilt saw shape and a dimmer saw shape will all use the same saw pattern. Patterns just define the general envelope. Details like size, speed, or offset (if multiple patterns are applied simultaneously) are all set at shape level, not at pattern level. A pattern definition looks like this: * there is the '''' element * the only property is its ''ID'': a string by which this pattern is referenced by the shapes. Make sure all IDs are unique! * and there are 64 '''' childs * each Function has the properties ''ID'' and ''Value'' The whole thing describes something like a lookup table: ID translates to the X axis, value translates to the Y axis. ID is simply a number from 1 to 64 - each function has its unique number, they ascend consecutively. Values may range from -1000 to 1000. As shapes are modulators to attribute values within Titan, 0 translates to 'no change', -1000 translates to -100%, and 1000 translates to 100%. -100% and 100% refer to the full attribute range. Example tilt shape, size set to 100% and amplitude (see [[shapes:shapes]]) set to 1000: * with the attribute set to 0% tilt, a pattern value -1000 would still be 0% tilt, a pattern value 0 would be 0% tilt, and a pattern value 1000 would translate to 100% tilt * with the attribute set to 50% tilt, pattern values from -1000 to -500 would translate to 0% tilt, a pattern value of 0 would do any change (thus tilt = 50%), and values from 500 to 1000 would translate to tilt = 100% * with the attribute set to 100% tilt, a pattern value -1000 would translate to 0% tilt, and all values from 0 to 1000 would translate to 100% tilt In total, if the pattern ranges from -1000 to 1000, in order to use the full range, you would set the origin (the attribute value) to 50% and the size (shape amplitude in shape definition, or shape size in Titan) to 50% With a little routine, one can easily create customized slopes: * if determined by a function you can calculate the values with a spreadsheet calculator like Excel * if you want to create your own free slope simply use a checkered paper, draw the intended slope, and count the boxes Luckily there are already a number of [[predefined patterns]] included in the shapefile which you can of course use for your own shapes.