Subversion Repositories wimsdev

Rev

Rev 11922 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 11922 Rev 11930
Line -... Line 1...
-
 
1
 
1
<input type='text' size='10' value='' id='search' onkeydown='javascripts:if(event.keyCode == 13){look();}'/><input type='button' onclick='javascript:look();' value='search' />
2
<input type='text' size='10' value='' id='search'  onkeydown='javascripts:if(event.keyCode == 13){look();}'/><input type='button' onclick='javascript:look();' value='search' />
2
<h2 style=text-align:center>Implemented canvasdraw commands (16-09-2017)</h2>
3
<h2 style=text-align:center>Implemented canvasdraw commands (22-09-2017)</h2>
3
<table style='color:blue;font-size:0.8em;'><tr>
4
<table style='color:blue;font-size:0.8em;'><tr>
4
 
5
 
5
<td><a name='canvasdraw top' href='#canvasdraw'>canvasdraw</a></td>
6
<td><a name='canvasdraw top' href='#canvasdraw'>canvasdraw</a></td>
6
<td><a name='affine top' href='#affine'>affine</a></td>
7
<td><a name='affine top' href='#affine'>affine</a></td>
7
<td><a name='angle top' href='#angle'>angle</a></td>
8
<td><a name='angle top' href='#angle'>angle</a></td>
Line 169... Line 170...
169
<td><a name='snaptopoints top' href='#snaptopoints'>snaptopoints</a></td>
170
<td><a name='snaptopoints top' href='#snaptopoints'>snaptopoints</a></td>
170
<td><a name='snaptogrid top' href='#snaptogrid'>snaptogrid</a></td>
171
<td><a name='snaptogrid top' href='#snaptogrid'>snaptogrid</a></td>
171
<td><a name='square top' href='#square'>square</a></td>
172
<td><a name='square top' href='#square'>square</a></td>
172
<td><a name='status top' href='#status'>status</a></td>
173
<td><a name='status top' href='#status'>status</a></td>
173
<td><a name='string top' href='#string'>string</a></td>
174
<td><a name='string top' href='#string'>string</a></td>
174
</tr><tr>
175
</tr><tr>
175
<td><a name='stringup top' href='#stringup'>stringup</a></td>
176
<td><a name='stringup top' href='#stringup'>stringup</a></td>
176
<td><a name='highlight top' href='#highlight'>highlight</a></td>
177
<td><a name='highlight top' href='#highlight'>highlight</a></td>
177
<td><a name='strokecolor top' href='#strokecolor'>strokecolor</a></td>
178
<td><a name='strokecolor top' href='#strokecolor'>strokecolor</a></td>
178
<td><a name='text top' href='#text'>text</a></td>
179
<td><a name='text top' href='#text'>text</a></td>
179
<td><a name='textarea top' href='#textarea'>textarea</a></td>
180
<td><a name='textarea top' href='#textarea'>textarea</a></td>
Line 241... Line 242...
241
<td>&nbsp;</td>
242
<td>&nbsp;</td>
242
<td>&nbsp;</td>
243
<td>&nbsp;</td>
243
<td>&nbsp;</td>
244
<td>&nbsp;</td>
244
</tr></table>
245
</tr></table>
245
<ul>
246
<ul>
246
<li><a name='canvasdraw' href='#canvasdraw top'>canvasdraw</a><ul>
247
<li><a name='canvasdraw' href='#canvasdraw top'>  canvasdraw</a><ul>
247
<li><span style="color:blue;font-size:0.8em"> will try use the same syntax as flydraw or svgdraw to paint a html5 bitmap image<br />by generating a tailor-made javascript include file: providing only the js-functionality needed to perform the job.<br />thus ensuring a minimal strain on the client browser <br />(unlike some popular 'canvas-do-it-all' libraries, who have proven to be not suitable for low-end computers found in schools...)
248
<li><span style="color:blue;font-size:0.8em"> will try use the same syntax as flydraw or svgdraw to paint a html5 bitmap image<br />by generating a tailor-made javascript include file: providing only the js-functionality needed to perform the job.<br />thus ensuring a minimal strain on the client browser <br />(unlike some popular 'canvas-do-it-all' libraries, who have proven to be not suitable for low-end computers found in schools...)
248
</span></li>
249
</span></li>
249
<li><span style="color:blue;font-size:0.8em"> general syntax <ul><li>The transparency of all objects can be controlled by command <a href="#opacity">'opacity [0-255],[0,255]'</a></il><li>line width of any object can be controlled by command <a href="#linewidth">'linewidth int'</a></li><li>any may be dashed by using keyword <a href="#dashed">'dashed'</a> before the object command.<br />the dashing type can be controled by command <a href="#dashtype">'dashtype int,int'</a></li><li>a fillable object can be set fillable by starting the object command with an 'f'<br />(like frect,fcircle,ftriangle...)<br />or by using the keyword <a href="#filled">'filled'</a> before the object command.<br />The fill colour of 'non_userdraw' objects will be the stroke colour...(flydraw harmonization 19/10/2013)<br />non-solid filling (grid,hatch,diamond,dot,text) is provided using command <a href="#fillpattern">fillpattern a_pattern</a><br />for <a href="#filltoborder">filltoborder x0,y0,color</a> or <a href="#filltoborder">fill x0,y0,color</a> type filling (eg fill a region around x0,y0 with color until a border is encountered),<br />there are non-solid pattern fill analogues:<ul><li><a href="#gridfill">gridfill x,y,dx,dy,color</a></li><li><a href="#hatchfill">hatchfill x,y,dx,dy,color</a></li><li><a href="#diamondfill">diamondfill x,y,dx,dy,color</a></li><li><a href="#dotfill">dotfill x,y,dx,dy,color</a></li><li><a href="#textfill">textfill x,y,color,sometext_or_char</a></li></ul></li><li>all draggable objects may have a <a href="#slider">slider</a> for translation / rotation; several objects may be translated / rotated by a single slider</li> <li> a draggable object can be set draggable by a preceding command <a href="#drag">'drag x/y/xy'</a><br />The translation can be read by javascript:read_dragdrop();The replyformat is : object_number : x-orig : y-orig : x-drag : y-drag<br />The x-orig/y-orig will be returned in maximum precision (javascript float)...<br />the x-drag/y-drag will be returned in defined 'precision' number of decimals<br />Multiple objects may be set draggable / clickable (no limit)<br /> not all flydraw objects may be dragged / clicked<br />Only draggable / clickable objects will be scaled on <a href="#zoom">zoom</a> and will be translated in case of panning</li><li> a 'onclick object' can be set 'clickable' by the preceding keyword <a href="#onclick">'onclick'</a><br />not all flydraw objects can be set clickable</li><li><b>remarks using a ';' as command separator</b><br />commands with only numeric or colour arguments may be using a ';' as command separator (instead of a new line)<br />commands with a string argument may not use a ';' as command separator !<br />these exceptions are not really straight forward... so keep this in mind.</li><li>almost every <a href="#userdraw">"userdraw object,color"</a> or <a href="#multidraw">"multidraw"</a> command 'family' may be combined with keywords <a href="#snaptogrid">"snaptogrid | xsnaptogrid | ysnaptogrid | snaptofunction</a> or command "snaptopoints x1,y1,x2,y2,..." </li><li>every draggable | onclick object may be combined with keywords <a href="#snaptogrid">snaptogrid | xsnaptogrid | ysnaptogrid | snaptofunction</a> or command "snaptopoints x1,y1,x2,y2,..." </li><li>almost every command for a single object has a multiple objects counterpart:<br /><ul>general syntaxrule:<li><em>single_object</em> x1,y1,...,color</li><li><em>multi_object</em> color,x1,y1,...</li></ul><li>All inputfields or textareas generated, can be styled individually using command <a href="#inputstyle">'inputstyle some_css'</a><br/>the fontsize used for labeling these elements can be controlled by command <a href="fontsize">'fontsize int'</a> <br />command 'fontfamily' is <b>not</b> active for these elements </li></ul>
250
<li><span style="color:blue;font-size:0.8em"> general syntax <ul><li>The transparency of all objects can be controlled by command <a href="#opacity">'opacity [0-255],[0,255]'</a></il><li>line width of any object can be controlled by command <a href="#linewidth">'linewidth int'</a></li><li>any may be dashed by using keyword <a href="#dashed">'dashed'</a> before the object command.<br />the dashing type can be controled by command <a href="#dashtype">'dashtype int,int'</a></li><li>a fillable object can be set fillable by starting the object command with an 'f'<br />(like frect,fcircle,ftriangle...)<br />or by using the keyword <a href="#filled">'filled'</a> before the object command.<br />The fill colour of 'non_userdraw' objects will be the stroke colour...(flydraw harmonization 19/10/2013)<br />non-solid filling (grid,hatch,diamond,dot,text) is provided using command <a href="#fillpattern">fillpattern a_pattern</a><br />for <a href="#filltoborder">filltoborder x0,y0,color</a> or <a href="#filltoborder">fill x0,y0,color</a> type filling (eg fill a region around x0,y0 with color until a border is encountered),<br />there are non-solid pattern fill analogues:<ul><li><a href="#gridfill">gridfill x,y,dx,dy,color</a></li><li><a href="#hatchfill">hatchfill x,y,dx,dy,color</a></li><li><a href="#diamondfill">diamondfill x,y,dx,dy,color</a></li><li><a href="#dotfill">dotfill x,y,dx,dy,color</a></li><li><a href="#textfill">textfill x,y,color,sometext_or_char</a></li></ul></li><li>all draggable objects may have a <a href="#slider">slider</a> for translation / rotation; several objects may be translated / rotated by a single slider</li> <li> a draggable object can be set draggable by a preceding command <a href="#drag">'drag x/y/xy'</a><br />The translation can be read by javascript:read_dragdrop();The replyformat is : object_number : x-orig : y-orig : x-drag : y-drag<br />The x-orig/y-orig will be returned in maximum precision (javascript float)...<br />the x-drag/y-drag will be returned in defined 'precision' number of decimals<br />Multiple objects may be set draggable / clickable (no limit)<br /> not all flydraw objects may be dragged / clicked<br />Only draggable / clickable objects will be scaled on <a href="#zoom">zoom</a> and will be translated in case of panning</li><li> a 'onclick object' can be set 'clickable' by the preceding keyword <a href="#onclick">'onclick'</a><br />not all flydraw objects can be set clickable</li><li><b>remarks using a ';' as command separator</b><br />commands with only numeric or colour arguments may be using a ';' as command separator (instead of a new line)<br />commands with a string argument may not use a ';' as command separator !<br />these exceptions are not really straight forward... so keep this in mind.</li><li>almost every <a href="#userdraw">"userdraw object,color"</a> or <a href="#multidraw">"multidraw"</a> command 'family' may be combined with keywords <a href="#snaptogrid">"snaptogrid | xsnaptogrid | ysnaptogrid | snaptofunction</a> or command "snaptopoints x1,y1,x2,y2,..." </li><li>every draggable | onclick object may be combined with keywords <a href="#snaptogrid">snaptogrid | xsnaptogrid | ysnaptogrid | snaptofunction</a> or command "snaptopoints x1,y1,x2,y2,..." </li><li>almost every command for a single object has a multiple objects counterpart:<br /><ul>general syntaxrule:<li><em>single_object</em> x1,y1,...,color</li><li><em>multi_object</em> color,x1,y1,...</li></ul><li>All inputfields or textareas generated, can be styled individually using command <a href="#inputstyle">'inputstyle some_css'</a><br/>the fontsize used for labeling these elements can be controlled by command <a href="fontsize">'fontsize int'</a> <br />command 'fontfamily' is <b>not</b> active for these elements </li></ul>
250
</span></li>
251
</span></li>
251
<li><span style="color:blue;font-size:0.8em"> If needed multiple interactive scripts may be used in a single webpage.<br />A function 'read_canvas()' and / or 'read_dragdrop()' can read all interactive userdata from these images.<br />The global array 'canvas_scripts' will contain all unique random "canvas_root_id" of the included scripts.<br />The included local javascript "read" functions "read_canvas%d()" and "read_dragdrop%d()" will have this "%d = canvas_root_id"<br />e.g. canvas_scripts[0] will be the random id of the first script in the page and will thus provide a function<br />fun = eval("read_canvas"+canvas_scripts[0]) to read user based drawings / inputfield in this first image.<br />The read_dragdrop is analogue.<br />If the default reply formatting is not suitable, use command <a href='#replyformat'>'replyformat'</a> to format the replies for an individual canvas script,<br />To read all user interactions from all included canvas scripts , use something like:<br /><em>function read_all_canvas_images(){<br />&nbsp;var script_len = canvas_scripts.length;<br />&nbsp;var draw_reply = "";<br />&nbsp;var found_result = false;<br />&nbsp;for(var p = 0 ; p < script_len ; p++){<br />&nbsp;&nbsp;var fun = eval("read_canvas"+canvas_scripts[p]);<br />&nbsp;&nbsp;if( typeof fun === 'function'){<br />&nbsp;&nbsp;&nbsp;var result = fun();<br />&nbsp;&nbsp;&nbsp;if( result&nbsp;&nbsp;&& result.length != 0){<br />&nbsp;&nbsp;&nbsp;&nbsp;if(script_len == 1 ){ return result;};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;found_result = true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_reply = draw_reply + result + "\n";<br />&nbsp;&nbsp;&nbsp;&nbsp;};<br />&nbsp;&nbsp;&nbsp;};<br />&nbsp;&nbsp;};<br />&nbsp;if( found_result ){return draw_reply;}else{return null;};<br />};</em>
252
<li><span style="color:blue;font-size:0.8em"> If needed multiple interactive scripts may be used in a single webpage.<br />A function 'read_canvas()' and / or 'read_dragdrop()' can read all interactive userdata from these images.<br />The global array 'canvas_scripts' will contain all unique random "canvas_root_id" of the included scripts.<br />The included local javascript "read" functions "read_canvas%d()" and "read_dragdrop%d()" will have this "%d = canvas_root_id"<br />e.g. canvas_scripts[0] will be the random id of the first script in the page and will thus provide a function<br />fun = eval("read_canvas"+canvas_scripts[0]) to read user based drawings / inputfield in this first image.<br />The read_dragdrop is analogue.<br />If the default reply formatting is not suitable, use command <a href='#replyformat'>'replyformat'</a> to format the replies for an individual canvas script,<br />To read all user interactions from all included canvas scripts , use something like:<br /><em>function read_all_canvas_images(){<br />&nbsp;var script_len = canvas_scripts.length;<br />&nbsp;var draw_reply = "";<br />&nbsp;var found_result = false;<br />&nbsp;for(var p = 0 ; p < script_len ; p++){<br />&nbsp;&nbsp;var fun = eval("read_canvas"+canvas_scripts[p]);<br />&nbsp;&nbsp;if( typeof fun === 'function'){<br />&nbsp;&nbsp;&nbsp;var result = fun();<br />&nbsp;&nbsp;&nbsp;if( result&nbsp;&nbsp;&& result.length != 0){<br />&nbsp;&nbsp;&nbsp;&nbsp;if(script_len == 1 ){ return result;};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;found_result = true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;draw_reply = draw_reply + result + "\n";<br />&nbsp;&nbsp;&nbsp;&nbsp;};<br />&nbsp;&nbsp;&nbsp;};<br />&nbsp;&nbsp;};<br />&nbsp;if( found_result ){return draw_reply;}else{return null;};<br />};</em>
Line 259... Line 260...
259
<li><span style="color:blue;font-size:0.8em"> if you find flaws, errors or other incompatibilities -not those mentioned in this document- send <a href='mailto:jm.evers-at-schaersvoorde.nl'>me</a> an email with screenshots and the generated javascript include file.
260
<li><span style="color:blue;font-size:0.8em"> if you find flaws, errors or other incompatibilities -not those mentioned in this document- send <a href='mailto:jm.evers-at-schaersvoorde.nl'>me</a> an email with screenshots and the generated javascript include file.
260
</span></li>
261
</span></li>
261
<li><span style="color:blue;font-size:0.8em"> there is limited support for touch devices : touchstart,touchmove and touchend in commands <a href="#userdraw">userdraw primitives </a>, <a href="#protractor">protractor</a> and <a href="#ruler">ruler</a><br />only single finger gestures are supported (for now)<br />for more accurate user-interaction with canvasdraw on touch devices: use the command family <a href="userinput_xy">userinput</a>
262
<li><span style="color:blue;font-size:0.8em"> there is limited support for touch devices : touchstart,touchmove and touchend in commands <a href="#userdraw">userdraw primitives </a>, <a href="#protractor">protractor</a> and <a href="#ruler">ruler</a><br />only single finger gestures are supported (for now)<br />for more accurate user-interaction with canvasdraw on touch devices: use the command family <a href="userinput_xy">userinput</a>
262
</span></li>
263
</span></li>
263
</ul>
264
</ul>
264
<li><a name='affine' href='#affine top'> affine a,b,c,d,tx,ty</a><ul>
265
<li><a name='affine' href='#affine top'>  affine a,b,c,d,tx,ty</a><ul>
265
<li><span style="color:blue;font-size:0.8em"> defines a transformation matrix for subsequent objects
266
<li><span style="color:blue;font-size:0.8em"> defines a transformation matrix for subsequent objects
266
</span></li>
267
</span></li>
267
<li><span style="color:blue;font-size:0.8em"> images drawn by setting skew params a &amp; d will be very different from Flydraw's "affine a,b,c,d,e,tx,ty" !!
268
<li><span style="color:blue;font-size:0.8em"> images drawn by setting skew params a &amp; d will be very different from Flydraw's "affine a,b,c,d,e,tx,ty" !!
268
</span></li>
269
</span></li>
269
<li><span style="color:blue;font-size:0.8em"> use keyword 'killaffine' to end the transformation
270
<li><span style="color:blue;font-size:0.8em"> use keyword 'killaffine' to end the transformation
Line 275... Line 276...
275
<li><span style="color:blue;font-size:0.8em"> note 3: no matrix operations on the transformation matrix implemented (yet)
276
<li><span style="color:blue;font-size:0.8em"> note 3: no matrix operations on the transformation matrix implemented (yet)
276
</span></li>
277
</span></li>
277
<li><span style="color:blue;font-size:0.8em"> a : Scales the drawings horizontally
278
<li><span style="color:blue;font-size:0.8em"> a : Scales the drawings horizontally
278
</span></li>
279
</span></li>
279
<li><span style="color:blue;font-size:0.8em"> b : Skews the drawings horizontally
280
<li><span style="color:blue;font-size:0.8em"> b : Skews the drawings horizontally
280
</span></li>
281
</span></li>
281
<li><span style="color:blue;font-size:0.8em"> c : Skews the drawings vertically
282
<li><span style="color:blue;font-size:0.8em"> c : Skews the drawings vertically
282
</span></li>
283
</span></li>
283
<li><span style="color:blue;font-size:0.8em"> d : Scales the drawings vertically
284
<li><span style="color:blue;font-size:0.8em"> d : Scales the drawings vertically
284
</span></li>
285
</span></li>
285
<li><span style="color:blue;font-size:0.8em"> tx: Moves the drawings horizontally in xrange coordinate system
286
<li><span style="color:blue;font-size:0.8em"> tx: Moves the drawings horizontally in xrange coordinate system
Line 287... Line 288...
287
<li><span style="color:blue;font-size:0.8em"> ty: Moves the drawings vertically in yrange coordinate system
288
<li><span style="color:blue;font-size:0.8em"> ty: Moves the drawings vertically in yrange coordinate system
288
</span></li>
289
</span></li>
289
<li><span style="color:blue;font-size:0.8em"> the data precision may be set by preceding command "precision int"
290
<li><span style="color:blue;font-size:0.8em"> the data precision may be set by preceding command "precision int"
290
</span></li>
291
</span></li>
291
</ul>
292
</ul>
292
<li><a name='angle' href='#angle top'> angle xc,yc,width,start_angle,end_angle,color</a><ul>
293
<li><a name='angle' href='#angle top'>  angle xc,yc,width,start_angle,end_angle,color</a><ul>
293
<li><span style="color:blue;font-size:0.8em"> width is in x-range
294
<li><span style="color:blue;font-size:0.8em"> width is in x-range
294
</span></li>
295
</span></li>
295
<li><span style="color:blue;font-size:0.8em"> will zoom in/out
296
<li><span style="color:blue;font-size:0.8em"> will zoom in/out
296
</span></li>
297
</span></li>
297
<li><span style="color:blue;font-size:0.8em"> if size is controlled by command <a href='#slider'>'slider'</a> use radians to set limits of slider.
298
<li><span style="color:blue;font-size:0.8em"> if size is controlled by command <a href='#slider'>'slider'</a> use radians to set limits of slider.
298
</span></li>
299
</span></li>
299
</ul>
300
</ul>
300
<li><a name='animate' href='#animate top'> animate type</a><ul>
301
<li><a name='animate' href='#animate top'>  animate</a><ul>
301
<li><span style="color:blue;font-size:0.8em"> REMOVED : this should be done with a slider
302
<li><span style="color:blue;font-size:0.8em"> keyword
302
</span></li>
303
</span></li>
303
<li><span style="color:blue;font-size:0.8em"> type may be "point" (nothing else , yet...)
304
<li><span style="color:blue;font-size:0.8em"> the animated point is a filled rectangle ; adjust colour with command 'fillcolor colorname/hexnumber'
304
</span></li>
305
</span></li>
305
<li><span style="color:blue;font-size:0.8em"> the point is a filled rectangle ; adjust colour with command 'fillcolor colorname/hexnumber'
306
<li><span style="color:blue;font-size:0.8em"> use linewidth to adjust size of the points
306
</span></li>
307
</span></li>
307
<li><span style="color:blue;font-size:0.8em"> will animate a point on the next plot/curve command
308
<li><span style="color:blue;font-size:0.8em"> will animate a point on the next jsplot/jscurve command
308
</span></li>
309
</span></li>
309
<li><span style="color:blue;font-size:0.8em"> the curve will not be draw
310
<li><span style="color:blue;font-size:0.8em"> only usable for command jsplot (normal functions or parametric)
310
</span></li>
311
</span></li>
311
<li><span style="color:blue;font-size:0.8em"> moves repeatedly from xmin to xmax
312
<li><span style="color:blue;font-size:0.8em"> moves repeatedly from xmin to xmax or incase of a parametric function from tmin to tmax (set trange)
312
</span></li>
313
</span></li>
313
</ul>
314
</ul>
314
<li><a name='arc' href='#arc top'> arc xc,yc,width,height,start_angle,end_angle,color</a><ul>
315
<li><a name='arc' href='#arc top'>  arc xc,yc,width,height,start_angle,end_angle,color</a><ul>
315
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy"
316
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy"
316
</span></li>
317
</span></li>
317
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: width in height in x/y-range
318
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: width in height in x/y-range
318
</span></li>
319
</span></li>
319
<li><span style="color:blue;font-size:0.8em"> will not zoom in or zoom out (because radius is given in pixels an not in x/y-system !). Panning will work
320
<li><span style="color:blue;font-size:0.8em"> will not zoom in or zoom out (because radius is given in pixels an not in x/y-system !). Panning will work
320
</span></li>
321
</span></li>
321
<li><span style="color:blue;font-size:0.8em"> use command <a href='#angle'>'angle'</a> for scalable angle
322
<li><span style="color:blue;font-size:0.8em"> use command <a href='#angle'>'angle'</a> for scalable angle
322
</span></li>
323
</span></li>
323
</ul>
324
</ul>
324
<li><a name='arrow' href='#arrow top'> arrow x1,y1,x2,y2,h,color</a><ul>
325
<li><a name='arrow' href='#arrow top'>  arrow x1,y1,x2,y2,h,color</a><ul>
325
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='vector' href='#vector top'>vector</a></span></li>
326
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='vector' href='#vector top'>vector</a></span></li>
326
<li><span style="color:blue;font-size:0.8em"> draw a single headed arrow / vector from (x1:y1) to (x2:y2)<br />with arrowhead size h in px and in color 'color'
327
<li><span style="color:blue;font-size:0.8em"> draw a single headed arrow / vector from (x1:y1) to (x2:y2)<br />with arrowhead size h in px and in color 'color'
327
</span></li>
328
</span></li>
328
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrow
329
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrow
329
</span></li>
330
</span></li>
330
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
331
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
331
</span></li>
332
</span></li>
332
</ul>
333
</ul>
333
<li><a name='arrows' href='#arrows top'> arrows color,head (px),x1,y1,x2,y2...x_n,y_n</a><ul>
334
<li><a name='arrows' href='#arrows top'>  arrows color,head (px),x1,y1,x2,y2...x_n,y_n</a><ul>
334
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='vectors' href='#vectors top'>vectors</a></span></li>
335
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='vectors' href='#vectors top'>vectors</a></span></li>
335
<li><span style="color:blue;font-size:0.8em"> draw single headed arrows / vectors from (x1:y1) to (x2:y2) ... (x3:y3) to (x4:y4) etc ... in color 'color'
336
<li><span style="color:blue;font-size:0.8em"> draw single headed arrows / vectors from (x1:y1) to (x2:y2) ... (x3:y3) to (x4:y4) etc ... in color 'color'
336
</span></li>
337
</span></li>
337
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrow
338
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrow
338
</span></li>
339
</span></li>
339
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
340
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
340
</span></li>
341
</span></li>
341
</ul>
342
</ul>
342
<li><a name='arrow2' href='#arrow2 top'> arrow2 x1,y1,x2,y2,h,color</a><ul>
343
<li><a name='arrow2' href='#arrow2 top'>  arrow2 x1,y1,x2,y2,h,color</a><ul>
343
<li><span style="color:blue;font-size:0.8em"> draw a double headed arrow/vector from (x1:y1) to (x2:y2)<br />with arrowhead size h in px and in color 'color'
344
<li><span style="color:blue;font-size:0.8em"> draw a double headed arrow/vector from (x1:y1) to (x2:y2)<br />with arrowhead size h in px and in color 'color'
344
</span></li>
345
</span></li>
345
<li><span style="color:blue;font-size:0.8em"> use command 'arrowhead int' to adjust the arrow head size
346
<li><span style="color:blue;font-size:0.8em"> use command 'arrowhead int' to adjust the arrow head size
346
</span></li>
347
</span></li>
347
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrow
348
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrow
348
</span></li>
349
</span></li>
349
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
350
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
350
</span></li>
351
</span></li>
351
</ul>
352
</ul>
352
<li><a name='arrows2' href='#arrows2 top'> arrows2 color,head (px),x1,y1,x2,y2...x_n,y_n</a><ul>
353
<li><a name='arrows2' href='#arrows2 top'>  arrows2 color,head (px),x1,y1,x2,y2...x_n,y_n</a><ul>
353
<li><span style="color:blue;font-size:0.8em"> draw double headed arrows / vectors from (x1:y1) to (x2:y2) ... (x3:y3) to (x4:y4) etc ... in color 'color'
354
<li><span style="color:blue;font-size:0.8em"> draw double headed arrows / vectors from (x1:y1) to (x2:y2) ... (x3:y3) to (x4:y4) etc ... in color 'color'
354
</span></li>
355
</span></li>
355
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrows
356
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adjust thickness of the arrows
356
</span></li>
357
</span></li>
357
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
358
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
358
</span></li>
359
</span></li>
359
</ul>
360
</ul>
360
<li><a name='arrowhead' href='#arrowhead top'> arrowhead int</a><ul>
361
<li><a name='arrowhead' href='#arrowhead top'>  arrowhead int</a><ul>
361
<li><span style="color:blue;font-size:0.8em"> default 8 (pixels)
362
<li><span style="color:blue;font-size:0.8em"> default 8 (pixels)
362
</span></li>
363
</span></li>
363
</ul>
364
</ul>
364
<li><a name='audio' href='#audio top'> audio x,y,w,h,loop,visible,audiofile location</a><ul>
365
<li><a name='audio' href='#audio top'>  audio x,y,w,h,loop,visible,audiofile location</a><ul>
365
<li><span style="color:blue;font-size:0.8em"> x,y : left top corner of audio element (in xrange / yrange)
366
<li><span style="color:blue;font-size:0.8em"> x,y : left top corner of audio element (in xrange / yrange)
366
</span></li>
367
</span></li>
367
<li><span style="color:blue;font-size:0.8em"> w,y : width and height in pixels
368
<li><span style="color:blue;font-size:0.8em"> w,y : width and height in pixels
368
</span></li>
369
</span></li>
369
<li><span style="color:blue;font-size:0.8em"> loop : 0 or 1 ( 1 = loop audio fragment)
370
<li><span style="color:blue;font-size:0.8em"> loop : 0 or 1 ( 1 = loop audio fragment)
370
</span></li>
371
</span></li>
371
<li><span style="color:blue;font-size:0.8em"> visible : 0 or 1 (1 = show controls)
372
<li><span style="color:blue;font-size:0.8em"> visible : 0 or 1 (1 = show controls)
372
</span></li>
373
</span></li>
373
<li><span style="color:blue;font-size:0.8em"> audio format may be in *.mp3 or *.ogg
374
<li><span style="color:blue;font-size:0.8em"> audio format may be in *.mp3 or *.ogg
374
</span></li>
375
</span></li>
375
<li><span style="color:blue;font-size:0.8em"> If you are using *.mp3 : be aware that FireFox will not (never) play this ! (Pattented format)
376
<li><span style="color:blue;font-size:0.8em"> If you are using *.mp3 : be aware that FireFox will not (never) play this ! (Pattented format)
376
</span></li>
377
</span></li>
377
<li><span style="color:blue;font-size:0.8em"> if you are using *.ogg : be aware that Microsoft based systems not support it natively
378
<li><span style="color:blue;font-size:0.8em"> if you are using *.ogg : be aware that Microsoft based systems not support it natively
378
</span></li>
379
</span></li>
379
<li><span style="color:blue;font-size:0.8em"> To avoid problems supply both types (mp3 and ogg) of audiofiles.<br />the program will use both as source tag
380
<li><span style="color:blue;font-size:0.8em"> To avoid problems supply both types (mp3 and ogg) of audiofiles.<br />the program will use both as source tag
380
</span></li>
381
</span></li>
381
<li><span style="color:blue;font-size:0.8em"> example: upload both audio1.ogg and audio1.mp3 to http://server/files/<br />audio 0,0,http://server/files/audio1.mp3<br />svdraw will copy html-tag audio1.mp3 to audio1.ogg<br /> and the browser will play the compatible file (audio1.ogg or audio1.mp3)<br />
382
<li><span style="color:blue;font-size:0.8em"> example: upload both audio1.ogg and audio1.mp3 to http://server/files/<br />audio 0,0,http://server/files/audio1.mp3<br />svdraw will copy html-tag audio1.mp3 to audio1.ogg<br /> and the browser will play the compatible file (audio1.ogg or audio1.mp3)<br />
382
</span></li>
383
</span></li>
383
</ul>
384
</ul>
384
<li><a name='axisnumbering' href='#axisnumbering top'> axisnumbering</a><ul>
385
<li><a name='axisnumbering' href='#axisnumbering top'>  axisnumbering</a><ul>
385
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
386
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
386
</span></li>
387
</span></li>
387
<li><span style="color:blue;font-size:0.8em"> for special numbering of x-axis or y-axis see grid related commands <a href="#axis">axis</a> <a href="#xaxis">xaxis</a> , <a href="#xaxisup">xaxisup</a>, <a href="#noxaxis">noxaxis</a> ,<a href="#yaxis">yaxis</a> , <a href="#yaxisup">yaxisup</a>, <a href="#noyaxis">noyaxis</a>
388
<li><span style="color:blue;font-size:0.8em"> for special numbering of x-axis or y-axis see grid related commands <a href="#axis">axis</a> <a href="#xaxis">xaxis</a> , <a href="#xaxisup">xaxisup</a>, <a href="#noxaxis">noxaxis</a> ,<a href="#yaxis">yaxis</a> , <a href="#yaxisup">yaxisup</a>, <a href="#noyaxis">noyaxis</a>
388
</span></li>
389
</span></li>
389
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
390
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
390
</span></li>
391
</span></li>
391
</ul>
392
</ul>
392
<li><a name='axis' href='#axis top'> axis</a><ul>
393
<li><a name='axis' href='#axis top'>  axis</a><ul>
393
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
394
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
394
</span></li>
395
</span></li>
395
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
396
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
396
</span></li>
397
</span></li>
397
</ul>
398
</ul>
398
<li><a name='barchart' href='#barchart top'> barchart x_1:y_1:color_1:x_2:y_2:color_2:...x_n:y_n:color_n</a><ul>
399
<li><a name='barchart' href='#barchart top'>  barchart x_1:y_1:color_1:x_2:y_2:color_2:...x_n:y_n:color_n</a><ul>
399
<li><span style="color:blue;font-size:0.8em"> may <b>only</b> to be used together with command <a href='#grid'>'grid'</a>
400
<li><span style="color:blue;font-size:0.8em"> may <b>only</b> to be used together with command <a href='#grid'>'grid'</a>
400
</span></li>
401
</span></li>
401
<li><span style="color:blue;font-size:0.8em"> can be used together with freestyle x-axis/y-axis texts : see commands <a href='#xaxis'>'xaxis'</a>,<a href='#xaxisup'>'xaxisup'</a> and <a href='#yaxis'>'yaxis'</a>
402
<li><span style="color:blue;font-size:0.8em"> can be used together with freestyle x-axis/y-axis texts : see commands <a href='#xaxis'>'xaxis'</a>,<a href='#xaxisup'>'xaxisup'</a> and <a href='#yaxis'>'yaxis'</a>
402
</span></li>
403
</span></li>
403
<li><span style="color:blue;font-size:0.8em"> use command <a href='#legend'>'legend'</a> to provide an optional legend in right-top-corner
404
<li><span style="color:blue;font-size:0.8em"> use command <a href='#legend'>'legend'</a> to provide an optional legend in right-top-corner
404
</span></li>
405
</span></li>
405
<li><span style="color:blue;font-size:0.8em"> multiple barchart command may be used in a single script
406
<li><span style="color:blue;font-size:0.8em"> multiple barchart command may be used in a single script
Line 407... Line 408...
407
<li><span style="color:blue;font-size:0.8em"> also see command <a href='#piechart'>'piechart'</a>
408
<li><span style="color:blue;font-size:0.8em"> also see command <a href='#piechart'>'piechart'</a>
408
</span></li>
409
</span></li>
409
<li><span style="color:blue;font-size:0.8em"> note: your arguments are not checked by canvasdraw : use your javascript console in case of trouble...
410
<li><span style="color:blue;font-size:0.8em"> note: your arguments are not checked by canvasdraw : use your javascript console in case of trouble...
410
</span></li>
411
</span></li>
411
</ul>
412
</ul>
412
<li><a name='bezier' href='#bezier top'> bezier color,x_start,y_start,x_first,y_first,x_second,y_second,x_end,y_end</a><ul>
413
<li><a name='bezier' href='#bezier top'>  bezier color,x_start,y_start,x_first,y_first,x_second,y_second,x_end,y_end</a><ul>
413
<li><span style="color:blue;font-size:0.8em"> draw a bezier curve between points, starting from (x_start:y_start)
414
<li><span style="color:blue;font-size:0.8em"> draw a bezier curve between points, starting from (x_start:y_start)
414
</span></li>
415
</span></li>
415
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be dragged or set onclick
416
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be dragged or set onclick
416
</span></li>
417
</span></li>
417
</ul>
418
</ul>
418
<li><a name='bgcolor' href='#bgcolor top'> bgcolor colorname or #hex</a><ul>
419
<li><a name='bgcolor' href='#bgcolor top'>  bgcolor colorname or #hex</a><ul>
419
<li><span style="color:blue;font-size:0.8em"> use this color as background of the "div" containing the canvas(es)
420
<li><span style="color:blue;font-size:0.8em"> use this color as background of the "div" containing the canvas(es)
420
</span></li>
421
</span></li>
421
</ul>
422
</ul>
422
<li><a name='bgimage' href='#bgimage top'> bgimage image_location</a><ul>
423
<li><a name='bgimage' href='#bgimage top'>  bgimage image_location</a><ul>
423
<li><span style="color:blue;font-size:0.8em"> use an image as background .<br />technical: we use the background of 'canvas_div'
424
<li><span style="color:blue;font-size:0.8em"> use an image as background .<br />technical: we use the background of 'canvas_div'
424
</span></li>
425
</span></li>
425
<li><span style="color:blue;font-size:0.8em"> the background image will be resized to match "width = xsize" and "height = ysize"
426
<li><span style="color:blue;font-size:0.8em"> the background image will be resized to match "width = xsize" and "height = ysize"
426
</span></li>
427
</span></li>
427
</ul>
428
</ul>
428
<li><a name='blink' href='#blink top'> blink time(seconds)</a><ul>
429
<li><a name='blink' href='#blink top'>  blink time(seconds)</a><ul>
429
<li><span style="color:blue;font-size:0.8em"> NOT IMPLEMETED -YET
430
<li><span style="color:blue;font-size:0.8em"> NOT IMPLEMETED -YET
430
</span></li>
431
</span></li>
431
</ul>
432
</ul>
432
<li><a name='boxplot' href='#boxplot top'> boxplot x_or_y,box-height_or_box-width,position,min,Q1,median,Q3,max</a><ul>
433
<li><a name='boxplot' href='#boxplot top'>  boxplot x_or_y,box-height_or_box-width,position,min,Q1,median,Q3,max</a><ul>
433
<li><span style="color:blue;font-size:0.8em"> example:<br />xrange 0,300<br />yrange 0,10<br />boxplot x,4,8,120,160,170,220,245<br />meaning: create a boxplot in x-direction, with height 4 (in yrange) and centered around line y=8
434
<li><span style="color:blue;font-size:0.8em"> example:<br />xrange 0,300<br />yrange 0,10<br />boxplot x,4,8,120,160,170,220,245<br />meaning: create a boxplot in x-direction, with height 4 (in yrange) and centered around line y=8
434
</span></li>
435
</span></li>
435
<li><span style="color:blue;font-size:0.8em"> example:<br />xrange 0,10<br />yrange 0,300<br />boxplot y,4,8,120,160,170,220,245<br />meaning: create a boxplot in y-direction, with width 4 (in xrange) and centered around line x=8
436
<li><span style="color:blue;font-size:0.8em"> example:<br />xrange 0,10<br />yrange 0,300<br />boxplot y,4,8,120,160,170,220,245<br />meaning: create a boxplot in y-direction, with width 4 (in xrange) and centered around line x=8
436
</span></li>
437
</span></li>
437
<li><span style="color:blue;font-size:0.8em"> use command <a href='#filled'>'filled'</a> to fill the box<br /><b>note:</b> the strokecolor is used for filling Q1, the fillcolor is used for filling Q3
438
<li><span style="color:blue;font-size:0.8em"> use command <a href='#filled'>'filled'</a> to fill the box<br /><b>note:</b> the strokecolor is used for filling Q1, the fillcolor is used for filling Q3
Line 451... Line 452...
451
<li><span style="color:blue;font-size:0.8em"> use keyword <a href="#userboxplotdata">'userboxplotdata'</a> before command boxplot, if a pupil must generate the data by some means.
452
<li><span style="color:blue;font-size:0.8em"> use keyword <a href="#userboxplotdata">'userboxplotdata'</a> before command boxplot, if a pupil must generate the data by some means.
452
</span></li>
453
</span></li>
453
<li><span style="color:blue;font-size:0.8em"> use command <a href="#boxplotdata">'boxplotdata'</a> when the boxplot should be drawn from wims-generated raw statistical date
454
<li><span style="color:blue;font-size:0.8em"> use command <a href="#boxplotdata">'boxplotdata'</a> when the boxplot should be drawn from wims-generated raw statistical date
454
</span></li>
455
</span></li>
455
</ul>
456
</ul>
456
<li><a name='boxplotdata' href='#boxplotdata top'> boxplotdata some_data</a><ul>
457
<li><a name='boxplotdata' href='#boxplotdata top'>  boxplotdata some_data</a><ul>
457
<li><span style="color:blue;font-size:0.8em"> 'some_data' are a list of numbers separated by a comma "," (items)
458
<li><span style="color:blue;font-size:0.8em"> 'some_data' are a list of numbers separated by a comma "," (items)
458
</span></li>
459
</span></li>
459
<li><span style="color:blue;font-size:0.8em"> only be used before command 'boxplot': the command <a href="#boxplot">'boxplot'</a> will provide the boxplot drawing of the data.
460
<li><span style="color:blue;font-size:0.8em"> only be used before command 'boxplot': the command <a href="#boxplot">'boxplot'</a> will provide the boxplot drawing of the data.
460
</span></li>
461
</span></li>
461
<li><span style="color:blue;font-size:0.8em"> xrange 0,100<br />yrange 0,10<br />boxplotdata 11,22,13,15,23,43,12,12,14,2,45,32,44,13,21,24,13,19,35,21,24,23<br />boxplot x,4,5
462
<li><span style="color:blue;font-size:0.8em"> xrange 0,100<br />yrange 0,10<br />boxplotdata 11,22,13,15,23,43,12,12,14,2,45,32,44,13,21,24,13,19,35,21,24,23<br />boxplot x,4,5
Line 463... Line 464...
463
<li><span style="color:blue;font-size:0.8em"> note: wims will not check your data input | format. use js-error console to debug any problems.
464
<li><span style="color:blue;font-size:0.8em"> note: wims will not check your data input | format. use js-error console to debug any problems.
464
</span></li>
465
</span></li>
465
<li><span style="color:blue;font-size:0.8em"> a javascript function 'statistics()' will parse the data and calculate the values [min,Q1,median,Q3,max] and hand them to the boxplot draw function.
466
<li><span style="color:blue;font-size:0.8em"> a javascript function 'statistics()' will parse the data and calculate the values [min,Q1,median,Q3,max] and hand them to the boxplot draw function.
466
</span></li>
467
</span></li>
467
</ul>
468
</ul>
468
<li><a name='canvastype' href='#canvastype top'> canvastype TYPE</a><ul>
469
<li><a name='canvastype' href='#canvastype top'>  canvastype TYPE</a><ul>
469
<li><span style="color:blue;font-size:0.8em"> for now only usefull before commands filltoborder / floodfill / clickfill etc operations<br />Only the images of this TYPE will be scanned and filled
470
<li><span style="color:blue;font-size:0.8em"> for now only usefull before commands filltoborder / floodfill / clickfill etc operations<br />Only the images of this TYPE will be scanned and filled
470
</span></li>
471
</span></li>
471
<li><span style="color:blue;font-size:0.8em"> default value of TYPE is DRAG_CANVAS e.g. 5 (all clickable / draggable object are in this canvas)
472
<li><span style="color:blue;font-size:0.8em"> default value of TYPE is DRAG_CANVAS e.g. 5 (all clickable / draggable object are in this canvas)
472
</span></li>
473
</span></li>
473
<li><span style="color:blue;font-size:0.8em"> use another TYPE, if you know what you are doing...
474
<li><span style="color:blue;font-size:0.8em"> use another TYPE, if you know what you are doing...
474
</span></li>
475
</span></li>
475
<li><span style="color:blue;font-size:0.8em"> other possible canvasses (transparent PNG pictures xsize x ysize on top of each other)<ul><li> EXTERNAL_IMAGE_CANVAS 0</li><li> BG_CANVAS 1</li><li> STATIC_CANVAS 2</li><li> MOUSE_CANVAS 3</li><li> GRID_CANVAS 4</li><li> DRAG_CANVAS 5</li><li> DRAW_CANVAS 6</li><li> TEXT_CANVAS 7</li><li> CLOCK_CANVAS 8</li><li> ANIMATE_CANVAS 9</li><li> TRACE_CANVAS 10</li><li>BOXPLOT_CANVAS 11</li><li> JSPLOT_CANVAS 100 , will increase with every call</li><li> FILL_CANVAS 200 , will increase with every call </li><li> USERDRAW_JSPLOT 300 , will increase with every call </li><li>CLICKFILL_CANVAS 400 , will increase with every call/click</li><li>BOXPLOT_CANVAS 500 , will increase with every call</li></ul>
476
<li><span style="color:blue;font-size:0.8em"> other possible canvasses (transparent PNG pictures xsize x ysize on top of each other)<ul><li> EXTERNAL_IMAGE_CANVAS 0</li><li> BG_CANVAS 1</li><li> STATIC_CANVAS 2</li><li> MOUSE_CANVAS 3</li><li> GRID_CANVAS 4</li><li> DRAG_CANVAS 5</li><li> DRAW_CANVAS 6</li><li> TEXT_CANVAS 7</li><li> CLOCK_CANVAS 8</li><li> ANIMATE_CANVAS 9</li><li> TRACE_CANVAS 10</li><li>BOXPLOT_CANVAS 11</li><li> JSPLOT_CANVAS 100 , will increase with every call</li><li> FILL_CANVAS 200 , will increase with every call </li><li> USERDRAW_JSPLOT 300 , will increase with every call </li><li>CLICKFILL_CANVAS 400 , will increase with every call/click</li><li>BOXPLOT_CANVAS 500 , will increase with every call</li></ul>
476
</span></li>
477
</span></li>
477
</ul>
478
</ul>
478
<li><a name='centerstring' href='#centerstring top'> centerstring color,y-value,the text string</a><ul>
479
<li><a name='centerstring' href='#centerstring top'>  centerstring color,y-value,the text string</a><ul>
479
<li><span style="color:blue;font-size:0.8em"> title color,y-value,the text string
480
<li><span style="color:blue;font-size:0.8em"> title color,y-value,the text string
480
</span></li>
481
</span></li>
481
<li><span style="color:blue;font-size:0.8em"> draw a string centered on the canvas at y = y-value
482
<li><span style="color:blue;font-size:0.8em"> draw a string centered on the canvas at y = y-value
482
</span></li>
483
</span></li>
483
<li><span style="color:blue;font-size:0.8em"> can not be set "onclick" or "drag xy" (...)
484
<li><span style="color:blue;font-size:0.8em"> can not be set "onclick" or "drag xy" (...)
484
</span></li>
485
</span></li>
485
<li><span style="color:blue;font-size:0.8em"> unicode supported: centerstring red,5,\u2232
486
<li><span style="color:blue;font-size:0.8em"> unicode supported: centerstring red,5,\u2232
486
</span></li>
487
</span></li>
487
<li><span style="color:blue;font-size:0.8em"> use a command like 'fontfamily italic 24px Ariel' <br />to set fonts on browser that support font change
488
<li><span style="color:blue;font-size:0.8em"> use a command like 'fontfamily italic 24px Ariel' <br />to set fonts on browser that support font change
488
</span></li>
489
</span></li>
489
</ul>
490
</ul>
490
<li><a name='circle' href='#circle top'> circle xc,yc,width (2*r in pixels),color</a><ul>
491
<li><a name='circle' href='#circle top'>  circle xc,yc,width (2*r in pixels),color</a><ul>
491
<li><span style="color:blue;font-size:0.8em"> use command 'fcircle xc,yc,d,color'
492
<li><span style="color:blue;font-size:0.8em"> use command 'fcircle xc,yc,d,color'
492
</span></li>
493
</span></li>
493
<li><span style="color:blue;font-size:0.8em"> alternative: disk for a filled circle
494
<li><span style="color:blue;font-size:0.8em"> alternative: disk for a filled circle
494
</span></li>
495
</span></li>
495
<li><span style="color:blue;font-size:0.8em"> use command 'fillcolor color' to set the fillcolor
496
<li><span style="color:blue;font-size:0.8em"> use command 'fillcolor color' to set the fillcolor
496
</span></li>
497
</span></li>
497
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
498
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
498
</span></li>
499
</span></li>
499
<li><span style="color:blue;font-size:0.8em"> will shrink / expand on zoom out / zoom in
500
<li><span style="color:blue;font-size:0.8em"> will shrink / expand on zoom out / zoom in
500
</span></li>
501
</span></li>
501
</ul>
502
</ul>
502
<li><a name='circles' href='#circles top'> circles color,xc1,yc1,r1,xc2,yc2,r2...xc_n,yc_n,r_n</a><ul>
503
<li><a name='circles' href='#circles top'>  circles color,xc1,yc1,r1,xc2,yc2,r2...xc_n,yc_n,r_n</a><ul>
503
<li><span style="color:blue;font-size:0.8em"> <b>attention</b> r = radius in x-range (!)
504
<li><span style="color:blue;font-size:0.8em"> <b>attention</b> r = radius in x-range (!)
504
</span></li>
505
</span></li>
505
<li><span style="color:blue;font-size:0.8em"> use keyword 'filled' or command 'fcircles' to produce solid circles
506
<li><span style="color:blue;font-size:0.8em"> use keyword 'filled' or command 'fcircles' to produce solid circles
506
</span></li>
507
</span></li>
507
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='disks' href='#disks top'>disks</a></span></li>
508
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='disks' href='#disks top'>disks</a></span></li>
508
<li><span style="color:blue;font-size:0.8em"> use command 'fillcolor color' to set the fillcolor
509
<li><span style="color:blue;font-size:0.8em"> use command 'fillcolor color' to set the fillcolor
509
</span></li>
510
</span></li>
510
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> (individually)
511
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> (individually)
511
</span></li>
512
</span></li>
512
<li><span style="color:blue;font-size:0.8em"> will shrink / expand on zoom out / zoom in
513
<li><span style="color:blue;font-size:0.8em"> will shrink / expand on zoom out / zoom in
513
</span></li>
514
</span></li>
514
</ul>
515
</ul>
515
<li><a name='clearbutton' href='#clearbutton top'> clearbutton value</a><ul>
516
<li><a name='clearbutton' href='#clearbutton top'>  clearbutton value</a><ul>
516
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='delete' href='#delete top'>delete</a></span></li>
517
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='delete' href='#delete top'>delete</a></span></li>
517
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='erase' href='#erase top'>erase</a></span></li>
518
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='erase' href='#erase top'>erase</a></span></li>
518
<li><span style="color:blue;font-size:0.8em"> adds a button to clear the <a href="#userdraw">userdraw</a> canvas with text 'value'
519
<li><span style="color:blue;font-size:0.8em"> adds a button to clear the <a href="#userdraw">userdraw</a> canvas with text 'value'
519
</span></li>
520
</span></li>
520
<li><span style="color:blue;font-size:0.8em"> <b>attention</b> command 'clearbutton' is incompatible with <a href="multidraw">multidraw</a> based drawings<br/>(in 'multidraw' there is always a remove_object_button for every drawprimitive)
521
<li><span style="color:blue;font-size:0.8em"> <b>attention</b> command 'clearbutton' is incompatible with <a href="multidraw">multidraw</a> based drawings<br/>(in 'multidraw' there is always a remove_object_button for every drawprimitive)
521
</span></li>
522
</span></li>
522
<li><span style="color:blue;font-size:0.8em"> normally <a href="#userdraw">userdraw</a> primitives have the option to use middle/right mouse button on<br /> a point of the object to remove this specific object...this clear button will remove all drawings
523
<li><span style="color:blue;font-size:0.8em"> normally <a href="#userdraw">userdraw</a> primitives have the option to use middle/right mouse button on<br /> a point of the object to remove this specific object...this clear button will remove all drawings
523
</span></li>
524
</span></li>
524
<li><span style="color:blue;font-size:0.8em"> uses the tooltip placeholder div element: may not be used with command 'intooltip'
525
<li><span style="color:blue;font-size:0.8em"> uses the tooltip placeholder div element: may not be used with command 'intooltip'
525
</span></li>
526
</span></li>
526
<li><span style="color:blue;font-size:0.8em"> use command <a href="#inputstyle">'inputstyle'</a> to style the button...
527
<li><span style="color:blue;font-size:0.8em"> use command <a href="#inputstyle">'inputstyle'</a> to style the button...
527
</span></li>
528
</span></li>
528
<li><span style="color:blue;font-size:0.8em"> the clearbutton will have id="canvas_scripts[%d]" ; starting with %d=0 for the first script<br />to change the style of all "clearbutton" of all included canvasdraw scripts, use something like<br /><em>if(document.getElementById("clearbutton"+canvas_scripts[0])){<br />&nbsp;var p = 0;<br />&nbsp;while(document.getElementById("clearbutton"+canvas_scripts[p])){<br />&nbsp;&nbsp;document.getElementById("clearbutton"+canvas_scripts[p]).className="some_class_name";<br />&nbsp;&nbsp;&lt;!&minus;&minus; or document.getElementById("clearbutton"+canvas_scripts[p]).setAttribute("style","some_style"); &minus;&minus;&gt;<br />&nbsp;&nbsp;p++;<br />&nbsp;};<br />};<br />
529
<li><span style="color:blue;font-size:0.8em"> the clearbutton will have id="canvas_scripts[%d]" ; starting with %d=0 for the first script<br />to change the style of all "clearbutton" of all included canvasdraw scripts, use something like<br /><em>if(document.getElementById("clearbutton"+canvas_scripts[0])){<br />&nbsp;var p = 0;<br />&nbsp;while(document.getElementById("clearbutton"+canvas_scripts[p])){<br />&nbsp;&nbsp;document.getElementById("clearbutton"+canvas_scripts[p]).className="some_class_name";<br />&nbsp;&nbsp;&lt;!&minus;&minus; or document.getElementById("clearbutton"+canvas_scripts[p]).setAttribute("style","some_style"); &minus;&minus;&gt;<br />&nbsp;&nbsp;p++;<br />&nbsp;};<br />};<br />
529
</span></li>
530
</span></li>
530
</ul>
531
</ul>
531
<li><a name='clock' href='#clock top'> clock x,y,r(px),H,M,S,type hourglass,interactive [ ,H_color,M_color,S_color,background_color,foreground_color ]</a><ul>
532
<li><a name='clock' href='#clock top'>  clock x,y,r(px),H,M,S,type hourglass,interactive [ ,H_color,M_color,S_color,background_color,foreground_color ]</a><ul>
532
<li><span style="color:blue;font-size:0.8em"> use command 'opacity stroke-opacity,fill-opacity' to adjust foreground (stroke) and background (fill) transparency
533
<li><span style="color:blue;font-size:0.8em"> use command 'opacity stroke-opacity,fill-opacity' to adjust foreground (stroke) and background (fill) transparency
533
</span></li>
534
</span></li>
534
<li><span style="color:blue;font-size:0.8em"> type hourglass:<br />type = 0 : only segments<br />type = 1 : only numbers<br />type = 2 : numbers and segments
535
<li><span style="color:blue;font-size:0.8em"> type hourglass:<br />type = 0 : only segments<br />type = 1 : only numbers<br />type = 2 : numbers and segments
535
</span></li>
536
</span></li>
536
<li><span style="color:blue;font-size:0.8em"> colors are optional: if not defined, default values will be used<br />default colours: clock 0,0,60,4,35,45,1,2<br />custom colours: clock 0,0,60,4,35,45,1,2,,,,yellow,red<br />custom colours: clock 0,0,60,4,35,45,1,2,white,green,blue,black,yellow
537
<li><span style="color:blue;font-size:0.8em"> colors are optional: if not defined, default values will be used<br />default colours: clock 0,0,60,4,35,45,1,2<br />custom colours: clock 0,0,60,4,35,45,1,2,,,,yellow,red<br />custom colours: clock 0,0,60,4,35,45,1,2,white,green,blue,black,yellow
537
</span></li>
538
</span></li>
538
<li><span style="color:blue;font-size:0.8em"> if you don't want a seconds hand (or minutes...), just make it invisible by using the background color of the hourglass...
539
<li><span style="color:blue;font-size:0.8em"> if you don't want a seconds hand (or minutes...), just make it invisible by using the background color of the hourglass...
539
</span></li>
540
</span></li>
540
<li><span style="color:blue;font-size:0.8em"> interactive <ul><li>0 : not interactive, just clock(s)</li><li>1 : function read_canvas() will read all active clocks in H:M:S format<br />The active clock(s) can be adjusted by pupils</li><li>2 : function read_canvas() will return the clicked clock <br />(like multiplechoice; first clock in script in nr. 0 )</li><li>3: no prefab buttons...create your own buttons (or other means) to make the clock(s) adjustable by javascript function set_clock(num,type,diff)<br />wherein: num = clock id (starts with 0) ; type = 1 (hours) ; type = 2 (minutes) ; type = 3 (seconds) <br />and diff = the increment of 'type' (positive or negative) </li></ul>
541
<li><span style="color:blue;font-size:0.8em"> interactive <ul><li>0 : not interactive, just clock(s)</li><li>1 : function read_canvas() will read all active clocks in H:M:S format<br />The active clock(s) can be adjusted by pupils</li><li>2 : function read_canvas() will return the clicked clock <br />(like multiplechoice; first clock in script in nr. 0 )</li><li>3: no prefab buttons...create your own buttons (or other means) to make the clock(s) adjustable by javascript function set_clock(num,type,diff)<br />wherein: num = clock id (starts with 0) ; type = 1 (hours) ; type = 2 (minutes) ; type = 3 (seconds) <br />and diff = the increment of 'type' (positive or negative) </li></ul>
541
</span></li>
542
</span></li>
542
<li><span style="color:blue;font-size:0.8em"> canvasdraw will not check validity of colornames...the javascript console is your best friend
543
<li><span style="color:blue;font-size:0.8em"> canvasdraw will not check validity of colornames...the javascript console is your best friend
543
</span></li>
544
</span></li>
544
<li><span style="color:blue;font-size:0.8em"> no combinations with other reply_types allowed, for now
545
<li><span style="color:blue;font-size:0.8em"> no combinations with other reply_types allowed, for now
545
</span></li>
546
</span></li>
546
<li><span style="color:blue;font-size:0.8em"> if interactive is set to '1', 6 buttons per clock will be displayed for adjusting a clock (H+ M+ S+ H- M- S-)<br /> set_clock(clock_id,type,incr) <br />first clock has clock_id=0 ; type : H=1,M=2,S=3 ; incr : increment integer
547
<li><span style="color:blue;font-size:0.8em"> if interactive is set to '1', 6 buttons per clock will be displayed for adjusting a clock (H+ M+ S+ H- M- S-)<br /> set_clock(clock_id,type,incr) <br />first clock has clock_id=0 ; type : H=1,M=2,S=3 ; incr : increment integer
547
</span></li>
548
</span></li>
548
<li><span style="color:blue;font-size:0.8em"> note: if you need multiple -interactive- clocks on a webpage, use multiple 'clock' commands in a single script !<br />and <i>not multiple canvas scripts</i> in a single page
549
<li><span style="color:blue;font-size:0.8em"> note: if you need multiple -interactive- clocks on a webpage, use multiple 'clock' commands in a single script !<br />and <i>not multiple canvas scripts</i> in a single page
549
</span></li>
550
</span></li>
550
<li><span style="color:blue;font-size:0.8em"> note: clocks will not zoom or pan, when using command <a href='#zoom'>'zoom'</a>
551
<li><span style="color:blue;font-size:0.8em"> note: clocks will not zoom or pan, when using command <a href='#zoom'>'zoom'</a>
551
</span></li>
552
</span></li>
552
</ul>
553
</ul>
553
<li><a name='colorpalette' href='#colorpalette top'> colorpalette color_name_1,color_name_2,...,color_name_8</a><ul>
554
<li><a name='colorpalette' href='#colorpalette top'>  colorpalette color_name_1,color_name_2,...,color_name_8</a><ul>
554
<li><span style="color:blue;font-size:0.8em"> opacity will be the same for all colors and is set by command <a href="#opacity">opacity [0-255],[0-255]</a>
555
<li><span style="color:blue;font-size:0.8em"> opacity will be the same for all colors and is set by command <a href="#opacity">opacity [0-255],[0-255]</a>
555
</span></li>
556
</span></li>
556
<li><span style="color:blue;font-size:0.8em"> can be used with command <a href='#userdraw'>'userdraw clickfill,color'</a> when more than one fillcolor is wanted.<br />in that case use for example <a href='#replyformat'>replyformat 10</a> ... reply=x1:y1:color1,x2:y2:color2...<br />the pupil can choose from the given colors by clicking small coloured buttons.<br /> the click coordinates and corresponding fillcolor will be stored in read_canvas()...when using the appropriate replyformat.<br />the first color of the palette is color=0
557
<li><span style="color:blue;font-size:0.8em"> can be used with command <a href='#userdraw'>'userdraw clickfill,color'</a> when more than one fillcolor is wanted.<br />in that case use for example <a href='#replyformat'>replyformat 10</a> ... reply=x1:y1:color1,x2:y2:color2...<br />the pupil can choose from the given colors by clicking small coloured buttons.<br /> the click coordinates and corresponding fillcolor will be stored in read_canvas()...when using the appropriate replyformat.<br />the first color of the palette is color=0
557
</span></li>
558
</span></li>
558
<li><span style="color:blue;font-size:0.8em"> make sure to include the 'remove button' by using command <a href='#clearbutton'>clearbutton some_text</a>
559
<li><span style="color:blue;font-size:0.8em"> make sure to include the 'remove button' by using command <a href='#clearbutton'>clearbutton some_text</a>
559
</span></li>
560
</span></li>
560
</ul>
561
</ul>
561
<li><a name='copy' href='#copy top'> copy x,y,x1,y1,x2,y2,[filename URL]</a><ul>
562
<li><a name='copy' href='#copy top'>  copy x,y,x1,y1,x2,y2,[filename URL]</a><ul>
562
<li><span style="color:blue;font-size:0.8em"> The image may be "bitmap" or "SVG"
563
<li><span style="color:blue;font-size:0.8em"> The image may be "bitmap" or "SVG"
563
</span></li>
564
</span></li>
564
<li><span style="color:blue;font-size:0.8em"> Insert the region from (x1,y1) to (x2,y2) (in pixels) of [filename] to (x,y) in x/y-range
565
<li><span style="color:blue;font-size:0.8em"> Insert the region from (x1,y1) to (x2,y2) (in pixels) of [filename] to (x,y) in x/y-range
565
</span></li>
566
</span></li>
566
<li><span style="color:blue;font-size:0.8em"> If x1=y1=x2=y2=-1, the whole [filename URL] is copied.
567
<li><span style="color:blue;font-size:0.8em"> If x1=y1=x2=y2=-1, the whole [filename URL] is copied.
Line 568... Line 569...
568
<li><span style="color:blue;font-size:0.8em"> [filename] is the URL of the image
569
<li><span style="color:blue;font-size:0.8em"> [filename] is the URL of the image
569
</span></li>
570
</span></li>
570
<li><span style="color:blue;font-size:0.8em"> URL is normal URL of network reachable image file location<br />(eg special url for 'classexo' not -yet- implemented)
571
<li><span style="color:blue;font-size:0.8em"> URL is normal URL of network reachable image file location<br />(eg special url for 'classexo' not -yet- implemented)
571
</span></li>
572
</span></li>
572
<li><span style="color:blue;font-size:0.8em"> if command <a href="#drag">'drag x/y/xy'</a> is set before command 'copy', the images will be draggable<br />javascript function read_canvas(); will return the x/y coordinate data in xrange/yrange of all -including non draggable- images<br />the command drag is only valid for the next image<br />draggable / non-draggable images may be mixed<br />may be used together with preceding keywords 'snaptogrid','xsnaptogrid','ysnaptogrid' or 'snaptopoints x1,y1,x2,y2...'
573
<li><span style="color:blue;font-size:0.8em"> if command <a href="#drag">'drag x/y/xy'</a> is set before command 'copy', the images will be draggable<br />javascript function read_canvas(); will return the x/y coordinate data in xrange/yrange of all -including non draggable- images<br />the command drag is only valid for the next image<br />draggable / non-draggable images may be mixed<br />may be used together with preceding keywords 'snaptogrid','xsnaptogrid','ysnaptogrid' or 'snaptopoints x1,y1,x2,y2...'
573
</span></li>
574
</span></li>
574
<li><span style="color:blue;font-size:0.8em"> if keyword <a href="#onclick">'onclick'</a> is set before command 'copy' the image(s) is clickable (marked with a green rectangle around the image)<br />use 'read_dragdrop' to get the number of the clicked image(s)<br />use command 'clearbutton some_text' to reset the reply/click array.<br />example: 4 images; student clicked on image 2 and 3 : reply = 0,1,1,0<br />after clicking the clear button: reply = 0,0,0,0<br />May be mixed with commands 'drag x|y|xy' (use javascript read_canvas to get the new coordinates
575
<li><span style="color:blue;font-size:0.8em"> if keyword <a href="#onclick">'onclick'</a> is set before command 'copy' the image(s) is clickable (marked with a green rectangle around the image)<br />use 'read_dragdrop' to get the number of the clicked image(s)<br />use command 'clearbutton some_text' to reset the reply/click array.<br />example: 4 images; student clicked on image 2 and 3 : reply = 0,1,1,0<br />after clicking the clear button: reply = 0,0,0,0<br />May be mixed with commands 'drag x|y|xy' (use javascript read_canvas to get the new coordinates
575
</span></li>
576
</span></li>
576
<li><span style="color:blue;font-size:0.8em"> 'onclick' for external images may be mixed with canvas generated stuff (like lines,curves etc)
577
<li><span style="color:blue;font-size:0.8em"> 'onclick' for external images may be mixed with canvas generated stuff (like lines,curves etc)
577
</span></li>
578
</span></li>
578
<li><span style="color:blue;font-size:0.8em"> you may draw / userdraw / drag other stuff on top of an "imported" image
579
<li><span style="color:blue;font-size:0.8em"> you may draw / userdraw / drag other stuff on top of an "imported" image
579
</span></li>
580
</span></li>
580
</ul>
581
</ul>
581
<li><a name='copyresized' href='#copyresized top'> copyresized x1,y2,x2,y2,dx1,dy1,dx2,dy2,image_file_url</a><ul>
582
<li><a name='copyresized' href='#copyresized top'>  copyresized x1,y2,x2,y2,dx1,dy1,dx2,dy2,image_file_url</a><ul>
582
<li><span style="color:blue;font-size:0.8em"> The image may be any "bitmap" or "SVG"
583
<li><span style="color:blue;font-size:0.8em"> The image may be any "bitmap" or "SVG"
583
</span></li>
584
</span></li>
584
<li><span style="color:blue;font-size:0.8em"> Insert the region from (x1,y1) to (x2,y2) (in pixels) of [ filename], <br />possibly resized,<br />to the region of (dx1,dy1) to (dx2,dy2) in x/y-range
585
<li><span style="color:blue;font-size:0.8em"> Insert the region from (x1,y1) to (x2,y2) (in pixels) of [ filename], <br />possibly resized,<br />to the region of (dx1,dy1) to (dx2,dy2) in x/y-range
585
</span></li>
586
</span></li>
586
<li><span style="color:blue;font-size:0.8em"> (dx1:dy1) must be left top corner; (dx2 :dy2) must be right bottom corner of inserted image
587
<li><span style="color:blue;font-size:0.8em"> (dx1:dy1) must be left top corner; (dx2 :dy2) must be right bottom corner of inserted image
587
</span></li>
588
</span></li>
588
<li><span style="color:blue;font-size:0.8em"> If x1=y1=x2=y2=-1, the whole [filename / URL ] is copied and resized.
589
<li><span style="color:blue;font-size:0.8em"> If x1=y1=x2=y2=-1, the whole [filename / URL ] is copied and resized.
589
</span></li>
590
</span></li>
590
<li><span style="color:blue;font-size:0.8em"> URL is normal URL of network reachable image file location<br />(as seen from public_html-root or network reachable 'http://some_server/my_images/test.gif'<br />(eg no special wims paths are searched !!)
591
<li><span style="color:blue;font-size:0.8em"> URL is normal URL of network reachable image file location<br />(as seen from public_html-root or network reachable 'http://some_server/my_images/test.gif'<br />(eg no special wims paths are searched !!)
591
</span></li>
592
</span></li>
592
<li><span style="color:blue;font-size:0.8em"> if command <a href="#drag">'drag x/y/xy'</a> is set before command 'copy', the images will be draggable<br />javascript function read_canvas(); will return the x/y coordinate data in xrange/yrange of all -including non draggable- images<br />the command drag is only valid for the next image<br />draggable / non-draggable images may be mixed<br />may be used together with preceding keywords 'snaptogrid','xsnaptogrid','ysnaptogrid' or 'snaptopoints x1,y1,x2,y2...'
593
<li><span style="color:blue;font-size:0.8em"> if command <a href="#drag">'drag x/y/xy'</a> is set before command 'copy', the images will be draggable<br />javascript function read_canvas(); will return the x/y coordinate data in xrange/yrange of all -including non draggable- images<br />the command drag is only valid for the next image<br />draggable / non-draggable images may be mixed<br />may be used together with preceding keywords 'snaptogrid','xsnaptogrid','ysnaptogrid' or 'snaptopoints x1,y1,x2,y2...'
593
</span></li>
594
</span></li>
594
<li><span style="color:blue;font-size:0.8em"> if keyword <a href="#onclick">'onclick'</a> is set before command 'copy' the image(s) is clickable (marked with a green rectangle around the image)<br />use 'read_dragdrop' to get the number of the clicked image(s)<br />use command 'clearbutton some_text' to reset the reply/click array.<br />example: 4 images; student clicked on image 2 and 3 : reply = 0,1,1,0<br />after clicking the clear button: reply = 0,0,0,0<br />May be mixed with commands 'drag x|y|xy' (use javascript read_canvas to get the new coordinates
595
<li><span style="color:blue;font-size:0.8em"> if keyword <a href="#onclick">'onclick'</a> is set before command 'copy' the image(s) is clickable (marked with a green rectangle around the image)<br />use 'read_dragdrop' to get the number of the clicked image(s)<br />use command 'clearbutton some_text' to reset the reply/click array.<br />example: 4 images; student clicked on image 2 and 3 : reply = 0,1,1,0<br />after clicking the clear button: reply = 0,0,0,0<br />May be mixed with commands 'drag x|y|xy' (use javascript read_canvas to get the new coordinates
Line 596... Line 597...
596
<li><span style="color:blue;font-size:0.8em"> 'onclick' for external images may be mixed with canvas generated stuff (like lines,curves etc)
597
<li><span style="color:blue;font-size:0.8em"> 'onclick' for external images may be mixed with canvas generated stuff (like lines,curves etc)
597
</span></li>
598
</span></li>
598
<li><span style="color:blue;font-size:0.8em"> you may draw / userdraw / drag stuff on top of an "imported" image
599
<li><span style="color:blue;font-size:0.8em"> you may draw / userdraw / drag stuff on top of an "imported" image
599
</span></li>
600
</span></li>
600
</ul>
601
</ul>
601
<li><a name='crosshair' href='#crosshair top'> crosshair x,y,color</a><ul>
602
<li><a name='crosshair' href='#crosshair top'>  crosshair x,y,color</a><ul>
602
<li><span style="color:blue;font-size:0.8em"> draw a single crosshair point at (x;y) in color 'color'
603
<li><span style="color:blue;font-size:0.8em"> draw a single crosshair point at (x;y) in color 'color'
603
</span></li>
604
</span></li>
604
<li><span style="color:blue;font-size:0.8em"> use command 'crosshairsize int' and / or 'linewidth int' to adust
605
<li><span style="color:blue;font-size:0.8em"> use command 'crosshairsize int' and / or 'linewidth int' to adust
605
</span></li>
606
</span></li>
606
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
607
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
607
</span></li>
608
</span></li>
608
</ul>
609
</ul>
609
<li><a name='crosshairs' href='#crosshairs top'> crosshairs color,x1,y1,x2,y2,...,x_n,y_n</a><ul>
610
<li><a name='crosshairs' href='#crosshairs top'>  crosshairs color,x1,y1,x2,y2,...,x_n,y_n</a><ul>
610
<li><span style="color:blue;font-size:0.8em"> draw multiple crosshair points at given coordinates in color 'color'
611
<li><span style="color:blue;font-size:0.8em"> draw multiple crosshair points at given coordinates in color 'color'
611
</span></li>
612
</span></li>
612
<li><span style="color:blue;font-size:0.8em"> use command 'crosshairsize int' and / or 'linewidth int' to adust
613
<li><span style="color:blue;font-size:0.8em"> use command 'crosshairsize int' and / or 'linewidth int' to adust
613
</span></li>
614
</span></li>
614
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
615
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
615
</span></li>
616
</span></li>
616
</ul>
617
</ul>
617
<li><a name='crosshairsize' href='#crosshairsize top'> crosshairsize int</a><ul>
618
<li><a name='crosshairsize' href='#crosshairsize top'>  crosshairsize int</a><ul>
618
<li><span style="color:blue;font-size:0.8em"> default 8 (px)
619
<li><span style="color:blue;font-size:0.8em"> default 8 (px)
619
</span></li>
620
</span></li>
620
</ul>
621
</ul>
621
<li><a name='cursor' href='#cursor top'> cursor 'some CSS cursor_style'</a><ul>
622
<li><a name='cursor' href='#cursor top'>  cursor 'some CSS cursor_style'</a><ul>
622
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='pointer' href='#pointer top'>pointer</a></span></li>
623
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='pointer' href='#pointer top'>pointer</a></span></li>
623
<li><span style="color:blue;font-size:0.8em"> style can be any valid CSS property value, like crosshair,grabbing,move etc
624
<li><span style="color:blue;font-size:0.8em"> style can be any valid CSS property value, like crosshair,grabbing,move etc
624
</span></li>
625
</span></li>
625
<li><span style="color:blue;font-size:0.8em"> wims will not check the validity of your cursor declaration
626
<li><span style="color:blue;font-size:0.8em"> wims will not check the validity of your cursor declaration
626
</span></li>
627
</span></li>
627
</ul>
628
</ul>
628
<li><a name='curve' href='#curve top'> curve color,formula(x)</a><ul>
629
<li><a name='curve' href='#curve top'>  curve color,formula(x)</a><ul>
629
<li><span style="color:blue;font-size:0.8em"> alernative : plot color,formula(x)
630
<li><span style="color:blue;font-size:0.8em"> alernative : plot color,formula(x)
630
</span></li>
631
</span></li>
631
<li><span style="color:blue;font-size:0.8em"> use command <a href="#trange">trange</a> in parametric functions before command curve / plot (trange -pi,pi)<br />curve color,formula1(t),formula2(t)
632
<li><span style="color:blue;font-size:0.8em"> use command <a href="#trange">trange</a> in parametric functions before command curve / plot (trange -pi,pi)<br />curve color,formula1(t),formula2(t)
632
</span></li>
633
</span></li>
633
<li><span style="color:blue;font-size:0.8em"> use command <a href="#precision">"precision" </a>to ncrease the number of digits of the plotted points
634
<li><span style="color:blue;font-size:0.8em"> use command <a href="#precision">"precision" </a>to ncrease the number of digits of the plotted points
Line 637... Line 638...
637
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
638
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
638
</span></li>
639
</span></li>
639
<li><span style="color:blue;font-size:0.8em"> if you need a plot beyond xrange / yrange, use <a href="#jsplot">"jsplot"'</a><br />(command "curve" will only calculate points within the xrange)
640
<li><span style="color:blue;font-size:0.8em"> if you need a plot beyond xrange / yrange, use <a href="#jsplot">"jsplot"'</a><br />(command "curve" will only calculate points within the xrange)
640
</span></li>
641
</span></li>
641
</ul>
642
</ul>
642
<li><a name='dashed' href='#dashed top'> dashed</a><ul>
643
<li><a name='dashed' href='#dashed top'>  dashed</a><ul>
643
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
644
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
644
</span></li>
645
</span></li>
645
<li><span style="color:blue;font-size:0.8em"> next object will be drawn with a dashed line
646
<li><span style="color:blue;font-size:0.8em"> next object will be drawn with a dashed line
646
</span></li>
647
</span></li>
647
<li><span style="color:blue;font-size:0.8em"> change dashing scheme by using command <a href="#dashtype">dashtype</a>
648
<li><span style="color:blue;font-size:0.8em"> change dashing scheme by using command <a href="#dashtype">dashtype</a>
648
</span></li>
649
</span></li>
649
</ul>
650
</ul>
650
<li><a name='dashtype' href='#dashtype top'> dashtype line_width_px,space_width_px</a><ul>
651
<li><a name='dashtype' href='#dashtype top'>  dashtype line_width_px,space_width_px</a><ul>
651
<li><span style="color:blue;font-size:0.8em"> every indiviual object may have its own dashtype, if needed...
652
<li><span style="color:blue;font-size:0.8em"> every indiviual object may have its own dashtype, if needed...
652
</span></li>
653
</span></li>
653
<li><span style="color:blue;font-size:0.8em"> When keyword <a href='#dashed'>dashed</a> is set, the objects will be drawn with this dashtype
654
<li><span style="color:blue;font-size:0.8em"> When keyword <a href='#dashed'>dashed</a> is set, the objects will be drawn with this dashtype
654
</span></li>
655
</span></li>
655
<li><span style="color:blue;font-size:0.8em"> default value "dashtype 2,2" e.g. 2px line and 2px space
656
<li><span style="color:blue;font-size:0.8em"> default value "dashtype 2,2" e.g. 2px line and 2px space
656
</span></li>
657
</span></li>
657
<li><span style="color:blue;font-size:0.8em"> html5 canvas specification supports more arguments (dashing schemes) ... but not all modern browsers are yet capable
658
<li><span style="color:blue;font-size:0.8em"> html5 canvas specification supports more arguments (dashing schemes) ... but not all modern browsers are yet capable
658
</span></li>
659
</span></li>
659
</ul>
660
</ul>
660
<li><a name='diamondfill' href='#diamondfill top'> diamondfill x0,y0,dx,dy,color</a><ul>
661
<li><a name='diamondfill' href='#diamondfill top'>  diamondfill x0,y0,dx,dy,color</a><ul>
661
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
662
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
662
</span></li>
663
</span></li>
663
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
664
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
664
</span></li>
665
</span></li>
665
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw diamondfill,color</a>
666
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw diamondfill,color</a>
666
</span></li>
667
</span></li>
667
</ul>
668
</ul>
668
<li><a name='dotfill' href='#dotfill top'> dotfill x0,y0,dx,dy,color</a><ul>
669
<li><a name='dotfill' href='#dotfill top'>  dotfill x0,y0,dx,dy,color</a><ul>
669
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
670
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
670
</span></li>
671
</span></li>
671
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
672
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
672
</span></li>
673
</span></li>
673
<li><span style="color:blue;font-size:0.8em"> radius of dots is linewidth
674
<li><span style="color:blue;font-size:0.8em"> radius of dots is linewidth
674
</span></li>
675
</span></li>
675
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw dotfill,color</a>
676
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw dotfill,color</a>
676
</span></li>
677
</span></li>
677
</ul>
678
</ul>
678
<li><a name='drag' href='#drag top'> drag [x][y][xy]</a><ul>
679
<li><a name='drag' href='#drag top'>  drag [x][y][xy]</a><ul>
679
<li><span style="color:blue;font-size:0.8em"> the next object will be draggable in x / y / xy direction
680
<li><span style="color:blue;font-size:0.8em"> the next object will be draggable in x / y / xy direction
680
</span></li>
681
</span></li>
681
<li><span style="color:blue;font-size:0.8em"> the displacement can be read by 'javascript:read_dragdrop();'
682
<li><span style="color:blue;font-size:0.8em"> the displacement can be read by 'javascript:read_dragdrop();'
682
</span></li>
683
</span></li>
683
<li><span style="color:blue;font-size:0.8em"> the precision (default 2 decimals) in the student reply may be set with command <a href="#precision">'precision'.</a><br />Use this 'precision' command before this command 'drag x|y|xy' !
684
<li><span style="color:blue;font-size:0.8em"> the precision (default 2 decimals) in the student reply may be set with command <a href="#precision">'precision'.</a><br />Use this 'precision' command before this command 'drag x|y|xy' !
Line 693... Line 694...
693
<li><span style="color:blue;font-size:0.8em"> use keyword 'snaptogrid' , 'xsnaptogrid' , 'ysnaptogrid' or command 'snaptopoints x1,y1,x2,y2,...' to switch from free to discrete movement
694
<li><span style="color:blue;font-size:0.8em"> use keyword 'snaptogrid' , 'xsnaptogrid' , 'ysnaptogrid' or command 'snaptopoints x1,y1,x2,y2,...' to switch from free to discrete movement
694
</span></li>
695
</span></li>
695
<li><span style="color:blue;font-size:0.8em"> in case of external images (commands copy / copyresized) the external image can be set draggable ; always xy. <br />The function javascript;read_canvas() will return the xy-coordinates of all images.
696
<li><span style="color:blue;font-size:0.8em"> in case of external images (commands copy / copyresized) the external image can be set draggable ; always xy. <br />The function javascript;read_canvas() will return the xy-coordinates of all images.
696
</span></li>
697
</span></li>
697
<li><span style="color:blue;font-size:0.8em"> note: in case an object is dragged , zooming or panning will cause the coordinates to be reset to the original position :( <br />e.g. dragging / panning will get lost. (array with 'drag data' is erased)<br />This is a design flaw and not a feature !!
698
<li><span style="color:blue;font-size:0.8em"> note: in case an object is dragged , zooming or panning will cause the coordinates to be reset to the original position :( <br />e.g. dragging / panning will get lost. (array with 'drag data' is erased)<br />This is a design flaw and not a feature !!
698
</span></li>
699
</span></li>
699
</ul>
700
</ul>
700
<li><a name='ellipse' href='#ellipse top'> ellipse xc,yc,radius_x,radius_y,color</a><ul>
701
<li><a name='ellipse' href='#ellipse top'>  ellipse xc,yc,radius_x,radius_y,color</a><ul>
701
<li><span style="color:blue;font-size:0.8em"> a ellipse with center xc/yc in x/y-range
702
<li><span style="color:blue;font-size:0.8em"> a ellipse with center xc/yc in x/y-range
702
</span></li>
703
</span></li>
703
<li><span style="color:blue;font-size:0.8em"> radius_x and radius_y are in pixels
704
<li><span style="color:blue;font-size:0.8em"> radius_x and radius_y are in pixels
704
</span></li>
705
</span></li>
705
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
706
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
706
</span></li>
707
</span></li>
707
<li><span style="color:blue;font-size:0.8em"> will shrink / expand on zoom out / zoom in
708
<li><span style="color:blue;font-size:0.8em"> will shrink / expand on zoom out / zoom in
708
</span></li>
709
</span></li>
709
</ul>
710
</ul>
710
<li><a name='fillall' href='#fillall top'> fillall color,x1,y1,x2,y2...x_n,y_n</a><ul>
711
<li><a name='fillall' href='#fillall top'>  fillall color,x1,y1,x2,y2...x_n,y_n</a><ul>
711
<li><span style="color:blue;font-size:0.8em"> fill all region containing points (x1:y1),(x2:y2)...(x_n:y_n) with color 'color'
712
<li><span style="color:blue;font-size:0.8em"> fill all region containing points (x1:y1),(x2:y2)...(x_n:y_n) with color 'color'
712
</span></li>
713
</span></li>
713
<li><span style="color:blue;font-size:0.8em"> any other colors (objects) in the <a href="#canvastype>canvastype</a> will act as border to the bucket fill
714
<li><span style="color:blue;font-size:0.8em"> any other colors (objects) in the <a href="#canvastype>canvastype</a> will act as border to the bucket fill
714
</span></li>
715
</span></li>
715
<li><span style="color:blue;font-size:0.8em"> use this command after all boundary objects are declared.
716
<li><span style="color:blue;font-size:0.8em"> use this command after all boundary objects are declared.
716
</span></li>
717
</span></li>
717
<li><span style="color:blue;font-size:0.8em"> Use command 'userdraw clickfill,color' for user click driven flood fill.
718
<li><span style="color:blue;font-size:0.8em"> Use command 'userdraw clickfill,color' for user click driven flood fill.
718
</span></li>
719
</span></li>
719
<li><span style="color:blue;font-size:0.8em"> use command <a href="#canvastype">canvastype </a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)
720
<li><span style="color:blue;font-size:0.8em"> use command <a href="#canvastype">canvastype </a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)
720
</span></li>
721
</span></li>
721
<li><span style="color:blue;font-size:0.8em"> note: the fill-family of commands are very (client) cpu intensive operations!<br />filling is done pixel by pixel<br/>e.g. image size of 400x400 uses 160000 pixels : each pixel contains 4 data (R,G,B,Opacity) = 640000 data.<br />on every data a few operations / comparisons are done...<br />So have pity on your students CPU..
722
<li><span style="color:blue;font-size:0.8em"> note: the fill-family of commands are very (client) cpu intensive operations!<br />filling is done pixel by pixel<br/>e.g. image size of 400x400 uses 160000 pixels : each pixel contains 4 data (R,G,B,Opacity) = 640000 data.<br />on every data a few operations / comparisons are done...<br />So have pity on your students CPU..
722
</span></li>
723
</span></li>
723
</ul>
724
</ul>
724
<li><a name='filled' href='#filled top'> filled</a><ul>
725
<li><a name='filled' href='#filled top'>  filled</a><ul>
725
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
726
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
726
</span></li>
727
</span></li>
727
<li><span style="color:blue;font-size:0.8em"> the next 'fillable' object (only the next !) will be filled
728
<li><span style="color:blue;font-size:0.8em"> the next 'fillable' object (only the next !) will be filled
728
</span></li>
729
</span></li>
729
<li><span style="color:blue;font-size:0.8em"> use command <a href="fillcolor">"fillcolor color"</a> to set fillcolor
730
<li><span style="color:blue;font-size:0.8em"> use command <a href="fillcolor">"fillcolor color"</a> to set fillcolor
730
</span></li>
731
</span></li>
731
<li><span style="color:blue;font-size:0.8em"> use <a href="#fillpattern">fillpattern</a> for non-solid color filling.
732
<li><span style="color:blue;font-size:0.8em"> use <a href="#fillpattern">fillpattern</a> for non-solid color filling.
732
</span></li>
733
</span></li>
733
<li><span style="color:blue;font-size:0.8em"> use command "opacity 0-255,0-255" to set stroke and fill-opacity
734
<li><span style="color:blue;font-size:0.8em"> use command "opacity 0-255,0-255" to set stroke and fill-opacity
734
</span></li>
735
</span></li>
735
<li><span style="color:blue;font-size:0.8em"> use command "fill x,y,color" or "floodfill x,y,color" to fill the space around (x;y) with color <br />pixel operation implemented in javascript: use with care !
736
<li><span style="color:blue;font-size:0.8em"> use command "fill x,y,color" or "floodfill x,y,color" to fill the space around (x;y) with color <br />pixel operation implemented in javascript: use with care !
736
</span></li>
737
</span></li>
737
</ul>
738
</ul>
738
<li><a name='fillcolor' href='#fillcolor top'> fillcolor colorname or #hex</a><ul>
739
<li><a name='fillcolor' href='#fillcolor top'>  fillcolor colorname or #hex</a><ul>
739
<li><span style="color:blue;font-size:0.8em"> set the color : mainly used for command 'userdraw obj,stroke_color'
740
<li><span style="color:blue;font-size:0.8em"> set the color : mainly used for command 'userdraw obj,stroke_color'
740
</span></li>
741
</span></li>
741
<li><span style="color:blue;font-size:0.8em"> all fillable massive objects will have a fillcolor == strokecolor (just to be compatible with flydraw...)
742
<li><span style="color:blue;font-size:0.8em"> all fillable massive objects will have a fillcolor == strokecolor (just to be compatible with flydraw...)
742
</span></li>
743
</span></li>
743
<li><span style="color:blue;font-size:0.8em"> see <a href="#fillpattern">fillpattern</a> for non-solid color filling.
744
<li><span style="color:blue;font-size:0.8em"> see <a href="#fillpattern">fillpattern</a> for non-solid color filling.
744
</span></li>
745
</span></li>
745
</ul>
746
</ul>
746
<li><a name='fillpattern' href='#fillpattern top'> fillpattern grid | hatch | diamond | dot | image-url</a><ul>
747
<li><a name='fillpattern' href='#fillpattern top'>  fillpattern grid | hatch | diamond | dot | image-url</a><ul>
747
<li><span style="color:blue;font-size:0.8em"> use a pattern as fillstyle
748
<li><span style="color:blue;font-size:0.8em"> use a pattern as fillstyle
748
</span></li>
749
</span></li>
749
<li><span style="color:blue;font-size:0.8em"> suitable for all fillable object including the <a href="#userdraw">'userdraw objects' family</a>
750
<li><span style="color:blue;font-size:0.8em"> suitable for all fillable object including the <a href="#userdraw">'userdraw objects' family</a>
750
</span></li>
751
</span></li>
751
<li><span style="color:blue;font-size:0.8em"> noy -yet- implemented in the <a href="#multidraw">multidraw objects family</a>...(will probably be too complex)
752
<li><span style="color:blue;font-size:0.8em"> noy -yet- implemented in the <a href="#multidraw">multidraw objects family</a>...(will probably be too complex)
752
</span></li>
753
</span></li>
753
<li><span style="color:blue;font-size:0.8em"> the fillcolor is set by the object command, for example:<br />size 370,370<br />xrange -5,5<br />yrange -5,5<br />opacity 165,150<br />fillpattern grid<br />fcircle -6,3,160,blue<br />fillpattern dot<br />fcircle -3,-3,160,red<br />fillpattern hatch<br />fcircle 0,3,160,green<br />filpattern diamond<br />fcircle 3,-3,160,cyan<br />userdraw dotfill,blue<br />zoom red<br />
754
<li><span style="color:blue;font-size:0.8em"> the fillcolor is set by the object command, for example:<br />size 370,370<br />xrange -5,5<br />yrange -5,5<br />opacity 165,150<br />fillpattern grid<br />fcircle -6,3,160,blue<br />fillpattern dot<br />fcircle -3,-3,160,red<br />fillpattern hatch<br />fcircle 0,3,160,green<br />filpattern diamond<br />fcircle 3,-3,160,cyan<br />userdraw dotfill,blue<br />zoom red<br />
754
</span></li>
755
</span></li>
755
<li><span style="color:blue;font-size:0.8em"> the pattern dimensions are hardcoded (linewidth ,radius,dx,dy are fixed)
756
<li><span style="color:blue;font-size:0.8em"> the pattern dimensions are hardcoded (linewidth ,radius,dx,dy are fixed)
756
</span></li>
757
</span></li>
757
<li><span style="color:blue;font-size:0.8em"> the pattern color is set by command <a href='#fillcolor'>fillcolor</a> and <a href='#opacity'>opacity</a>
758
<li><span style="color:blue;font-size:0.8em"> the pattern color is set by command <a href='#fillcolor'>fillcolor</a> and <a href='#opacity'>opacity</a>
758
</span></li>
759
</span></li>
759
<li><span style="color:blue;font-size:0.8em"> see <a href="#fillcolor">fillcolor</a> for solid color filling.
760
<li><span style="color:blue;font-size:0.8em"> see <a href="#fillcolor">fillcolor</a> for solid color filling.
760
</span></li>
761
</span></li>
761
<li><span style="color:blue;font-size:0.8em"> when using an image-url , make sure it contains an '/' in the filename...'fillpattern $$module_dir/gifs/test.jpg' will fill the next fillable object with this image.|<br />the argument to html5 canvas routine 'createPattern(img,argument)' is set to 'repeat'<br />e.g. if the image is smaller then the canvas, multiple copies will be used to fill the area ( e.g. ctx.fillStyle() = pattern)<br />for example:<br />size 150,150<br />xrange -5,5<br />yrange -5,5<br />drag xy<br />fillpattern gifs/en.gif<br />fcircle 0,0,100,red<br />fillpattern gifs/nl.gif<br />drag xy<br />fcircle -3,2,100,green<br />fillpattern gifs/cn.gif<br />drag xy<br />fcircle 3,2,100,green<br />
762
<li><span style="color:blue;font-size:0.8em"> when using an image-url , make sure it contains an '/' in the filename...'fillpattern $$module_dir/gifs/test.jpg' will fill the next fillable object with this image.|<br />the argument to html5 canvas routine 'createPattern(img,argument)' is set to 'repeat'<br />e.g. if the image is smaller then the canvas, multiple copies will be used to fill the area ( e.g. ctx.fillStyle() = pattern)<br />for example:<br />size 150,150<br />xrange -5,5<br />yrange -5,5<br />drag xy<br />fillpattern gifs/en.gif<br />fcircle 0,0,100,red<br />fillpattern gifs/nl.gif<br />drag xy<br />fcircle -3,2,100,green<br />fillpattern gifs/cn.gif<br />drag xy<br />fcircle 3,2,100,green<br />
762
</span></li>
763
</span></li>
763
<li><span style="color:blue;font-size:0.8em"> fillpattern is also active for <a href="#userdraw">userdraw object,color"</a>...<br />the userdraw family a has also 'clickfill type' (e.g. an object gets filled between boundaries, when clicked) commands like:<br />'userdraw dotfill,color'<br />'userdraw hatchfill,color' etc
764
<li><span style="color:blue;font-size:0.8em"> fillpattern is also active for <a href="#userdraw">userdraw object,color"</a>...<br />the userdraw family a has also 'clickfill type' (e.g. an object gets filled between boundaries, when clicked) commands like:<br />'userdraw dotfill,color'<br />'userdraw hatchfill,color' etc
764
</span></li>
765
</span></li>
765
</ul>
766
</ul>
766
<li><a name='filltoborder' href='#filltoborder top'> filltoborder x,y,bordercolor,color</a><ul>
767
<li><a name='filltoborder' href='#filltoborder top'>  filltoborder x,y,bordercolor,color</a><ul>
767
<li><span style="color:blue;font-size:0.8em"> fill the region of point (x:y) with color 'color'
768
<li><span style="color:blue;font-size:0.8em"> fill the region of point (x:y) with color 'color'
768
</span></li>
769
</span></li>
769
<li><span style="color:blue;font-size:0.8em"> any other color will not act as border to the bucket fill
770
<li><span style="color:blue;font-size:0.8em"> any other color will not act as border to the bucket fill
770
</span></li>
771
</span></li>
771
<li><span style="color:blue;font-size:0.8em"> use this command after all boundary objects are declared.
772
<li><span style="color:blue;font-size:0.8em"> use this command after all boundary objects are declared.
772
</span></li>
773
</span></li>
773
<li><span style="color:blue;font-size:0.8em"> use command <a href="#canvastype">canvastype </a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)
774
<li><span style="color:blue;font-size:0.8em"> use command <a href="#canvastype">canvastype </a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)
774
</span></li>
775
</span></li>
775
<li><span style="color:blue;font-size:0.8em"> note: filltoborder is a very (client) cpu intensive operation!<br />filling is done pixel by pixel<br/>e.g. image size of 400x400 uses 160000 pixels : each pixel contains 4 data (R,G,B,Opacity) = 640000 data.<br />on every data a few operations / comparisons are done...<br />So have pity on your students CPU..
776
<li><span style="color:blue;font-size:0.8em"> note: filltoborder is a very (client) cpu intensive operation!<br />filling is done pixel by pixel<br/>e.g. image size of 400x400 uses 160000 pixels : each pixel contains 4 data (R,G,B,Opacity) = 640000 data.<br />on every data a few operations / comparisons are done...<br />So have pity on your students CPU..
776
</span></li>
777
</span></li>
777
<li><span style="color:blue;font-size:0.8em"> maybe used together with command <a href="#userdraw">userdraw clickfill,color</a>
778
<li><span style="color:blue;font-size:0.8em"> maybe used together with command <a href="#userdraw">userdraw clickfill,color</a>
778
</span></li>
779
</span></li>
779
</ul>
780
</ul>
780
<li><a name='floodfill' href='#floodfill top'> floodfill x,y,color</a><ul>
781
<li><a name='floodfill' href='#floodfill top'>  floodfill x,y,color</a><ul>
781
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='fill' href='#fill top'>fill</a></span></li>
782
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='fill' href='#fill top'>fill</a></span></li>
782
<li><span style="color:blue;font-size:0.8em"> fill the region of point (x:y) with color 'color'
783
<li><span style="color:blue;font-size:0.8em"> fill the region of point (x:y) with color 'color'
783
</span></li>
784
</span></li>
784
<li><span style="color:blue;font-size:0.8em"> any other color or size of picture (borders of picture) will act as border to the bucket fill
785
<li><span style="color:blue;font-size:0.8em"> any other color or size of picture (borders of picture) will act as border to the bucket fill
785
</span></li>
786
</span></li>
Line 790... Line 791...
790
<li><span style="color:blue;font-size:0.8em"> use command <a href="#canvastype">canvastype </a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)
791
<li><span style="color:blue;font-size:0.8em"> use command <a href="#canvastype">canvastype </a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)
791
</span></li>
792
</span></li>
792
<li><span style="color:blue;font-size:0.8em"> note: floodfill is a very (client) cpu intensive operation!<br />filling is done pixel by pixel<br/>e.g. image size of 400x400 uses 160000 pixels : each pixel contains 4 data (R,G,B,Opacity) = 640000 data.<br />on every data a few operations / comparisons are done...<br />So have pity on your students CPU..
793
<li><span style="color:blue;font-size:0.8em"> note: floodfill is a very (client) cpu intensive operation!<br />filling is done pixel by pixel<br/>e.g. image size of 400x400 uses 160000 pixels : each pixel contains 4 data (R,G,B,Opacity) = 640000 data.<br />on every data a few operations / comparisons are done...<br />So have pity on your students CPU..
793
</span></li>
794
</span></li>
794
</ul>
795
</ul>
795
<li><a name='fontcolor' href='#fontcolor top'> fontcolor color</a><ul>
796
<li><a name='fontcolor' href='#fontcolor top'>  fontcolor color</a><ul>
796
<li><span style="color:blue;font-size:0.8em"> color: hexcolor or colorname
797
<li><span style="color:blue;font-size:0.8em"> color: hexcolor or colorname
797
</span></li>
798
</span></li>
798
<li><span style="color:blue;font-size:0.8em"> default: black
799
<li><span style="color:blue;font-size:0.8em"> default: black
799
</span></li>
800
</span></li>
800
<li><span style="color:blue;font-size:0.8em"> example usage: x/y-axis text
801
<li><span style="color:blue;font-size:0.8em"> example usage: x/y-axis text
801
</span></li>
802
</span></li>
802
</ul>
803
</ul>
803
<li><a name='fontfamily' href='#fontfamily top'> fontfamily font_description</a><ul>
804
<li><a name='fontfamily' href='#fontfamily top'>  fontfamily font_description</a><ul>
804
<li><span style="color:blue;font-size:0.8em"> set the font family; for browsers that support it
805
<li><span style="color:blue;font-size:0.8em"> set the font family; for browsers that support it
805
</span></li>
806
</span></li>
806
<li><span style="color:blue;font-size:0.8em"> font_description: Ariel ,Courier, Helvetica etc
807
<li><span style="color:blue;font-size:0.8em"> font_description: Ariel ,Courier, Helvetica etc
807
</span></li>
808
</span></li>
808
<li><span style="color:blue;font-size:0.8em"> in case commands<br /> 'string color,x,y,the string'<br /> 'stringup color,x,y,rotation,the string'<br />fontfamily can be something like:<br />italic 34px Ariel
809
<li><span style="color:blue;font-size:0.8em"> in case commands<br /> 'string color,x,y,the string'<br /> 'stringup color,x,y,rotation,the string'<br />fontfamily can be something like:<br />italic 34px Ariel
809
</span></li>
810
</span></li>
810
<li><span style="color:blue;font-size:0.8em"> use correct syntax : 'font style' 'font size'px 'fontfamily'
811
<li><span style="color:blue;font-size:0.8em"> use correct syntax : 'font style' 'font size'px 'fontfamily'
811
</span></li>
812
</span></li>
812
</ul>
813
</ul>
813
<li><a name='fontsize' href='#fontsize top'> fontsize font_size</a><ul>
814
<li><a name='fontsize' href='#fontsize top'>  fontsize font_size</a><ul>
814
<li><span style="color:blue;font-size:0.8em"> default value 12
815
<li><span style="color:blue;font-size:0.8em"> default value 12
815
</span></li>
816
</span></li>
816
<li><span style="color:blue;font-size:0.8em"> note:for some macro's (like grid | legend | xaxistext | xlabel etc) sometimes command <a href="#fontfamily">"fontfamily"</a> can be used for some specific font-setting<br />this is however not always very straight forward...so just try and see what happens
817
<li><span style="color:blue;font-size:0.8em"> note:for some macro's (like grid | legend | xaxistext | xlabel etc) sometimes command <a href="#fontfamily">"fontfamily"</a> can be used for some specific font-setting<br />this is however not always very straight forward...so just try and see what happens
817
</span></li>
818
</span></li>
818
</ul>
819
</ul>
819
<li><a name='functionlabel' href='#functionlabel top'> functionlabel 'some string'</a><ul>
820
<li><a name='functionlabel' href='#functionlabel top'>  functionlabel 'some string'</a><ul>
820
<li><span style="color:blue;font-size:0.8em"> default value "f(x)="
821
<li><span style="color:blue;font-size:0.8em"> default value "f(x)="
821
</span></li>
822
</span></li>
822
<li><span style="color:blue;font-size:0.8em"> no mathml allowed (just ascii string)
823
<li><span style="color:blue;font-size:0.8em"> no mathml allowed (just ascii string)
823
</span></li>
824
</span></li>
824
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the size
825
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the size
Line 826... Line 827...
826
<li><span style="color:blue;font-size:0.8em"> use command 'strokecolor colorname' to adjust the labels (individually, if needed)
827
<li><span style="color:blue;font-size:0.8em"> use command 'strokecolor colorname' to adjust the labels (individually, if needed)
827
</span></li>
828
</span></li>
828
<li><span style="color:blue;font-size:0.8em"> if needed, use before every command 'userinput function | inputfield | textarea'
829
<li><span style="color:blue;font-size:0.8em"> if needed, use before every command 'userinput function | inputfield | textarea'
829
</span></li>
830
</span></li>
830
</ul>
831
</ul>
831
<li><a name='grid' href='#grid top'> grid step_x,step_y,gridcolor</a><ul>
832
<li><a name='grid' href='#grid top'>  grid step_x,step_y,gridcolor</a><ul>
832
<li><span style="color:blue;font-size:0.8em"> if keywords <a href="#axis">"axis"</a> or <a href="#axisnumbering">"axisnumbering"</a> are set, use :<br />grid step_x,step_y,major_color,minor_x,minor_y,tics height in px,axis_color<br />minor x step = step_x / minor_x
833
<li><span style="color:blue;font-size:0.8em"> if keywords <a href="#axis">"axis"</a> or <a href="#axisnumbering">"axisnumbering"</a> are set, use :<br />grid step_x,step_y,major_color,minor_x,minor_y,tics height in px,axis_color<br />minor x step = step_x / minor_x
833
</span></li>
834
</span></li>
834
<li><span style="color:blue;font-size:0.8em"> in that case, use command <a href="#fontcolor">"fontcolor"</a>, <a href="#fontsize">"fontsize"</a> and / or <a href="#fontfamily">"fontfamily"</a> to adjust font <br />defaults: black,12,Ariel
835
<li><span style="color:blue;font-size:0.8em"> in that case, use command <a href="#fontcolor">"fontcolor"</a>, <a href="#fontsize">"fontsize"</a> and / or <a href="#fontfamily">"fontfamily"</a> to adjust font <br />defaults: black,12,Ariel
835
</span></li>
836
</span></li>
836
<li><span style="color:blue;font-size:0.8em"> if xmin > 0 and/or ymin > 0 and zooming / panning is not activ: <br /> be aware that the x/y-axis numbering and x/y major/minor tic marks will not be visual <br /> as they are placed under the x-axis and left to the y-axis (in Quadrant II and IV)
837
<li><span style="color:blue;font-size:0.8em"> if xmin > 0 and/or ymin > 0 and zooming / panning is not activ: <br /> be aware that the x/y-axis numbering and x/y major/minor tic marks will not be visual <br /> as they are placed under the x-axis and left to the y-axis (in Quadrant II and IV)
837
</span></li>
838
</span></li>
838
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set <a href="#onclick">"onclick"</a> or <a href="#drag">"drag xy"</a>
839
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set <a href="#onclick">"onclick"</a> or <a href="#drag">"drag xy"</a>
839
</span></li>
840
</span></li>
840
<li><span style="color:blue;font-size:0.8em"> use commands <a href="#xlabel">'xlabel some_string'</a> and/or <a href="#ylabel">'ylabel some_string'</a> to label axis;<br />use command "fontsize" to adjust size:the font family is non-configurable 'italic your_fontsize px Ariel' !
841
<li><span style="color:blue;font-size:0.8em"> use commands <a href="#xlabel">'xlabel some_string'</a> and/or <a href="#ylabel">'ylabel some_string'</a> to label axis;<br />use command "fontsize" to adjust size:the font family is non-configurable 'italic your_fontsize px Ariel' !
841
</span></li>
842
</span></li>
842
<li><span style="color:blue;font-size:0.8em"> see commands (see <a href="#xaxis">"xaxis" or xaxistext"</a>, <a href="#yaxis">"yaxis" or "yaxistext"</a> to set tailormade values on axis (the used font is set by <a href="fontfamily">command fontfamily</a>; default '12px Ariel')
843
<li><span style="color:blue;font-size:0.8em"> see commands (see <a href="#xaxis">"xaxis" or xaxistext"</a>, <a href="#yaxis">"yaxis" or "yaxistext"</a> to set tailormade values on axis (the used font is set by <a href="fontfamily">command fontfamily</a>; default '12px Ariel')
843
</span></li>
844
</span></li>
844
<li><span style="color:blue;font-size:0.8em"> see command <a href="#legend">"legend"</a>to set a legend for the graph ;<br />use command <a href="#fontsize">"fontsize"</a> to adjust size (the font family is non-configurable 'bold your_fontsize px Ariel')
845
<li><span style="color:blue;font-size:0.8em"> see command <a href="#legend">"legend"</a>to set a legend for the graph ;<br />use command <a href="#fontsize">"fontsize"</a> to adjust size (the font family is non-configurable 'bold your_fontsize px Ariel')
845
</span></li>
846
</span></li>
846
</ul>
847
</ul>
847
<li><a name='gridfill' href='#gridfill top'> gridfill x0,y0,dx,dy,color</a><ul>
848
<li><a name='gridfill' href='#gridfill top'>  gridfill x0,y0,dx,dy,color</a><ul>
848
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
849
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
849
</span></li>
850
</span></li>
850
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
851
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
851
</span></li>
852
</span></li>
852
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw hatchfill,color</a>
853
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw hatchfill,color</a>
853
</span></li>
854
</span></li>
854
</ul>
855
</ul>
855
<li><a name='demiline' href='#demiline top'> demiline x1,y1,x2,y2,color</a><ul>
856
<li><a name='demiline' href='#demiline top'>  demiline x1,y1,x2,y2,color</a><ul>
856
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='halfline' href='#halfline top'>halfline</a></span></li>
857
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='halfline' href='#halfline top'>halfline</a></span></li>
857
<li><span style="color:blue;font-size:0.8em"> draws a halfline starting in (x1:y1) and through (x2:y2) in color 'color' (colorname or hex)
858
<li><span style="color:blue;font-size:0.8em"> draws a halfline starting in (x1:y1) and through (x2:y2) in color 'color' (colorname or hex)
858
</span></li>
859
</span></li>
859
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
860
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
860
</span></li>
861
</span></li>
861
</ul>
862
</ul>
862
<li><a name='demilines' href='#demilines top'> demilines color,x1,y1,x2,y2,....</a><ul>
863
<li><a name='demilines' href='#demilines top'>  demilines color,x1,y1,x2,y2,....</a><ul>
863
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='halflines' href='#halflines top'>halflines</a></span></li>
864
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='halflines' href='#halflines top'>halflines</a></span></li>
864
<li><span style="color:blue;font-size:0.8em"> draws halflines starting in (x1:y1) and through (x2:y2) in color 'color' (colorname or hex) etc etc
865
<li><span style="color:blue;font-size:0.8em"> draws halflines starting in (x1:y1) and through (x2:y2) in color 'color' (colorname or hex) etc etc
865
</span></li>
866
</span></li>
866
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> indiviually
867
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> indiviually
867
</span></li>
868
</span></li>
868
</ul>
869
</ul>
869
<li><a name='hatchfill' href='#hatchfill top'> hatchfill x0,y0,dx,dy,color</a><ul>
870
<li><a name='hatchfill' href='#hatchfill top'>  hatchfill x0,y0,dx,dy,color</a><ul>
870
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
871
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
871
</span></li>
872
</span></li>
872
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
873
<li><span style="color:blue;font-size:0.8em"> distances dx,dy in pixels
873
</span></li>
874
</span></li>
874
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw hatchfill,color</a>
875
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="userdraw">userdraw hatchfill,color</a>
875
</span></li>
876
</span></li>
876
</ul>
877
</ul>
877
<li><a name='hline' href='#hline top'> hline x,y,color</a><ul>
878
<li><a name='hline' href='#hline top'>  hline x,y,color</a><ul>
878
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='horizontalline' href='#horizontalline top'>horizontalline</a></span></li>
879
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='horizontalline' href='#horizontalline top'>horizontalline</a></span></li>
879
<li><span style="color:blue;font-size:0.8em"> draw a horizontal line through point (x:y) in color 'color'
880
<li><span style="color:blue;font-size:0.8em"> draw a horizontal line through point (x:y) in color 'color'
880
</span></li>
881
</span></li>
881
<li><span style="color:blue;font-size:0.8em"> or use command <a href='#curve'>'curve color,formula'</a> to draw the line <br />(uses more points to draw the line; is however better draggable)
882
<li><span style="color:blue;font-size:0.8em"> or use command <a href='#curve'>'curve color,formula'</a> to draw the line <br />(uses more points to draw the line; is however better draggable)
882
</span></li>
883
</span></li>
883
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
884
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
884
</span></li>
885
</span></li>
885
</ul>
886
</ul>
886
<li><a name='hlines' href='#hlines top'> hlines color,x1,y1,x2,y2,...</a><ul>
887
<li><a name='hlines' href='#hlines top'>  hlines color,x1,y1,x2,y2,...</a><ul>
887
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='horizontallines' href='#horizontallines top'>horizontallines</a></span></li>
888
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='horizontallines' href='#horizontallines top'>horizontallines</a></span></li>
888
<li><span style="color:blue;font-size:0.8em"> draw horizontal lines through points (x1:y1)...(xn:yn) in color 'color'
889
<li><span style="color:blue;font-size:0.8em"> draw horizontal lines through points (x1:y1)...(xn:yn) in color 'color'
889
</span></li>
890
</span></li>
890
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
891
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
891
</span></li>
892
</span></li>
892
</ul>
893
</ul>
893
<li><a name='http' href='#http top'> http x1,y1,x2,y2,http://some_adress.com</a><ul>
894
<li><a name='http' href='#http top'>  http x1,y1,x2,y2,http://some_adress.com</a><ul>
894
<li><span style="color:blue;font-size:0.8em"> an active html-page will be displayed in an "iframe" rectangle left top (x1:y1) , right bottom (x2:y2)
895
<li><span style="color:blue;font-size:0.8em"> an active html-page will be displayed in an "iframe" rectangle left top (x1:y1) , right bottom (x2:y2)
895
</span></li>
896
</span></li>
896
<li><span style="color:blue;font-size:0.8em"> do not use interactivity (or mouse) if the mouse needs to be active in the iframe
897
<li><span style="color:blue;font-size:0.8em"> do not use interactivity (or mouse) if the mouse needs to be active in the iframe
897
</span></li>
898
</span></li>
898
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be 'set onclick' or 'drag xy'
899
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be 'set onclick' or 'drag xy'
899
</span></li>
900
</span></li>
900
</ul>
901
</ul>
901
<li><a name='html' href='#html top'> html x1,y1,x2,y2,html_string</a><ul>
902
<li><a name='html' href='#html top'>  html x1,y1,x2,y2,html_string</a><ul>
902
<li><span style="color:blue;font-size:0.8em"> all tags are allowed<br /> html-code using inputfields could be read using your own javascript-code. Do not use id's like 'canvas_input0' etc.
903
<li><span style="color:blue;font-size:0.8em"> all tags are allowed<br /> html-code using inputfields could be read using your own javascript-code. Do not use id's like 'canvas_input0' etc.
903
</span></li>
904
</span></li>
904
<li><span style="color:blue;font-size:0.8em"> can be set onclick <br />(however dragging not supported)
905
<li><span style="color:blue;font-size:0.8em"> can be set onclick <br />(however dragging not supported)
905
</span></li>
906
</span></li>
906
</ul>
907
</ul>
907
<li><a name='imagefill' href='#imagefill top'> imagefill dx,dy,scaling to xsize &times; ysize?,image_url</a><ul>
908
<li><a name='imagefill' href='#imagefill top'>  imagefill dx,dy,scaling to xsize &times; ysize?,image_url</a><ul>
908
<li><span style="color:blue;font-size:0.8em"> The next suitable <b>filled object</b> will be filled with "image_url" tiled
909
<li><span style="color:blue;font-size:0.8em"> The next suitable <b>filled object</b> will be filled with "image_url" tiled
909
</span></li>
910
</span></li>
910
<li><span style="color:blue;font-size:0.8em"> scaling to xsize &times; ysize ? ... 1 = yes 0 = no
911
<li><span style="color:blue;font-size:0.8em"> scaling to xsize &times; ysize ? ... 1 = yes 0 = no
911
</span></li>
912
</span></li>
912
<li><span style="color:blue;font-size:0.8em"> After pattern filling ,the fill-color should be reset !
913
<li><span style="color:blue;font-size:0.8em"> After pattern filling ,the fill-color should be reset !
913
</span></li>
914
</span></li>
914
<li><span style="color:blue;font-size:0.8em"> wims getins / image from class directory : imagefill 80,80,my_image.gif
915
<li><span style="color:blue;font-size:0.8em"> wims getins / image from class directory : imagefill 80,80,my_image.gif
915
</span></li>
916
</span></li>
916
<li><span style="color:blue;font-size:0.8em"> normal url : imagefill 80,80,0,$module_dir/gifs/my_image.gif
917
<li><span style="color:blue;font-size:0.8em"> normal url : imagefill 80,80,0,$module_dir/gifs/my_image.gif
917
</span></li>
918
</span></li>
918
<li><span style="color:blue;font-size:0.8em"> normal url : imagefill 80,80,1,http://adres/a/b/c/my_image.jpg
919
<li><span style="color:blue;font-size:0.8em"> normal url : imagefill 80,80,1,http://adres/a/b/c/my_image.jpg
919
</span></li>
920
</span></li>
920
<li><span style="color:blue;font-size:0.8em"> if dx,dy is larger than the image, the whole image will be background to the next object.
921
<li><span style="color:blue;font-size:0.8em"> if dx,dy is larger than the image, the whole image will be background to the next object.
921
</span></li>
922
</span></li>
922
</ul>
923
</ul>
923
<li><a name='inputstyle' href='#inputstyle top'> inputstyle style_description</a><ul>
924
<li><a name='inputstyle' href='#inputstyle top'>  inputstyle style_description</a><ul>
924
<li><span style="color:blue;font-size:0.8em"> may be used before any 'style-able' html object.(like inputfields or buttons)<br />or any html objects that are generated by some canvasdraw commands
925
<li><span style="color:blue;font-size:0.8em"> may be used before any 'style-able' html object.(like inputfields or buttons)<br />or any html objects that are generated by some canvasdraw commands
925
</span></li>
926
</span></li>
926
<li><span style="color:blue;font-size:0.8em"> example: inputstyle color:blue;font-weight:bold;font-style:italic;font-size:16pt
927
<li><span style="color:blue;font-size:0.8em"> example: inputstyle color:blue;font-weight:bold;font-style:italic;font-size:16pt
927
</span></li>
928
</span></li>
928
</ul>
929
</ul>
929
<li><a name='input' href='#input top'> input x,y,size,editable,value</a><ul>
930
<li><a name='input' href='#input top'>  input x,y,size,editable,value</a><ul>
930
<li><span style="color:blue;font-size:0.8em"> to set inputfield "readonly", use editable = 0
931
<li><span style="color:blue;font-size:0.8em"> to set inputfield "readonly", use editable = 0
931
</span></li>
932
</span></li>
932
<li><span style="color:blue;font-size:0.8em"> only active inputfields (editable = 1) will be read with read_canvas();
933
<li><span style="color:blue;font-size:0.8em"> only active inputfields (editable = 1) will be read with read_canvas();
933
</span></li>
934
</span></li>
934
<li><span style="color:blue;font-size:0.8em"> if "$status=done" (e.g. in answer.phtml) the inputfield will be cleared and set readonly<br />override this by keyword <a href="#status">'status'</a>
935
<li><span style="color:blue;font-size:0.8em"> if "$status=done" (e.g. in answer.phtml) the inputfield will be cleared and set readonly<br />override this by keyword <a href="#status">'status'</a>
935
</span></li>
936
</span></li>
936
<li><span style="color:blue;font-size:0.8em"> may be further controlled by <a href="#inputstyle">"inputstyle"</a> (inputcss is not yet implemented...)
937
<li><span style="color:blue;font-size:0.8em"> may be further controlled by <a href="#inputstyle">"inputstyle"</a> (inputcss is not yet implemented...)
937
</span></li>
938
</span></li>
938
<li><span style="color:blue;font-size:0.8em"> if mathml inputfields are present and / or some userdraw is performed, these data will <b>not</b> be send as well (javascript:read_canvas();)
939
<li><span style="color:blue;font-size:0.8em"> if mathml inputfields are present and / or some userdraw is performed, these data will <b>not</b> be send as well (javascript:read_canvas();)
939
</span></li>
940
</span></li>
940
<li><span style="color:blue;font-size:0.8em"> use keyword <a href='#xoffset'>xoffset | centered</a> if the inputfield should be centered on (x:y)<br /> default is the left top corner is (x:y)
941
<li><span style="color:blue;font-size:0.8em"> use keyword <a href='#xoffset'>xoffset | centered</a> if the inputfield should be centered on (x:y)<br /> default is the left top corner is (x:y)
941
</span></li>
942
</span></li>
942
</ul>
943
</ul>
943
<li><a name='intooltip' href='#intooltip top'> intooltip link_text</a><ul>
944
<li><a name='intooltip' href='#intooltip top'>  intooltip link_text</a><ul>
944
<li><span style="color:blue;font-size:0.8em"> link_text is a single line (span-element)
945
<li><span style="color:blue;font-size:0.8em"> link_text is a single line (span-element)
945
</span></li>
946
</span></li>
946
<li><span style="color:blue;font-size:0.8em"> link_text may also be an image URL 'http://some_server/images/my_image.png' or '$module_dir/gifs/my_image.jpg'
947
<li><span style="color:blue;font-size:0.8em"> link_text may also be an image URL 'http://some_server/images/my_image.png' or '$module_dir/gifs/my_image.jpg'
947
</span></li>
948
</span></li>
948
<li><span style="color:blue;font-size:0.8em"> link_text may contain HTML markup
949
<li><span style="color:blue;font-size:0.8em"> link_text may contain HTML markup
949
</span></li>
950
</span></li>
950
<li><span style="color:blue;font-size:0.8em"> the canvas will be displayed in a tooltip on 'link_text'
951
<li><span style="color:blue;font-size:0.8em"> the canvas will be displayed in a tooltip on 'link_text'
Line 952... Line 953...
952
<li><span style="color:blue;font-size:0.8em"> the canvas is default transparent: use command <a href="#bgcolor">'bgcolor color'</a> to adjust background-color<br />the link text will also be shown with this 'bgcolor'.
953
<li><span style="color:blue;font-size:0.8em"> the canvas is default transparent: use command <a href="#bgcolor">'bgcolor color'</a> to adjust background-color<br />the link text will also be shown with this 'bgcolor'.
953
</span></li>
954
</span></li>
954
<li><span style="color:blue;font-size:0.8em"> many 'userinput stuff' will use the tooltip_placeholder_div element...only one is defined in the wims-page<br />and are therefor these commands are mutually exclusive.<br />keep this in mind...
955
<li><span style="color:blue;font-size:0.8em"> many 'userinput stuff' will use the tooltip_placeholder_div element...only one is defined in the wims-page<br />and are therefor these commands are mutually exclusive.<br />keep this in mind...
955
</span></li>
956
</span></li>
956
</ul>
957
</ul>
957
<li><a name='jscurve' href='#jscurve top'> jscurve color,formula(x)</a><ul>
958
<li><a name='jscurve' href='#jscurve top'>  jscurve color,formula1(x),formula2(x),formula3(x),...</a><ul>
958
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='jsplot' href='#jsplot top'>jsplot</a></span></li>
959
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='jsplot' href='#jsplot top'>jsplot</a></span></li>
959
<li><span style="color:blue;font-size:0.8em"> your function will be plotted by the javascript engine of the client browser.
960
<li><span style="color:blue;font-size:0.8em"> your function will be plotted by the javascript engine of the client browser
-
 
961
</span></li>
-
 
962
<li><span style="color:blue;font-size:0.8em"> if <a href='trange'>trange</a> is defined, the two functions will be plotted parametric<br /><b>note</b>: use <i>x</i> as variable...and not <i>t</i>. Use keyword <a href='#animate'>animate</a> to animate a point on the curve
960
</span></li>
963
</span></li>
961
<li><span style="color:blue;font-size:0.8em"> use only basic math in your curve:<br /> sqrt,^,asin,acos,atan,log,pi,abs,sin,cos,tan,e
964
<li><span style="color:blue;font-size:0.8em"> use only basic math in your curve:<br /> sqrt,^,asin,acos,atan,log,pi,abs,sin,cos,tan,e
962
</span></li>
965
</span></li>
963
<li><span style="color:blue;font-size:0.8em"> use parenthesis and rawmath : use 2*x instead of 2x ; use 2^(sin(x))...etc etc<br />use error console to debug any errors...
966
<li><span style="color:blue;font-size:0.8em"> use parenthesis and rawmath : use 2*x instead of 2x ; use 2^(sin(x))...etc etc<br />use error console to debug any errors...
964
</span></li>
967
</span></li>
965
<li><span style="color:blue;font-size:0.8em"> <b>attention</b> : last "precision" command in the canvasdraw script determines the calculation precision of the javascript curve plot !
968
<li><span style="color:blue;font-size:0.8em"> <b>attention</b> : last "precision" command in the canvasdraw script determines the calculation precision of the javascript curve plot !
966
</span></li>
969
</span></li>
967
<li><span style="color:blue;font-size:0.8em"> no validity check is done by wims.
970
<li><span style="color:blue;font-size:0.8em"> no validity check is done by wims.
968
</span></li>
971
</span></li>
969
<li><span style="color:blue;font-size:0.8em"> zooming & panning are implemented :<br />use command 'zoom color' for mouse driven zooming<br />or use keyword 'setlimits' for inputfields setting xmin/xmax, ymin/ymax
972
<li><span style="color:blue;font-size:0.8em"> zooming & panning are implemented :<br />use command 'zoom color' for mouse driven zooming<br />or use keyword 'setlimits' for inputfields setting xmin/xmax, ymin/ymax
970
</span></li>
973
</span></li>
971
<li><span style="color:blue;font-size:0.8em"> zooming & panning is better than for curves produced by command <a href="#curve">curve color,formula</a> because for avery change in x/y-range the curve is recalculated in javascript
974
<li><span style="color:blue;font-size:0.8em"> zooming & panning is better than for curves produced by command <a href="#curve">curve color,formula</a> because for avery change in x/y-range the curve is recalculated in javascript
-
 
975
</span></li>
-
 
976
<li><span style="color:blue;font-size:0.8em"> use keyword <a href='animate'>animate</a> for animating a point on the curve
972
</span></li>
977
</span></li>
973
<li><span style="color:blue;font-size:0.8em"> use command 'trace_jscurve formula(x)` for tracing
978
<li><span style="color:blue;font-size:0.8em"> use command 'trace_jscurve formula(x)` for tracing
974
</span></li>
979
</span></li>
975
<li><span style="color:blue;font-size:0.8em"> use command 'jsmath formula(x)` for calculating and displaying indiviual points on the curve
980
<li><span style="color:blue;font-size:0.8em"> use command 'jsmath formula(x)` for calculating and displaying indiviual points on the curve
976
</span></li>
981
</span></li>
Line 981... Line 986...
981
<li><span style="color:blue;font-size:0.8em"> every command jscurve will produce a new canvas (canvastype 111,112,113...) for this one curve.
986
<li><span style="color:blue;font-size:0.8em"> every command jscurve will produce a new canvas (canvastype 111,112,113...) for this one curve.
982
</span></li>
987
</span></li>
983
<li><span style="color:blue;font-size:0.8em"> plotting multiple js-curves on the same canvas <br/>(for example if you want to use 'userdraw clickfill,color' on <a href="#canvastype">canvastype</a> number 111 ,use :<br/> jscurve red,fun1(x),fun2(x)...fun_n(x)<br /> you want to specify individual colors | opacity | linewidth for these multiple js-curves.<br />use commands like: <a href="#multistrokecolors">multistrokecolors</a>,<a href="#multilinewidth">multilinewidth</a>, <a href="#multidash">multidash</a><br />, <a href="multistrokeopacity">multistroke</a><br />the <b>color</b> given for the command "jscurve <b>color</b>,formulas(x)" will not be used in that case...<br />but the color argument must still be given in any case (otherwise syntax error...)
988
<li><span style="color:blue;font-size:0.8em"> plotting multiple js-curves on the same canvas <br/>(for example if you want to use 'userdraw clickfill,color' on <a href="#canvastype">canvastype</a> number 111 ,use :<br/> jscurve red,fun1(x),fun2(x)...fun_n(x)<br /> you want to specify individual colors | opacity | linewidth for these multiple js-curves.<br />use commands like: <a href="#multistrokecolors">multistrokecolors</a>,<a href="#multilinewidth">multilinewidth</a>, <a href="#multidash">multidash</a><br />, <a href="multistrokeopacity">multistroke</a><br />the <b>color</b> given for the command "jscurve <b>color</b>,formulas(x)" will not be used in that case...<br />but the color argument must still be given in any case (otherwise syntax error...)
984
</span></li>
989
</span></li>
985
</ul>
990
</ul>
986
<li><a name='jsmath' href='#jsmath top'> jsmath some_math_function</a><ul>
991
<li><a name='jsmath' href='#jsmath top'>  jsmath some_math_function</a><ul>
987
<li><span style="color:blue;font-size:0.8em"> will calculate an y-value from a userinput x-value and draws a crosshair on these coordinates.
992
<li><span style="color:blue;font-size:0.8em"> will calculate an y-value from a userinput x-value and draws a crosshair on these coordinates.
988
</span></li>
993
</span></li>
989
<li><span style="color:blue;font-size:0.8em"> default labels 'x' and 'y'<br />the commands 'xlabel some_x_axis_name' and 'ylabel some_y_axis_name' will set the label for the input fields
994
<li><span style="color:blue;font-size:0.8em"> default labels 'x' and 'y'<br />the commands 'xlabel some_x_axis_name' and 'ylabel some_y_axis_name' will set the label for the input fields
990
</span></li>
995
</span></li>
991
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' for styling the display fields. Use command 'fontsize int' to size the labels 'x' and 'y'
996
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' for styling the display fields. Use command 'fontsize int' to size the labels 'x' and 'y'
Line 995... Line 1000...
995
<li><span style="color:blue;font-size:0.8em"> the client browser will convert your math function to javascript math.<br />use parenthesis and rawmath : use 2*x instead of 2x etc etc<br />no check is done on the validity of your function and/or syntax<br />use error console to debug any errors...
1000
<li><span style="color:blue;font-size:0.8em"> the client browser will convert your math function to javascript math.<br />use parenthesis and rawmath : use 2*x instead of 2x etc etc<br />no check is done on the validity of your function and/or syntax<br />use error console to debug any errors...
996
</span></li>
1001
</span></li>
997
<li><span style="color:blue;font-size:0.8em"> be aware that the formula's of the plotted function(s) can be found in the page javascript source
1002
<li><span style="color:blue;font-size:0.8em"> be aware that the formula's of the plotted function(s) can be found in the page javascript source
998
</span></li>
1003
</span></li>
999
</ul>
1004
</ul>
1000
<li><a name='killaffine' href='#killaffine top'> killaffine</a><ul>
1005
<li><a name='killaffine' href='#killaffine top'>  killaffine</a><ul>
1001
<li><span style="color:blue;font-size:0.8em"> keyword : resets the transformation matrix to 1,0,0,1,0,0
1006
<li><span style="color:blue;font-size:0.8em"> keyword : resets the transformation matrix to 1,0,0,1,0,0
1002
</span></li>
1007
</span></li>
1003
</ul>
1008
</ul>
1004
<li><a name='killrotate' href='#killrotate top'> killrotate will reset the command <a href="#rotationcenter">rotationcenter xc,yc</a></a><ul>
1009
<li><a name='killrotate' href='#killrotate top'>  killrotate will reset the command <a href="#rotationcenter">rotationcenter xc,yc</a></a><ul>
1005
<li><span style="color:blue;font-size:0.8em"> a following rotate command will have the first object point as rotation center
1010
<li><span style="color:blue;font-size:0.8em"> a following rotate command will have the first object point as rotation center
1006
</span></li>
1011
</span></li>
1007
<li><span style="color:blue;font-size:0.8em"> if not set, the rotation center will remain unchanged
1012
<li><span style="color:blue;font-size:0.8em"> if not set, the rotation center will remain unchanged
1008
</span></li>
1013
</span></li>
1009
</ul>
1014
</ul>
1010
<li><a name='killslider' href='#killslider top'> killslider</a><ul>
1015
<li><a name='killslider' href='#killslider top'>  killslider</a><ul>
1011
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
1016
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
1012
</span></li>
1017
</span></li>
1013
<li><span style="color:blue;font-size:0.8em"> ends grouping of object under a previously defined slider
1018
<li><span style="color:blue;font-size:0.8em"> ends grouping of object under a previously defined slider
1014
</span></li>
1019
</span></li>
1015
</ul>
1020
</ul>
1016
<li><a name='killtranslation' href='#killtranslation top'> killtranslation</a><ul>
1021
<li><a name='killtranslation' href='#killtranslation top'>  killtranslation</a><ul>
1017
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='killtranslate' href='#killtranslate top'>killtranslate</a></span></li>
1022
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='killtranslate' href='#killtranslate top'>killtranslate</a></span></li>
1018
<li><span style="color:blue;font-size:0.8em"> resets the translation matrix to 1,0,0,1,0,0
1023
<li><span style="color:blue;font-size:0.8em"> resets the translation matrix to 1,0,0,1,0,0
1019
</span></li>
1024
</span></li>
1020
</ul>
1025
</ul>
1021
<li><a name='line' href='#line top'> line x1,y1,x2,y2,color</a><ul>
1026
<li><a name='line' href='#line top'>  line x1,y1,x2,y2,color</a><ul>
1022
<li><span style="color:blue;font-size:0.8em"> draw a line through points (x1:y1)--(x2:y2) in color 'color'
1027
<li><span style="color:blue;font-size:0.8em"> draw a line through points (x1:y1)--(x2:y2) in color 'color'
1023
</span></li>
1028
</span></li>
1024
<li><span style="color:blue;font-size:0.8em"> or use command 'curve color,formula' to draw the line <br />(uses more points to draw the line; is however better draggable)
1029
<li><span style="color:blue;font-size:0.8em"> or use command 'curve color,formula' to draw the line <br />(uses more points to draw the line; is however better draggable)
1025
</span></li>
1030
</span></li>
1026
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1031
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1027
</span></li>
1032
</span></li>
1028
</ul>
1033
</ul>
1029
<li><a name='lines' href='#lines top'> lines color,x1,y1,x2,y2...x_n-1,y_n-1,x_n,y_n</a><ul>
1034
<li><a name='lines' href='#lines top'>  lines color,x1,y1,x2,y2...x_n-1,y_n-1,x_n,y_n</a><ul>
1030
<li><span style="color:blue;font-size:0.8em"> draw multiple lines through points (x1:y1)--(x2:y2) ...(x_n-1:y_n-1)--(x_n:y_n) in color 'color'
1035
<li><span style="color:blue;font-size:0.8em"> draw multiple lines through points (x1:y1)--(x2:y2) ...(x_n-1:y_n-1)--(x_n:y_n) in color 'color'
1031
</span></li>
1036
</span></li>
1032
<li><span style="color:blue;font-size:0.8em"> or use multiple commands 'curve color,formula' or "jscurve color,formule" to draw the line <br />(uses more points to draw the line; is however better draggable)
1037
<li><span style="color:blue;font-size:0.8em"> or use multiple commands 'curve color,formula' or "jscurve color,formule" to draw the line <br />(uses more points to draw the line; is however better draggable)
1033
</span></li>
1038
</span></li>
1034
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1039
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1035
</span></li>
1040
</span></li>
1036
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: the flydraw command "lines" is equivalent to canvasdraw command <a href="#polyline">"polyline"</a>
1041
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: the flydraw command "lines" is equivalent to canvasdraw command <a href="#polyline">"polyline"</a>
1037
</span></li>
1042
</span></li>
1038
</ul>
1043
</ul>
1039
<li><a name='linewidth' href='#linewidth top'> linewidth int</a><ul>
1044
<li><a name='linewidth' href='#linewidth top'>  linewidth int</a><ul>
1040
<li><span style="color:blue;font-size:0.8em"> default 1
1045
<li><span style="color:blue;font-size:0.8em"> default 1
1041
</span></li>
1046
</span></li>
1042
</ul>
1047
</ul>
1043
<li><a name='lattice' href='#lattice top'> lattice x0,y0,xv1,yv1,xv2,yv2,n1,n2,color</a><ul>
1048
<li><a name='lattice' href='#lattice top'>  lattice x0,y0,xv1,yv1,xv2,yv2,n1,n2,color</a><ul>
1044
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy"
1049
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy"
1045
</span></li>
1050
</span></li>
1046
</ul>
1051
</ul>
1047
<li><a name='levelcurve' href='#levelcurve top'> levelcurve color,expression in x/y,l1,l2,...</a><ul>
1052
<li><a name='levelcurve' href='#levelcurve top'>  levelcurve color,expression in x/y,l1,l2,...</a><ul>
1048
<li><span style="color:blue;font-size:0.8em"> draws very primitive level curves for expression, with levels l1,l2,l3,...,l_n
1053
<li><span style="color:blue;font-size:0.8em"> draws very primitive level curves for expression, with levels l1,l2,l3,...,l_n
1049
</span></li>
1054
</span></li>
1050
<li><span style="color:blue;font-size:0.8em"> the quality is <b>not to be compared</b> with the Flydraw levelcurve. <br />(choose flydraw if you want quality...)
1055
<li><span style="color:blue;font-size:0.8em"> the quality is <b>not to be compared</b> with the Flydraw levelcurve. <br />(choose flydraw if you want quality...)
1051
</span></li>
1056
</span></li>
1052
<li><span style="color:blue;font-size:0.8em"> every individual level curve may be set 'onclick / drag xy' <br />e.g. every single level curve (l1,l2,l3...l_n) has a unique identifier
1057
<li><span style="color:blue;font-size:0.8em"> every individual level curve may be set 'onclick / drag xy' <br />e.g. every single level curve (l1,l2,l3...l_n) has a unique identifier
Line 1054... Line 1059...
1054
<li><span style="color:blue;font-size:0.8em"> note : the arrays for holding the javascript data are limited in size
1059
<li><span style="color:blue;font-size:0.8em"> note : the arrays for holding the javascript data are limited in size
1055
</span></li>
1060
</span></li>
1056
<li><span style="color:blue;font-size:0.8em"> note : reduce image size if javascript data arrays get overloaded<br />(command 'plotsteps int' will not control the data size of the plot...)
1061
<li><span style="color:blue;font-size:0.8em"> note : reduce image size if javascript data arrays get overloaded<br />(command 'plotsteps int' will not control the data size of the plot...)
1057
</span></li>
1062
</span></li>
1058
</ul>
1063
</ul>
1059
<li><a name='legend' href='#legend top'> legend string1:string2:string3....string_n</a><ul>
1064
<li><a name='legend' href='#legend top'>  legend string1:string2:string3....string_n</a><ul>
1060
<li><span style="color:blue;font-size:0.8em"> will be used to create a legend for a graph
1065
<li><span style="color:blue;font-size:0.8em"> will be used to create a legend for a graph
1061
</span></li>
1066
</span></li>
1062
<li><span style="color:blue;font-size:0.8em"> also see command <a href='#piechart'>'piechart'</a>
1067
<li><span style="color:blue;font-size:0.8em"> also see command <a href='#piechart'>'piechart'</a>
1063
</span></li>
1068
</span></li>
1064
<li><span style="color:blue;font-size:0.8em"> will use the same colors per default as used in the graphs : use command <a href='#legendcolors'>'legendcolors'</a> to override the default
1069
<li><span style="color:blue;font-size:0.8em"> will use the same colors per default as used in the graphs : use command <a href='#legendcolors'>'legendcolors'</a> to override the default
1065
</span></li>
1070
</span></li>
1066
<li><span style="color:blue;font-size:0.8em"> use command <a href="#fontsize">fontsize</a> to adjust. (command "fontfamily" is not active for command "legend")
1071
<li><span style="color:blue;font-size:0.8em"> use command <a href="#fontsize">fontsize</a> to adjust. (command "fontfamily" is not active for command "legend")
1067
</span></li>
1072
</span></li>
1068
</ul>
1073
</ul>
1069
<li><a name='legendcolors' href='#legendcolors top'> legendcolors color1:color2:color3:...:color_n</a><ul>
1074
<li><a name='legendcolors' href='#legendcolors top'>  legendcolors color1:color2:color3:...:color_n</a><ul>
1070
<li><span style="color:blue;font-size:0.8em"> will be used to colour a legend: use this command after the legend command ! e.g.<br />legend test1:test2:test3<br />legendcolors blue:red:orange
1075
<li><span style="color:blue;font-size:0.8em"> will be used to colour a legend: use this command after the legend command ! e.g.<br />legend test1:test2:test3<br />legendcolors blue:red:orange
1071
</span></li>
1076
</span></li>
1072
<li><span style="color:blue;font-size:0.8em"> make sure the number of colours match the number of legend items
1077
<li><span style="color:blue;font-size:0.8em"> make sure the number of colours match the number of legend items
1073
</span></li>
1078
</span></li>
1074
<li><span style="color:blue;font-size:0.8em"> command 'legend' in case of 'piechart' and 'barchart' will use these colours per default (no need to specify 'legendcolors'
1079
<li><span style="color:blue;font-size:0.8em"> command 'legend' in case of 'piechart' and 'barchart' will use these colours per default (no need to specify 'legendcolors'
1075
</span></li>
1080
</span></li>
1076
</ul>
1081
</ul>
1077
<li><a name='linegraph' href='#linegraph top'> linegraph x1:y1:x2:y2...x_n:y_n</a><ul>
1082
<li><a name='linegraph' href='#linegraph top'>  linegraph x1:y1:x2:y2...x_n:y_n</a><ul>
1078
<li><span style="color:blue;font-size:0.8em"> will plot your data in a graph
1083
<li><span style="color:blue;font-size:0.8em"> will plot your data in a graph
1079
</span></li>
1084
</span></li>
1080
<li><span style="color:blue;font-size:0.8em"> may <b>only</b> to be used together with command <a href='#grid'>'grid'</a>
1085
<li><span style="color:blue;font-size:0.8em"> may <b>only</b> to be used together with command <a href='#grid'>'grid'</a>
1081
</span></li>
1086
</span></li>
1082
<li><span style="color:blue;font-size:0.8em"> can be used together with freestyle x-axis/y-axis texts : see commands <a href='#xaxis'>'xaxis'</a>,<a href='#xaxisup'>'xaxisup'</a> and <a href='#yaxis'>'yaxis'</a>
1087
<li><span style="color:blue;font-size:0.8em"> can be used together with freestyle x-axis/y-axis texts : see commands <a href='#xaxis'>'xaxis'</a>,<a href='#xaxisup'>'xaxisup'</a> and <a href='#yaxis'>'yaxis'</a>
Line 1090... Line 1095...
1090
<li><span style="color:blue;font-size:0.8em"> note: your arguments are not checked by canvasdraw : use your javascript console in case of trouble...
1095
<li><span style="color:blue;font-size:0.8em"> note: your arguments are not checked by canvasdraw : use your javascript console in case of trouble...
1091
</span></li>
1096
</span></li>
1092
<li><span style="color:blue;font-size:0.8em"> <ul><li>use command <a href='#strokecolor'>'strokecolor'</a> before a command 'linegraph' to set the color of this graph</li><li>use command <a href='#linewidth'>'linewidth'</a> before command 'linegraph' to set linewidth of this graph</li><li>use keyword <a href='#dashed'>'dashed'</a> before command 'linegraph' to set dashing of the graph</li><li>if dashing is set, use command <a href='#dashtype'>'dashtype'</a> before command 'linegraph' to set the type of dashing of the (individual) graph</li></ul>
1097
<li><span style="color:blue;font-size:0.8em"> <ul><li>use command <a href='#strokecolor'>'strokecolor'</a> before a command 'linegraph' to set the color of this graph</li><li>use command <a href='#linewidth'>'linewidth'</a> before command 'linegraph' to set linewidth of this graph</li><li>use keyword <a href='#dashed'>'dashed'</a> before command 'linegraph' to set dashing of the graph</li><li>if dashing is set, use command <a href='#dashtype'>'dashtype'</a> before command 'linegraph' to set the type of dashing of the (individual) graph</li></ul>
1093
</span></li>
1098
</span></li>
1094
</ul>
1099
</ul>
1095
<li><a name='mathml' href='#mathml top'> mathml x1,y1,x2,y2,mathml_string</a><ul>
1100
<li><a name='mathml' href='#mathml top'>  mathml x1,y1,x2,y2,mathml_string</a><ul>
1096
<li><span style="color:blue;font-size:0.8em"> mathml will be displayed in a rectangle left top (x1:y1)...<br />x2 and y2 are still needed, but not used as the right bottom corner of the embedded div element.
1101
<li><span style="color:blue;font-size:0.8em"> mathml will be displayed in a rectangle left top (x1:y1)...<br />x2 and y2 are still needed, but not used as the right bottom corner of the embedded div element.
1097
</span></li>
1102
</span></li>
1098
<li><span style="color:blue;font-size:0.8em"> in case of drag(xy|x|y) | onclick the div rectangle left to corner will be the drag-anchor of the mathml object
1103
<li><span style="color:blue;font-size:0.8em"> in case of drag(xy|x|y) | onclick the div rectangle left to corner will be the drag-anchor of the mathml object
1099
</span></li>
1104
</span></li>
1100
<li><span style="color:blue;font-size:0.8em"> can be set onclick <br />javascript:read_dragdrop(); will return click numbers of mathml-objects<br />if 4 click_able object are drawn, the reply could be 1,0,1,0 ... meaning clicked on the first and third object
1105
<li><span style="color:blue;font-size:0.8em"> can be set onclick <br />javascript:read_dragdrop(); will return click numbers of mathml-objects<br />if 4 click_able object are drawn, the reply could be 1,0,1,0 ... meaning clicked on the first and third object
Line 1114... Line 1119...
1114
<li><span style="color:blue;font-size:0.8em"> if inputfields are incorporated in mathml (with id's : id='mathml0',id='mathml1',...id='mathml_n')<br />the user_input values will be read by javascript:read_mathml();<br /><b>attention</b>: if after this mathml-input object other user-interactions are included, these will read mathml too using "read_canvas();"
1119
<li><span style="color:blue;font-size:0.8em"> if inputfields are incorporated in mathml (with id's : id='mathml0',id='mathml1',...id='mathml_n')<br />the user_input values will be read by javascript:read_mathml();<br /><b>attention</b>: if after this mathml-input object other user-interactions are included, these will read mathml too using "read_canvas();"
1115
</span></li>
1120
</span></li>
1116
<li><span style="color:blue;font-size:0.8em"> If other inputfields (command input / command textarea) or userdraw is performed, the function read_canvas() will not read mathml. Use some generic function to read it....
1121
<li><span style="color:blue;font-size:0.8em"> If other inputfields (command input / command textarea) or userdraw is performed, the function read_canvas() will not read mathml. Use some generic function to read it....
1117
</span></li>
1122
</span></li>
1118
</ul>
1123
</ul>
1119
<li><a name='mouse' href='#mouse top'> mouse color,fontsize</a><ul>
1124
<li><a name='mouse' href='#mouse top'>  mouse color,fontsize</a><ul>
1120
<li><span style="color:blue;font-size:0.8em"> will display the cursor (x:y) coordinates in 'color' and 'font size'<br /> using default fontfamily Ariel
1125
<li><span style="color:blue;font-size:0.8em"> will display the cursor (x:y) coordinates in 'color' and 'font size'<br /> using default fontfamily Ariel
1121
</span></li>
1126
</span></li>
1122
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1127
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1123
</span></li>
1128
</span></li>
1124
</ul>
1129
</ul>
1125
<li><a name='mouse_degree' href='#mouse_degree top'> mouse_degree color,fontsize</a><ul>
1130
<li><a name='mouse_degree' href='#mouse_degree top'>  mouse_degree color,fontsize</a><ul>
1126
<li><span style="color:blue;font-size:0.8em"> will display the angle in degrees between x-axis, (0:0) and the cursor (x:y) in 'color' and 'font size'<br /> using a fontfamily Ariel
1131
<li><span style="color:blue;font-size:0.8em"> will display the angle in degrees between x-axis, (0:0) and the cursor (x:y) in 'color' and 'font size'<br /> using a fontfamily Ariel
1127
</span></li>
1132
</span></li>
1128
<li><span style="color:blue;font-size:0.8em"> The angle is positive in QI and QIII and the angle value is negative in QII and QIV
1133
<li><span style="color:blue;font-size:0.8em"> The angle is positive in QI and QIII and the angle value is negative in QII and QIV
1129
</span></li>
1134
</span></li>
1130
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1135
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1131
</span></li>
1136
</span></li>
1132
</ul>
1137
</ul>
1133
<li><a name='display' href='#display top'> display TYPE,color,fontsize</a><ul>
1138
<li><a name='display' href='#display top'>  display TYPE,color,fontsize</a><ul>
1134
<li><span style="color:blue;font-size:0.8em"> TYPE may be x | y | xy | degree | radian | radius
1139
<li><span style="color:blue;font-size:0.8em"> TYPE may be x | y | xy | degree | radian | radius
1135
</span></li>
1140
</span></li>
1136
<li><span style="color:blue;font-size:0.8em"> will display the mouse cursor coordinates as x-only,y-only,(x:y),<br />the radius of a circle (this only in case 'userdraw circle(s),color')<br />or the angle in degrees or radians for commands "userdraw arc,color" or protractor , ruler (if set dynamic)
1141
<li><span style="color:blue;font-size:0.8em"> will display the mouse cursor coordinates as x-only,y-only,(x:y),<br />the radius of a circle (this only in case 'userdraw circle(s),color')<br />or the angle in degrees or radians for commands "userdraw arc,color" or protractor , ruler (if set dynamic)
1137
</span></li>
1142
</span></li>
1138
<li><span style="color:blue;font-size:0.8em"> use commands 'xunit' and / or 'yunit' to add the units to the mouse values.<br />The "degree | radian" will always have the appropriate symbol)
1143
<li><span style="color:blue;font-size:0.8em"> use commands 'xunit' and / or 'yunit' to add the units to the mouse values.<br />The "degree | radian" will always have the appropriate symbol)
1139
</span></li>
1144
</span></li>
1140
<li><span style="color:blue;font-size:0.8em"> just like commands 'mouse','mousex','mousey','mouse_degree'...only other name)
1145
<li><span style="color:blue;font-size:0.8em"> just like commands 'mouse','mousex','mousey','mouse_degree'...only other name)
1141
</span></li>
1146
</span></li>
1142
</ul>
1147
</ul>
1143
<li><a name='precision' href='#precision top'> precision int</a><ul>
1148
<li><a name='precision' href='#precision top'>  precision int</a><ul>
1144
<li><span style="color:blue;font-size:0.8em"> 1 = no decimals ; 10 = 1 decimal ; 100 = 2 decimals etc
1149
<li><span style="color:blue;font-size:0.8em"> 1 = no decimals ; 10 = 1 decimal ; 100 = 2 decimals etc
1145
</span></li>
1150
</span></li>
1146
<li><span style="color:blue;font-size:0.8em"> may be used / changed before every object
1151
<li><span style="color:blue;font-size:0.8em"> may be used / changed before every object
1147
</span></li>
1152
</span></li>
1148
<li><span style="color:blue;font-size:0.8em"> In case of user interaction (like 'userdraw' or 'multidraw') this value will be used to determine the amount of decimals in the reply / answer
1153
<li><span style="color:blue;font-size:0.8em"> In case of user interaction (like 'userdraw' or 'multidraw') this value will be used to determine the amount of decimals in the reply / answer
1149
</span></li>
1154
</span></li>
1150
</ul>
1155
</ul>
1151
<li><a name='mousex' href='#mousex top'> mousex color,fontsize</a><ul>
1156
<li><a name='mousex' href='#mousex top'>  mousex color,fontsize</a><ul>
1152
<li><span style="color:blue;font-size:0.8em"> will display the cursor x-coordinate in 'color' and 'font size'<br /> using the fontfamily Ariel
1157
<li><span style="color:blue;font-size:0.8em"> will display the cursor x-coordinate in 'color' and 'font size'<br /> using the fontfamily Ariel
1153
</span></li>
1158
</span></li>
1154
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1159
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1155
</span></li>
1160
</span></li>
1156
</ul>
1161
</ul>
1157
<li><a name='mousey' href='#mousey top'> mousey color,fontsize</a><ul>
1162
<li><a name='mousey' href='#mousey top'>  mousey color,fontsize</a><ul>
1158
<li><span style="color:blue;font-size:0.8em"> will display the cursor y-coordinate in 'color' and 'font size'<br /> using default fontfamily Ariel
1163
<li><span style="color:blue;font-size:0.8em"> will display the cursor y-coordinate in 'color' and 'font size'<br /> using default fontfamily Ariel
1159
</span></li>
1164
</span></li>
1160
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1165
<li><span style="color:blue;font-size:0.8em"> note: use command 'mouse' at the end of your script code (the same is true for command 'zoom')
1161
</span></li>
1166
</span></li>
1162
</ul>
1167
</ul>
1163
<li><a name='multidash' href='#multidash top'> multidash 0,1,1</a><ul>
1168
<li><a name='multidash' href='#multidash top'>  multidash 0,1,1</a><ul>
1164
<li><span style="color:blue;font-size:0.8em"> meaning draw objects no. 2 (circle) and 3 (segments), in the list of command like <em>'multifill points,circle,segments'</em>, are dashed
1169
<li><span style="color:blue;font-size:0.8em"> meaning draw objects no. 2 (circle) and 3 (segments), in the list of command like <em>'multifill points,circle,segments'</em>, are dashed
1165
</span></li>
1170
</span></li>
1166
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1171
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1167
</span></li>
1172
</span></li>
1168
<li><span style="color:blue;font-size:0.8em"> if not set all objects will be set 'not dashed'...<br />unless a generic keyword <em>'dashed'</em> was given before command <em>'multidraw'</em>
1173
<li><span style="color:blue;font-size:0.8em"> if not set all objects will be set 'not dashed'...<br />unless a generic keyword <em>'dashed'</em> was given before command <em>'multidraw'</em>
Line 1172... Line 1177...
1172
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1177
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1173
</span></li>
1178
</span></li>
1174
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1179
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1175
</span></li>
1180
</span></li>
1176
</ul>
1181
</ul>
1177
<li><a name='multidraw' href='#multidraw top'> multidraw obj_type_1,obj_type_2...obj_type_11</a><ul>
1182
<li><a name='multidraw' href='#multidraw top'>  multidraw obj_type_1,obj_type_2...obj_type_11</a><ul>
1178
<li><span style="color:blue;font-size:0.8em"> for simple single object user drawings you could also use command <a href="#userdraw">'userdraw'</a>
1183
<li><span style="color:blue;font-size:0.8em"> for simple single object user drawings you could also use command <a href="#userdraw">'userdraw'</a>
1179
</span></li>
1184
</span></li>
1180
<li><span style="color:blue;font-size:0.8em"> implemented obj_types:<ul><li>point | points </li><li>circle | circles </li><li>line | lines </li><li>segment | segments </li><li>arrow | arrows <br />use command 'arrowhead int' for size (default value 8 pixels)</li><li>rect | rects </li><li>closedpoly<br /><b>only one</b> closedpolygon may be drawn.The number of 'corner points' is not preset (e.g. not limited,freestyle)<br />the polygone is closed when clicking on the first point again..(+/- 10px) </li><li>triangle | triangles</li><li>parallelogram | parallelograms</li><li>poly[3-9] | polys[3-9] draw 3...9 point polygone(s): polys3 is of course triangles </li></ul>
1185
<li><span style="color:blue;font-size:0.8em"> implemented obj_types:<ul><li>point | points </li><li>circle | circles </li><li>line | lines </li><li>segment | segments </li><li>arrow | arrows <br />use command 'arrowhead int' for size (default value 8 pixels)</li><li>rect | rects </li><li>closedpoly<br /><b>only one</b> closedpolygon may be drawn.The number of 'corner points' is not preset (e.g. not limited,freestyle)<br />the polygone is closed when clicking on the first point again..(+/- 10px) </li><li>triangle | triangles</li><li>parallelogram | parallelograms</li><li>poly[3-9] | polys[3-9] draw 3...9 point polygone(s): polys3 is of course triangles </li></ul>
1181
</span></li>
1186
</span></li>
1182
<li><span style="color:blue;font-size:0.8em"> additionally objects may be user labelled, using obj_type 'text'...<br />in this case allways a text input field and if <a href='#multiuserinput'> multiuserinput=1 </a> also (x:y) inputfields will be added to the page.<br />use commands 'fontfamily' and 'fontcolor' to adjust. (command 'multistrokeopacity' may be set to adjust text opacity)<br />note: text is always centered on the mouse-click or user-input coordinates !<br />note: no keyboard listeners are used
1187
<li><span style="color:blue;font-size:0.8em"> additionally objects may be user labelled, using obj_type 'text'...<br />in this case allways a text input field and if <a href='#multiuserinput'> multiuserinput=1 </a> also (x:y) inputfields will be added to the page.<br />use commands 'fontfamily' and 'fontcolor' to adjust. (command 'multistrokeopacity' may be set to adjust text opacity)<br />note: text is always centered on the mouse-click or user-input coordinates !<br />note: no keyboard listeners are used
Line 1202... Line 1207...
1202
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: for command argument 'closedpoly' only one polygone can be drawn.<br />The last point (e.g. the point clicked near the first point) of the array is removed.
1207
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: for command argument 'closedpoly' only one polygone can be drawn.<br />The last point (e.g. the point clicked near the first point) of the array is removed.
1203
</span></li>
1208
</span></li>
1204
<li><span style="color:blue;font-size:0.8em"> <em>technical: all 10 'draw primitives' + 'text' will have their own -transparent- PNG bitmap canvas. <br />So for example there can be a points_canvas entirely separated from a line_canvas.<br />This to avoid the need for a complete redraw when something is drawn to the canvas...(eg only the object_type_canvas is redrawn)<br />This in contrast to many very slow do-it-all HTML5 canvas javascript libraries.<br />The mouselisteners are attached to the canvas-div element.</em>
1209
<li><span style="color:blue;font-size:0.8em"> <em>technical: all 10 'draw primitives' + 'text' will have their own -transparent- PNG bitmap canvas. <br />So for example there can be a points_canvas entirely separated from a line_canvas.<br />This to avoid the need for a complete redraw when something is drawn to the canvas...(eg only the object_type_canvas is redrawn)<br />This in contrast to many very slow do-it-all HTML5 canvas javascript libraries.<br />The mouselisteners are attached to the canvas-div element.</em>
1205
</span></li>
1210
</span></li>
1206
</ul>
1211
</ul>
1207
<li><a name='multilabel' href='#multilabel top'> multilabel button_label_1,button_label_2,...,button_label_8,'stop drawing text'</a><ul>
1212
<li><a name='multilabel' href='#multilabel top'>  multilabel button_label_1,button_label_2,...,button_label_8,'stop drawing text'</a><ul>
1208
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1213
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1209
</span></li>
1214
</span></li>
1210
<li><span style="color:blue;font-size:0.8em"> if not set all labels (e.g. the value='' of input type 'button') will be set by the english names for the draw_primitives (like 'point','circle'...)
1215
<li><span style="color:blue;font-size:0.8em"> if not set all labels (e.g. the value='' of input type 'button') will be set by the english names for the draw_primitives (like 'point','circle'...)
1211
</span></li>
1216
</span></li>
1212
<li><span style="color:blue;font-size:0.8em"> the 'stop drawing' button text <b>must</b> be the last item on the 'multilabel' -list <br />for example:<br /><em>multilabel punten,lijnen,Stop met Tekenen<br />multidraw points,lines</em>
1217
<li><span style="color:blue;font-size:0.8em"> the 'stop drawing' button text <b>must</b> be the last item on the 'multilabel' -list <br />for example:<br /><em>multilabel punten,lijnen,Stop met Tekenen<br />multidraw points,lines</em>
Line 1216... Line 1221...
1216
<li><span style="color:blue;font-size:0.8em"> wims will not check the amount or validity of your input
1221
<li><span style="color:blue;font-size:0.8em"> wims will not check the amount or validity of your input
1217
</span></li>
1222
</span></li>
1218
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1223
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1219
</span></li>
1224
</span></li>
1220
</ul>
1225
</ul>
1221
<li><a name='multilinewidth' href='#multilinewidth top'> multilinewidth linewidth_1,linewidth_2,...,linewidth_8</a><ul>
1226
<li><a name='multilinewidth' href='#multilinewidth top'>  multilinewidth linewidth_1,linewidth_2,...,linewidth_8</a><ul>
1222
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1227
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1223
</span></li>
1228
</span></li>
1224
<li><span style="color:blue;font-size:0.8em"> if not set all line width will be set by a previous command <em>'linewidth int'</em>
1229
<li><span style="color:blue;font-size:0.8em"> if not set all line width will be set by a previous command <em>'linewidth int'</em>
1225
</span></li>
1230
</span></li>
1226
<li><span style="color:blue;font-size:0.8em"> use these up to 7 different line widths for the draw primitives used by command <em>'multidraw obj_type_1,obj_type_2...obj_type_7</em>
1231
<li><span style="color:blue;font-size:0.8em"> use these up to 7 different line widths for the draw primitives used by command <em>'multidraw obj_type_1,obj_type_2...obj_type_7</em>
Line 1228... Line 1233...
1228
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1233
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1229
</span></li>
1234
</span></li>
1230
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1235
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1231
</span></li>
1236
</span></li>
1232
</ul>
1237
</ul>
1233
<li><a name='multifill' href='#multifill top'> multifill 0,0,1,0,1,0,0</a><ul>
1238
<li><a name='multifill' href='#multifill top'>  multifill 0,0,1,0,1,0,0</a><ul>
1234
<li><span style="color:blue;font-size:0.8em"> meaning draw objects no. 3 and 5, in the list of command 'multifill', are filled<br />(if the object is fillable...and not a line,segment,arrow or point...)
1239
<li><span style="color:blue;font-size:0.8em"> meaning draw objects no. 3 and 5, in the list of command 'multifill', are filled<br />(if the object is fillable...and not a line,segment,arrow or point...)
1235
</span></li>
1240
</span></li>
1236
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1241
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1237
</span></li>
1242
</span></li>
1238
<li><span style="color:blue;font-size:0.8em"> if not set all objects -except point|points- will be set 'not filled'...<br />unless a command 'filled' was given before command 'multifill'
1243
<li><span style="color:blue;font-size:0.8em"> if not set all objects -except point|points- will be set 'not filled'...<br />unless a command 'filled' was given before command 'multifill'
Line 1242... Line 1247...
1242
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1247
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1243
</span></li>
1248
</span></li>
1244
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1249
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1245
</span></li>
1250
</span></li>
1246
</ul>
1251
</ul>
1247
<li><a name='multifillcolors' href='#multifillcolors top'> multifillcolors color_name_1,color_name_2,...,color_name_8</a><ul>
1252
<li><a name='multifillcolors' href='#multifillcolors top'>  multifillcolors color_name_1,color_name_2,...,color_name_8</a><ul>
1248
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1253
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1249
</span></li>
1254
</span></li>
1250
<li><span style="color:blue;font-size:0.8em"> if not set all fillcolors (for circle | triangle | poly[3-9] | closedpoly ) will be 'stroke_color' , 'fill_opacity'
1255
<li><span style="color:blue;font-size:0.8em"> if not set all fillcolors (for circle | triangle | poly[3-9] | closedpoly ) will be 'stroke_color' , 'fill_opacity'
1251
</span></li>
1256
</span></li>
1252
<li><span style="color:blue;font-size:0.8em"> use these up to 6 colors for the draw primitives used by command 'multidraw obj_type_1,obj_type_2...obj_type_n
1257
<li><span style="color:blue;font-size:0.8em"> use these up to 6 colors for the draw primitives used by command 'multidraw obj_type_1,obj_type_2...obj_type_n
Line 1256... Line 1261...
1256
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1261
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1257
</span></li>
1262
</span></li>
1258
<li><span style="color:blue;font-size:0.8em"> can also be used with command <a href='#userdraw'>'userdraw clickfill,color'</a> when more than one fillcolor is wanted.<br />in that case use for example <a href='#replyformat'>replyformat 10</a> ... reply=x1:y1:color1,x2:y2:color2...<br />the colors will restart at the first color, when there are more fill-clicks than multi-fill-colors<br />if more control over the used colours is wanted , see command <a href='#colorpalette'>colorpalette color1,color2...</a>
1263
<li><span style="color:blue;font-size:0.8em"> can also be used with command <a href='#userdraw'>'userdraw clickfill,color'</a> when more than one fillcolor is wanted.<br />in that case use for example <a href='#replyformat'>replyformat 10</a> ... reply=x1:y1:color1,x2:y2:color2...<br />the colors will restart at the first color, when there are more fill-clicks than multi-fill-colors<br />if more control over the used colours is wanted , see command <a href='#colorpalette'>colorpalette color1,color2...</a>
1259
</span></li>
1264
</span></li>
1260
</ul>
1265
</ul>
1261
<li><a name='multifillopacity' href='#multifillopacity top'> multifillopacity fill_opacity_1,fill_opacity_2,...,fill_opacity_8</a><ul>
1266
<li><a name='multifillopacity' href='#multifillopacity top'>  multifillopacity fill_opacity_1,fill_opacity_2,...,fill_opacity_8</a><ul>
1262
<li><span style="color:blue;font-size:0.8em"> float values 0 - 1 or integer values 0 - 255
1267
<li><span style="color:blue;font-size:0.8em"> float values 0 - 1 or integer values 0 - 255
1263
</span></li>
1268
</span></li>
1264
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1269
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1265
</span></li>
1270
</span></li>
1266
<li><span style="color:blue;font-size:0.8em"> if not set all fill opacity_ will be set by previous command <em>'opacity int,int'</em> and keyword <em>'filled'</em>
1271
<li><span style="color:blue;font-size:0.8em"> if not set all fill opacity_ will be set by previous command <em>'opacity int,int'</em> and keyword <em>'filled'</em>
Line 1270... Line 1275...
1270
<li><span style="color:blue;font-size:0.8em"> wims will not check the amount or validity of your input
1275
<li><span style="color:blue;font-size:0.8em"> wims will not check the amount or validity of your input
1271
</span></li>
1276
</span></li>
1272
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1277
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1273
</span></li>
1278
</span></li>
1274
</ul>
1279
</ul>
1275
<li><a name='multisnaptogrid' href='#multisnaptogrid top'> multisnaptogrid 0,1,1</a><ul>
1280
<li><a name='multisnaptogrid' href='#multisnaptogrid top'>  multisnaptogrid 0,1,1</a><ul>
1276
<li><span style="color:blue;font-size:0.8em"> meaning draw objects no. 2 (circle) and 3 (segments), in the list of command like <em>'multifill points,circle,segments'</em>, will snap to the xy-grid (default 1 in x/y-coordinate system: see command <a href='#snaptogrid'>'snaptogrid'</a>)
1281
<li><span style="color:blue;font-size:0.8em"> meaning draw objects no. 2 (circle) and 3 (segments), in the list of command like <em>'multifill points,circle,segments'</em>, will snap to the xy-grid (default 1 in x/y-coordinate system: see command <a href='#snaptogrid'>'snaptogrid'</a>)
1277
</span></li>
1282
</span></li>
1278
<li><span style="color:blue;font-size:0.8em"> only the x-values snap_to_grid: <em>multisnaptogrid 0,2,2</em>
1283
<li><span style="color:blue;font-size:0.8em"> only the x-values snap_to_grid: <em>multisnaptogrid 0,2,2</em>
1279
</span></li>
1284
</span></li>
1280
<li><span style="color:blue;font-size:0.8em"> only the y-values snap_to_grid: <em>multisnaptogrid 0,3,3</em>
1285
<li><span style="color:blue;font-size:0.8em"> only the y-values snap_to_grid: <em>multisnaptogrid 0,3,3</em>
Line 1290... Line 1295...
1290
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1295
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1291
</span></li>
1296
</span></li>
1292
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1297
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of 0 or 1's matches the amount of draw primitives...
1293
</span></li>
1298
</span></li>
1294
</ul>
1299
</ul>
1295
<li><a name='multistrokecolors' href='#multistrokecolors top'> multistrokecolors color_name_1,color_name_2,...,color_name_8</a><ul>
1300
<li><a name='multistrokecolors' href='#multistrokecolors top'>  multistrokecolors color_name_1,color_name_2,...,color_name_8</a><ul>
1296
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1301
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1297
</span></li>
1302
</span></li>
1298
<li><span style="color:blue;font-size:0.8em"> if not set all colors will be 'stroke_color' , 'stroke_opacity'
1303
<li><span style="color:blue;font-size:0.8em"> if not set all colors will be 'stroke_color' , 'stroke_opacity'
1299
</span></li>
1304
</span></li>
1300
<li><span style="color:blue;font-size:0.8em"> use these up to 6 colors for the draw primitives used by command <em>'multidraw obj_type_1,obj_type_2...obj_type_7</em>
1305
<li><span style="color:blue;font-size:0.8em"> use these up to 6 colors for the draw primitives used by command <em>'multidraw obj_type_1,obj_type_2...obj_type_7</em>
Line 1302... Line 1307...
1302
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of colours matches the amount of draw primitives...
1307
<li><span style="color:blue;font-size:0.8em"> wims will <b>not</b> check if the number of colours matches the amount of draw primitives...
1303
</span></li>
1308
</span></li>
1304
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1309
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1305
</span></li>
1310
</span></li>
1306
</ul>
1311
</ul>
1307
<li><a name='multistrokeopacity' href='#multistrokeopacity top'> multistrokeopacity stroke_opacity_1,stroke_opacity_2,...,stroke_opacity_7</a><ul>
1312
<li><a name='multistrokeopacity' href='#multistrokeopacity top'>  multistrokeopacity stroke_opacity_1,stroke_opacity_2,...,stroke_opacity_7</a><ul>
1308
<li><span style="color:blue;font-size:0.8em"> float values 0 - 1 or integer values 0 - 255
1313
<li><span style="color:blue;font-size:0.8em"> float values 0 - 1 or integer values 0 - 255
1309
</span></li>
1314
</span></li>
1310
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1315
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1311
</span></li>
1316
</span></li>
1312
<li><span style="color:blue;font-size:0.8em"> if not set all stroke opacity_ will be set by previous command <em>'opacity int,int'</em>
1317
<li><span style="color:blue;font-size:0.8em"> if not set all stroke opacity_ will be set by previous command <em>'opacity int,int'</em>
Line 1316... Line 1321...
1316
<li><span style="color:blue;font-size:0.8em"> wims will not check the amount or validity of your input
1321
<li><span style="color:blue;font-size:0.8em"> wims will not check the amount or validity of your input
1317
</span></li>
1322
</span></li>
1318
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1323
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1319
</span></li>
1324
</span></li>
1320
</ul>
1325
</ul>
1321
<li><a name='multiuserinput' href='#multiuserinput top'> multiuserinput 0,1,1,0</a><ul>
1326
<li><a name='multiuserinput' href='#multiuserinput top'>  multiuserinput 0,1,1,0</a><ul>
1322
<li><span style="color:blue;font-size:0.8em"> meaning, when the command 'multidraw' is used <br />multidraw circles,points,lines,triangles<br />objects 'points' and 'lines' may additionally be 'drawn' by direct input (inputfields)<br/>all other objects must be drawn with a mouse
1327
<li><span style="color:blue;font-size:0.8em"> meaning, when the command 'multidraw' is used <br />multidraw circles,points,lines,triangles<br />objects 'points' and 'lines' may additionally be 'drawn' by direct input (inputfields)<br/>all other objects must be drawn with a mouse
1323
</span></li>
1328
</span></li>
1324
<li><span style="color:blue;font-size:0.8em"> in case of circle | circles a third inputfield for Radius (R) is added.<br />the radius must be in the x/y coordinate system (x-range) and <b>not</b> in pixels...students don't think in pixels.<br />note: R-values will not snap-to-grid
1329
<li><span style="color:blue;font-size:0.8em"> in case of circle | circles a third inputfield for Radius (R) is added.<br />the radius must be in the x/y coordinate system (x-range) and <b>not</b> in pixels...students don't think in pixels.<br />note: R-values will not snap-to-grid
1325
</span></li>
1330
</span></li>
1326
<li><span style="color:blue;font-size:0.8em"> in case of line(s) | segment(s) | arrow(s) the user should write <b>x1:y1</b> in the first inputfield and <b/>x2:y2</b> in the second.<br />These 'hints' are pre-filled into the input field.<br />other coordinate delimiters are ";" and "," e.g. <b>x1;y1</b> or <b>x1,y1</b>.<br />An error message (alert box) will popup when things are not correctly...
1331
<li><span style="color:blue;font-size:0.8em"> in case of line(s) | segment(s) | arrow(s) the user should write <b>x1:y1</b> in the first inputfield and <b/>x2:y2</b> in the second.<br />These 'hints' are pre-filled into the input field.<br />other coordinate delimiters are ";" and "," e.g. <b>x1;y1</b> or <b>x1,y1</b>.<br />An error message (alert box) will popup when things are not correctly...
Line 1340... Line 1345...
1340
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1345
<li><span style="color:blue;font-size:0.8em"> use before command <a href='#multidraw'>'multidraw'</a>
1341
</span></li>
1346
</span></li>
1342
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1347
<li><span style="color:blue;font-size:0.8em"> always use the same sequence as is used for 'multidraw'
1343
</span></li>
1348
</span></li>
1344
</ul>
1349
</ul>
1345
<li><a name='noaxis' href='#noaxis top'> noaxis</a><ul>
1350
<li><a name='noaxis' href='#noaxis top'>  noaxis</a><ul>
1346
<li><span style="color:blue;font-size:0.8em"> keyword
1351
<li><span style="color:blue;font-size:0.8em"> keyword
1347
</span></li>
1352
</span></li>
1348
<li><span style="color:blue;font-size:0.8em"> if set, the automatic x-axis numbering will be ignored
1353
<li><span style="color:blue;font-size:0.8em"> if set, the automatic x-axis numbering will be ignored
1349
</span></li>
1354
</span></li>
1350
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have a visual x/y-axis lines (see command <a href="grid">grid</a>
1355
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have a visual x/y-axis lines (see command <a href="grid">grid</a>
1351
</span></li>
1356
</span></li>
1352
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
1357
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
1353
</span></li>
1358
</span></li>
1354
</ul>
1359
</ul>
1355
<li><a name='noayis' href='#noayis top'> noayis</a><ul>
1360
<li><a name='noayis' href='#noayis top'>  noayis</a><ul>
1356
<li><span style="color:blue;font-size:0.8em"> keyword
1361
<li><span style="color:blue;font-size:0.8em"> keyword
1357
</span></li>
1362
</span></li>
1358
<li><span style="color:blue;font-size:0.8em"> if set, the automatic y-axis numbering will be ignored
1363
<li><span style="color:blue;font-size:0.8em"> if set, the automatic y-axis numbering will be ignored
1359
</span></li>
1364
</span></li>
1360
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have a visual x/y-axis lines (see command <a href="grid">grid</a>
1365
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have a visual x/y-axis lines (see command <a href="grid">grid</a>
1361
</span></li>
1366
</span></li>
1362
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
1367
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
1363
</span></li>
1368
</span></li>
1364
</ul>
1369
</ul>
1365
<li><a name='numberline' href='#numberline top'> numberline x0,x1,xmajor,xminor,y0,y1</a><ul>
1370
<li><a name='numberline' href='#numberline top'>  numberline x0,x1,xmajor,xminor,y0,y1</a><ul>
1366
<li><span style="color:blue;font-size:0.8em"> numberline is using xrange/yrange system for all dimensions
1371
<li><span style="color:blue;font-size:0.8em"> numberline is using xrange/yrange system for all dimensions
1367
</span></li>
1372
</span></li>
1368
<li><span style="color:blue;font-size:0.8em"> multiple numberlines are allowed ; combinations with command <a href='#grid'>grid</a> is allowed; multiples commands <a href='#xaxis'>xaxis numbering</a> are allowed
1373
<li><span style="color:blue;font-size:0.8em"> multiple numberlines are allowed ; combinations with command <a href='#grid'>grid</a> is allowed; multiples commands <a href='#xaxis'>xaxis numbering</a> are allowed
1369
</span></li>
1374
</span></li>
1370
<li><span style="color:blue;font-size:0.8em"> x0 is start x-value in xrange
1375
<li><span style="color:blue;font-size:0.8em"> x0 is start x-value in xrange
Line 1394... Line 1399...
1394
<li><span style="color:blue;font-size:0.8em"> <a href="#snaptogrid">snaptogrid, snaptopoints etc</a> and <a href="#zoom">zooming and panning</a> is supported
1399
<li><span style="color:blue;font-size:0.8em"> <a href="#snaptogrid">snaptogrid, snaptopoints etc</a> and <a href="#zoom">zooming and panning</a> is supported
1395
</span></li>
1400
</span></li>
1396
<li><span style="color:blue;font-size:0.8em"> onclick and dragging of the numberline are not -yet- supported
1401
<li><span style="color:blue;font-size:0.8em"> onclick and dragging of the numberline are not -yet- supported
1397
</span></li>
1402
</span></li>
1398
</ul>
1403
</ul>
1399
<li><a name='opacity' href='#opacity top'> opacity 0-255,0-255</a><ul>
1404
<li><a name='opacity' href='#opacity top'>  opacity 0-255,0-255</a><ul>
1400
<li><span style="color:blue;font-size:0.8em"> opacity 0.0 - 1.0,0.0 - 1.0
1405
<li><span style="color:blue;font-size:0.8em"> opacity 0.0 - 1.0,0.0 - 1.0
1401
</span></li>
1406
</span></li>
1402
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='transparent' href='#transparent top'>transparent</a></span></li>
1407
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='transparent' href='#transparent top'>transparent</a></span></li>
1403
<li><span style="color:blue;font-size:0.8em"> first item is stroke opacity, second is fill opacity
1408
<li><span style="color:blue;font-size:0.8em"> first item is stroke opacity, second is fill opacity
1404
</span></li>
1409
</span></li>
1405
</ul>
1410
</ul>
1406
<li><a name='onclick' href='#onclick top'> onclick</a><ul>
1411
<li><a name='onclick' href='#onclick top'>  onclick</a><ul>
1407
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
1412
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
1408
</span></li>
1413
</span></li>
1409
<li><span style="color:blue;font-size:0.8em"> if the next object is clicked, its 'object onclick_or_drag sequence number' in fly script is returned <br /> by javascript:read_canvas();
1414
<li><span style="color:blue;font-size:0.8em"> if the next object is clicked, its 'object onclick_or_drag sequence number' in fly script is returned <br /> by javascript:read_canvas();
1410
</span></li>
1415
</span></li>
1411
<li><span style="color:blue;font-size:0.8em"> onclick seqeuence numbering starts at '0'.<br />e.g. if there are 6 objects set onclick, the first onclick object will have id-number '0', the last id-number '5'
1416
<li><span style="color:blue;font-size:0.8em"> onclick seqeuence numbering starts at '0'.<br />e.g. if there are 6 objects set onclick, the first onclick object will have id-number '0', the last id-number '5'
Line 1417... Line 1422...
1417
<li><span style="color:blue;font-size:0.8em"> onclick and <a href="#drag">drag x|y|xy</a> may be combined in a single flyscript <br />(although a single object can <b>not</b> be onclick and draggable at the same time...)
1422
<li><span style="color:blue;font-size:0.8em"> onclick and <a href="#drag">drag x|y|xy</a> may be combined in a single flyscript <br />(although a single object can <b>not</b> be onclick and draggable at the same time...)
1418
</span></li>
1423
</span></li>
1419
<li><span style="color:blue;font-size:0.8em"> note: not all objects may be set onclick
1424
<li><span style="color:blue;font-size:0.8em"> note: not all objects may be set onclick
1420
</span></li>
1425
</span></li>
1421
</ul>
1426
</ul>
1422
<li><a name='parallel' href='#parallel top'> parallel x1,y1,x2,y2,dx,dy,n,[colorname or #hexcolor]</a><ul>
1427
<li><a name='parallel' href='#parallel top'>  parallel x1,y1,x2,y2,dx,dy,n,[colorname or #hexcolor]</a><ul>
1423
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy"
1428
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy"
1424
</span></li>
1429
</span></li>
1425
</ul>
1430
</ul>
1426
<li><a name='plotsteps' href='#plotsteps top'> plotsteps a_number</a><ul>
1431
<li><a name='plotsteps' href='#plotsteps top'>  plotsteps a_number</a><ul>
1427
<li><span style="color:blue;font-size:0.8em"> default 150
1432
<li><span style="color:blue;font-size:0.8em"> default 150
1428
</span></li>
1433
</span></li>
1429
<li><span style="color:blue;font-size:0.8em"> only used for commands <a href="#curve">"curve / plot"</a> and <a href="#levelcurve">"levelcurve"</a>
1434
<li><span style="color:blue;font-size:0.8em"> only used for commands <a href="#curve">"curve / plot"</a> and <a href="#levelcurve">"levelcurve"</a>
1430
</span></li>
1435
</span></li>
1431
<li><span style="color:blue;font-size:0.8em"> use with care !
1436
<li><span style="color:blue;font-size:0.8em"> use with care !
1432
</span></li>
1437
</span></li>
1433
</ul>
1438
</ul>
1434
<li><a name='point' href='#point top'> point x,y,color</a><ul>
1439
<li><a name='point' href='#point top'>  point x,y,color</a><ul>
1435
<li><span style="color:blue;font-size:0.8em"> draw a single point at (x;y) in color 'color'
1440
<li><span style="color:blue;font-size:0.8em"> draw a single point at (x;y) in color 'color'
1436
</span></li>
1441
</span></li>
1437
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
1442
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
1438
</span></li>
1443
</span></li>
1439
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1444
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
Line 1441... Line 1446...
1441
<li><span style="color:blue;font-size:0.8em"> will not resize on zooming <br />(command 'circle x,y,r,color' will resize on zooming)
1446
<li><span style="color:blue;font-size:0.8em"> will not resize on zooming <br />(command 'circle x,y,r,color' will resize on zooming)
1442
</span></li>
1447
</span></li>
1443
<li><span style="color:blue;font-size:0.8em"> attention: in case of command <a href="#rotate">'rotate angle'</a> a point has rotation center (0:0) in x/y-range
1448
<li><span style="color:blue;font-size:0.8em"> attention: in case of command <a href="#rotate">'rotate angle'</a> a point has rotation center (0:0) in x/y-range
1444
</span></li>
1449
</span></li>
1445
</ul>
1450
</ul>
1446
<li><a name='points' href='#points top'> points color,x1,y1,x2,y2,...,x_n,y_n</a><ul>
1451
<li><a name='points' href='#points top'>  points color,x1,y1,x2,y2,...,x_n,y_n</a><ul>
1447
<li><span style="color:blue;font-size:0.8em"> draw multiple points at given coordinates in color 'color'
1452
<li><span style="color:blue;font-size:0.8em"> draw multiple points at given coordinates in color 'color'
1448
</span></li>
1453
</span></li>
1449
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
1454
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
1450
</span></li>
1455
</span></li>
1451
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
1456
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
1452
</span></li>
1457
</span></li>
1453
<li><span style="color:blue;font-size:0.8em"> attention: in case of command <a href="#rotate">'rotate angle'</a> the points have rotation center (0:0) in x/y-range
1458
<li><span style="color:blue;font-size:0.8em"> attention: in case of command <a href="#rotate">'rotate angle'</a> the points have rotation center (0:0) in x/y-range
1454
</span></li>
1459
</span></li>
1455
</ul>
1460
</ul>
1456
<li><a name='poly' href='#poly top'> poly color,x1,y1,x2,y2...x_n,y_n</a><ul>
1461
<li><a name='poly' href='#poly top'>  poly color,x1,y1,x2,y2...x_n,y_n</a><ul>
1457
<li><span style="color:blue;font-size:0.8em"> polygon color,x1,y1,x2,y2...x_n,y_n
1462
<li><span style="color:blue;font-size:0.8em"> polygon color,x1,y1,x2,y2...x_n,y_n
1458
</span></li>
1463
</span></li>
1459
<li><span style="color:blue;font-size:0.8em"> draw closed polygon
1464
<li><span style="color:blue;font-size:0.8em"> draw closed polygon
1460
</span></li>
1465
</span></li>
1461
<li><span style="color:blue;font-size:0.8em"> use command 'fpoly' to fill it or use keyword <a href='#filled'>'filled'</a>
1466
<li><span style="color:blue;font-size:0.8em"> use command 'fpoly' to fill it or use keyword <a href='#filled'>'filled'</a>
1462
</span></li>
1467
</span></li>
1463
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1468
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1464
</span></li>
1469
</span></li>
1465
</ul>
1470
</ul>
1466
<li><a name='polyline' href='#polyline top'> polyline color,x1,y1,x2,y2...x_n,y_n</a><ul>
1471
<li><a name='polyline' href='#polyline top'>  polyline color,x1,y1,x2,y2...x_n,y_n</a><ul>
1467
<li><span style="color:blue;font-size:0.8em"> brokenline color,x1,y1,x2,y2...x_n,y_n
1472
<li><span style="color:blue;font-size:0.8em"> brokenline color,x1,y1,x2,y2...x_n,y_n
1468
</span></li>
1473
</span></li>
1469
<li><span style="color:blue;font-size:0.8em"> path color,x1,y1,x2,y2...x_n,y_n
1474
<li><span style="color:blue;font-size:0.8em"> path color,x1,y1,x2,y2...x_n,y_n
1470
</span></li>
1475
</span></li>
1471
<li><span style="color:blue;font-size:0.8em"> remark: there is <b>no</b> command polylines | brokenlines | paths ... just use multiple commands "polyline ,x1,y1,x2,y2...x_n,y_n"
1476
<li><span style="color:blue;font-size:0.8em"> remark: there is <b>no</b> command polylines | brokenlines | paths ... just use multiple commands "polyline ,x1,y1,x2,y2...x_n,y_n"
Line 1477... Line 1482...
1477
<li><span style="color:blue;font-size:0.8em"> use command <a href='#segments'>'segments'</a> for a series of segments.<br />these may be clicked/dragged individually
1482
<li><span style="color:blue;font-size:0.8em"> use command <a href='#segments'>'segments'</a> for a series of segments.<br />these may be clicked/dragged individually
1478
</span></li>
1483
</span></li>
1479
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1484
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1480
</span></li>
1485
</span></li>
1481
</ul>
1486
</ul>
1482
<li><a name='popup' href='#popup top'> popup</a><ul>
1487
<li><a name='popup' href='#popup top'>  popup</a><ul>
1483
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments)
1488
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments)
1484
</span></li>
1489
</span></li>
1485
<li><span style="color:blue;font-size:0.8em"> if fly-script starts with keyword 'popup', the canvas image will be exclusively in a popup window (xsize px &times; ysize px)
1490
<li><span style="color:blue;font-size:0.8em"> if fly-script starts with keyword 'popup', the canvas image will be exclusively in a popup window (xsize px &times; ysize px)
1486
</span></li>
1491
</span></li>
1487
<li><span style="color:blue;font-size:0.8em"> if keyword 'popup' is used after command 'size xsize,ysize' the canvas will also be displayed in a popup window with size 'xsize &times; ysize'
1492
<li><span style="color:blue;font-size:0.8em"> if keyword 'popup' is used after command 'size xsize,ysize' the canvas will also be displayed in a popup window with size 'xsize &times; ysize'
Line 1489... Line 1494...
1489
<li><span style="color:blue;font-size:0.8em"> the popup window will be embedded into the page as a 'normal' image , when 'status=done' ; override with keyword <a href="#status"> 'nostatus'</a>
1494
<li><span style="color:blue;font-size:0.8em"> the popup window will be embedded into the page as a 'normal' image , when 'status=done' ; override with keyword <a href="#status"> 'nostatus'</a>
1490
</span></li>
1495
</span></li>
1491
<li><span style="color:blue;font-size:0.8em"> to access the read_canvas and read_dragdrop functions in a popup window, use:<br /><em><br /> function read_all(){<br /> if( typeof popup !== 'undefined' ){<br /> var fun1 = popup['read_dragdrop'+canvas_scripts[0]];<br /> var fun2 = popup['read_canvas'+canvas_scripts[0]];<br /> popup.close();<br /> return "dragdrop="+fun1()+"\ncanvas="+fun2();<br /> };<br /></em>
1496
<li><span style="color:blue;font-size:0.8em"> to access the read_canvas and read_dragdrop functions in a popup window, use:<br /><em><br /> function read_all(){<br /> if( typeof popup !== 'undefined' ){<br /> var fun1 = popup['read_dragdrop'+canvas_scripts[0]];<br /> var fun2 = popup['read_canvas'+canvas_scripts[0]];<br /> popup.close();<br /> return "dragdrop="+fun1()+"\ncanvas="+fun2();<br /> };<br /></em>
1492
</span></li>
1497
</span></li>
1493
<li><span style="color:blue;font-size:0.8em"> to set a canvasdraw produced <a href="#clock">clock</a> or multiple clocks...use something like:<br /><em>popup.set_clock(clock_id,type,diff);</em><br />as js-function for a button (or something else) in your document page.<br />wherein <b>clock_id</b> starts with 0 for the first clock<br /><b>type</b> is 1 for Hours,2 for Minutes and 3 for Seconds<br /><b>diff</b> is the increment (positive or negative) per click
1498
<li><span style="color:blue;font-size:0.8em"> to set a canvasdraw produced <a href="#clock">clock</a> or multiple clocks...use something like:<br /><em>popup.set_clock(clock_id,type,diff);</em><br />as js-function for a button (or something else) in your document page.<br />wherein <b>clock_id</b> starts with 0 for the first clock<br /><b>type</b> is 1 for Hours,2 for Minutes and 3 for Seconds<br /><b>diff</b> is the increment (positive or negative) per click
1494
</span></li>
1499
</span></li>
1495
</ul>
1500
</ul>
1496
<li><a name='protractor' href='#protractor top'> protractor x,y,x_width,type,mode,use_a_scale</a><ul>
1501
<li><a name='protractor' href='#protractor top'>  protractor x,y,x_width,type,mode,use_a_scale</a><ul>
1497
<li><span style="color:blue;font-size:0.8em"> x,y are the initial location
1502
<li><span style="color:blue;font-size:0.8em"> x,y are the initial location
1498
</span></li>
1503
</span></li>
1499
<li><span style="color:blue;font-size:0.8em"> x_width : give the width in x-coordinate system (e.g. not in pixels !)
1504
<li><span style="color:blue;font-size:0.8em"> x_width : give the width in x-coordinate system (e.g. not in pixels !)
1500
</span></li>
1505
</span></li>
1501
<li><span style="color:blue;font-size:0.8em"> type = 1 : a triangle range 0 - 180<br />type = 2 : a circle shape 0 - 360
1506
<li><span style="color:blue;font-size:0.8em"> type = 1 : a triangle range 0 - 180<br />type = 2 : a circle shape 0 - 360
1502
</span></li>
1507
</span></li>
1503
<li><span style="color:blue;font-size:0.8em"> mode : use -1 to set the protractor interactive (mouse movement of protractor)<br />use mode = '0&deg; - 360&deg;' to set the protractor with a static angle of some value
1508
<li><span style="color:blue;font-size:0.8em"> mode : use -1 to set the protractor interactive (mouse movement of protractor)<br />use mode = '0&deg; - 360&deg;' to set the protractor with a static angle of some value
1504
</span></li>
1509
</span></li>
1505
<li><span style="color:blue;font-size:0.8em"> if the value of the user_rotation angle is to be shown...use command <a href='#display'>display degree,color,fontsize</a><a href='#display'>display radian,color,fontsize</a>
1510
<li><span style="color:blue;font-size:0.8em"> if the value of the user_rotation angle is to be shown...use command <a href='#display'>display degree,color,fontsize</a><a href='#display'>display radian,color,fontsize</a>
1506
</span></li>
1511
</span></li>
1507
<li><span style="color:blue;font-size:0.8em"> use_scale = 1 : the protractor will have some scale values printed; use_scale=0 to disable
1512
<li><span style="color:blue;font-size:0.8em"> use_scale = 1 : the protractor will have some scale values printed; use_scale=0 to disable
1508
</span></li>
1513
</span></li>
1509
<li><span style="color:blue;font-size:0.8em"> the rotating direction of the mouse around the protractor determines the clockwise/ counter clockwise rotation of the protractor...
1514
<li><span style="color:blue;font-size:0.8em"> the rotating direction of the mouse around the protractor determines the clockwise/ counter clockwise rotation of the protractor...
1510
</span></li>
1515
</span></li>
1511
<li><span style="color:blue;font-size:0.8em"> commands <em>stroke_color | fill_color | linewidth | opacity | font_family</em> will determine the looks of the protractor.
1516
<li><span style="color:blue;font-size:0.8em"> commands <em>stroke_color | fill_color | linewidth | opacity | font_family</em> will determine the looks of the protractor.
1512
</span></li>
1517
</span></li>
1513
<li><span style="color:blue;font-size:0.8em"> default replyformat: reply[0] = x;reply[1] = y;reply[2] = angle_in_radians<br />use command 'precision' to set the reply precision.
1518
<li><span style="color:blue;font-size:0.8em"> default replyformat: reply[0] = x;reply[1] = y;reply[2] = angle_in_radians<br />use command 'precision' to set the reply precision.
1514
</span></li>
1519
</span></li>
1515
<li><span style="color:blue;font-size:0.8em"> if combined with a ruler, use replyformat = 32
1520
<li><span style="color:blue;font-size:0.8em"> if combined with a ruler, use replyformat = 32
1516
</span></li>
1521
</span></li>
1517
<li><span style="color:blue;font-size:0.8em"> command <em>snap_to_grid</em> may be used to assist the pupil at placing the protractor
1522
<li><span style="color:blue;font-size:0.8em"> command <em>snap_to_grid</em> may be used to assist the pupil at placing the protractor
1518
</span></li>
1523
</span></li>
1519
<li><span style="color:blue;font-size:0.8em"> when using command 'zoom' , pay <b>attention</b> to the size and symmetry of your canvas<br />...to avoid a partial image, locate the start position near the center of the visual canvas<br /><em>technical:<br /> the actual 'protractor' is just a static generated image in a new canvas-memory<br />This image is only generated once, and a copy of its bitmap is translated & rotated onto the visible canvas.<br />That is the reason for the 'high-speed dragging and rotating'.<br />I've limited its size to xsize &times; ysize e.g. the same size as the visual canvas... </em>
1524
<li><span style="color:blue;font-size:0.8em"> when using command 'zoom' , pay <b>attention</b> to the size and symmetry of your canvas<br />...to avoid a partial image, locate the start position near the center of the visual canvas<br /><em>technical:<br /> the actual 'protractor' is just a static generated image in a new canvas-memory<br />This image is only generated once, and a copy of its bitmap is translated & rotated onto the visible canvas.<br />That is the reason for the 'high-speed dragging and rotating'.<br />I've limited its size to xsize &times; ysize e.g. the same size as the visual canvas... </em>
1520
</span></li>
1525
</span></li>
1521
<li><span style="color:blue;font-size:0.8em"> only one protractor allowed (for the time being)
1526
<li><span style="color:blue;font-size:0.8em"> only one protractor allowed (for the time being)
1522
</span></li>
1527
</span></li>
1523
<li><span style="color:blue;font-size:0.8em"> usage: first left click on the protractor will activate dragging;<br />a second left click will activate rotating (just move mouse around)<br />a third click will freeze this position and the x/y-coordinate and angle in radians will be stored in reply(3)<br />a next click will restart this sequence...
1528
<li><span style="color:blue;font-size:0.8em"> usage: first left click on the protractor will activate dragging;<br />a second left click will activate rotating (just move mouse around)<br />a third click will freeze this position and the x/y-coordinate and angle in radians will be stored in reply(3)<br />a next click will restart this sequence...
1524
</span></li>
1529
</span></li>
1525
</ul>
1530
</ul>
1526
<li><a name='pixels' href='#pixels top'> pixels color,x1,y1,x2,y2,x3,y3...</a><ul>
1531
<li><a name='pixels' href='#pixels top'>  pixels color,x1,y1,x2,y2,x3,y3...</a><ul>
1527
<li><span style="color:blue;font-size:0.8em"> draw rectangular "points" with diameter 1 pixel
1532
<li><span style="color:blue;font-size:0.8em"> draw rectangular "points" with diameter 1 pixel
1528
</span></li>
1533
</span></li>
1529
<li><span style="color:blue;font-size:0.8em"> pixels can <b>not</b> be dragged or clicked
1534
<li><span style="color:blue;font-size:0.8em"> pixels can <b>not</b> be dragged or clicked
1530
</span></li>
1535
</span></li>
1531
<li><span style="color:blue;font-size:0.8em"> "pixelsize = 1" may be changed by command "pixelsize int"
1536
<li><span style="color:blue;font-size:0.8em"> "pixelsize = 1" may be changed by command "pixelsize int"
1532
</span></li>
1537
</span></li>
1533
</ul>
1538
</ul>
1534
<li><a name='pixelsize' href='#pixelsize top'> pixelsize int</a><ul>
1539
<li><a name='pixelsize' href='#pixelsize top'>  pixelsize int</a><ul>
1535
<li><span style="color:blue;font-size:0.8em"> in case you want to deviate from default pixelsize = 1(...)
1540
<li><span style="color:blue;font-size:0.8em"> in case you want to deviate from default pixelsize = 1(...)
1536
</span></li>
1541
</span></li>
1537
</ul>
1542
</ul>
1538
<li><a name='piechart' href='#piechart top'> piechart xc,yc,radius,'data+colorlist'</a><ul>
1543
<li><a name='piechart' href='#piechart top'>  piechart xc,yc,radius,'data+colorlist'</a><ul>
1539
<li><span style="color:blue;font-size:0.8em"> (xc : yc) center of circle diagram in xrange/yrange
1544
<li><span style="color:blue;font-size:0.8em"> (xc : yc) center of circle diagram in xrange/yrange
1540
</span></li>
1545
</span></li>
1541
<li><span style="color:blue;font-size:0.8em"> radius in pixels
1546
<li><span style="color:blue;font-size:0.8em"> radius in pixels
1542
</span></li>
1547
</span></li>
1543
<li><span style="color:blue;font-size:0.8em"> data+color list: a colon separated list of raw data and corresponding colours<br />canvasdraw will not check validity of colornames...<br />in case of trouble look into javascript debugging of your browser
1548
<li><span style="color:blue;font-size:0.8em"> data+color list: a colon separated list of raw data and corresponding colours<br />canvasdraw will not check validity of colornames...<br />in case of trouble look into javascript debugging of your browser
Line 1549... Line 1554...
1549
<li><span style="color:blue;font-size:0.8em"> if defined <a href='#fillpattern'>'fillpattern some_pattern'</a> then the pie pieces will be filled with the respective color and a fill pattern...<br />the pattern is cycled from the 4 pattern primitives: grid,hatch,diamond,dot,grid,hatch,diamond,dot,...
1554
<li><span style="color:blue;font-size:0.8em"> if defined <a href='#fillpattern'>'fillpattern some_pattern'</a> then the pie pieces will be filled with the respective color and a fill pattern...<br />the pattern is cycled from the 4 pattern primitives: grid,hatch,diamond,dot,grid,hatch,diamond,dot,...
1550
</span></li>
1555
</span></li>
1551
<li><span style="color:blue;font-size:0.8em"> use command "<a href='#opacity'>'opacity'</a> to adjust fill_opacity of colours
1556
<li><span style="color:blue;font-size:0.8em"> use command "<a href='#opacity'>'opacity'</a> to adjust fill_opacity of colours
1552
</span></li>
1557
</span></li>
1553
<li><span style="color:blue;font-size:0.8em"> use command <a href='#legend'>'legend'</a> to automatically create a legend <br />using the same colours as pie segments<br />unicode allowed in legend<br />expect javascript trouble if the amount of 'pie-slices', 'pie-colours' 'pie-legend-titles' do not match<br />a javascript console is your best friend...<br />use command 'fontfamily' to set the font of the legend.
1558
<li><span style="color:blue;font-size:0.8em"> use command <a href='#legend'>'legend'</a> to automatically create a legend <br />using the same colours as pie segments<br />unicode allowed in legend<br />expect javascript trouble if the amount of 'pie-slices', 'pie-colours' 'pie-legend-titles' do not match<br />a javascript console is your best friend...<br />use command 'fontfamily' to set the font of the legend.
1554
</span></li>
1559
</span></li>
1555
</ul>
1560
</ul>
1556
<li><a name='rays' href='#rays top'> rays color,xc,yc,x1,y1,x2,y2,x3,y3...x_n,y_n</a><ul>
1561
<li><a name='rays' href='#rays top'>  rays color,xc,yc,x1,y1,x2,y2,x3,y3...x_n,y_n</a><ul>
1557
<li><span style="color:blue;font-size:0.8em"> draw rays in color 'color' and center (xc:yc)
1562
<li><span style="color:blue;font-size:0.8em"> draw rays in color 'color' and center (xc:yc)
1558
</span></li>
1563
</span></li>
1559
<li><span style="color:blue;font-size:0.8em"> may be set draggable or onclick (every individual ray)
1564
<li><span style="color:blue;font-size:0.8em"> may be set draggable or onclick (every individual ray)
1560
</span></li>
1565
</span></li>
1561
</ul>
1566
</ul>
1562
<li><a name='rect' href='#rect top'> rect x1,y1,x2,y2,color</a><ul>
1567
<li><a name='rect' href='#rect top'>  rect x1,y1,x2,y2,color</a><ul>
1563
<li><span style="color:blue;font-size:0.8em"> use command 'frect x1,y1,x2,y2,color' for a filled rectangle
1568
<li><span style="color:blue;font-size:0.8em"> use command 'frect x1,y1,x2,y2,color' for a filled rectangle
1564
</span></li>
1569
</span></li>
1565
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'rect x1,y1,x2,y2,color'
1570
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'rect x1,y1,x2,y2,color'
1566
</span></li>
1571
</span></li>
1567
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1572
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1568
</span></li>
1573
</span></li>
1569
</ul>
1574
</ul>
1570
<li><a name='rects' href='#rects top'> rects color,x1,y1,x2,y2,.....</a><ul>
1575
<li><a name='rects' href='#rects top'>  rects color,x1,y1,x2,y2,.....</a><ul>
1571
<li><span style="color:blue;font-size:0.8em"> use command 'frect color,x1,y1,x2,y2,.....' for a filled rectangle
1576
<li><span style="color:blue;font-size:0.8em"> use command 'frect color,x1,y1,x2,y2,.....' for a filled rectangle
1572
</span></li>
1577
</span></li>
1573
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'rects color,x1,y1,x2,y2,....'
1578
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'rects color,x1,y1,x2,y2,....'
1574
</span></li>
1579
</span></li>
1575
<li><span style="color:blue;font-size:0.8em"> use command 'fillcolor color' before 'frects' to set the fill colour.
1580
<li><span style="color:blue;font-size:0.8em"> use command 'fillcolor color' before 'frects' to set the fill colour.
1576
</span></li>
1581
</span></li>
1577
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
1582
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
1578
</span></li>
1583
</span></li>
1579
</ul>
1584
</ul>
1580
<li><a name='replyformat' href='#replyformat top'> replyformat number</a><ul>
1585
<li><a name='replyformat' href='#replyformat top'>  replyformat number</a><ul>
1581
<li><span style="color:blue;font-size:0.8em"> use number=-1 to deactivate the js-functions read_canvas() and read_dragdrop()
1586
<li><span style="color:blue;font-size:0.8em"> use number=-1 to deactivate the js-functions read_canvas() and read_dragdrop()
1582
</span></li>
1587
</span></li>
1583
<li><span style="color:blue;font-size:0.8em"> default values should be fine !
1588
<li><span style="color:blue;font-size:0.8em"> default values should be fine !
1584
</span></li>
1589
</span></li>
1585
<li><span style="color:blue;font-size:0.8em"> use command 'precision [0,1,10,100,1000,10000...]' before command 'replyformat' to set the desired number of decimals in the student reply / drawing
1590
<li><span style="color:blue;font-size:0.8em"> use command 'precision [0,1,10,100,1000,10000...]' before command 'replyformat' to set the desired number of decimals in the student reply / drawing
Line 1587... Line 1592...
1587
<li><span style="color:blue;font-size:0.8em"> the last value for 'precision int' will be used to calculate the reply coordinates, if needed (read_canvas();)
1592
<li><span style="color:blue;font-size:0.8em"> the last value for 'precision int' will be used to calculate the reply coordinates, if needed (read_canvas();)
1588
</span></li>
1593
</span></li>
1589
<li><span style="color:blue;font-size:0.8em"> choose<ul><li>1 = x1,x2,x3,x4....x_n<br />y1,y2,y3,y4....y_n<br /><br />x/y in pixels</li><li>2 = x1,x2,x3,x4....x_n<br /> y1,y2,y3,y4....y_n<br /> x/y in xrange / yrange coordinate system<br /></li><li>3 = x1,x2,x3,x4....x_n<br /> y1,y2,y3,y4....y_n<br /> r1,r2,r3,r4....r_n<br /> x/y in pixels <br /> r in pixels</li><li>4 = x1,x2,x3,x4....x_n<br /> y1,y2,y3,y4....y_n<br /> r1,r2,r3,r4....r_n<br /> x/y in xrange / yrange coordinate system<br /> r in pixels</li><li>5 = Ax1,Ax2,Ax3,Ax4....Ax_n<br /> Ay1,Ay2,Ay3,Ay4....Ay_n<br /> Bx1,Bx2,Bx3,Bx4....Bx_n<br /> By1,By2,By3,By4....By_n<br /> Cx1,Cx2,Cx3,Cx4....Cx_n<br /> Cy1,Cy2,Cy3,Cy4....Cy_n<br /> ....<br /> Zx1,Zx2,Zx3,Zx4....Zx_n<br /> Zy1,Zy2,Zy3,Zy4....Zy_n<br /> x/y in pixels<br /></li><li>6 = Ax1,Ax2,Ax3,Ax4....Ax_n<br /> Ay1,Ay2,Ay3,Ay4....Ay_n<br /> Bx1,Bx2,Bx3,Bx4....Bx_n<br /> By1,By2,By3,By4....By_n<br /> Cx1,Cx2,Cx3,Cx4....Cx_n<br /> Cy1,Cy2,Cy3,Cy4....Cy_n<br /> ....<br /> Zx1,Zx2,Zx3,Zx4....Zx_n<br /> Zy1,Zy2,Zy3,Zy4....Zy_n<br /> x/y in xrange / yrange coordinate system<br /></li><li>7 = x1:y1,x2:y2,x3:y3,x4:y4...x_n:y_n<br /> x/y in pixels</li><li>8 = x1:y1,x2:y2,x3:y3,x4:y4...x_n:y_n<br /> x/y in xrange / yrange coordinate system</li><li>9 = x1:y1:r1,x2:y2:r2,x3:y3:r3,x4:y4:r3...x_n:y_n:r_n<br /> x/y in pixels</li><li>10 = x1:y1:r1,x2:y2:r2,x3:y3:r3,x4:y4:r3...x_n:y_n:r_n<br /> x/y in xrange / yrange coordinate system</li><li>11 = Ax1,Ay1,Ax2,Ay2<br /> Bx1,By1,Bx2,By2<br /> Cx1,Cy1,Cx2,Cy2<br /> Dx1,Dy1,Dx2,Dy2<br /> ......<br /> Zx1,Zy1,Zx2,Zy2<br /> x/y in xrange / yrange coordinate system</li><li>12 = Ax1,Ay1,Ax2,Ay2<br /> Bx1,By1,Bx2,By2<br />Cx1,Cy1,Cx2,Cy2<br /> Dx1,Dy1,Dx2,Dy2<br /> ......<br /> Zx1,Zy1,Zx2,Zy2<br /> x/y in pixels</li><li>13 = Ax1:Ay1:Ax2:Ay2,Bx1:By1:Bx2:By2,Cx1:Cy1:Cx2:Cy2,Dx1:Dy1:Dx2:Dy2, ... ,Zx1:Zy1:Zx2:Zy2<br /> x/y in xrange / yrange coordinate system</li><li>14 = Ax1:Ay1:Ax2:Ay2,Bx1:By1:Bx2:By2....Zx1:Zy1:Zx2:Zy2<br /> x/y in pixels</li><li>15 = reply from inputfields,textareas<br /> reply1,reply2,reply3,...,reply_n</li><li>16 = mathml input fields </li><li>17 = read "userdraw text,color" only (x1,y1,text1 \n x2,y2,text2...\n...x_n,y_n,text_n <br /> x/y-values are in xrang/yrange</li><li>18 = read_canvas() will read all interactive clocks in H1:M1:S1,H2:M2:S2...Hn:Mn:Sn</li><li>19 = read_canvas() will return the object number of marked / clicked object (clock)<br />analogue to (shape library) onclick command </li><li>20 = read_canvas() will reply "object_number:x:y" of external images : object_number of the first draggable external image in the fly-script starts with 0 <br />e.g. expect something like 0:-5:4,1:6:2,2:-2:-5 <br /> the first image position is (-5:4) , the second image position is (6:2) and the third image position is (-2:-5) <li>21 = (x1:y1) (x2:y2) ... (x_n:y_n)<br />verbatim coordinate return</li><li>22 = returns an array .... reply[0]=x1 reply[1]=y1 reply[2]=x2 reply[3]=y2 ... reply[n-1]=x_n reply[n]=y_n<br /> x/y in xrange / yrange coordinate system</li><li>23 : can only be used for drawtype 'polyline'<br />a typical click sequence in drawtype polyline is x1,y1,x2,y2,x2,y2,x3,y3,x3,y3.....,x(n-1),y(n-1),x(n-1),y(n-1),xn,yn --replyformat 23--> x1,y1,x2,y2,x3,y3,.....x(n-1),y(n-1),xn,yn multiple occurences will be filtered out.The reply will be in x-y-range (xreply \n yreply)</li><li>24 = read all inputfield values: even those set 'readonly'</li><li>25 = angle1,angle2...angle_n : will return the radius (one or many) of the user drawn circle segment in degrees </li><li>26 = rad1,rad2...rad_n : will return the radius (one or many) of the user drawn circle segment in radians </li><li>27 = return (only) userdraw inputfields x1,y1,text1 \n x2,y2,text2...\n...x_n,y_n,text_n</li><li>28 = x1,y1,r1,x2,y2,r2...x_n,y_n,r_n <br />x / y / r in xrange / yrange coordinate system: may be used to reinput into command 'circles color,x1,y1,r1,x2,y2,r2...x_n,y_n,r_n'<br /> will not return anything else (e.g. no inputfields , text etc)</li></ul>
1594
<li><span style="color:blue;font-size:0.8em"> choose<ul><li>1 = x1,x2,x3,x4....x_n<br />y1,y2,y3,y4....y_n<br /><br />x/y in pixels</li><li>2 = x1,x2,x3,x4....x_n<br /> y1,y2,y3,y4....y_n<br /> x/y in xrange / yrange coordinate system<br /></li><li>3 = x1,x2,x3,x4....x_n<br /> y1,y2,y3,y4....y_n<br /> r1,r2,r3,r4....r_n<br /> x/y in pixels <br /> r in pixels</li><li>4 = x1,x2,x3,x4....x_n<br /> y1,y2,y3,y4....y_n<br /> r1,r2,r3,r4....r_n<br /> x/y in xrange / yrange coordinate system<br /> r in pixels</li><li>5 = Ax1,Ax2,Ax3,Ax4....Ax_n<br /> Ay1,Ay2,Ay3,Ay4....Ay_n<br /> Bx1,Bx2,Bx3,Bx4....Bx_n<br /> By1,By2,By3,By4....By_n<br /> Cx1,Cx2,Cx3,Cx4....Cx_n<br /> Cy1,Cy2,Cy3,Cy4....Cy_n<br /> ....<br /> Zx1,Zx2,Zx3,Zx4....Zx_n<br /> Zy1,Zy2,Zy3,Zy4....Zy_n<br /> x/y in pixels<br /></li><li>6 = Ax1,Ax2,Ax3,Ax4....Ax_n<br /> Ay1,Ay2,Ay3,Ay4....Ay_n<br /> Bx1,Bx2,Bx3,Bx4....Bx_n<br /> By1,By2,By3,By4....By_n<br /> Cx1,Cx2,Cx3,Cx4....Cx_n<br /> Cy1,Cy2,Cy3,Cy4....Cy_n<br /> ....<br /> Zx1,Zx2,Zx3,Zx4....Zx_n<br /> Zy1,Zy2,Zy3,Zy4....Zy_n<br /> x/y in xrange / yrange coordinate system<br /></li><li>7 = x1:y1,x2:y2,x3:y3,x4:y4...x_n:y_n<br /> x/y in pixels</li><li>8 = x1:y1,x2:y2,x3:y3,x4:y4...x_n:y_n<br /> x/y in xrange / yrange coordinate system</li><li>9 = x1:y1:r1,x2:y2:r2,x3:y3:r3,x4:y4:r3...x_n:y_n:r_n<br /> x/y in pixels</li><li>10 = x1:y1:r1,x2:y2:r2,x3:y3:r3,x4:y4:r3...x_n:y_n:r_n<br /> x/y in xrange / yrange coordinate system</li><li>11 = Ax1,Ay1,Ax2,Ay2<br /> Bx1,By1,Bx2,By2<br /> Cx1,Cy1,Cx2,Cy2<br /> Dx1,Dy1,Dx2,Dy2<br /> ......<br /> Zx1,Zy1,Zx2,Zy2<br /> x/y in xrange / yrange coordinate system</li><li>12 = Ax1,Ay1,Ax2,Ay2<br /> Bx1,By1,Bx2,By2<br />Cx1,Cy1,Cx2,Cy2<br /> Dx1,Dy1,Dx2,Dy2<br /> ......<br /> Zx1,Zy1,Zx2,Zy2<br /> x/y in pixels</li><li>13 = Ax1:Ay1:Ax2:Ay2,Bx1:By1:Bx2:By2,Cx1:Cy1:Cx2:Cy2,Dx1:Dy1:Dx2:Dy2, ... ,Zx1:Zy1:Zx2:Zy2<br /> x/y in xrange / yrange coordinate system</li><li>14 = Ax1:Ay1:Ax2:Ay2,Bx1:By1:Bx2:By2....Zx1:Zy1:Zx2:Zy2<br /> x/y in pixels</li><li>15 = reply from inputfields,textareas<br /> reply1,reply2,reply3,...,reply_n</li><li>16 = mathml input fields </li><li>17 = read "userdraw text,color" only (x1,y1,text1 \n x2,y2,text2...\n...x_n,y_n,text_n <br /> x/y-values are in xrang/yrange</li><li>18 = read_canvas() will read all interactive clocks in H1:M1:S1,H2:M2:S2...Hn:Mn:Sn</li><li>19 = read_canvas() will return the object number of marked / clicked object (clock)<br />analogue to (shape library) onclick command </li><li>20 = read_canvas() will reply "object_number:x:y" of external images : object_number of the first draggable external image in the fly-script starts with 0 <br />e.g. expect something like 0:-5:4,1:6:2,2:-2:-5 <br /> the first image position is (-5:4) , the second image position is (6:2) and the third image position is (-2:-5) <li>21 = (x1:y1) (x2:y2) ... (x_n:y_n)<br />verbatim coordinate return</li><li>22 = returns an array .... reply[0]=x1 reply[1]=y1 reply[2]=x2 reply[3]=y2 ... reply[n-1]=x_n reply[n]=y_n<br /> x/y in xrange / yrange coordinate system</li><li>23 : can only be used for drawtype 'polyline'<br />a typical click sequence in drawtype polyline is x1,y1,x2,y2,x2,y2,x3,y3,x3,y3.....,x(n-1),y(n-1),x(n-1),y(n-1),xn,yn --replyformat 23--> x1,y1,x2,y2,x3,y3,.....x(n-1),y(n-1),xn,yn multiple occurences will be filtered out.The reply will be in x-y-range (xreply \n yreply)</li><li>24 = read all inputfield values: even those set 'readonly'</li><li>25 = angle1,angle2...angle_n : will return the radius (one or many) of the user drawn circle segment in degrees </li><li>26 = rad1,rad2...rad_n : will return the radius (one or many) of the user drawn circle segment in radians </li><li>27 = return (only) userdraw inputfields x1,y1,text1 \n x2,y2,text2...\n...x_n,y_n,text_n</li><li>28 = x1,y1,r1,x2,y2,r2...x_n,y_n,r_n <br />x / y / r in xrange / yrange coordinate system: may be used to reinput into command 'circles color,x1,y1,r1,x2,y2,r2...x_n,y_n,r_n'<br /> will not return anything else (e.g. no inputfields , text etc)</li></ul>
1590
</span></li>
1595
</span></li>
1591
</ul>
1596
</ul>
1592
<li><a name='roundrect' href='#roundrect top'> roundrect x1,y1,x2,y2,radius in px,color</a><ul>
1597
<li><a name='roundrect' href='#roundrect top'>  roundrect x1,y1,x2,y2,radius in px,color</a><ul>
1593
<li><span style="color:blue;font-size:0.8em"> use command 'froundrect x1,y1,x2,y2,radius,color' for a filled rectangle
1598
<li><span style="color:blue;font-size:0.8em"> use command 'froundrect x1,y1,x2,y2,radius,color' for a filled rectangle
1594
</span></li>
1599
</span></li>
1595
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'roundrect x1,y1,x2,y2,radius,color'
1600
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'roundrect x1,y1,x2,y2,radius,color'
1596
</span></li>
1601
</span></li>
1597
<li><span style="color:blue;font-size:0.8em"> fillcolor will be identical to 'color'
1602
<li><span style="color:blue;font-size:0.8em"> fillcolor will be identical to 'color'
1598
</span></li>
1603
</span></li>
1599
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1604
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1600
</span></li>
1605
</span></li>
1601
</ul>
1606
</ul>
1602
<li><a name='roundrects' href='#roundrects top'> roundrects color,radius in px,x1,y1,x2,y2,x3,y3,x4,y4,....</a><ul>
1607
<li><a name='roundrects' href='#roundrects top'>  roundrects color,radius in px,x1,y1,x2,y2,x3,y3,x4,y4,....</a><ul>
1603
<li><span style="color:blue;font-size:0.8em"> for filled roundrects use command/keyword <a href='#filled'>'filled'</a> before command
1608
<li><span style="color:blue;font-size:0.8em"> for filled roundrects use command/keyword <a href='#filled'>'filled'</a> before command
1604
</span></li>
1609
</span></li>
1605
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
1610
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
1606
</span></li>
1611
</span></li>
1607
</ul>
1612
</ul>
1608
<li><a name='ruler' href='#ruler top'> ruler x,y,x-width ,y-height,mode</a><ul>
1613
<li><a name='ruler' href='#ruler top'>  ruler x,y,x-width ,y-height,mode</a><ul>
1609
<li><span style="color:blue;font-size:0.8em"> x,y are the initial location
1614
<li><span style="color:blue;font-size:0.8em"> x,y are the initial location
1610
</span></li>
1615
</span></li>
1611
<li><span style="color:blue;font-size:0.8em"> x-width , y-height are the ruler dimensions width &amp; height in xy-coordinate system
1616
<li><span style="color:blue;font-size:0.8em"> x-width , y-height are the ruler dimensions width &amp; height in xy-coordinate system
1612
</span></li>
1617
</span></li>
1613
<li><span style="color:blue;font-size:0.8em"> the ruler scale is by definition the x-scale, set by command 'xrange'<br />for example: a ruler x-width of 6 will have a scale ranging from 0 to 6
1618
<li><span style="color:blue;font-size:0.8em"> the ruler scale is by definition the x-scale, set by command 'xrange'<br />for example: a ruler x-width of 6 will have a scale ranging from 0 to 6
Line 1621... Line 1626...
1621
<li><span style="color:blue;font-size:0.8em"> when using command 'zoom' , pay <b>attention</b> to the size and symmetry of your canvas<br />...to avoid a partial image, locate the start position near the center of the visual canvas<br /><em>technical:<br /> the actual 'ruler' is just a static generated image in a new canvas-memory<br />This image is only generated once, and a copy of its bitmap is translated & rotated onto the visible canvas.<br />That is the reason for the 'high-speed dragging and rotating'.<br />I've limited its size to xsize &times; ysize e.g. the same size as the visual canvas... </em>
1626
<li><span style="color:blue;font-size:0.8em"> when using command 'zoom' , pay <b>attention</b> to the size and symmetry of your canvas<br />...to avoid a partial image, locate the start position near the center of the visual canvas<br /><em>technical:<br /> the actual 'ruler' is just a static generated image in a new canvas-memory<br />This image is only generated once, and a copy of its bitmap is translated & rotated onto the visible canvas.<br />That is the reason for the 'high-speed dragging and rotating'.<br />I've limited its size to xsize &times; ysize e.g. the same size as the visual canvas... </em>
1622
</span></li>
1627
</span></li>
1623
<li><span style="color:blue;font-size:0.8em"> usage: first left click on the ruler will activate dragging;<br />a second left click will activate rotating (just move mouse around)<br />a third click will freeze this position and the x/y-coordinate and angle in radians will be stored in reply(3)<br />a next click will restart this sequence...
1628
<li><span style="color:blue;font-size:0.8em"> usage: first left click on the ruler will activate dragging;<br />a second left click will activate rotating (just move mouse around)<br />a third click will freeze this position and the x/y-coordinate and angle in radians will be stored in reply(3)<br />a next click will restart this sequence...
1624
</span></li>
1629
</span></li>
1625
</ul>
1630
</ul>
1626
<li><a name='resetoffset' href='#resetoffset top'> resetoffset</a><ul>
1631
<li><a name='resetoffset' href='#resetoffset top'>  resetoffset</a><ul>
1627
<li><span style="color:blue;font-size:0.8em"> keyword ; use to restore text placement on the canvas to the real (x;y) coordinates of the left bottom corner of the text
1632
<li><span style="color:blue;font-size:0.8em"> keyword ; use to restore text placement on the canvas to the real (x;y) coordinates of the left bottom corner of the text
1628
</span></li>
1633
</span></li>
1629
<li><span style="color:blue;font-size:0.8em"> may be active for commands <a href="#text">text</a> and <a href="#string">string</a> (e.g. objects in the drag/drop/onclick-librariy
1634
<li><span style="color:blue;font-size:0.8em"> may be active for commands <a href="#text">text</a> and <a href="#string">string</a> (e.g. objects in the drag/drop/onclick-librariy
1630
</span></li>
1635
</span></li>
1631
</ul>
1636
</ul>
1632
<li><a name='rotate' href='#rotate top'> rotate rotation_angle</a><ul>
1637
<li><a name='rotate' href='#rotate top'>  rotate rotation_angle</a><ul>
1633
<li><span style="color:blue;font-size:0.8em"> angle in degrees
1638
<li><span style="color:blue;font-size:0.8em"> angle in degrees
1634
</span></li>
1639
</span></li>
1635
<li><span style="color:blue;font-size:0.8em"> (only) the next object will be rotated is given angle
1640
<li><span style="color:blue;font-size:0.8em"> (only) the next object will be rotated is given angle
1636
</span></li>
1641
</span></li>
1637
<li><span style="color:blue;font-size:0.8em"> positive values rotate counter clockwise
1642
<li><span style="color:blue;font-size:0.8em"> positive values rotate counter clockwise
Line 1639... Line 1644...
1639
<li><span style="color:blue;font-size:0.8em"> attention: all objects will be rotated around their first point...<br /><em>rotate 45</em><br /> <em>triangle 1,1,5,1,3,4,red</em><br />will rotate 45 degrees around point (1:1)
1644
<li><span style="color:blue;font-size:0.8em"> attention: all objects will be rotated around their first point...<br /><em>rotate 45</em><br /> <em>triangle 1,1,5,1,3,4,red</em><br />will rotate 45 degrees around point (1:1)
1640
</span></li>
1645
</span></li>
1641
<li><span style="color:blue;font-size:0.8em"> if another rotation center is needed, use command <a href="#rotationcenter">'rotationcenter xc,yc'</a>.<br />to reset this rotationcenter, use keyword <a href="killrotate">'killrotate'</a>
1646
<li><span style="color:blue;font-size:0.8em"> if another rotation center is needed, use command <a href="#rotationcenter">'rotationcenter xc,yc'</a>.<br />to reset this rotationcenter, use keyword <a href="killrotate">'killrotate'</a>
1642
</span></li>
1647
</span></li>
1643
<li><span style="color:blue;font-size:0.8em"> attention: rotate will mess up the interactivity of the rotated object <br />e.g. if combined with command <a href="#drag">"drag xy"</a> or keyword <a href="onclick">"onclick"</a> : the mouse recognises the original -unrotated- coordinates of the object
1648
<li><span style="color:blue;font-size:0.8em"> attention: rotate will mess up the interactivity of the rotated object <br />e.g. if combined with command <a href="#drag">"drag xy"</a> or keyword <a href="onclick">"onclick"</a> : the mouse recognises the original -unrotated- coordinates of the object
1644
</span></li>
1649
</span></li>
1645
</ul>
1650
</ul>
1646
<li><a name='rotationcenter' href='#rotationcenter top'> rotationcenter x_center,y_center</a><ul>
1651
<li><a name='rotationcenter' href='#rotationcenter top'>  rotationcenter x_center,y_center</a><ul>
1647
<li><span style="color:blue;font-size:0.8em"> define an rotation center in your x/y-coordinate system
1652
<li><span style="color:blue;font-size:0.8em"> define an rotation center in your x/y-coordinate system
1648
</span></li>
1653
</span></li>
1649
<li><span style="color:blue;font-size:0.8em"> wims will not check the validity of your input; use javascript console to debug any erors
1654
<li><span style="color:blue;font-size:0.8em"> wims will not check the validity of your input; use javascript console to debug any erors
1650
</span></li>
1655
</span></li>
1651
<li><span style="color:blue;font-size:0.8em"> if not defined a rotation will be around the first point of an object
1656
<li><span style="color:blue;font-size:0.8em"> if not defined a rotation will be around the first point of an object
Line 1653... Line 1658...
1653
<li><span style="color:blue;font-size:0.8em"> to be used before command <a href="#rotate">rotate</a>
1658
<li><span style="color:blue;font-size:0.8em"> to be used before command <a href="#rotate">rotate</a>
1654
</span></li>
1659
</span></li>
1655
<li><span style="color:blue;font-size:0.8em"> all other commands will use this rotation center, unless a <a href="#killrotation">killrotation</a> is given
1660
<li><span style="color:blue;font-size:0.8em"> all other commands will use this rotation center, unless a <a href="#killrotation">killrotation</a> is given
1656
</span></li>
1661
</span></li>
1657
</ul>
1662
</ul>
1658
<li><a name='size' href='#size top'> size width,height</a><ul>
1663
<li><a name='size' href='#size top'>  size width,height</a><ul>
1659
<li><span style="color:blue;font-size:0.8em"> set canvas size in pixels
1664
<li><span style="color:blue;font-size:0.8em"> set canvas size in pixels
1660
</span></li>
1665
</span></li>
1661
<li><span style="color:blue;font-size:0.8em"> mandatory first command (can only be preceded by keyword <a href="#popup">'popup'</a>)
1666
<li><span style="color:blue;font-size:0.8em"> mandatory first command (can only be preceded by keyword <a href="#popup">'popup'</a>)
1662
</span></li>
1667
</span></li>
1663
<li><span style="color:blue;font-size:0.8em"> if xrange and/or yrange is not given the range will be set to pixels :<br />xrange 0,xsize yrange 0,ysize<br />note: lower left corner is Origin (0:0) !!! this in contrast to flydraw
1668
<li><span style="color:blue;font-size:0.8em"> if xrange and/or yrange is not given the range will be set to pixels :<br />xrange 0,xsize yrange 0,ysize<br />note: lower left corner is Origin (0:0) !!! this in contrast to flydraw
1664
</span></li>
1669
</span></li>
1665
</ul>
1670
</ul>
1666
<li><a name='segment' href='#segment top'> segment x1,y1,x2,y2,color</a><ul>
1671
<li><a name='segment' href='#segment top'>  segment x1,y1,x2,y2,color</a><ul>
1667
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='seg' href='#seg top'>seg</a></span></li>
1672
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='seg' href='#seg top'>seg</a></span></li>
1668
<li><span style="color:blue;font-size:0.8em"> draw a line segment between points (x1:y1)--(x2:y2) in color 'color'
1673
<li><span style="color:blue;font-size:0.8em"> draw a line segment between points (x1:y1)--(x2:y2) in color 'color'
1669
</span></li>
1674
</span></li>
1670
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1675
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1671
</span></li>
1676
</span></li>
1672
</ul>
1677
</ul>
1673
<li><a name='segments' href='#segments top'> segments color,x1,y1,x2,y2,...,x_n,y_n</a><ul>
1678
<li><a name='segments' href='#segments top'>  segments color,x1,y1,x2,y2,...,x_n,y_n</a><ul>
1674
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='segs' href='#segs top'>segs</a></span></li>
1679
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='segs' href='#segs top'>segs</a></span></li>
1675
<li><span style="color:blue;font-size:0.8em"> draw multiple segments between points (x1:y1)--(x2:y2).....and... (x_n-1:y_n-1)--(x_n:y_n) in color 'color'
1680
<li><span style="color:blue;font-size:0.8em"> draw multiple segments between points (x1:y1)--(x2:y2).....and... (x_n-1:y_n-1)--(x_n:y_n) in color 'color'
1676
</span></li>
1681
</span></li>
1677
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
1682
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
1678
</span></li>
1683
</span></li>
1679
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
1684
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
1680
</span></li>
1685
</span></li>
1681
</ul>
1686
</ul>
1682
<li><a name='setlimits' href='#setlimits top'> setlimits</a><ul>
1687
<li><a name='setlimits' href='#setlimits top'>  setlimits</a><ul>
1683
<li><span style="color:blue;font-size:0.8em"> keyword : if set, it will produce 4 inputfields for 'xmin,xmax,ymin,ymax' and an 'ok' button
1688
<li><span style="color:blue;font-size:0.8em"> keyword : if set, it will produce 4 inputfields for 'xmin,xmax,ymin,ymax' and an 'ok' button
1684
</span></li>
1689
</span></li>
1685
<li><span style="color:blue;font-size:0.8em"> may be used for inputfield based zooming / panning
1690
<li><span style="color:blue;font-size:0.8em"> may be used for inputfield based zooming / panning
1686
</span></li>
1691
</span></li>
1687
<li><span style="color:blue;font-size:0.8em"> may be styled using command <a href="#inputstyle">inputstyle</a>
1692
<li><span style="color:blue;font-size:0.8em"> may be styled using command <a href="#inputstyle">inputstyle</a>
1688
</span></li>
1693
</span></li>
1689
<li><span style="color:blue;font-size:0.8em"> use commands <a href="#xlabel">xlabel / ylabel</a> to change text from xmin to 'xlabel' etc
1694
<li><span style="color:blue;font-size:0.8em"> use commands <a href="#xlabel">xlabel / ylabel</a> to change text from xmin to 'xlabel' etc
1690
</span></li>
1695
</span></li>
1691
<li><span style="color:blue;font-size:0.8em"> note:the input value will not be checked on validity
1696
<li><span style="color:blue;font-size:0.8em"> note:the input value will not be checked on validity
1692
</span></li>
1697
</span></li>
1693
</ul>
1698
</ul>
1694
<li><a name='setpixel' href='#setpixel top'> setpixel x,y,color</a><ul>
1699
<li><a name='setpixel' href='#setpixel top'>  setpixel x,y,color</a><ul>
1695
<li><span style="color:blue;font-size:0.8em"> A rectangular "point" with diameter 1 pixel centered at (x:y) in xrange / yrange
1700
<li><span style="color:blue;font-size:0.8em"> A rectangular "point" with diameter 1 pixel centered at (x:y) in xrange / yrange
1696
</span></li>
1701
</span></li>
1697
<li><span style="color:blue;font-size:0.8em"> pixels can <b>not</b> be dragged or clicked
1702
<li><span style="color:blue;font-size:0.8em"> pixels can <b>not</b> be dragged or clicked
1698
</span></li>
1703
</span></li>
1699
<li><span style="color:blue;font-size:0.8em"> "pixelsize = 1" may be changed by command "pixelsize int"
1704
<li><span style="color:blue;font-size:0.8em"> "pixelsize = 1" may be changed by command "pixelsize int"
1700
</span></li>
1705
</span></li>
1701
</ul>
1706
</ul>
1702
<li><a name='slider' href='#slider top'> slider start_value,end_value,width px,height px,<em>type</em>,label</a><ul>
1707
<li><a name='slider' href='#slider top'>  slider start_value,end_value,width px,height px,<em>type</em>,label</a><ul>
1703
<li><span style="color:blue;font-size:0.8em"> <em>type</em> may be : xy,x,y,angle
1708
<li><span style="color:blue;font-size:0.8em"> <em>type</em> may be : xy,x,y,angle
1704
</span></li>
1709
</span></li>
1705
<li><span style="color:blue;font-size:0.8em"> if a slider value display is desired, use for argument <em>type</em>:<br />xy display<br />x display<br />y display<br />angle radian<br />angle degree
1710
<li><span style="color:blue;font-size:0.8em"> if a slider value display is desired, use for argument <em>type</em>:<br />xy display<br />x display<br />y display<br />angle radian<br />angle degree
1706
</span></li>
1711
</span></li>
1707
<li><span style="color:blue;font-size:0.8em"> if a unit (or something like that...) for x/y-value display is needed, use commands 'xunit' and / or 'yunit'
1712
<li><span style="color:blue;font-size:0.8em"> if a unit (or something like that...) for x/y-value display is needed, use commands 'xunit' and / or 'yunit'
Line 1735... Line 1740...
1735
<li><span style="color:blue;font-size:0.8em"> use opacity (only fill opacity will be used) to set transparency
1740
<li><span style="color:blue;font-size:0.8em"> use opacity (only fill opacity will be used) to set transparency
1736
</span></li>
1741
</span></li>
1737
<li><span style="color:blue;font-size:0.8em"> the slider canvas will be added to the 'tooltip div' : so incompatible with command tooltip ; setlimits etc
1742
<li><span style="color:blue;font-size:0.8em"> the slider canvas will be added to the 'tooltip div' : so incompatible with command tooltip ; setlimits etc
1738
</span></li>
1743
</span></li>
1739
</ul>
1744
</ul>
1740
<li><a name='sliderfunction_x' href='#sliderfunction_x top'> sliderfunction_x some_function_in_x</a><ul>
1745
<li><a name='sliderfunction_x' href='#sliderfunction_x top'>  sliderfunction_x some_function_in_x</a><ul>
1741
<li><span style="color:blue;font-size:0.8em"> default value "x"
1746
<li><span style="color:blue;font-size:0.8em"> default value "x"
1742
</span></li>
1747
</span></li>
1743
<li><span style="color:blue;font-size:0.8em"> the x-value of the slider object(s) will be calculated with this function.
1748
<li><span style="color:blue;font-size:0.8em"> the x-value of the slider object(s) will be calculated with this function.
1744
</span></li>
1749
</span></li>
1745
<li><span style="color:blue;font-size:0.8em"> default is the x-slider value itself
1750
<li><span style="color:blue;font-size:0.8em"> default is the x-slider value itself
Line 1747... Line 1752...
1747
<li><span style="color:blue;font-size:0.8em"> only used by command 'slider'
1752
<li><span style="color:blue;font-size:0.8em"> only used by command 'slider'
1748
</span></li>
1753
</span></li>
1749
<li><span style="color:blue;font-size:0.8em"> define before a slider command !
1754
<li><span style="color:blue;font-size:0.8em"> define before a slider command !
1750
</span></li>
1755
</span></li>
1751
</ul>
1756
</ul>
1752
<li><a name='sliderfunction_y' href='#sliderfunction_y top'> sliderfunction_y some_function_in_y</a><ul>
1757
<li><a name='sliderfunction_y' href='#sliderfunction_y top'>  sliderfunction_y some_function_in_y</a><ul>
1753
<li><span style="color:blue;font-size:0.8em"> default value "y"
1758
<li><span style="color:blue;font-size:0.8em"> default value "y"
1754
</span></li>
1759
</span></li>
1755
<li><span style="color:blue;font-size:0.8em"> the y-value of the slider object(s) will be calculated with this function.
1760
<li><span style="color:blue;font-size:0.8em"> the y-value of the slider object(s) will be calculated with this function.
1756
</span></li>
1761
</span></li>
1757
<li><span style="color:blue;font-size:0.8em"> only used by command 'slider'
1762
<li><span style="color:blue;font-size:0.8em"> only used by command 'slider'
1758
</span></li>
1763
</span></li>
1759
<li><span style="color:blue;font-size:0.8em"> define before a slider command !
1764
<li><span style="color:blue;font-size:0.8em"> define before a slider command !
1760
</span></li>
1765
</span></li>
1761
</ul>
1766
</ul>
1762
<li><a name='sgraph' href='#sgraph top'> sgraph xstart,ystart,xmajor,ymajor,xminor,yminor,majorgrid_color,minorgrid_color</a><ul>
1767
<li><a name='sgraph' href='#sgraph top'>  sgraph xstart,ystart,xmajor,ymajor,xminor,yminor,majorgrid_color,minorgrid_color</a><ul>
1763
<li><span style="color:blue;font-size:0.8em"> primitive implementation of a 'broken scale' graph...
1768
<li><span style="color:blue;font-size:0.8em"> primitive implementation of a 'broken scale' graph...
1764
</span></li>
1769
</span></li>
1765
<li><span style="color:blue;font-size:0.8em"> not very versatile: only usable in combination with userdraw <br />eg no other objects will obey this "coordinate system"<br />if you want to place an object into this coordinate system, be aware that 10% or 20% of xsize and/or ysize is 'lost'.<br />Use these "formulas" to recalculate the virtual coordinates:<br />factor=0.8 in case xstart != xmin (or ystart != ymin)<br />factor=0.9 in case xstart = xmin (or ystart = ymin)<br />px_x_point = ((factor*xsize)/(xmax - xstart))*(x_point - xmax)+xsize<br />x_recalculated = px*(xmax - xmin)/xsize + $xmin<br />px_y_point = -1*factor*y_point*ysize/(ymax - ystart) + ymax*factor*ysize/(ymax - ystart)<br />y_recalculated = ymax - py*(ymax - ymin)/ysize<br />
1770
<li><span style="color:blue;font-size:0.8em"> not very versatile: only usable in combination with userdraw <br />eg no other objects will obey this "coordinate system"<br />if you want to place an object into this coordinate system, be aware that 10% or 20% of xsize and/or ysize is 'lost'.<br />Use these "formulas" to recalculate the virtual coordinates:<br />factor=0.8 in case xstart != xmin (or ystart != ymin)<br />factor=0.9 in case xstart = xmin (or ystart = ymin)<br />px_x_point = ((factor*xsize)/(xmax - xstart))*(x_point - xmax)+xsize<br />x_recalculated = px*(xmax - xmin)/xsize + $xmin<br />px_y_point = -1*factor*y_point*ysize/(ymax - ystart) + ymax*factor*ysize/(ymax - ystart)<br />y_recalculated = ymax - py*(ymax - ymin)/ysize<br />
1766
</span></li>
1771
</span></li>
1767
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />xrange 0,10000<br />yrange 0,100<br />sgraph 9000,50,100,10,4,4,grey,blue<br />userinput_xy<br />linewidth 2<br />userdraw segments,red
1772
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />xrange 0,10000<br />yrange 0,100<br />sgraph 9000,50,100,10,4,4,grey,blue<br />userinput_xy<br />linewidth 2<br />userdraw segments,red
1768
</span></li>
1773
</span></li>
1769
</ul>
1774
</ul>
1770
<li><a name='snaptofunction' href='#snaptofunction top'> snaptofunction some_function_in_x,some_funtion_in_y</a><ul>
1775
<li><a name='snaptofunction' href='#snaptofunction top'>  snaptofunction some_function_in_x,some_funtion_in_y</a><ul>
1771
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='snaptofun' href='#snaptofun top'>snaptofun</a></span></li>
1776
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='snaptofun' href='#snaptofun top'>snaptofun</a></span></li>
1772
<li><span style="color:blue;font-size:0.8em"> the next object will snap to the calculated values
1777
<li><span style="color:blue;font-size:0.8em"> the next object will snap to the calculated values
1773
</span></li>
1778
</span></li>
1774
<li><span style="color:blue;font-size:0.8em"> if you want only modification of y-values,just use: snaptofunction x,5*sin(1/y)
1779
<li><span style="color:blue;font-size:0.8em"> if you want only modification of y-values,just use: snaptofunction x,5*sin(1/y)
1775
</span></li>
1780
</span></li>
1776
<li><span style="color:blue;font-size:0.8em"> if you want only modification of x-values,just use: snaptofunction 5*sin(1/x),y
1781
<li><span style="color:blue;font-size:0.8em"> if you want only modification of x-values,just use: snaptofunction 5*sin(1/x),y
1777
</span></li>
1782
</span></li>
1778
<li><span style="color:blue;font-size:0.8em"> for now only one instance of 'snaptofunction' is allowed
1783
<li><span style="color:blue;font-size:0.8em"> for now only one instance of 'snaptofunction' is allowed
1779
</span></li>
1784
</span></li>
1780
<li><span style="color:blue;font-size:0.8em"> use rawmath on your functions: no validity checking is done by wims !
1785
<li><span style="color:blue;font-size:0.8em"> use rawmath on your functions: no validity checking is done by wims !
1781
</span></li>
1786
</span></li>
1782
<li><span style="color:blue;font-size:0.8em"> example:<br />....<br />snaptofunction 5*(cos(x),4*sin(y)<br />linewidth 3<br />userdraw points,blue<br />....<br />
1787
<li><span style="color:blue;font-size:0.8em"> example:<br />....<br />snaptofunction 5*(cos(x),4*sin(y)<br />linewidth 3<br />userdraw points,blue<br />....<br />
1783
</span></li>
1788
</span></li>
1784
<li><span style="color:blue;font-size:0.8em"> example : switching x and y coordinates?<br />snaptofunction y,x
1789
<li><span style="color:blue;font-size:0.8em"> example : switching x and y coordinates?<br />snaptofunction y,x
1785
</span></li>
1790
</span></li>
1786
</ul>
1791
</ul>
1787
<li><a name='snaptopoints' href='#snaptopoints top'> snaptopoints x1,y1,x2,y2,x3,y3....</a><ul>
1792
<li><a name='snaptopoints' href='#snaptopoints top'>  snaptopoints x1,y1,x2,y2,x3,y3....</a><ul>
1788
<li><span style="color:blue;font-size:0.8em"> a userdraw object will snap to these points.
1793
<li><span style="color:blue;font-size:0.8em"> a userdraw object will snap to these points.
1789
</span></li>
1794
</span></li>
1790
<li><span style="color:blue;font-size:0.8em"> the array size (e.g. the number of points) of command 'snaptopoints' is limited by constant MAX_INT (canvasdraw.h)
1795
<li><span style="color:blue;font-size:0.8em"> the array size (e.g. the number of points) of command 'snaptopoints' is limited by constant MAX_INT (canvasdraw.h)
1791
</span></li>
1796
</span></li>
1792
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the clossed of these points when dragged (mouseup)
1797
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the clossed of these points when dragged (mouseup)
1793
</span></li>
1798
</span></li>
1794
<li><span style="color:blue;font-size:0.8em"> other options: use keyword "snaptogrid", "xsnaptogrid" or "ysnaptogrid"
1799
<li><span style="color:blue;font-size:0.8em"> other options: use keyword "snaptogrid", "xsnaptogrid" or "ysnaptogrid"
1795
</span></li>
1800
</span></li>
1796
</ul>
1801
</ul>
1797
<li><a name='snaptogrid' href='#snaptogrid top'> snaptogrid</a><ul>
1802
<li><a name='snaptogrid' href='#snaptogrid top'>  snaptogrid</a><ul>
1798
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
1803
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
1799
</span></li>
1804
</span></li>
1800
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the given grid when dragged (mouseup)
1805
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the given grid when dragged (mouseup)
1801
</span></li>
1806
</span></li>
1802
<li><span style="color:blue;font-size:0.8em"> in case of userdraw the drawn points will snap to xmajor / ymajor grid
1807
<li><span style="color:blue;font-size:0.8em"> in case of userdraw the drawn points will snap to xmajor / ymajor grid
1803
</span></li>
1808
</span></li>
1804
<li><span style="color:blue;font-size:0.8em"> if no grid is defined ,points will snap to every integer xrange/yrange value. (eg snap_x=1,snap_y=1)
1809
<li><span style="color:blue;font-size:0.8em"> if no grid is defined ,points will snap to every integer xrange/yrange value. (eg snap_x=1,snap_y=1)
1805
</span></li>
1810
</span></li>
1806
<li><span style="color:blue;font-size:0.8em"> if you do not want a visible grid, but you only want a 'snaptogrid' with some value...define this grid with opacity 0.
1811
<li><span style="color:blue;font-size:0.8em"> if you do not want a visible grid, but you only want a 'snaptogrid' with some value...define this grid with opacity 0.
1807
</span></li>
1812
</span></li>
1808
<li><span style="color:blue;font-size:0.8em"> if xminor / yminor is defined,(use keyword 'axis' to activate the minor steps) the drawing will snap to xminor and yminor<br />use only even dividers in x/y-minor...for example<br />snaptogrid<br />axis<br />grid 2,1,grey,4,4,7,red<br /> will snap on x=0, x=0.5, x=1, x=1.5 ....<br /> will snap on y=0, y=0.25 y=0.5 y=0.75 ...<br />
1813
<li><span style="color:blue;font-size:0.8em"> if xminor / yminor is defined,(use keyword 'axis' to activate the minor steps) the drawing will snap to xminor and yminor<br />use only even dividers in x/y-minor...for example<br />snaptogrid<br />axis<br />grid 2,1,grey,4,4,7,red<br /> will snap on x=0, x=0.5, x=1, x=1.5 ....<br /> will snap on y=0, y=0.25 y=0.5 y=0.75 ...<br />
1809
</span></li>
1814
</span></li>
1810
</ul>
1815
</ul>
1811
<li><a name='square' href='#square top'> square x,y,side (px) ,color</a><ul>
1816
<li><a name='square' href='#square top'>  square x,y,side (px) ,color</a><ul>
1812
<li><span style="color:blue;font-size:0.8em"> draw a square with left top corner (x:y) with side 'side' in color 'color'
1817
<li><span style="color:blue;font-size:0.8em"> draw a square with left top corner (x:y) with side 'side' in color 'color'
1813
</span></li>
1818
</span></li>
1814
<li><span style="color:blue;font-size:0.8em"> use command 'fsquare x,y,side,color' for a filled square
1819
<li><span style="color:blue;font-size:0.8em"> use command 'fsquare x,y,side,color' for a filled square
1815
</span></li>
1820
</span></li>
1816
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'square x,y,side,color'
1821
<li><span style="color:blue;font-size:0.8em"> use command/keyword <a href='#filled'>'filled'</a> before command 'square x,y,side,color'
1817
</span></li>
1822
</span></li>
1818
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1823
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1819
</span></li>
1824
</span></li>
1820
</ul>
1825
</ul>
1821
<li><a name='status' href='#status top'> status</a><ul>
1826
<li><a name='status' href='#status top'>  status</a><ul>
1822
<li><span style="color:blue;font-size:0.8em"> keyword
1827
<li><span style="color:blue;font-size:0.8em"> keyword
1823
</span></li>
1828
</span></li>
1824
<li><span style="color:blue;font-size:0.8em"> alernative : nostatus
1829
<li><span style="color:blue;font-size:0.8em"> alernative : nostatus
1825
</span></li>
1830
</span></li>
1826
<li><span style="color:blue;font-size:0.8em"> used to override the effects of "status=done" in wims (answer.phtml)
1831
<li><span style="color:blue;font-size:0.8em"> used to override the effects of "status=done" in wims (answer.phtml)
1827
</span></li>
1832
</span></li>
1828
<li><span style="color:blue;font-size:0.8em"> affects 'readonly' in inputfields / textarea's in canvasimage and all userdraw based commands
1833
<li><span style="color:blue;font-size:0.8em"> affects 'readonly' in inputfields / textarea's in canvasimage and all userdraw based commands
1829
</span></li>
1834
</span></li>
1830
<li><span style="color:blue;font-size:0.8em"> e.g.: if keyword 'status' is set, the pupil will be able to modify the canvas when the 'wims $status variable' is set to 'done'
1835
<li><span style="color:blue;font-size:0.8em"> e.g.: if keyword 'status' is set, the pupil will be able to modify the canvas when the 'wims $status variable' is set to 'done'
1831
</span></li>
1836
</span></li>
1832
</ul>
1837
</ul>
1833
<li><a name='string' href='#string top'> string color,x,y,the text string</a><ul>
1838
<li><a name='string' href='#string top'>  string color,x,y,the text string</a><ul>
1834
<li><span style="color:blue;font-size:0.8em"> may be set "onclick" or "drag xy"
1839
<li><span style="color:blue;font-size:0.8em"> may be set "onclick" or "drag xy"
1835
</span></li>
1840
</span></li>
1836
<li><span style="color:blue;font-size:0.8em"> unicode supported: string red,0,0,\u2232
1841
<li><span style="color:blue;font-size:0.8em"> unicode supported: string red,0,0,\u2232
1837
</span></li>
1842
</span></li>
1838
<li><span style="color:blue;font-size:0.8em"> use a command like 'fontfamily italic 24px Ariel' <br />to set fonts on browser that support font change
1843
<li><span style="color:blue;font-size:0.8em"> use a command like 'fontfamily italic 24px Ariel' <br />to set fonts on browser that support font change
1839
</span></li>
1844
</span></li>
1840
</ul>
1845
</ul>
1841
<li><a name='stringup' href='#stringup top'> stringup color,x,y,rotation_degrees,the text string</a><ul>
1846
<li><a name='stringup' href='#stringup top'>  stringup color,x,y,rotation_degrees,the text string</a><ul>
1842
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy" (because of translaton matrix...mouse incompatible)
1847
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy" (because of translaton matrix...mouse incompatible)
1843
</span></li>
1848
</span></li>
1844
<li><span style="color:blue;font-size:0.8em"> unicode supported: stringup red,0,0,45,\u2232
1849
<li><span style="color:blue;font-size:0.8em"> unicode supported: stringup red,0,0,45,\u2232
1845
</span></li>
1850
</span></li>
1846
<li><span style="color:blue;font-size:0.8em"> use a command like 'fontfamily bold 34px Courier' <br />to set fonts on browser that support font change
1851
<li><span style="color:blue;font-size:0.8em"> use a command like 'fontfamily bold 34px Courier' <br />to set fonts on browser that support font change
1847
</span></li>
1852
</span></li>
1848
</ul>
1853
</ul>
1849
<li><a name='highlight' href='#highlight top'> highlight color,opacity,linewidth</a><ul>
1854
<li><a name='highlight' href='#highlight top'>  highlight color,opacity,linewidth</a><ul>
1850
<li><span style="color:blue;font-size:0.8em"> NOT IMPLEMENTED
1855
<li><span style="color:blue;font-size:0.8em"> NOT IMPLEMENTED
1851
</span></li>
1856
</span></li>
1852
<li><span style="color:blue;font-size:0.8em"> use command "onclick" : when the object receives a userclick it will increase its linewidth
1857
<li><span style="color:blue;font-size:0.8em"> use command "onclick" : when the object receives a userclick it will increase its linewidth
1853
</span></li>
1858
</span></li>
1854
</ul>
1859
</ul>
1855
<li><a name='strokecolor' href='#strokecolor top'> strokecolor colorname or #hex</a><ul>
1860
<li><a name='strokecolor' href='#strokecolor top'>  strokecolor colorname or #hex</a><ul>
1856
<li><span style="color:blue;font-size:0.8em"> to be used for commands that do not supply a color argument (like command 'linegraph')
1861
<li><span style="color:blue;font-size:0.8em"> to be used for commands that do not supply a color argument (like command 'linegraph')
1857
</span></li>
1862
</span></li>
1858
</ul>
1863
</ul>
1859
<li><a name='text' href='#text top'> text fontcolor,x,y,font,text_string</a><ul>
1864
<li><a name='text' href='#text top'>  text fontcolor,x,y,font,text_string</a><ul>
1860
<li><span style="color:blue;font-size:0.8em"> font may be described by keywords : giant,huge,normal,small,tiny
1865
<li><span style="color:blue;font-size:0.8em"> font may be described by keywords : giant,huge,normal,small,tiny
1861
</span></li>
1866
</span></li>
1862
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize' to increase base fontsize for these keywords
1867
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize' to increase base fontsize for these keywords
1863
</span></li>
1868
</span></li>
1864
<li><span style="color:blue;font-size:0.8em"> may be set "onclick" or "drag xy"
1869
<li><span style="color:blue;font-size:0.8em"> may be set "onclick" or "drag xy"
Line 1870... Line 1875...
1870
<li><span style="color:blue;font-size:0.8em"> use command 'string' combined with 'fontfamily' for a more fine grained control over html5 canvas text element
1875
<li><span style="color:blue;font-size:0.8em"> use command 'string' combined with 'fontfamily' for a more fine grained control over html5 canvas text element
1871
</span></li>
1876
</span></li>
1872
<li><span style="color:blue;font-size:0.8em"> Avoid mixing old flydraw commands 'text' 'textup' with new canvasdraw commands 'string' stringup'<br />If the fontfamily was set completely like "fontfamily italic 24px Ariel".<br />In that case reset 'fontfamily' to something lke 'fontfamily Ariel' before the old flydraw commands.
1877
<li><span style="color:blue;font-size:0.8em"> Avoid mixing old flydraw commands 'text' 'textup' with new canvasdraw commands 'string' stringup'<br />If the fontfamily was set completely like "fontfamily italic 24px Ariel".<br />In that case reset 'fontfamily' to something lke 'fontfamily Ariel' before the old flydraw commands.
1873
</span></li>
1878
</span></li>
1874
</ul>
1879
</ul>
1875
<li><a name='textarea' href='#textarea top'> textarea x,y,cols,rows,readonly,value</a><ul>
1880
<li><a name='textarea' href='#textarea top'>  textarea x,y,cols,rows,readonly,value</a><ul>
1876
<li><span style="color:blue;font-size:0.8em"> may be further controlled by <a href="#inputstyle">"inputstyle"</a>
1881
<li><span style="color:blue;font-size:0.8em"> may be further controlled by <a href="#inputstyle">"inputstyle"</a>
1877
</span></li>
1882
</span></li>
1878
<li><span style="color:blue;font-size:0.8em"> if "$status=done" (e.g. in answer.phtml) the inputfield will be cleared and set readonly<br />override this by keyword <a href="#status">'status'.</a>
1883
<li><span style="color:blue;font-size:0.8em"> if "$status=done" (e.g. in answer.phtml) the inputfield will be cleared and set readonly<br />override this by keyword <a href="#status">'status'.</a>
1879
</span></li>
1884
</span></li>
1880
<li><span style="color:blue;font-size:0.8em"> if mathml inputfields are present and / or some userdraw is performed, these data will <b>not</b> be send as well (javascript:read_canvas();)
1885
<li><span style="color:blue;font-size:0.8em"> if mathml inputfields are present and / or some userdraw is performed, these data will <b>not</b> be send as well (javascript:read_canvas();)
1881
</span></li>
1886
</span></li>
1882
<li><span style="color:blue;font-size:0.8em"> keyword 'xoffset | centered' is not active for commande 'textarea'
1887
<li><span style="color:blue;font-size:0.8em"> keyword 'xoffset | centered' is not active for commande 'textarea'
1883
</span></li>
1888
</span></li>
1884
</ul>
1889
</ul>
1885
<li><a name='textfill' href='#textfill top'> textfill x0,y0,color,some_text</a><ul>
1890
<li><a name='textfill' href='#textfill top'>  textfill x0,y0,color,some_text</a><ul>
1886
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
1891
<li><span style="color:blue;font-size:0.8em"> x0,y0 in xrange / yrange
1887
</span></li>
1892
</span></li>
1888
<li><span style="color:blue;font-size:0.8em"> color will be used for the font color
1893
<li><span style="color:blue;font-size:0.8em"> color will be used for the font color
1889
</span></li>
1894
</span></li>
1890
<li><span style="color:blue;font-size:0.8em"> use command <a href="#fontfamily">fontfamily</a> to set font type and size
1895
<li><span style="color:blue;font-size:0.8em"> use command <a href="#fontfamily">fontfamily</a> to set font type and size
1891
</span></li>
1896
</span></li>
1892
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="#userdraw">userdraw textfill,color,some_text</a>
1897
<li><span style="color:blue;font-size:0.8em"> there is also a command <a href="#userdraw">userdraw textfill,color,some_text</a>
1893
</span></li>
1898
</span></li>
1894
</ul>
1899
</ul>
1895
<li><a name='textup' href='#textup top'> textup fontcolor,x,y,font,text_string</a><ul>
1900
<li><a name='textup' href='#textup top'>  textup fontcolor,x,y,font,text_string</a><ul>
1896
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy" (because of translaton matrix...mouse incompatible)
1901
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be set "onclick" or "drag xy" (because of translaton matrix...mouse incompatible)
1897
</span></li>
1902
</span></li>
1898
<li><span style="color:blue;font-size:0.8em"> font may be described by keywords : giant,huge,normal,small,tiny
1903
<li><span style="color:blue;font-size:0.8em"> font may be described by keywords : giant,huge,normal,small,tiny
1899
</span></li>
1904
</span></li>
1900
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize' to increase base fontsize for the keywords
1905
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize' to increase base fontsize for the keywords
Line 1906... Line 1911...
1906
<li><span style="color:blue;font-size:0.8em"> use command 'stringup' and 'fontfamily' for a more fine grained control over html5 canvas text element
1911
<li><span style="color:blue;font-size:0.8em"> use command 'stringup' and 'fontfamily' for a more fine grained control over html5 canvas text element
1907
</span></li>
1912
</span></li>
1908
<li><span style="color:blue;font-size:0.8em"> Avoid mixing old flydraw commands 'text' 'textup' with new canvasdraw commands 'string' stringup'<br />If the fontfamily was set completely like "fontfamily italic 24px Ariel".<br />In that case reset 'fontfamily' to something lke 'fontfamily Ariel' before the old flydraw commands.
1913
<li><span style="color:blue;font-size:0.8em"> Avoid mixing old flydraw commands 'text' 'textup' with new canvasdraw commands 'string' stringup'<br />If the fontfamily was set completely like "fontfamily italic 24px Ariel".<br />In that case reset 'fontfamily' to something lke 'fontfamily Ariel' before the old flydraw commands.
1909
</span></li>
1914
</span></li>
1910
</ul>
1915
</ul>
1911
<li><a name='trace_jscurve' href='#trace_jscurve top'> trace_jscurve some_math_function</a><ul>
1916
<li><a name='trace_jscurve' href='#trace_jscurve top'>  trace_jscurve some_math_function</a><ul>
1912
<li><span style="color:blue;font-size:0.8em"> will use a crosshair to trace the jsmath curve
1917
<li><span style="color:blue;font-size:0.8em"> will use a crosshair to trace the jsmath curve
1913
</span></li>
1918
</span></li>
1914
<li><span style="color:blue;font-size:0.8em"> two inputfields will display the current x/y-values (numerical evaluation by javascript)
1919
<li><span style="color:blue;font-size:0.8em"> two inputfields will display the current x/y-values (numerical evaluation by javascript)
1915
</span></li>
1920
</span></li>
1916
<li><span style="color:blue;font-size:0.8em"> default labels 'x' and 'y'<br />use commands 'xlabel some_x_axis_name' and 'ylabel some_y_axis_name' to customize the labels for the input fields
1921
<li><span style="color:blue;font-size:0.8em"> default labels 'x' and 'y'<br />use commands 'xlabel some_x_axis_name' and 'ylabel some_y_axis_name' to customize the labels for the input fields
Line 1922... Line 1927...
1922
<li><span style="color:blue;font-size:0.8em"> the client browser will convert your math function to javascript math.<br />use parenthesis and rawmath : use 2*x instead of 2x etc etc<br />no check is done on the validity of your function and/or syntax<br />use error console to debug any errors...
1927
<li><span style="color:blue;font-size:0.8em"> the client browser will convert your math function to javascript math.<br />use parenthesis and rawmath : use 2*x instead of 2x etc etc<br />no check is done on the validity of your function and/or syntax<br />use error console to debug any errors...
1923
</span></li>
1928
</span></li>
1924
<li><span style="color:blue;font-size:0.8em"> be aware that the formula's of the plotted function(s) can be found in the page javascript source
1929
<li><span style="color:blue;font-size:0.8em"> be aware that the formula's of the plotted function(s) can be found in the page javascript source
1925
</span></li>
1930
</span></li>
1926
</ul>
1931
</ul>
1927
<li><a name='trange' href='#trange top'> trange tmin,tmax</a><ul>
1932
<li><a name='trange' href='#trange top'>  trange tmin,tmax</a><ul>
1928
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='ranget' href='#ranget top'>ranget</a></span></li>
1933
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='ranget' href='#ranget top'>ranget</a></span></li>
1929
<li><span style="color:blue;font-size:0.8em"> default -2,2
1934
<li><span style="color:blue;font-size:0.8em"> default -2,2
1930
</span></li>
1935
</span></li>
1931
</ul>
1936
</ul>
1932
<li><a name='translation' href='#translation top'> translation tx,ty</a><ul>
1937
<li><a name='translation' href='#translation top'>  translation tx,ty</a><ul>
1933
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='translate' href='#translate top'>translate</a></span></li>
1938
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='translate' href='#translate top'>translate</a></span></li>
1934
<li><span style="color:blue;font-size:0.8em"> will translate the next objects tx in xrange and ty in yrange
1939
<li><span style="color:blue;font-size:0.8em"> will translate the next objects tx in xrange and ty in yrange
1935
</span></li>
1940
</span></li>
1936
<li><span style="color:blue;font-size:0.8em"> use command 'killtranstation' to end the command
1941
<li><span style="color:blue;font-size:0.8em"> use command 'killtranstation' to end the command
1937
</span></li>
1942
</span></li>
1938
</ul>
1943
</ul>
1939
<li><a name='triangle' href='#triangle top'> triangle x1,y1,x2,y2,x3,y3,color</a><ul>
1944
<li><a name='triangle' href='#triangle top'>  triangle x1,y1,x2,y2,x3,y3,color</a><ul>
1940
<li><span style="color:blue;font-size:0.8em"> use ftriangle or keyword <a href='#filled'>'filled'</a> for a solid triangle
1945
<li><span style="color:blue;font-size:0.8em"> use ftriangle or keyword <a href='#filled'>'filled'</a> for a solid triangle
1941
</span></li>
1946
</span></li>
1942
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1947
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
1943
</span></li>
1948
</span></li>
1944
</ul>
1949
</ul>
1945
<li><a name='triangles' href='#triangles top'> triangles color,x1,y1,x2,y2,x3,y3,...</a><ul>
1950
<li><a name='triangles' href='#triangles top'>  triangles color,x1,y1,x2,y2,x3,y3,...</a><ul>
1946
<li><span style="color:blue;font-size:0.8em"> use ftriangles or keyword <a href='#filled'>'filled'</a> for solid triangles
1951
<li><span style="color:blue;font-size:0.8em"> use ftriangles or keyword <a href='#filled'>'filled'</a> for solid triangles
1947
</span></li>
1952
</span></li>
1948
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
1953
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
1949
</span></li>
1954
</span></li>
1950
</ul>
1955
</ul>
1951
<li><a name='userboxplot' href='#userboxplot top'> userboxplot</a><ul>
1956
<li><a name='userboxplot' href='#userboxplot top'>  userboxplot</a><ul>
1952
<li><span style="color:blue;font-size:0.8em"> keyword, no arguments
1957
<li><span style="color:blue;font-size:0.8em"> keyword, no arguments
1953
</span></li>
1958
</span></li>
1954
<li><span style="color:blue;font-size:0.8em"> use before command <a href="#boxplot">'boxplot x_or_y,box-height_or_box-width,x_or_y-position'</a>
1959
<li><span style="color:blue;font-size:0.8em"> use before command <a href="#boxplot">'boxplot x_or_y,box-height_or_box-width,x_or_y-position'</a>
1955
</span></li>
1960
</span></li>
1956
<li><span style="color:blue;font-size:0.8em"> if set, the student will have to calculate "min,Q1,median,Q3,max" and feed these data into the 'draw_boxplot' function
1961
<li><span style="color:blue;font-size:0.8em"> if set, the student will have to calculate "min,Q1,median,Q3,max" and feed these data into the 'draw_boxplot' function
1957
</span></li>
1962
</span></li>
1958
<li><span style="color:blue;font-size:0.8em"> for example:<br />put the canvas-script into a html element with id='boxplot'and set style='display:none'<br />define a variable called 'student_boxplot' and fill it with the 5 student-data (from inputfields or something)<br />var student_boxplot = new Array(5)<br />function show_boxplot(){<br />student_boxplot[0] = min;<br />student_boxplot[1] = Q1;<br />student_boxplot[2] = median;<br />student_boxplot[3] = Q3;<br />student_boxplot[4] = max;<br />document.getElementById('boxplot').style.display = "block";<br />draw_boxplot(12345,1,2.00,5.00,[0,0,0,0,0],4,"0,0,255",0.78,"255,165,0",0.60,1,0,1,1);<br />};<br />In the canvas-script the function draw_boxplot has the following arguments:<br />draw_boxplot=function(canvas_type,xy,hw,cxy,data,line_width,stroke_color,stroke_opacity,fill_color,fill_opacity,use_filled,use_dashed,dashtype0,dashtype1)
1963
<li><span style="color:blue;font-size:0.8em"> for example:<br />put the canvas-script into a html element with id='boxplot'and set style='display:none'<br />define a variable called 'student_boxplot' and fill it with the 5 student-data (from inputfields or something)<br />var student_boxplot = new Array(5)<br />function show_boxplot(){<br />student_boxplot[0] = min;<br />student_boxplot[1] = Q1;<br />student_boxplot[2] = median;<br />student_boxplot[3] = Q3;<br />student_boxplot[4] = max;<br />document.getElementById('boxplot').style.display = "block";<br />draw_boxplot(12345,1,2.00,5.00,[0,0,0,0,0],4,"0,0,255",0.78,"255,165,0",0.60,1,0,1,1);<br />};<br />In the canvas-script the function draw_boxplot has the following arguments:<br />draw_boxplot=function(canvas_type,xy,hw,cxy,data,line_width,stroke_color,stroke_opacity,fill_color,fill_opacity,use_filled,use_dashed,dashtype0,dashtype1)
1959
</span></li>
1964
</span></li>
1960
</ul>
1965
</ul>
1961
<li><a name='userboxplotdata' href='#userboxplotdata top'> userboxplotdata</a><ul>
1966
<li><a name='userboxplotdata' href='#userboxplotdata top'>  userboxplotdata</a><ul>
1962
<li><span style="color:blue;font-size:0.8em"> keyword, no arguments
1967
<li><span style="color:blue;font-size:0.8em"> keyword, no arguments
1963
</span></li>
1968
</span></li>
1964
<li><span style="color:blue;font-size:0.8em"> use before command <a href="#boxplot">'boxplot x_or_y,box-height_or_box-width,x_or_y-position'</a>
1969
<li><span style="color:blue;font-size:0.8em"> use before command <a href="#boxplot">'boxplot x_or_y,box-height_or_box-width,x_or_y-position'</a>
1965
</span></li>
1970
</span></li>
1966
<li><span style="color:blue;font-size:0.8em"> if set, the student will have to generate some statistical data. These data should be put in a named array "student_boxplot_data"
1971
<li><span style="color:blue;font-size:0.8em"> if set, the student will have to generate some statistical data. These data should be put in a named array "student_boxplot_data"
Line 1968... Line 1973...
1968
<li><span style="color:blue;font-size:0.8em"> "min,Q1,median,Q3,max" are calculated by a js-function and the 'draw_boxplot' function will draw a boxplot.
1973
<li><span style="color:blue;font-size:0.8em"> "min,Q1,median,Q3,max" are calculated by a js-function and the 'draw_boxplot' function will draw a boxplot.
1969
</span></li>
1974
</span></li>
1970
<li><span style="color:blue;font-size:0.8em"> see command <a href="#userboxplot">'userboxplot'</a> for calling 'draw_boxplot()'
1975
<li><span style="color:blue;font-size:0.8em"> see command <a href="#userboxplot">'userboxplot'</a> for calling 'draw_boxplot()'
1971
</span></li>
1976
</span></li>
1972
</ul>
1977
</ul>
1973
<li><a name='userdraw' href='#userdraw top'> userdraw object_type,color</a><ul>
1978
<li><a name='userdraw' href='#userdraw top'>  userdraw object_type,color</a><ul>
1974
<li><span style="color:blue;font-size:0.8em"> only a single object_type is allowed.
1979
<li><span style="color:blue;font-size:0.8em"> only a single object_type is allowed.
1975
</span></li>
1980
</span></li>
1976
<li><span style="color:blue;font-size:0.8em"> for multiple object user drawings use command <a href="#multidraw">'multidraw'</a>
1981
<li><span style="color:blue;font-size:0.8em"> for multiple object user drawings use command <a href="#multidraw">'multidraw'</a>
1977
</span></li>
1982
</span></li>
1978
<li><span style="color:blue;font-size:0.8em"> implemented object_type: <ul><li>point</li><li>points</li><li>crosshair</li><li>crosshairs</li><li>line</li><li>lines</li><li>vline</li><li>vlines</li><li>hline</li><li>hlines</li><li>demiline</li><li>demilines</li><li>segment</li><li>segments</li><li>polyline | brokenline </li><li>circle</li><li>circles</li><li>arrow</li><li>arrow2 (double arrow)</li><li>arrows</li><li>arrows2 (double arrows)</li><li>triangle</li><li>polygon</li><li>poly[3-9] (e.g poly3 ... poly7...poly9 </li><li>rect</li><li>roundrect</li><li>rects</li><li>roundrects</li><li>freehandline | path</li><li>freehandlines | paths</li><li>clickfill : fill the clicked area with color<br />multiple areas may be selected <br />multiple colors may be provided using commands <a href='#colorpalette'>colorpalette color1,color2,color3,...</a> or <a href='#multifillcolors'>multifillcolors color1,color2,color_3,...</a> use <a href='#replyformat'>replyformat 10</a> for checking the user click color ... reply=x1:y1:color1,x2:y2:color2...<br/>attention: this will <b>not</b> work for pattern filling, because the pattern image is only generated once and after creation can not be changed !<br />the opacity of this image on a separate canvas is set to 0.01 and not 0 (!!)...in the 'fill algorithm' the opacity of the matching pixels is set to 1</li><li>dotfill : fill the clicked area with a dot pattern; use command linewidth to change dot size</li><li>diamondfill : fill the clicked area with a diamond pattern</li><li>hatchfill : fill the clicked area with a hatch pattern</li><li>gridfill : fill the clicked area with a grid pattern</li><li>textfill: fill the clicked area with a repeating string<br />userdraw textfill,blue,some_text<br />use command <a href="#fontfamily">fontfamily</a> to adjust text style and size</li><li>'clickfill | pattern filling' in general:<br />the clicks may be set <a href="#snaptogrid">'snaptogrid'</a><br />can be used together with command <a href="#floodfill">'floodfill' or 'fill'</a><br /><b>always</b> use together with command <a href="clearbutton">'clearbutton some_text'</a> for removal of all click_colored areas<br />the function read_canvas() will return the click coordinates in the sequence of the user clicks<br />use command <a href="#canvastype">'canvastype'</a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)</li><li>text</li><li>arc</li><li>arcs</li><li>input<br/>place a single inputfield on 'canvas'<br />use commands 'inputstyle' for css styling: use command 'linewidth' for adjusting the input field size (default 1)</li><li>inputs<br/>place multiple inputfield : placing inputfields on top of each other is not possible</li></ul>
1983
<li><span style="color:blue;font-size:0.8em"> implemented object_type: <ul><li>point</li><li>points</li><li>crosshair</li><li>crosshairs</li><li>line</li><li>lines</li><li>vline</li><li>vlines</li><li>hline</li><li>hlines</li><li>demiline</li><li>demilines</li><li>segment</li><li>segments</li><li>polyline | brokenline </li><li>circle</li><li>circles</li><li>arrow</li><li>arrow2 (double arrow)</li><li>arrows</li><li>arrows2 (double arrows)</li><li>triangle</li><li>polygon</li><li>poly[3-9] (e.g poly3 ... poly7...poly9 </li><li>rect</li><li>roundrect</li><li>rects</li><li>roundrects</li><li>freehandline | path</li><li>freehandlines | paths</li><li>clickfill : fill the clicked area with color<br />multiple areas may be selected <br />multiple colors may be provided using commands <a href='#colorpalette'>colorpalette color1,color2,color3,...</a> or <a href='#multifillcolors'>multifillcolors color1,color2,color_3,...</a> use <a href='#replyformat'>replyformat 10</a> for checking the user click color ... reply=x1:y1:color1,x2:y2:color2...<br/>attention: this will <b>not</b> work for pattern filling, because the pattern image is only generated once and after creation can not be changed !<br />the opacity of this image on a separate canvas is set to 0.01 and not 0 (!!)...in the 'fill algorithm' the opacity of the matching pixels is set to 1</li><li>dotfill : fill the clicked area with a dot pattern; use command linewidth to change dot size</li><li>diamondfill : fill the clicked area with a diamond pattern</li><li>hatchfill : fill the clicked area with a hatch pattern</li><li>gridfill : fill the clicked area with a grid pattern</li><li>textfill: fill the clicked area with a repeating string<br />userdraw textfill,blue,some_text<br />use command <a href="#fontfamily">fontfamily</a> to adjust text style and size</li><li>'clickfill | pattern filling' in general:<br />the clicks may be set <a href="#snaptogrid">'snaptogrid'</a><br />can be used together with command <a href="#floodfill">'floodfill' or 'fill'</a><br /><b>always</b> use together with command <a href="clearbutton">'clearbutton some_text'</a> for removal of all click_colored areas<br />the function read_canvas() will return the click coordinates in the sequence of the user clicks<br />use command <a href="#canvastype">'canvastype'</a> to fill another canvas (default should be fine: DRAG_CANVAS = 5)</li><li>text</li><li>arc</li><li>arcs</li><li>input<br/>place a single inputfield on 'canvas'<br />use commands 'inputstyle' for css styling: use command 'linewidth' for adjusting the input field size (default 1)</li><li>inputs<br/>place multiple inputfield : placing inputfields on top of each other is not possible</li></ul>
Line 2000... Line 2005...
2000
<li><span style="color:blue;font-size:0.8em"> may be combined with keyword 'userinput_xy'
2005
<li><span style="color:blue;font-size:0.8em"> may be combined with keyword 'userinput_xy'
2001
</span></li>
2006
</span></li>
2002
<li><span style="color:blue;font-size:0.8em"> note: when zooming / panning after a drawing, the drawing will NOT be zoomed / panned...this is a "design" flaw and not a feature <br />To avoid trouble do not use zooming / panning together width userdraw.!<br />use command <a href="#multidraw">multidraw</a> is this is a problem for you...
2007
<li><span style="color:blue;font-size:0.8em"> note: when zooming / panning after a drawing, the drawing will NOT be zoomed / panned...this is a "design" flaw and not a feature <br />To avoid trouble do not use zooming / panning together width userdraw.!<br />use command <a href="#multidraw">multidraw</a> is this is a problem for you...
2003
</span></li>
2008
</span></li>
2004
</ul>
2009
</ul>
2005
<li><a name='userinput' href='#userinput top'> userinput function | textarea | inputfield</a><ul>
2010
<li><a name='userinput' href='#userinput top'>  userinput function | textarea | inputfield</a><ul>
2006
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='userinput_function' href='#userinput_function top'>userinput_function</a></span></li>
2011
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='userinput_function' href='#userinput_function top'>userinput_function</a></span></li>
2007
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='userinput_textarea' href='#userinput_textarea top'>userinput_textarea</a></span></li>
2012
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='userinput_textarea' href='#userinput_textarea top'>userinput_textarea</a></span></li>
2008
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='userinput_xy' href='#userinput_xy top'>userinput_xy</a></span></li>
2013
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='userinput_xy' href='#userinput_xy top'>userinput_xy</a></span></li>
2009
<li><span style="color:blue;font-size:0.8em"> textarea and inputfield are only usable in combination with some 'userdraw draw_ type'
2014
<li><span style="color:blue;font-size:0.8em"> textarea and inputfield are only usable in combination with some 'userdraw draw_ type'
2010
</span></li>
2015
</span></li>
Line 2019... Line 2024...
2019
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' to adjust the inputfields
2024
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' to adjust the inputfields
2020
</span></li>
2025
</span></li>
2021
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the label fonts. (default 12px)
2026
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the label fonts. (default 12px)
2022
</span></li>
2027
</span></li>
2023
<li><span style="color:blue;font-size:0.8em"> the user input for the function will be corrected by a simple 'rawmath' implementation...<br />an error message will be shown if javascript can not interpret the user input
2028
<li><span style="color:blue;font-size:0.8em"> the user input for the function will be corrected by a simple 'rawmath' implementation...<br />an error message will be shown if javascript can not interpret the user input
2024
</span></li>
2029
</span></li>
2025
</ul>
2030
</ul>
2026
<li><a name='userinput_xy' href='#userinput_xy top'> userinput_xy</a><ul>
2031
<li><a name='userinput_xy' href='#userinput_xy top'>  userinput_xy</a><ul>
2027
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2032
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2028
</span></li>
2033
</span></li>
2029
<li><span style="color:blue;font-size:0.8em"> to be used in combination with command "userdraw object_type,color"
2034
<li><span style="color:blue;font-size:0.8em"> to be used in combination with command "userdraw object_type,color"
2030
</span></li>
2035
</span></li>
2031
<li><span style="color:blue;font-size:0.8em"> if set two (or three) input fields are added to the document<br />(one for x-values , one for y-values and in case of drawing circle one for radius-values)
2036
<li><span style="color:blue;font-size:0.8em"> if set two (or three) input fields are added to the document<br />(one for x-values , one for y-values and in case of drawing circle one for radius-values)
2032
</span></li>
2037
</span></li>
2033
<li><span style="color:blue;font-size:0.8em"> the student may use this as correction for (x:y) on a drawing (or to draw without mouse, using just the coordinates)
2038
<li><span style="color:blue;font-size:0.8em"> the student may use this as correction for (x:y) on a drawing (or to draw without mouse, using just the coordinates)
2034
</span></li>
-
 
2035
<li><span style="color:blue;font-size:0.8em"> math input is allowed (e.g something like: 1+3,2*6,1/3,sqrt(3), sin(pi/4),10^-2,log(2)...)<br />eval function is 'protected' against code injection.
-
 
2036
</span></li>
2039
</span></li>
-
 
2040
<li><span style="color:blue;font-size:0.8em"> math input is allowed (e.g something like: 1+3,2*6,1/3,sqrt(3), sin(pi/4),10^-2,log(2)...)<br />eval function is 'protected' against code injection.
-
 
2041
</span></li>
2037
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be combined with command "intooltip tiptext" <br />note: the 'tooltip div element' is used for placing inputfields
2042
<li><span style="color:blue;font-size:0.8em"> can <b>not</b> be combined with command "intooltip tiptext" <br />note: the 'tooltip div element' is used for placing inputfields
2038
</span></li>
2043
</span></li>
2039
<li><span style="color:blue;font-size:0.8em"> user drawings will not zoom on zooming (or pan on panning)
2044
<li><span style="color:blue;font-size:0.8em"> user drawings will not zoom on zooming (or pan on panning)
2040
</span></li>
2045
</span></li>
2041
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' to adjust the inputarea.
2046
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' to adjust the inputarea.
2042
</span></li>
2047
</span></li>
2043
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the text labels (if needed)
2048
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the text labels (if needed)
2044
</span></li>
2049
</span></li>
2045
</ul>
2050
</ul>
2046
<li><a name='userinput_function' href='#userinput_function top'> userinput_function</a><ul>
2051
<li><a name='userinput_function' href='#userinput_function top'>  userinput_function</a><ul>
2047
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2052
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2048
</span></li>
2053
</span></li>
2049
<li><span style="color:blue;font-size:0.8em"> if set , a inputfield will be added to the page
2054
<li><span style="color:blue;font-size:0.8em"> if set , a inputfield will be added to the page
2050
</span></li>
2055
</span></li>
2051
<li><span style="color:blue;font-size:0.8em"> repeat keyword for more function input fields
2056
<li><span style="color:blue;font-size:0.8em"> repeat keyword for more function input fields
Line 2055... Line 2060...
2055
<li><span style="color:blue;font-size:0.8em"> this value may be read with 'read_canvas()'. <br />for do it yourself js-scripters : If this is the first inputfield in the script, its id is canvas_input0
2060
<li><span style="color:blue;font-size:0.8em"> this value may be read with 'read_canvas()'. <br />for do it yourself js-scripters : If this is the first inputfield in the script, its id is canvas_input0
2056
</span></li>
2061
</span></li>
2057
<li><span style="color:blue;font-size:0.8em"> use before this command 'userinput_function',<br />commands like 'inputstyle some_css' , 'xlabel some_description' , 'opacity int,int' , 'linewidth int' , 'dashed' and 'dashtype int,int' to modify
2062
<li><span style="color:blue;font-size:0.8em"> use before this command 'userinput_function',<br />commands like 'inputstyle some_css' , 'xlabel some_description' , 'opacity int,int' , 'linewidth int' , 'dashed' and 'dashtype int,int' to modify
2058
</span></li>
2063
</span></li>
2059
<li><span style="color:blue;font-size:0.8em"> fontsize can be set using command 'fontsize int'
2064
<li><span style="color:blue;font-size:0.8em"> fontsize can be set using command 'fontsize int'
2060
</span></li>
2065
</span></li>
2061
<li><span style="color:blue;font-size:0.8em"> incompatible with command 'intooltip link_text_or_image' : it uses the tooltip div for adding the inputfield
2066
<li><span style="color:blue;font-size:0.8em"> incompatible with command 'intooltip link_text_or_image' : it uses the tooltip div for adding the inputfield
2062
</span></li>
2067
</span></li>
2063
</ul>
2068
</ul>
2064
<li><a name='usertextarea_xy' href='#usertextarea_xy top'> usertextarea_xy</a><ul>
2069
<li><a name='usertextarea_xy' href='#usertextarea_xy top'>  usertextarea_xy</a><ul>
2065
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2070
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2066
</span></li>
2071
</span></li>
2067
<li><span style="color:blue;font-size:0.8em"> to be used in combination with command "userdraw object_type,color" wherein object_type is only segment / polyline for the time being...
2072
<li><span style="color:blue;font-size:0.8em"> to be used in combination with command "userdraw object_type,color" wherein object_type is only segment / polyline for the time being...
2068
</span></li>
2073
</span></li>
2069
<li><span style="color:blue;font-size:0.8em"> if set two textareas are added to the document<br />(one for x-values , one for y-values)
2074
<li><span style="color:blue;font-size:0.8em"> if set two textareas are added to the document<br />(one for x-values , one for y-values)
2070
</span></li>
2075
</span></li>
2071
<li><span style="color:blue;font-size:0.8em"> the student may use this as correction for (x:y) on a drawing (or to draw without mouse, using just the coordinates)
2076
<li><span style="color:blue;font-size:0.8em"> the student may use this as correction for (x:y) on a drawing (or to draw without mouse, using just the coordinates)
2072
</span></li>
2077
</span></li>
2073
<li><span style="color:blue;font-size:0.8em"> user drawings will not zoom on zooming (or pan on panning)
2078
<li><span style="color:blue;font-size:0.8em"> user drawings will not zoom on zooming (or pan on panning)
2074
</span></li>
2079
</span></li>
2075
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' to adjust the inputarea.
2080
<li><span style="color:blue;font-size:0.8em"> use command 'inputstyle some_css' to adjust the inputarea.
2076
</span></li>
2081
</span></li>
2077
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the text labels (if needed)
2082
<li><span style="color:blue;font-size:0.8em"> use command 'fontsize int' to adjust the text labels (if needed)
2078
</span></li>
2083
</span></li>
2079
</ul>
2084
</ul>
2080
<li><a name='vline' href='#vline top'> vline x,y,color</a><ul>
2085
<li><a name='vline' href='#vline top'>  vline x,y,color</a><ul>
2081
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='verticalline' href='#verticalline top'>verticalline</a></span></li>
2086
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='verticalline' href='#verticalline top'>verticalline</a></span></li>
2082
<li><span style="color:blue;font-size:0.8em"> draw a vertical line through point (x:y) in color 'color'
2087
<li><span style="color:blue;font-size:0.8em"> draw a vertical line through point (x:y) in color 'color'
2083
</span></li>
2088
</span></li>
2084
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
2089
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a>
2085
</span></li>
2090
</span></li>
2086
</ul>
2091
</ul>
2087
<li><a name='vlines' href='#vlines top'> vlines color,x1,y1,x2,y2....</a><ul>
2092
<li><a name='vlines' href='#vlines top'>  vlines color,x1,y1,x2,y2....</a><ul>
2088
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='verticallines' href='#verticallines top'>verticallines</a></span></li>
2093
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='verticallines' href='#verticallines top'>verticallines</a></span></li>
2089
<li><span style="color:blue;font-size:0.8em"> draw vertical lines through points (x1:y1),(x2:y2)... in color 'color'
2094
<li><span style="color:blue;font-size:0.8em"> draw vertical lines through points (x1:y1),(x2:y2)... in color 'color'
2090
</span></li>
2095
</span></li>
2091
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
2096
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually
2092
</span></li>
2097
</span></li>
2093
</ul>
2098
</ul>
2094
<li><a name='video' href='#video top'> video x,y,w,h,videofile location</a><ul>
2099
<li><a name='video' href='#video top'>  video x,y,w,h,videofile location</a><ul>
2095
<li><span style="color:blue;font-size:0.8em"> x,y : left top corner of audio element (in xrange / yrange)
2100
<li><span style="color:blue;font-size:0.8em"> x,y : left top corner of audio element (in xrange / yrange)
2096
</span></li>
2101
</span></li>
2097
<li><span style="color:blue;font-size:0.8em"> w,y : width and height in pixels
2102
<li><span style="color:blue;font-size:0.8em"> w,y : width and height in pixels
2098
</span></li>
2103
</span></li>
2099
<li><span style="color:blue;font-size:0.8em"> example:<br />wims getfile : video 0,0,120,120,myvideo.mp4
2104
<li><span style="color:blue;font-size:0.8em"> example:<br />wims getfile : video 0,0,120,120,myvideo.mp4
2100
</span></li>
2105
</span></li>
2101
<li><span style="color:blue;font-size:0.8em"> video format may be in *.mp4 (todo:other formats)
2106
<li><span style="color:blue;font-size:0.8em"> video format may be in *.mp4 (todo:other formats)
2102
</span></li>
2107
</span></li>
2103
</ul>
2108
</ul>
2104
<li><a name='xaxis' href='#xaxis top'> xaxis num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n</a><ul>
2109
<li><a name='xaxis' href='#xaxis top'>  xaxis num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n</a><ul>
2105
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='xaxistext' href='#xaxistext top'>xaxistext</a></span></li>
2110
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='xaxistext' href='#xaxistext top'>xaxistext</a></span></li>
2106
<li><span style="color:blue;font-size:0.8em"> usable for commands <a href="numberline">numberline</a> and <a href="grid">grid</a> or combinations thereof
2111
<li><span style="color:blue;font-size:0.8em"> usable for commands <a href="numberline">numberline</a> and <a href="grid">grid</a> or combinations thereof
2107
</span></li>
2112
</span></li>
2108
<li><span style="color:blue;font-size:0.8em"> use these x-axis num1...num_n values instead of default xmin...xmax
2113
<li><span style="color:blue;font-size:0.8em"> use these x-axis num1...num_n values instead of default xmin...xmax
2109
</span></li>
2114
</span></li>
2110
<li><span style="color:blue;font-size:0.8em"> in case of command 'grid' . there is no need to use keyword <a href="#axisnumbering">axisnumbering</a>
2115
<li><span style="color:blue;font-size:0.8em"> in case of command 'grid' . there is no need to use keyword <a href="#axisnumbering">axisnumbering</a>
2111
</span></li>
2116
</span></li>
2112
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have visual x/y-axis lines (see command <a href="grid">grid</a>
2117
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have visual x/y-axis lines (see command <a href="grid">grid</a>
2113
</span></li>
2118
</span></li>
2114
<li><span style="color:blue;font-size:0.8em"> use command "fontcolor", "fontfamily" to adjust font <br />defaults: black,12,Ariel<br />note: command "fontsize" is not active for this command.("fontsize" can be used for the <a href="#legend">"legend"</a> in a <a href="#grid">grid</a>)
2119
<li><span style="color:blue;font-size:0.8em"> use command "fontcolor", "fontfamily" to adjust font <br />defaults: black,12,Ariel<br />note: command "fontsize" is not active for this command.("fontsize" can be used for the <a href="#legend">"legend"</a> in a <a href="#grid">grid</a>)
2115
</span></li>
2120
</span></li>
2116
<li><span style="color:blue;font-size:0.8em"> a javascript error message will flag non-matching value:name pairs
2121
<li><span style="color:blue;font-size:0.8em"> a javascript error message will flag non-matching value:name pairs
2117
</span></li>
2122
</span></li>
2118
<li><span style="color:blue;font-size:0.8em"> if the 'x-axis words' are too big and will overlap, a simple alternating offset will be applied
2123
<li><span style="color:blue;font-size:0.8em"> if the 'x-axis words' are too big and will overlap, a simple alternating offset will be applied
2119
</span></li>
2124
</span></li>
2120
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
2125
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
2121
</span></li>
2126
</span></li>
2122
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />xrange 0,13<br />yrange -100,500<br />axis<br />xaxis 1:january:2:february:3:march:5:may:6:june:7:july:8:august:9:september:10:october:11:november:12:december<br />#'xmajor' steps should be synchronised with numbers eg. "1" in this example<br />grid 1,100,grey,1,4,6,grey
2127
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />xrange 0,13<br />yrange -100,500<br />axis<br />xaxis 1:january:2:february:3:march:5:may:6:june:7:july:8:august:9:september:10:october:11:november:12:december<br />#'xmajor' steps should be synchronised with numbers eg. "1" in this example<br />grid 1,100,grey,1,4,6,grey
2123
</span></li>
2128
</span></li>
2124
</ul>
2129
</ul>
2125
<li><a name='xaxisup' href='#xaxisup top'> xaxisup num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n</a><ul>
2130
<li><a name='xaxisup' href='#xaxisup top'>  xaxisup num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n</a><ul>
2126
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='xaxistextup' href='#xaxistextup top'>xaxistextup</a></span></li>
2131
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='xaxistextup' href='#xaxistextup top'>xaxistextup</a></span></li>
2127
<li><span style="color:blue;font-size:0.8em"> the text will be rotated 90&deg; up
2132
<li><span style="color:blue;font-size:0.8em"> the text will be rotated 90&deg; up
2128
</span></li>
2133
</span></li>
2129
<li><span style="color:blue;font-size:0.8em"> no need to use keyword <a href="#axisnumbering">axisnumbering</a>
2134
<li><span style="color:blue;font-size:0.8em"> no need to use keyword <a href="#axisnumbering">axisnumbering</a>
2130
</span></li>
2135
</span></li>
2131
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have visual x/y-axis lines (see command <a href="grid">grid</a>
2136
<li><span style="color:blue;font-size:0.8em"> use command <a href="#axis">axis</a> to have visual x/y-axis lines (see command <a href="grid">grid</a>
2132
</span></li>
2137
</span></li>
2133
<li><span style="color:blue;font-size:0.8em"> use these x-axis num1...num_n values instead of default xmin...xmax
2138
<li><span style="color:blue;font-size:0.8em"> use these x-axis num1...num_n values instead of default xmin...xmax
2134
</span></li>
2139
</span></li>
2135
<li><span style="color:blue;font-size:0.8em"> use command "fontcolor","fontfamily" to adjust font <br />defaults: black,12,Ariel<br />note: command "fontsize" is not active for this command.("fontsize" can be used for the <a href="#legend">"legend"</a> in a <a href="#grid">grid</a>)
2140
<li><span style="color:blue;font-size:0.8em"> use command "fontcolor","fontfamily" to adjust font <br />defaults: black,12,Ariel<br />note: command "fontsize" is not active for this command.("fontsize" can be used for the <a href="#legend">"legend"</a> in a <a href="#grid">grid</a>)
2136
</span></li>
2141
</span></li>
2137
<li><span style="color:blue;font-size:0.8em"> a javascript error message will flag non-matching value:name pairs
2142
<li><span style="color:blue;font-size:0.8em"> a javascript error message will flag non-matching value:name pairs
2138
</span></li>
2143
</span></li>
2139
<li><span style="color:blue;font-size:0.8em"> if the 'x-axis words' are too big, they will overlap the graph<br /> (in this case the text will start from ysize upwards)
2144
<li><span style="color:blue;font-size:0.8em"> if the 'x-axis words' are too big, they will overlap the graph<br /> (in this case the text will start from ysize upwards)
2140
</span></li>
2145
</span></li>
2141
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
2146
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
2142
</span></li>
2147
</span></li>
2143
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />xrange 0,13<br />yrange -100,500<br />axis<br />xaxisup 1:january:2:february:3:march:5:may:6:june:7:july:8:august:9:september:10:october:11:november:12:december<br />#'xmajor' steps should be synchronised with numbers eg. "1" in this example<br />grid 1,100,grey,1,4,6,grey
2148
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />xrange 0,13<br />yrange -100,500<br />axis<br />xaxisup 1:january:2:february:3:march:5:may:6:june:7:july:8:august:9:september:10:october:11:november:12:december<br />#'xmajor' steps should be synchronised with numbers eg. "1" in this example<br />grid 1,100,grey,1,4,6,grey
2144
</span></li>
2149
</span></li>
2145
</ul>
2150
</ul>
2146
<li><a name='xerrorbars' href='#xerrorbars top'> xerrorbars color,E1,E2,x1,y1,x2,y2,...,x_n,y_n</a><ul>
2151
<li><a name='xerrorbars' href='#xerrorbars top'>  xerrorbars color,E1,E2,x1,y1,x2,y2,...,x_n,y_n</a><ul>
2147
<li><span style="color:blue;font-size:0.8em"> draw multiple points with x-errorbars E1 (error value left from point) and E2 (error value right from point) at given coordinates in color 'color'
2152
<li><span style="color:blue;font-size:0.8em"> draw multiple points with x-errorbars E1 (error value left from point) and E2 (error value right from point) at given coordinates in color 'color'
2148
</span></li>
2153
</span></li>
2149
<li><span style="color:blue;font-size:0.8em"> the errors E1 and E2 values are in xrange.
2154
<li><span style="color:blue;font-size:0.8em"> the errors E1 and E2 values are in xrange.
2150
</span></li>
2155
</span></li>
2151
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
2156
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
2152
</span></li>
2157
</span></li>
2153
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
2158
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
2154
</span></li>
2159
</span></li>
2155
</ul>
2160
</ul>
2156
<li><a name='xrange' href='#xrange top'> xrange xmin,xmax</a><ul>
2161
<li><a name='xrange' href='#xrange top'>  xrange xmin,xmax</a><ul>
2157
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='rangex' href='#rangex top'>rangex</a></span></li>
2162
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='rangex' href='#rangex top'>rangex</a></span></li>
2158
<li><span style="color:blue;font-size:0.8em"> if not given: 0,xsize (eg in pixels)
2163
<li><span style="color:blue;font-size:0.8em"> if not given: 0,xsize (eg in pixels)
2159
</span></li>
2164
</span></li>
2160
</ul>
2165
</ul>
2161
<li><a name='xsnaptogrid' href='#xsnaptogrid top'> xsnaptogrid</a><ul>
2166
<li><a name='xsnaptogrid' href='#xsnaptogrid top'>  xsnaptogrid</a><ul>
2162
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2167
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2163
</span></li>
2168
</span></li>
2164
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the given x-grid values when dragged (mouseup)
2169
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the given x-grid values when dragged (mouseup)
2165
</span></li>
2170
</span></li>
2166
<li><span style="color:blue;font-size:0.8em"> in case of userdraw the drawn points will snap to xmajor grid
2171
<li><span style="color:blue;font-size:0.8em"> in case of userdraw the drawn points will snap to xmajor grid
2167
</span></li>
2172
</span></li>
2168
<li><span style="color:blue;font-size:0.8em"> if no grid is defined ,points will snap to every integer xrange value. (eg snap_x=1)
2173
<li><span style="color:blue;font-size:0.8em"> if no grid is defined ,points will snap to every integer xrange value. (eg snap_x=1)
2169
</span></li>
2174
</span></li>
2170
<li><span style="color:blue;font-size:0.8em"> if you do not want a visible grid, but you only want a 'snaptogrid' with some value...define this grid with opacity 0.
2175
<li><span style="color:blue;font-size:0.8em"> if you do not want a visible grid, but you only want a 'snaptogrid' with some value...define this grid with opacity 0.
2171
</span></li>
2176
</span></li>
2172
<li><span style="color:blue;font-size:0.8em"> if xminor is defined (use keyword 'axis' to activate xminor), the drawing will snap to xminor <br />use only even dividers in x-minor...for example<br />xsnaptogrid<br />axis<br />grid 2,1,grey,4,4,7,red<br /> will snap on x=0, x=0.5, x=1, x=1.5 ....<br /> will snap on y=0, y=0.25 y=0.5 y=0.75 ...<br />
2177
<li><span style="color:blue;font-size:0.8em"> if xminor is defined (use keyword 'axis' to activate xminor), the drawing will snap to xminor <br />use only even dividers in x-minor...for example<br />xsnaptogrid<br />axis<br />grid 2,1,grey,4,4,7,red<br /> will snap on x=0, x=0.5, x=1, x=1.5 ....<br /> will snap on y=0, y=0.25 y=0.5 y=0.75 ...<br />
2173
</span></li>
2178
</span></li>
2174
</ul>
2179
</ul>
2175
<li><a name='xoffset' href='#xoffset top'> xoffset | centered</a><ul>
2180
<li><a name='xoffset' href='#xoffset top'>  xoffset | centered</a><ul>
2176
<li><span style="color:blue;font-size:0.8em"> keyword ; to place the text centered above the text coordinates(x:y) ...
2181
<li><span style="color:blue;font-size:0.8em"> keyword ; to place the text centered above the text coordinates(x:y) ...
2177
</span></li>
2182
</span></li>
2178
<li><span style="color:blue;font-size:0.8em"> may be used for points or other things requirering centered labels
2183
<li><span style="color:blue;font-size:0.8em"> may be used for points or other things requirering centered labels
2179
</span></li>
2184
</span></li>
2180
<li><span style="color:blue;font-size:0.8em"> may be active for commands <a href="#text">text</a> and <a href="#string">string</a> (e.g. objects in the drag/drop/onclick-library)
2185
<li><span style="color:blue;font-size:0.8em"> may be active for commands <a href="#text">text</a> and <a href="#string">string</a> (e.g. objects in the drag/drop/onclick-library)
2181
</span></li>
2186
</span></li>
2182
</ul>
2187
</ul>
2183
<li><a name='xyoffset' href='#xyoffset top'> xyoffset</a><ul>
2188
<li><a name='xyoffset' href='#xyoffset top'>  xyoffset</a><ul>
2184
<li><span style="color:blue;font-size:0.8em"> keyword ; to place the text (x:y) to (x+dx:y+dy)... dx/dy are dependent on fontsize/fontfamily
2189
<li><span style="color:blue;font-size:0.8em"> keyword ; to place the text (x:y) to (x+dx:y+dy)... dx/dy are dependent on fontsize/fontfamily
2185
</span></li>
2190
</span></li>
2186
<li><span style="color:blue;font-size:0.8em"> may be used for points or other things requirering labels
2191
<li><span style="color:blue;font-size:0.8em"> may be used for points or other things requirering labels
2187
</span></li>
2192
</span></li>
2188
<li><span style="color:blue;font-size:0.8em"> only active for commands <a href="#text">text</a> and <a href="#string">string</a> (e.g. objects in the drag/drop/onclick-librariy
2193
<li><span style="color:blue;font-size:0.8em"> only active for commands <a href="#text">text</a> and <a href="#string">string</a> (e.g. objects in the drag/drop/onclick-librariy
2189
</span></li>
2194
</span></li>
2190
<li><span style="color:blue;font-size:0.8em"> in case of inputfields the inputfield will be centered x and y on it's coordinates.<br />for example:<br />inputs 1,1,10,? <br />point 1,1,red <br /> the point will be completely invisible<br />note: keyword 'xyoffset' will also provide centering if used with <a href='#<li><span style="color:blue;font-size:0.8em">userdraw'>input(s),color</a>
2195
<li><span style="color:blue;font-size:0.8em"> in case of inputfields the inputfield will be centered x and y on it's coordinates.<br />for example:<br />inputs 1,1,10,? <br />point 1,1,red <br /> the point will be completely invisible<br />note: keyword 'xyoffset' will also provide centering if used with <a href='#<li><span style="color:blue;font-size:0.8em">userdraw'>input(s),color</a>
2191
</span></li>
2196
</span></li>
2192
</ul>
2197
</ul>
2193
<li><a name='xunit' href='#xunit top'> xunit some_unit_for_x-values</a><ul>
2198
<li><a name='xunit' href='#xunit top'>  xunit some_unit_for_x-values</a><ul>
2194
<li><span style="color:blue;font-size:0.8em"> unicode allowed (no html code)
2199
<li><span style="color:blue;font-size:0.8em"> unicode allowed (no html code)
2195
</span></li>
2200
</span></li>
2196
<li><span style="color:blue;font-size:0.8em"> use together with command mousex
2201
<li><span style="color:blue;font-size:0.8em"> use together with command mousex
2197
</span></li>
2202
</span></li>
2198
<li><span style="color:blue;font-size:0.8em"> will display the cursor x-coordinate in 'unit'
2203
<li><span style="color:blue;font-size:0.8em"> will display the cursor x-coordinate in 'unit'
2199
</span></li>
2204
</span></li>
2200
</ul>
2205
</ul>
2201
<li><a name='xlabel' href='#xlabel top'> xlabel some_string</a><ul>
2206
<li><a name='xlabel' href='#xlabel top'>  xlabel some_string</a><ul>
2202
<li><span style="color:blue;font-size:0.8em"> will be used to create a label for the x-axis (label is in quadrant I)
2207
<li><span style="color:blue;font-size:0.8em"> will be used to create a label for the x-axis (label is in quadrant I)
2203
</span></li>
2208
</span></li>
2204
<li><span style="color:blue;font-size:0.8em"> can only be used together with command 'grid'</a><br />not depending on keywords 'axis' and 'axisnumbering'
2209
<li><span style="color:blue;font-size:0.8em"> can only be used together with command 'grid'</a><br />not depending on keywords 'axis' and 'axisnumbering'
2205
</span></li>
2210
</span></li>
2206
<li><span style="color:blue;font-size:0.8em"> font setting: italic Courier, fontsize will be slightly larger (fontsize + 4)<br />use command "fontsize" to adjust.<br />(command "fontfamily" is not active for this command)
2211
<li><span style="color:blue;font-size:0.8em"> font setting: italic Courier, fontsize will be slightly larger (fontsize + 4)<br />use command "fontsize" to adjust.<br />(command "fontfamily" is not active for this command)
2207
</span></li>
2212
</span></li>
2208
</ul>
2213
</ul>
2209
<li><a name='xlogbase' href='#xlogbase top'> xlogbase number</a><ul>
2214
<li><a name='xlogbase' href='#xlogbase top'>  xlogbase number</a><ul>
2210
<li><span style="color:blue;font-size:0.8em"> sets the logbase number for the x-axis
2215
<li><span style="color:blue;font-size:0.8em"> sets the logbase number for the x-axis
2211
</span></li>
2216
</span></li>
2212
<li><span style="color:blue;font-size:0.8em"> default value 10
2217
<li><span style="color:blue;font-size:0.8em"> default value 10
2213
</span></li>
2218
</span></li>
2214
<li><span style="color:blue;font-size:0.8em"> use together with commands xlogscale / xylogscale
2219
<li><span style="color:blue;font-size:0.8em"> use together with commands xlogscale / xylogscale
2215
</span></li>
2220
</span></li>
2216
</ul>
2221
</ul>
2217
<li><a name='xlogscale' href='#xlogscale top'> xlogscale ymajor,yminor,majorcolor,minorcolor</a><ul>
2222
<li><a name='xlogscale' href='#xlogscale top'>  xlogscale ymajor,yminor,majorcolor,minorcolor</a><ul>
2218
<li><span style="color:blue;font-size:0.8em"> the x/y-range are set using commands 'xrange xmin,xmax' and 'yrange ymin,ymax'
2223
<li><span style="color:blue;font-size:0.8em"> the x/y-range are set using commands 'xrange xmin,xmax' and 'yrange ymin,ymax'
2219
</span></li>
2224
</span></li>
2220
<li><span style="color:blue;font-size:0.8em"> ymajor is the major step on the y-axis; yminor is the divisor for the y-step
2225
<li><span style="color:blue;font-size:0.8em"> ymajor is the major step on the y-axis; yminor is the divisor for the y-step
2221
</span></li>
2226
</span></li>
2222
<li><span style="color:blue;font-size:0.8em"> the linewidth is set using command 'linewidth int'
2227
<li><span style="color:blue;font-size:0.8em"> the linewidth is set using command 'linewidth int'
Line 2236... Line 2241...
2236
<li><span style="color:blue;font-size:0.8em"> note: in case of userdraw , the use of keyword <a href='#userinput_xy'>'userinput_xy'</a> may be handy !
2241
<li><span style="color:blue;font-size:0.8em"> note: in case of userdraw , the use of keyword <a href='#userinput_xy'>'userinput_xy'</a> may be handy !
2237
</span></li>
2242
</span></li>
2238
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: keyword 'snaptogrid' may not lead to the desired result...
2243
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: keyword 'snaptogrid' may not lead to the desired result...
2239
</span></li>
2244
</span></li>
2240
</ul>
2245
</ul>
2241
<li><a name='xylogscale' href='#xylogscale top'> xylogscale majorcolor,minorcolor</a><ul>
2246
<li><a name='xylogscale' href='#xylogscale top'>  xylogscale majorcolor,minorcolor</a><ul>
2242
<li><span style="color:blue;font-size:0.8em"> the x/y-range are set using commands 'xrange xmin,xmax' and 'yrange ymin,ymax'
2247
<li><span style="color:blue;font-size:0.8em"> the x/y-range are set using commands 'xrange xmin,xmax' and 'yrange ymin,ymax'
2243
</span></li>
2248
</span></li>
2244
<li><span style="color:blue;font-size:0.8em"> the linewidth is set using command 'linewidth int'
2249
<li><span style="color:blue;font-size:0.8em"> the linewidth is set using command 'linewidth int'
2245
</span></li>
2250
</span></li>
2246
<li><span style="color:blue;font-size:0.8em"> the opacity of major / minor grid lines is set by command 'opacity [0-255],[0-255]'
2251
<li><span style="color:blue;font-size:0.8em"> the opacity of major / minor grid lines is set by command 'opacity [0-255],[0-255]'
Line 2258... Line 2263...
2258
<li><span style="color:blue;font-size:0.8em"> note: in case of userdraw , the use of keyword 'userinput_xy' may be handy !
2263
<li><span style="color:blue;font-size:0.8em"> note: in case of userdraw , the use of keyword 'userinput_xy' may be handy !
2259
</span></li>
2264
</span></li>
2260
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: keyword 'snaptogrid' may not lead to the desired result...
2265
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: keyword 'snaptogrid' may not lead to the desired result...
2261
</span></li>
2266
</span></li>
2262
</ul>
2267
</ul>
2263
<li><a name='yaxis' href='#yaxis top'> yaxis num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n</a><ul>
2268
<li><a name='yaxis' href='#yaxis top'>  yaxis num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n</a><ul>
2264
<li><span style="color:blue;font-size:0.8em"> alternativ : yaxistext num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n
2269
<li><span style="color:blue;font-size:0.8em"> alternativ : yaxistext num1:string1:num2:string2:num3:string3:num4:string4:....num_n:string_n
2265
</span></li>
2270
</span></li>
2266
<li><span style="color:blue;font-size:0.8em"> use command "fontcolor", "fontfamily" to adjust font <br />defaults: black,12,Ariel<br /> note: command "fontsize" is not active for this command.("fontsize" can be used for the <a href="#legend">"legend"</a> in a <a href="#grid">grid</a>)
2271
<li><span style="color:blue;font-size:0.8em"> use command "fontcolor", "fontfamily" to adjust font <br />defaults: black,12,Ariel<br /> note: command "fontsize" is not active for this command.("fontsize" can be used for the <a href="#legend">"legend"</a> in a <a href="#grid">grid</a>)
2267
</span></li>
2272
</span></li>
2268
<li><span style="color:blue;font-size:0.8em"> no need to use keyword <a href="#axisnumbering">axisnumbering</a>
2273
<li><span style="color:blue;font-size:0.8em"> no need to use keyword <a href="#axisnumbering">axisnumbering</a>
Line 2276... Line 2281...
2276
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
2281
<li><span style="color:blue;font-size:0.8em"> to be used before command grid (see <a href="#grid">command grid</a>)
2277
</span></li>
2282
</span></li>
2278
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />yrange 0,13<br />xrange -100,500<br />axis<br />yaxis 1:january:2:february:3:march:5:may:6:june:7:july:8:august:9:september:10:october:11:november:12:december<br />#'ymajor' steps should be synchronised with numbers eg. "1" in this example<br />grid 100,1,grey,4,1,6,grey
2283
<li><span style="color:blue;font-size:0.8em"> example:<br />size 400,400<br />yrange 0,13<br />xrange -100,500<br />axis<br />yaxis 1:january:2:february:3:march:5:may:6:june:7:july:8:august:9:september:10:october:11:november:12:december<br />#'ymajor' steps should be synchronised with numbers eg. "1" in this example<br />grid 100,1,grey,4,1,6,grey
2279
</span></li>
2284
</span></li>
2280
</ul>
2285
</ul>
2281
<li><a name='yerrorbars' href='#yerrorbars top'> yerrorbars color,E1,E2,x1,y1,x2,y2,...,x_n,y_n</a><ul>
2286
<li><a name='yerrorbars' href='#yerrorbars top'>  yerrorbars color,E1,E2,x1,y1,x2,y2,...,x_n,y_n</a><ul>
2282
<li><span style="color:blue;font-size:0.8em"> draw multiple points with y-errorbars E1 (error value under point) and E2 (error value above point) at given coordinates in color 'color'
2287
<li><span style="color:blue;font-size:0.8em"> draw multiple points with y-errorbars E1 (error value under point) and E2 (error value above point) at given coordinates in color 'color'
2283
</span></li>
2288
</span></li>
2284
<li><span style="color:blue;font-size:0.8em"> the errors E1 and E2 values are in yrange.
2289
<li><span style="color:blue;font-size:0.8em"> the errors E1 and E2 values are in yrange.
2285
</span></li>
2290
</span></li>
2286
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
2291
<li><span style="color:blue;font-size:0.8em"> use command 'linewidth int' to adust size
2287
</span></li>
2292
</span></li>
2288
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
2293
<li><span style="color:blue;font-size:0.8em"> may be set <a href="#drag">draggable</a> / <a href="#onclick">onclick</a> individually (!)
2289
</span></li>
2294
</span></li>
2290
</ul>
2295
</ul>
2291
<li><a name='yoffset' href='#yoffset top'> yoffset</a><ul>
2296
<li><a name='yoffset' href='#yoffset top'>  yoffset</a><ul>
2292
<li><span style="color:blue;font-size:0.8em"> keyword, only active for commands <a href="#textup">textup</a> and <a href="#stringup">stringup</a>
2297
<li><span style="color:blue;font-size:0.8em"> keyword, only active for commands <a href="#textup">textup</a> and <a href="#stringup">stringup</a>
2293
</span></li>
2298
</span></li>
2294
<li><span style="color:blue;font-size:0.8em"> places the text <b>under</b> the (x:y) coordinates(x:y)<br/ >eg the string 'hello' will end at char 'o' on (x:y) <br />normal behaviour : string starts at (x:y)
2299
<li><span style="color:blue;font-size:0.8em"> places the text <b>under</b> the (x:y) coordinates(x:y)<br/ >eg the string 'hello' will end at char 'o' on (x:y) <br />normal behaviour : string starts at (x:y)
2295
</span></li>
2300
</span></li>
2296
<li><span style="color:blue;font-size:0.8em"> string ending on (x:y) is valid for all rotation angles
2301
<li><span style="color:blue;font-size:0.8em"> string ending on (x:y) is valid for all rotation angles
Line 2298... Line 2303...
2298
<li><span style="color:blue;font-size:0.8em"> may be used for points or other things requirering labels in y-direction
2303
<li><span style="color:blue;font-size:0.8em"> may be used for points or other things requirering labels in y-direction
2299
</span></li>
2304
</span></li>
2300
<li><span style="color:blue;font-size:0.8em"> other text position manipulations: see <a href="#xoffset">xoffset</a> for centering on x-coordinate or <a href="#xyoffset">xyoffset</a> label placement for points etc.
2305
<li><span style="color:blue;font-size:0.8em"> other text position manipulations: see <a href="#xoffset">xoffset</a> for centering on x-coordinate or <a href="#xyoffset">xyoffset</a> label placement for points etc.
2301
</span></li>
2306
</span></li>
2302
</ul>
2307
</ul>
2303
<li><a name='yrange' href='#yrange top'> yrange ymin,ymax</a><ul>
2308
<li><a name='yrange' href='#yrange top'>  yrange ymin,ymax</a><ul>
2304
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='rangey' href='#rangey top'>rangey</a></span></li>
2309
<li><span style="color:blue;font-size:0.8em">alternative command:<a name='rangey' href='#rangey top'>rangey</a></span></li>
2305
<li><span style="color:blue;font-size:0.8em"> if not given 0,ysize (eg in pixels)
2310
<li><span style="color:blue;font-size:0.8em"> if not given 0,ysize (eg in pixels)
2306
</span></li>
2311
</span></li>
2307
</ul>
2312
</ul>
2308
<li><a name='ysnaptogrid' href='#ysnaptogrid top'> ysnaptogrid</a><ul>
2313
<li><a name='ysnaptogrid' href='#ysnaptogrid top'>  ysnaptogrid</a><ul>
2309
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2314
<li><span style="color:blue;font-size:0.8em"> keyword (no arguments required)
2310
</span></li>
2315
</span></li>
2311
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the given y-grid values when dragged (mouseup)
2316
<li><span style="color:blue;font-size:0.8em"> a draggable object (use command "drag x|y|xy") will snap to the given y-grid values when dragged (mouseup)
2312
</span></li>
2317
</span></li>
2313
<li><span style="color:blue;font-size:0.8em"> in case of userdraw the drawn points will snap to ymajor grid
2318
<li><span style="color:blue;font-size:0.8em"> in case of userdraw the drawn points will snap to ymajor grid
Line 2317... Line 2322...
2317
<li><span style="color:blue;font-size:0.8em"> if you do not want a visible grid, but you only want a 'snaptogrid' with some value...define this grid with opacity 0.
2322
<li><span style="color:blue;font-size:0.8em"> if you do not want a visible grid, but you only want a 'snaptogrid' with some value...define this grid with opacity 0.
2318
</span></li>
2323
</span></li>
2319
<li><span style="color:blue;font-size:0.8em"> if yminor is defined (use keyword 'axis' to activate yminor), the drawing will snap to yminor <br />use only even dividers in y-minor...for example<br />ysnaptogrid<br />axis<br />grid 2,1,grey,4,4,7,red<br /> will snap on x=0, x=0.5, x=1, x=1.5 ....<br /> will snap on y=0, y=0.25 y=0.5 y=0.75 ...<br />
2324
<li><span style="color:blue;font-size:0.8em"> if yminor is defined (use keyword 'axis' to activate yminor), the drawing will snap to yminor <br />use only even dividers in y-minor...for example<br />ysnaptogrid<br />axis<br />grid 2,1,grey,4,4,7,red<br /> will snap on x=0, x=0.5, x=1, x=1.5 ....<br /> will snap on y=0, y=0.25 y=0.5 y=0.75 ...<br />
2320
</span></li>
2325
</span></li>
2321
</ul>
2326
</ul>
2322
<li><a name='ylabel' href='#ylabel top'> ylabel some_string</a><ul>
2327
<li><a name='ylabel' href='#ylabel top'>  ylabel some_string</a><ul>
2323
<li><span style="color:blue;font-size:0.8em"> will be used to create a (vertical) label for the y-axis (label is in quadrant I)
2328
<li><span style="color:blue;font-size:0.8em"> will be used to create a (vertical) label for the y-axis (label is in quadrant I)
2324
</span></li>
2329
</span></li>
2325
<li><span style="color:blue;font-size:0.8em"> can only be used together with command <a href="#grid">'grid'</a><br />not depending on keywords 'axis' and 'axisnumbering'
2330
<li><span style="color:blue;font-size:0.8em"> can only be used together with command <a href="#grid">'grid'</a><br />not depending on keywords 'axis' and 'axisnumbering'
2326
</span></li>
2331
</span></li>
2327
<li><span style="color:blue;font-size:0.8em"> font setting: italic Courier, fontsize will be slightly larger (fontsize + 4)<br />use command "fontsize" to adjust.<br />(command "fontfamily" is not active for this command)
2332
<li><span style="color:blue;font-size:0.8em"> font setting: italic Courier, fontsize will be slightly larger (fontsize + 4)<br />use command "fontsize" to adjust.<br />(command "fontfamily" is not active for this command)
2328
</span></li>
2333
</span></li>
2329
</ul>
2334
</ul>
2330
<li><a name='ylogbase' href='#ylogbase top'> ylogbase number</a><ul>
2335
<li><a name='ylogbase' href='#ylogbase top'>  ylogbase number</a><ul>
2331
<li><span style="color:blue;font-size:0.8em"> sets the logbase number for the y-axis
2336
<li><span style="color:blue;font-size:0.8em"> sets the logbase number for the y-axis
2332
</span></li>
2337
</span></li>
2333
<li><span style="color:blue;font-size:0.8em"> default value 10
2338
<li><span style="color:blue;font-size:0.8em"> default value 10
2334
</span></li>
2339
</span></li>
2335
<li><span style="color:blue;font-size:0.8em"> use together with commands ylogscale / xylogscale
2340
<li><span style="color:blue;font-size:0.8em"> use together with commands ylogscale / xylogscale
2336
</span></li>
2341
</span></li>
2337
</ul>
2342
</ul>
2338
<li><a name='ylogscale' href='#ylogscale top'> ylogscale xmajor,xminor,majorcolor,minorcolor</a><ul>
2343
<li><a name='ylogscale' href='#ylogscale top'>  ylogscale xmajor,xminor,majorcolor,minorcolor</a><ul>
2339
<li><span style="color:blue;font-size:0.8em"> the x/y-range are set using commands 'xrange xmin,xmax' and 'yrange ymin,ymax'
2344
<li><span style="color:blue;font-size:0.8em"> the x/y-range are set using commands 'xrange xmin,xmax' and 'yrange ymin,ymax'
2340
</span></li>
2345
</span></li>
2341
<li><span style="color:blue;font-size:0.8em"> xmajor is the major step on the x-axis; xminor is the divisor for the x-step
2346
<li><span style="color:blue;font-size:0.8em"> xmajor is the major step on the x-axis; xminor is the divisor for the x-step
2342
</span></li>
2347
</span></li>
2343
<li><span style="color:blue;font-size:0.8em"> the linewidth is set using command 'linewidth int'
2348
<li><span style="color:blue;font-size:0.8em"> the linewidth is set using command 'linewidth int'
Line 2357... Line 2362...
2357
<li><span style="color:blue;font-size:0.8em"> note: in case of userdraw , the use of keyword 'userinput_xy' may be handy !
2362
<li><span style="color:blue;font-size:0.8em"> note: in case of userdraw , the use of keyword 'userinput_xy' may be handy !
2358
</span></li>
2363
</span></li>
2359
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: keyword 'snaptogrid' may not lead to the desired result...
2364
<li><span style="color:blue;font-size:0.8em"> <b>attention</b>: keyword 'snaptogrid' may not lead to the desired result...
2360
</span></li>
2365
</span></li>
2361
</ul>
2366
</ul>
2362
<li><a name='yunit' href='#yunit top'> yunit some_unit_for_y-values</a><ul>
2367
<li><a name='yunit' href='#yunit top'>  yunit some_unit_for_y-values</a><ul>
2363
<li><span style="color:blue;font-size:0.8em"> unicode allowed (no html code)
2368
<li><span style="color:blue;font-size:0.8em"> unicode allowed (no html code)
2364
</span></li>
2369
</span></li>
2365
<li><span style="color:blue;font-size:0.8em"> use together with command mousey
2370
<li><span style="color:blue;font-size:0.8em"> use together with command mousey
2366
</span></li>
2371
</span></li>
2367
<li><span style="color:blue;font-size:0.8em"> will display the cursor y-coordinate in 'unit'
2372
<li><span style="color:blue;font-size:0.8em"> will display the cursor y-coordinate in 'unit'
2368
</span></li>
2373
</span></li>
2369
</ul>
2374
</ul>
2370
<li><a name='zoom' href='#zoom top'> zoom button_color</a><ul>
2375
<li><a name='zoom' href='#zoom top'>  zoom button_color</a><ul>
2371
<li><span style="color:blue;font-size:0.8em"> introduce a very small 'controlpanel' at the lower right corner
2376
<li><span style="color:blue;font-size:0.8em"> introduce a very small 'controlpanel' at the lower right corner
2372
</span></li>
2377
</span></li>
2373
<li><span style="color:blue;font-size:0.8em"> giving six 15&times;15px 'active' rectangle areas<br />(for &times;,leftarrow,rightarrow,uparrow,downarrow and a '-' and a '+' sign ) for zooming and/or panning of the image
2378
<li><span style="color:blue;font-size:0.8em"> giving six 15&times;15px 'active' rectangle areas<br />(for &times;,leftarrow,rightarrow,uparrow,downarrow and a '-' and a '+' sign ) for zooming and/or panning of the image
2374
</span></li>
2379
</span></li>
2375
<li><span style="color:blue;font-size:0.8em"> the 'x' symbol will do a 'location.reload' of the page, and thus reset all canvas drawings.
2380
<li><span style="color:blue;font-size:0.8em"> the 'x' symbol will do a 'location.reload' of the page, and thus reset all canvas drawings.
Line 2390... Line 2395...
2390
</ul>
2395
</ul>
2391
<script type='text/javascript'>
2396
<script type='text/javascript'>
2392
 var keys = ['canvasdraw' ,'canvasdraw','affine','angle','animate','arc','arrow','vector','arrows','vectors','arrow2','arrows2','arrowhead','audio','axisnumbering','axis','barchart','bezier','bgcolor','bgimage','blink','boxplot','boxplotdata','canvastype','centerstring','circle','circles','disks','clearbutton','delete','erase','clock','colorpalette','copy','copyresized','crosshair','crosshairs','crosshairsize','cursor','pointer','curve','dashed','dashtype','diamondfill','dotfill','drag','ellipse','fillall','filled','fillcolor','fillpattern','filltoborder','floodfill','fill','fontcolor','fontfamily','fontsize','functionlabel','grid','gridfill','demiline','halfline','demilines','halflines','hatchfill','hline','horizontalline','hlines','horizontallines','http','html','imagefill','inputstyle','input','intooltip','jscurve','jsplot','jsmath','killaffine','killrotate','killslider','killtranslation','killtranslate','line','lines','linewidth','lattice','levelcurve','legend','legendcolors','linegraph','mathml','mouse','mouse_degree','display','precision','mousex','mousey','multidash','multidraw','multilabel','multilinewidth','multifill','multifillcolors','multifillopacity','multisnaptogrid','multistrokecolors','multistrokeopacity','multiuserinput','noaxis','noayis','numberline','opacity','transparent','onclick','parallel','plotsteps','point','points','poly','polyline','popup','protractor','pixels','pixelsize','piechart','rays','rect','rects','replyformat','roundrect','roundrects','ruler','resetoffset','rotate','rotationcenter','size','segment','seg','segments','segs','setlimits','setpixel','slider','sliderfunction_x','sliderfunction_y','sgraph','snaptofunction','snaptofun','snaptopoints','snaptogrid','square','status','string','stringup','highlight','strokecolor','text','textarea','textfill','textup','trace_jscurve','trange','ranget','translation','translate','triangle','triangles','userboxplot','userboxplotdata','userdraw','userinput','userinput_function','userinput_textarea','userinput_xy','userinput_xy','userinput_function','usertextarea_xy','vline','verticalline','vlines','verticallines','video','xaxis','xaxistext','xaxisup','xaxistextup','xerrorbars','xrange','rangex','xsnaptogrid','xoffset','xyoffset','xunit','xlabel','xlogbase','xlogscale','xylogscale','yaxis','yerrorbars','yoffset','yrange','rangey','ysnaptogrid','ylabel','ylogbase','ylogscale','yunit','zoom'];
2397
 var keys = ['canvasdraw' ,'canvasdraw','affine','angle','animate','arc','arrow','vector','arrows','vectors','arrow2','arrows2','arrowhead','audio','axisnumbering','axis','barchart','bezier','bgcolor','bgimage','blink','boxplot','boxplotdata','canvastype','centerstring','circle','circles','disks','clearbutton','delete','erase','clock','colorpalette','copy','copyresized','crosshair','crosshairs','crosshairsize','cursor','pointer','curve','dashed','dashtype','diamondfill','dotfill','drag','ellipse','fillall','filled','fillcolor','fillpattern','filltoborder','floodfill','fill','fontcolor','fontfamily','fontsize','functionlabel','grid','gridfill','demiline','halfline','demilines','halflines','hatchfill','hline','horizontalline','hlines','horizontallines','http','html','imagefill','inputstyle','input','intooltip','jscurve','jsplot','jsmath','killaffine','killrotate','killslider','killtranslation','killtranslate','line','lines','linewidth','lattice','levelcurve','legend','legendcolors','linegraph','mathml','mouse','mouse_degree','display','precision','mousex','mousey','multidash','multidraw','multilabel','multilinewidth','multifill','multifillcolors','multifillopacity','multisnaptogrid','multistrokecolors','multistrokeopacity','multiuserinput','noaxis','noayis','numberline','opacity','transparent','onclick','parallel','plotsteps','point','points','poly','polyline','popup','protractor','pixels','pixelsize','piechart','rays','rect','rects','replyformat','roundrect','roundrects','ruler','resetoffset','rotate','rotationcenter','size','segment','seg','segments','segs','setlimits','setpixel','slider','sliderfunction_x','sliderfunction_y','sgraph','snaptofunction','snaptofun','snaptopoints','snaptogrid','square','status','string','stringup','highlight','strokecolor','text','textarea','textfill','textup','trace_jscurve','trange','ranget','translation','translate','triangle','triangles','userboxplot','userboxplotdata','userdraw','userinput','userinput_function','userinput_textarea','userinput_xy','userinput_xy','userinput_function','usertextarea_xy','vline','verticalline','vlines','verticallines','video','xaxis','xaxistext','xaxisup','xaxistextup','xerrorbars','xrange','rangex','xsnaptogrid','xoffset','xyoffset','xunit','xlabel','xlogbase','xlogscale','xylogscale','yaxis','yerrorbars','yoffset','yrange','rangey','ysnaptogrid','ylabel','ylogbase','ylogscale','yunit','zoom'];
2393
 var keys_len = keys.length;
2398
 var keys_len = keys.length;
2394
 function match(s1,s2){
2399
 function match(s1,s2){
2395
 var n1 = s1.length;
2400
  var n1 = s1.length;
2396
 if(n1 < 3){return 0;}
2401
  if(n1 < 3){return 0;}
2397
 var n2 = s2.length;
2402
  var n2 = s2.length;
2398
 var c1,c2,found;
2403
  var c1,c2,found;
2399
 var count = n1 - Math.abs(n1 - n2);
2404
  var count = n1 - Math.abs(n1 - n2);
2400
 for(var p = 0;p < n1;p++){
2405
  for(var p = 0;p < n1;p++){
2401
 c1=s1.charAt(p);
2406
   c1=s1.charAt(p);
2402
 found = false;
2407
   found = false;
2403
 for(var i = 0;i < n2;i++){
2408
   for(var i = 0;i < n2;i++){
2404
 c2 = s2.charAt(i);
2409
    c2 = s2.charAt(i);
2405
 if(c1 == c2){found = true;count = count + n1 - Math.abs(p - i);}
2410
    if(c1 == c2){found = true;count = count + n1 - Math.abs(p - i);}
2406
 };
2411
   };
2407
 if(! found ){count = count - n2;}
2412
   if(! found ){count = count - n2;}
2408
 };
2413
  };
2409
 return count;
2414
  return count;
2410
 };
2415
 };
2411
 function look(){
2416
 function look(){
2412
 var s = ((document.getElementById('search').value).replace(/\s/g, '')).toLowerCase();
2417
  var s = ((document.getElementById('search').value).replace(/\s/g, '')).toLowerCase();
2413
 var typo;var next_best = -1;var next_idx = s.length;var tmp;var ss;
2418
  var typo;var next_best = -1;var next_idx = s.length;var tmp;var ss;
2414
 for(var p = 0; p < keys_len ; p++){
2419
  for(var p = 0; p < keys_len ; p++){
2415
 ss = keys[p];
2420
   ss = keys[p];
2416
 if( s == ss ){
2421
   if( s == ss ){
2417
 window.location.href = '#'+ss;
2422
    window.location.href = '#'+ss;
2418
 return;
2423
    return;
2419
 };
2424
   };
2420
 /* not ok? ... try to find a match for a reasonable typo... */
2425
   /* not ok? ... try to find a match for a reasonable typo... */
2421
 tmp = match(s,ss);
2426
   tmp = match(s,ss);
2422
 if(tmp > next_idx){
2427
   if(tmp > next_idx){
2423
 next_idx = tmp;
2428
    next_idx = tmp;
2424
 next_best = p;
2429
    next_best = p;
2425
 };
2430
   };
2426
 };
2431
  };
2427
 if(next_best != -1 ){
2432
  if(next_best != -1 ){
2428
 typo = keys[next_best];
2433
   typo = keys[next_best];
2429
 if(confirm('"'+s+'" is not a valid canvasdraw command\ndid you mean "'+typo+'" ?')){
2434
   if(confirm('"'+s+'" is not a valid canvasdraw command\ndid you mean "'+typo+'" ?')){
2430
 window.location.href = '#'+typo;
2435
    window.location.href = '#'+typo;
2431
 return;
2436
    return;
2432
 };
2437
   };
2433
 }
2438
  }
2434
 else
2439
  else
2435
 {
2440
  {
2436
 alert(s+' is not a valid canvasdraw command');
2441
   alert(s+' is not a valid canvasdraw command');
2437
 };
2442
  };
2438
 return;
2443
  return;
2439
 };
2444
 };
2440
</script>
2445
</script>
2441
 
-