summaryrefslogtreecommitdiffstats
path: root/share/extensions/lindenmayer.inx
blob: 32fe8bcd59cfbee6eb487c4ed0d66f7db812c7f8 (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
48
49
50
51
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
    <name>L-system</name>
    <id>org.ekips.filter.turtle.lindenmayer</id>
    <param name="tab" type="notebook">
        <page name="rules" gui-text="Axiom and rules">
            <param name="axiom" type="string" gui-text="Axiom:">++F</param>
            <param name="rules" type="string" gui-text="Rules:">F=FF-[-F+F+F]+[+F-F-F]</param>
            <param name="order" type="int" min="0" max="100" gui-text="Order:">3</param>
            <param name="step" type="float" min="0.0" max="1000.0" gui-text="Step length (px):">25.0</param>
            <param name="randomizestep" type="float" min="0.0" max="100.0" gui-text="Randomize step (%):">0.0</param>
            <param name="langle" type="float" min="0.0" max="360.0" gui-text="Left angle:">16.0</param>
            <param name="rangle" type="float" min="0.0" max="360.0" gui-text="Right angle:">16.0</param>
            <param name="randomizeangle" type="float" min="0.0" max="100.0" gui-text="Randomize angle (%):">0.0</param>
        </page>
        <page name="help" gui-text="Help">
            <label xml:space="preserve">
The path is generated by applying the 
substitutions of Rules to the Axiom, 
Order times. The following commands are 
recognized in Axiom and Rules:

Any of A,B,C,D,E,F: draw forward 

Any of G,H,I,J,K,L: move forward 

+: turn left

-: turn right

|: turn 180 degrees

[: remember point

]: return to remembered point

Multiple rules can be provided by 
separating them with a semicolon (;).
</label>
        </page>
    </param>
    <effect>
        <object-type>all</object-type>
            <effects-menu>
                <submenu name="Render"/>
            </effects-menu>                                 
    </effect>
    <script>
        <command location="inx" interpreter="python">lindenmayer.py</command>
    </script>
</inkscape-extension>