summaryrefslogtreecommitdiffstats
path: root/share/extensions/param_curves.inx
blob: d7a51c514bb8c9d3747d902f5340333f62bd652b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
    <name>Parametric Curves</name>
    <id>org.inkscape.effect.param_curves</id>
    <param name="tab" type="notebook">
        <page name="sampling"  gui-text="Range and Sampling">
            <param name="t_start"  type="float" min="-1000.0" max="1000.0" gui-text="Start t-value:">0.0</param>
            <param name="t_end"    type="float" min="-1000.0" max="1000.0" gui-text="End t-value:">1.0</param>
            <param name="times2pi" type="bool"                          gui-text="Multiply t-range by 2*pi">true</param>
            <param name="xleft"    type="float" min="-1000.0" max="1000.0" gui-text="X-value of rectangle's left:">-1.0</param>
            <param name="xright"   type="float" min="-1000.0" max="1000.0" gui-text="X-value of rectangle's right:">1.0</param>
            <param name="ybottom"  type="float" min="-1000.0" max="1000.0" gui-text="Y-value of rectangle's bottom:">-1.0</param>
            <param name="ytop"     type="float" min="-1000.0" max="1000.0" gui-text="Y-value of rectangle's top:">1.0</param>
            <param name="samples"  type="int"   min="2"       max="1000"   gui-text="Samples:">30</param>
            <param name="isoscale" type="bool" gui-text="Isotropic scaling">false</param>
            <label>When set, Isotropic scaling uses smallest of width/xrange or height/yrange</label>
        </page>
        <page name="use" gui-text="Use">
            <label xml:space="preserve">Select a rectangle before calling the extension, it will determine X and Y scales.
First derivatives are always determined numerically.</label>
        </page>
        <page name="desc" gui-text="Functions">
            <label xml:space="preserve">Standard Python math functions are available:

ceil(x); fabs(x); floor(x); fmod(x,y); frexp(x); ldexp(x,i); 
modf(x); exp(x); log(x [, base]); log10(x); pow(x,y); sqrt(x); 
acos(x); asin(x); atan(x); atan2(y,x); hypot(x,y); 
cos(x); sin(x); tan(x); degrees(x); radians(x); 
cosh(x); sinh(x); tanh(x).

The constants pi and e are also available.</label>
        </page>
    </param>
    <param name="fofx"     type="string"  gui-text="X-Function:">cos(3*t)</param>
    <param name="fofy"     type="string"  gui-text="Y-Function:">sin(5*t)</param>
    <param name="remove"   type="bool" gui-text="Remove rectangle">true</param>
    <param name="drawaxis" type="bool" gui-text="Draw Axes">false</param>
    <effect>
        <object-type>rect</object-type>
        <effects-menu>
            <submenu name="Render"/>
        </effects-menu>
    </effect>
    <script>
        <command location="inx" interpreter="python">param_curves.py</command>
    </script>
</inkscape-extension>