[gimp-help-2] Add warp-transform.xml



commit 8c8d8716b9db28b78f18e930790817ee8e497fff
Author: Julien Hardelin <jhardlin orange fr>
Date:   Wed Jun 21 15:31:20 2017 +0200

    Add warp-transform.xml

 docs/templates/tool_template.xml         |   11 +-
 docs/warp-ex-abyss.xcf                   |  Bin 0 -> 101066 bytes
 images/C/toolbox/warp-dialog-options.png |  Bin 0 -> 31939 bytes
 images/C/toolbox/warp-ex-abyss.gif       |  Bin 0 -> 54038 bytes
 images/C/toolbox/warp-ex-erase.png       |  Bin 0 -> 5257 bytes
 images/C/toolbox/warp-ex-grow.png        |  Bin 0 -> 5314 bytes
 images/C/toolbox/warp-ex-move.png        |  Bin 0 -> 4063 bytes
 images/C/toolbox/warp-ex-shrink.png      |  Bin 0 -> 4629 bytes
 images/C/toolbox/warp-ex-swirl.gif       |  Bin 0 -> 28619 bytes
 images/C/toolbox/warp-icon.png           |  Bin 0 -> 3266 bytes
 images/C/toolbox/warp-options-abyss.png  |  Bin 0 -> 4818 bytes
 images/C/toolbox/warp-toolbox.png        |  Bin 0 -> 36301 bytes
 src/toolbox/transform-tools.xml          |    2 +
 src/toolbox/transform/warp-transform.xml |  319 ++++++++++++++++++++++++++++++
 14 files changed, 331 insertions(+), 1 deletions(-)
---
diff --git a/docs/templates/tool_template.xml b/docs/templates/tool_template.xml
index ab41a57..4b5ad3f 100644
--- a/docs/templates/tool_template.xml
+++ b/docs/templates/tool_template.xml
@@ -118,7 +118,16 @@
 
       <mediaobject>
         <imageobject>
-          <!-- TODO: create a (logical & consistent) naming scheme for tool images -->
+          <!-- TODO: create a (logical & consistent) naming scheme for tool 
+images -->
+          <!-- I propose tool_name-object_type-object_name. For example:
+          warp-toolbox. png for warp tool in toolbox
+          warp-icon.png for warp tool
+          warp-dialog-options.png for the the tool options dialog
+          warp-list-methods.png for the method drop-down list
+          warp-list-abyss.png for abyss drop-down list
+          warp ex-shrink-1.png for the first shrink example
+            -->
           <imagedata format="PNG"
             fileref="images/toolbox/tool-options-name.png"/>
         </imageobject>
diff --git a/docs/warp-ex-abyss.xcf b/docs/warp-ex-abyss.xcf
new file mode 100644
index 0000000..fca3d20
Binary files /dev/null and b/docs/warp-ex-abyss.xcf differ
diff --git a/images/C/toolbox/warp-dialog-options.png b/images/C/toolbox/warp-dialog-options.png
new file mode 100644
index 0000000..6baadfd
Binary files /dev/null and b/images/C/toolbox/warp-dialog-options.png differ
diff --git a/images/C/toolbox/warp-ex-abyss.gif b/images/C/toolbox/warp-ex-abyss.gif
new file mode 100644
index 0000000..339cb65
Binary files /dev/null and b/images/C/toolbox/warp-ex-abyss.gif differ
diff --git a/images/C/toolbox/warp-ex-erase.png b/images/C/toolbox/warp-ex-erase.png
new file mode 100644
index 0000000..0857773
Binary files /dev/null and b/images/C/toolbox/warp-ex-erase.png differ
diff --git a/images/C/toolbox/warp-ex-grow.png b/images/C/toolbox/warp-ex-grow.png
new file mode 100644
index 0000000..2e3aa3f
Binary files /dev/null and b/images/C/toolbox/warp-ex-grow.png differ
diff --git a/images/C/toolbox/warp-ex-move.png b/images/C/toolbox/warp-ex-move.png
new file mode 100644
index 0000000..708b346
Binary files /dev/null and b/images/C/toolbox/warp-ex-move.png differ
diff --git a/images/C/toolbox/warp-ex-shrink.png b/images/C/toolbox/warp-ex-shrink.png
new file mode 100644
index 0000000..a52432b
Binary files /dev/null and b/images/C/toolbox/warp-ex-shrink.png differ
diff --git a/images/C/toolbox/warp-ex-swirl.gif b/images/C/toolbox/warp-ex-swirl.gif
new file mode 100644
index 0000000..5eef13b
Binary files /dev/null and b/images/C/toolbox/warp-ex-swirl.gif differ
diff --git a/images/C/toolbox/warp-icon.png b/images/C/toolbox/warp-icon.png
new file mode 100644
index 0000000..e687cb1
Binary files /dev/null and b/images/C/toolbox/warp-icon.png differ
diff --git a/images/C/toolbox/warp-options-abyss.png b/images/C/toolbox/warp-options-abyss.png
new file mode 100644
index 0000000..913cfc2
Binary files /dev/null and b/images/C/toolbox/warp-options-abyss.png differ
diff --git a/images/C/toolbox/warp-toolbox.png b/images/C/toolbox/warp-toolbox.png
new file mode 100644
index 0000000..334fb88
Binary files /dev/null and b/images/C/toolbox/warp-toolbox.png differ
diff --git a/src/toolbox/transform-tools.xml b/src/toolbox/transform-tools.xml
index d91cfec..84eb994 100644
--- a/src/toolbox/transform-tools.xml
+++ b/src/toolbox/transform-tools.xml
@@ -3,6 +3,7 @@
                        "http://www.docbook.org/xml/4.3/docbookx.dtd";>
 <!-- section history:
   2017-05-06 j.h: add Unified transform
+  2017-06-18 j.h: add Warp transform
  -->
 <sect1 xmlns:xi="http://www.w3.org/2001/XInclude"; id="gimp-tools-transform">
   <title>Transform Tools</title>
@@ -32,4 +33,5 @@
   <xi:include href="transform/flip.xml"/>
   <xi:include href="transform/cage.xml"/>
   <xi:include href="transform/unified-transform.xml"/>
+  <xi:include href="transform/warp-transform.xml"/>
 </sect1>
diff --git a/src/toolbox/transform/warp-transform.xml b/src/toolbox/transform/warp-transform.xml
new file mode 100644
index 0000000..7d34251
--- /dev/null
+++ b/src/toolbox/transform/warp-transform.xml
@@ -0,0 +1,319 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE sect2 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+                       "http://www.docbook.org/xml/4.3/docbookx.dtd";>
+
+<sect2 id="gimp-tool-warp">
+  <title>Warp Transform</title>
+
+  <indexterm>
+    <primary>Tools</primary>
+    <secondary>Warp Transform</secondary>
+  </indexterm>
+  <indexterm><primary>Warp Transform</primary></indexterm>
+
+  <figure>
+    <title>Warp Transform Tool</title>
+
+    <mediaobject>
+      <imageobject>
+        <imagedata format="PNG"
+          fileref="images/toolbox/warp-toolbox.png"/>
+      </imageobject>
+    </mediaobject>
+  </figure>
+
+  <para>
+    Warp Transform is a GEGL based brush-like tool which replaces the old iWarp 
+    filter and works directly on the image, on real things instead of a tiny 
+    preview window. You can use an erase mode to partially remove warping you 
+    applied. You have available options to adapt strength and size of warping.
+  </para>
+
+  <sect3>
+    <title>
+      <phrase>Activating the Tool</phrase>
+    </title>
+
+    <para>
+      There are different possibilities to activate the tool:
+    </para>
+
+    <itemizedlist>
+      <listitem>
+        <para>
+          from the image-menu:
+          <menuchoice>
+            <guimenu>Tools</guimenu>
+            <guisubmenu>Transform</guisubmenu>
+            <guimenuitem>Warp Transform</guimenuitem>
+          </menuchoice>,
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
+          by clicking the tool icon in toolbox:
+          <guiicon>
+            <inlinemediaobject>
+              <imageobject>
+                <imagedata fileref="images/toolbox/warp-icon.png" />
+              </imageobject>
+            </inlinemediaobject>,
+          </guiicon>
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
+          or by clicking on the <keycap>W</keycap> keyboard shortcut.
+        </para>
+      </listitem>
+    </itemizedlist>
+  </sect3>
+
+  <sect3>
+    <title>Options</title>
+    <figure>
+      <title>Warp Tool options</title>
+      <mediaobject>
+        <imageobject>
+          <imagedata format="PNG"
+            fileref="images/toolbox/warp-dialog-options.png"/>
+        </imageobject>
+      </mediaobject>
+    </figure>
+
+    <para>
+      The available tool options can be accessed by double clicking the
+      Warp Transform tool icon in toolbox.
+      <guiicon>
+        <inlinemediaobject>
+          <imageobject>
+            <imagedata format="PNG"
+              fileref="images/toolbox/warp-icon.png" />
+          </imageobject>
+        </inlinemediaobject>
+      </guiicon>
+    </para>
+    
+    <variablelist>
+      <varlistentry>
+        <term>Interpolation</term>
+        <listitem>
+          <note>
+            <para>
+              An interpolation method is used during warping.
+              See <xref linkend="gimp-tool-interpolation-methods" /> for a 
+              description of these methods.
+            </para>
+          </note>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term>Move pixels</term>
+        <listitem>
+          <para>
+            <quote>Move pixels</quote> is the first item of a drop-down list 
+            which contains various warping methods:
+            <itemizedlist>
+              <listitem>
+                <para>
+                  <guilabel>Move pixels</guilabel> is the default method.
+                </para>
+                <figure>
+                  <title>Move pixels example</title>
+                  <mediaobject>
+                    <imageobject>
+                      <imagedata format="PNG"
+                        fileref="images/toolbox/warp-ex-move.png"/>
+                    </imageobject>
+                  </mediaobject>
+                </figure>
+              </listitem>
+              <listitem>
+                <para>
+                  <guilabel>Grow</guilabel>
+                </para>
+                <figure>
+                  <title>Grow example</title>
+                  <mediaobject>
+                    <imageobject>
+                      <imagedata format="PNG"
+                        fileref="images/toolbox/warp-ex-grow.png"/>
+                    </imageobject>
+                  </mediaobject>
+                </figure>
+              </listitem>
+              <listitem>
+                <para>
+                  <guilabel>Shrink</guilabel>
+                </para>
+                <figure>
+                  <title>Shrink example</title>
+                  <mediaobject>
+                    <imageobject>
+                      <imagedata format="PNG"
+                        fileref="images/toolbox/warp-ex-shrink.png"/>
+                    </imageobject>
+                    <caption>
+                      <para>
+                        Clicking 5 times at the center of the image with brush 
+                        size = image size.
+                      </para>
+                    </caption>
+                  </mediaobject>
+                </figure>
+              </listitem>
+              <listitem>
+                <para>
+                  <guilabel>Swirl clockwise/counter-clockwise</guilabel>
+                </para>
+                <figure>
+                  <title>Swirl example</title>
+                  <mediaobject>
+                    <imageobject>
+                      <imagedata format="PNG"
+                        fileref="images/toolbox/warp-ex-swirl.gif"/>
+                    </imageobject>
+                    <caption>
+                      <para>
+                        Swirling clockwise the whole image (brush size = image 
+                        size) with a circular movement of the brush.
+                      </para>
+                    </caption>
+                  </mediaobject>
+                </figure>
+              </listitem>
+            </itemizedlist>
+          </para>
+        </listitem>
+      </varlistentry>
+      
+      <varlistentry>
+        <term>Adapting Size, Hardness, Strength, Spacing</term>
+        <listitem>
+          <para>
+            <itemizedlist>
+              <listitem>
+                <para>
+                  <guilabel>Size</guilabel> : the size of the brush is 
+                  increased.
+                </para>
+              </listitem>
+              <listitem>
+                <para>
+                  <guilabel>Hardness</guilabel> : TODO (work in progress).
+                </para>
+              </listitem>
+              <listitem>
+                <para>
+                  <guilabel>Strength</guilabel>: set displacement of pixels 
+                  during warping. The maximum of displacement is on the brush 
+                  diameter.
+                </para>
+              </listitem>
+              <listitem>
+                <para>
+                  <guilabel>Spacing</guilabel> : TODO (work in progress)
+                </para>
+              </listitem>
+            </itemizedlist>
+          </para>
+        </listitem>
+      </varlistentry>
+      
+      <varlistentry>
+        <term>Abyss policy</term>
+        <listitem>
+          <para>
+            <quote>Abyss</quote> is a term used by GIMP developers for 
+            <quote>data outside the input buffer</quote>.
+          </para>
+          <para>
+            When warping a whole layer, you may get some parts of the 
+            future layer (the layer you will get after validating the 
+            transformation) that are empty. <quote>Abyss policy</quote> has a 
+            drop-down list that allows you to fill empty areas in different 
+            manners:
+          </para>
+          <itemizedlist>
+            <listitem>
+              <para>
+                <guilabel>None</guilabel>: this is the default option. Empty 
+                areas are transparent.
+              </para>
+            </listitem>
+            <listitem>
+              <para>
+                <guilabel>Clamp</guilabel>: each edge of the transformed layer 
+                stretches out indefinitely, so, for example, a pixel to the left 
+                of the layer boundary has the same color as the leftmost pixel 
+                of the layer with the same y coordinate.  An alternative way to 
+                think of it is that each pixel outside the layer boundary has 
+                the same color as the closest pixel inside the layer boundary.
+              </para>
+            </listitem>
+            <listitem>
+              <para>
+                <guilabel>Loop</guilabel>: the transformed layer repeats itself 
+                in all directions, so that, for example, falling off the right 
+                edge of the layer takes you back to the left edge.
+              </para>
+            </listitem>
+          </itemizedlist>
+          
+          <!--TO TRANSLATORS: a xcf file exists for this image at 
+            https://git.gnome.org/browse/gimp-help-2/tree/docs-->
+          <figure>
+            <title>Examples for Abyss policy options</title>
+            <mediaobject>
+              <imageobject>
+                <imagedata format="PNG"
+                  fileref="images/toolbox/warp-ex-abyss.gif"/>
+              </imageobject>
+            </mediaobject>
+          </figure>
+        </listitem>
+      </varlistentry>
+      
+      <varlistentry>
+        <term>High quality preview</term>
+        <listitem>
+          <para>
+            <quote>preview</quote> is the image window, where you work, before 
+            pressing <keycap>Enter</keycap> to validate the transformation. 
+            With this option checked, preview is more accurate, but slower.
+          </para>
+        </listitem>
+      </varlistentry>
+      
+      <varlistentry>
+        <term>Stroke</term>
+        <listitem>
+          <para>TODO (work in progress)</para>
+        </listitem>
+      </varlistentry>
+      
+      <varlistentry>
+        <term>Animate</term>
+        <listitem>
+          <para>
+            This option allows you to generate several intermediate images 
+            between the original image and the final deformation of this image.
+          </para>
+          <para>
+            <guilabel>Frames</guilabel> to set the number of frames in this 
+            animation.
+          </para>
+          <para>
+            <guibutton>Create Animation</guibutton> button: to create the 
+            animation. A new image window is created. Export it as a GIF image, 
+            checking the <guilabel>As animation</guilabel> option in the export 
+            dialog.
+          </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+ </sect3>
+</sect2>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]