summaryrefslogtreecommitdiffstats
path: root/share/extensions/plotter.inx
blob: 673922d2e7dd30d5f66e2fbcec47ddcc7add45e6 (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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
    <_name>Plot</_name>
    <id>org.ekips.filter.plot</id>
	<dependency type="executable" location="extensions">plotter.py</dependency>
    <dependency type="executable" location="extensions">hpgl_decoder.py</dependency>
    <dependency type="executable" location="extensions">hpgl_encoder.py</dependency>
    <dependency type="executable" location="extensions">inkex.py</dependency>
    <_param name="introduction" type="description">Please make sure that all objects you want to plot are converted to paths. The plot will automatically be aligned to the zero point.</_param>
    <param name="tab" type="notebook">
        <page name="misc" _gui-text="Connection">
            <param name="serialPort" type="string" _gui-text="Serial port" _gui-description="The port of your serial connection, on Windows something like 'COM1', on Linux something like: '/dev/ttyUSB0'. (Default: COM1)">COM1</param>
            <param name="serialBaudRate" type="optiongroup" appearance="minimal" _gui-text="Serial baud rate" _gui-description="The Baud rate of your serial connection. (Default: 9600)">
                <option value="9600">9600</option>
                <option value="110">110</option>
                <option value="300">300</option>
                <option value="600">600</option>
                <option value="1200">1200</option>
                <option value="2400">2400</option>
                <option value="4800">4800</option>
                <option value="9600">9600</option>
                <option value="14400">14400</option>
                <option value="19200">19200</option>
                <option value="28800">28800</option>
                <option value="38400">38400</option>
                <option value="56000">56000</option>
                <option value="57600">57600</option>
                <option value="115200">115200</option>
            </param>
            <param name="flowControl" type="optiongroup" appearance="minimal" _gui-text="Flow control" _gui-description="The Software / Hardware flow control of your serial connection. (Default: Software)">
                <_option value="xonxoff">Software (XON/XOFF)</_option>
                <_option value="rtscts">Hardware (RTS/CTS)</_option>
                <_option value="dsrdtrrtscts">Hardware (DSR/DTR + RTS/CTS)</_option>
                <_option value="">None</_option>
            </param>
            <param name="commandLanguage" type="optiongroup" appearance="minimal" _gui-text="Command language" _gui-description="The command language to use. (Default: HPGL)">
                <option value="HPGL">HPGL</option>
                <option value="DMPL">DMPL</option>
                <option value="ZING">KNK Zing (HPGL variant)</option>
            </param>
            <param name="space" type="description">&#xa0;</param>
            <_param name="freezeHelp" type="description">Using wrong settings can under certain circumstances cause Inkscape to freeze. Always save your work before plotting.</_param>
            <_param name="serialHelp" type="description">This can be a physical serial connection or a USB-to-Serial bridge. Ask your plotter manufacturer for drivers if needed.</_param>
            <_param name="parallelHelp" type="description">Parallel (LPT) connections are not supported.</_param>
        </page>
        <page name="plotter" _gui-text="Plotter Settings">
            <param name="resolutionX" type="float" min="1.0" max="4096.0" precision="1" _gui-text="Resolution X (dpi)" _gui-description="The amount of steps the cutter moves if it moves for 1 inch on the X axis. (Default: 1016.0)">1016.0</param>
            <param name="resolutionY" type="float" min="1.0" max="4096.0" precision="1" _gui-text="Resolution Y (dpi)" _gui-description="The amount of steps the cutter moves if it moves for 1 inch on the Y axis. (Default: 1016.0)">1016.0</param>
            <param name="pen" type="int" min="0" max="99" _gui-text="Pen number" _gui-description="The number of the pen (tool) to use. (Standard: '1')">1</param>
            <param name="force" type="int" min="0" max="1000" _gui-text="Pen force (g)" _gui-description="The amount of force pushing down the pen in grams, set to 0 to omit command. Most plotters ignore this command. (Default: 0)">0</param>
            <param name="speed" type="int" min="0" max="10000" _gui-text="Pen speed (cm/s or mm/s)" _gui-description="The speed the pen will move with in centimeters or millimeters per second (dependent on your plotter model), set to 0 to omit command. Most plotters ignore this command. (Default: 0)">0</param>
            <param name="orientation" type="optiongroup" appearance="minimal" _gui-text="Rotation (Clockwise)" _gui-description="Rotation of the plot. (Default: 0°)">
                <option value="0">0°</option>
                <option value="90">90°</option>
                <option value="180">180°</option>
                <option value="270">270°</option>
            </param>
            <param name="mirrorX" type="boolean" _gui-text="Mirror X axis" _gui-description="Check this to mirror the X axis. (Default: Unchecked)">false</param>
            <param name="mirrorY" type="boolean" _gui-text="Mirror Y axis" _gui-description="Check this to mirror the Y axis. (Default: Unchecked)">false</param>
            <param name="center" type="boolean" _gui-text="Center zero point" _gui-description="Check this if your plotter uses a centered zero point. (Default: Unchecked)">false</param>
        </page>
        <page name="overcutToolOffset" _gui-text="Overcut &#x26; Tool Offset">
            <param name="useOvercut" type="boolean" _gui-text="Use overcut" _gui-description="Check this to use overcut, if not checked the 'Overcut' parameter is unused. (Default: Checked)">true</param>
            <param name="overcut" type="float" min="0.0" max="100.0" precision="2" _gui-text="Overcut (mm)" _gui-description="The distance in mm that will be cut over the starting point of the path to prevent open paths. (Default: 1.00)">1.00</param>
            <param name="space" type="description">&#xa0;</param>
            <param name="useToolOffset" type="boolean" _gui-text="Use tool offset correction" _gui-description="Check this to use the tool offset correction, if not checked the 'Tool offset' and 'Precut' parameters are unused. (Default: Checked)">true</param>
            <param name="toolOffset" type="float" min="0.0" max="20.0" precision="2" _gui-text="Tool offset (mm)" _gui-description="The offset from the tool tip to the tool axis in mm. (Default: 0.25)">0.25</param>
            <param name="precut" type="boolean" _gui-text="Use precut" _gui-description="Check this to plot a small line before the real plot to align the tool orientation for the first real plot. (Default: Checked)">true</param>
            <param name="space" type="description">&#xa0;</param>
            <_param name="offsetNote" type="description">Please note that using the tool offset correction will move your plot away from the zero point by one tool offset length.</_param>
        </page>
        <page name="misc" _gui-text="Miscellaneous">
            <param name="flat" type="float" min="0.1" max="10.0" precision="1" _gui-text="Curve flatness" _gui-description="Curves are divided into lines, this number controls how fine the curves will be reproduced, the smaller the finer. (Default: '1.2')">1.2</param>
            <param name="offsetX" type="float" min="-10000.0" max="10000.0" precision="2" _gui-text="X offset (mm)" _gui-description="The offset to move your plot away from the zero point on the X axis in mm. (Default: '0.00')">0.00</param>
            <param name="offsetY" type="float" min="-10000.0" max="10000.0" precision="2" _gui-text="Y offset (mm)" _gui-description="The offset to move your plot away from the zero point on the Y axis in mm. (Default: '0.00')">0.00</param>
            <param name="debug" type="boolean" _gui-text="Show debug information" _gui-description="Check this to get verbose information about the plot without actually sending something to the plotter (A.k.a. data dump). (Default: Unchecked)">false</param>
        </page>
    </param>
    <_param name="settingsHelp" type="description">All these settings depend on the plotter you use, for more information please consult the manual or homepage for your plotter.</_param>
    <effect needs-live-preview="false">
        <object-type>path</object-type>
        <effects-menu>
            <submenu _name="Plotter"/>
        </effects-menu>
    </effect>
    <script>
        <command reldir="extensions" interpreter="python">plotter.py</command>
    </script>
</inkscape-extension>