Editing Stretch

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
{{EggBotDocs}}
+
[[Post process trace bitmap|<<< Post process trace bitmap]] | Stretch | [[Twist|Twist >>>]]
  
 +
----
  
[[Reorder Paths for Speed|<<< Reorder Paths for Speed]] || Stretch
+
http://mtbaldy.us/~dnewman/tspart/extensions-stretch-01.png
 
 
 
 
 
 
{{sized-external-image|424px|https://cdn.evilmadscientist.com/wiki/eggbot/extensiontut/ext13_stretch.jpg}}
 
 
 
 
 
In Inkscape -- and on your monitor -- your drawing is flat.  But, when you plot your drawing on a round object, you subject your drawing to a transformation which changes its appearance.  A horizontal line in your drawing will have the same physical length when printed on paper regardless of where that line appears in your drawing.  That is not the case when you plot horizontal lines onto a sphere or egg.  A horizontal line in drawing becomes a line of latitude when plotted with the Eggbot.  Moving this horizontal line up or down in your drawing (away from the midline of the page) moves the corresponding line of latitude towards one egg pole or the other.  But, something happens to lines of latitude as they approach either pole: their circumference decreases.  And, any line segment along a line of latitude decreases in length as the line of latitude approaches either pole [1].  The result of this effect is that if you put two identically sized figures in your drawing, the resulting egg plot will produce them with different sizes if one of the figures is closer to the equator than the other.  The object closer to the equator will be larger than the one closer to a pole.  This effect of shrinking near the poles can be annoying when, for example, plotting several lines of text.  It can causes squaers to appear bloated near the equator and shrunken near the poles.
 
 
 
To combat this effect, it is possible to horizontally stretch elements of your drawing.  The amount of stretch should increase the closer the object is to a pole.  Such stretching is what this extension does.  When applied to the drawing,
 
 
 
http://evilmadscience.s3.amazonaws.com/wiki/eggbot/extensiontut/extensions-stretch-02.png
 
 
 
it produces the result,
 
 
 
http://evilmadscience.s3.amazonaws.com/wiki/eggbot/extensiontut/extensions-stretch-03.png
 
 
 
Note how the closer a horizontal line is to either the top or bottom edge of the drawing -- the poles of your egg -- the more that line is stretched.
 
 
 
The stretching is done such that a vertical line through the horizontal midpoint is unchanged.  If nothing is selected when the extension is applied, then the horizontal midpoint is at half the page's width.  If, however, one or more objects are selected, then the horizontal midpoint is the midpoint of the shortest horizontal line spanning all the selected objects (i.e., the horizontal midpoint of the bounding box containing all the selected objects)  [2].
 
 
 
The Stretch extension has two adjustable settings.  The first setting, vertical smoothing, is used to break long line segments into shorter segments before stretching.  To illustrate the effect of this setting, consider the following figure,
 
 
 
http://evilmadscience.s3.amazonaws.com/wiki/eggbot/extensiontut/extensions-stretch-04.png
 
 
 
From left to right, the vertical smoothing values were 200, 100, and 10.  The smaller the value, the smoother the result will be.  A value between 5 and 10 is generally sufficient.  The second value you can set, curve smoothing, is the same value as in the Eggbot Control extension.  It effects how smoothly arcs, circles, eliipses, and curves are rendered.
 
 
 
In the following example, text within a box is shown unstretched on the left and stretched on the right,
 
  
http://evilmadscience.s3.amazonaws.com/wiki/eggbot/extensiontut/extensions-stretch-05.png
+
When you draw in Inkscape, you are working with a flat, two-dimensional drawing surface. But, when you plot your drawing on an egg or other round object, you are subjecting your drawing to a transformation which will cause your drawing to change in appearance. For example, a horizontal line in your Inkscape drawing will have the same physical length when printed on paper regardless of it's vertical height in your drawing. That is not the case when you plot horizontal lines onto a sphere or egg.  Horizontal lines in Inkscape becomes lines of latitude on a sphere.  However, the physical length of each line of latitude varies with its latitude. Put differently,
  
The box and text were stretched as a whole (i.e., they were not individually stretched).  The result of plotting the two on an egg is shown below.  The egg on the left is the unstretched box and text.  The egg on the right shows the stretched text and box. The picture of the egg on the right does not clearly show the effect of the stretching -- in real life the box looks very rectilinear.  The results do not show well in a photograph: the photographic process is, by its very nature, producing yet another transformation as it maps the three-dimensional, spherical egg plot to a two-dimensional flat image.
+
http://mtbaldy.us/~dnewman/tspart/extensions-stretch-02.png
  
http://evilmadscience.s3.amazonaws.com/wiki/eggbot/extensiontut/extensions-stretch-06.jpg
+
http://mtbaldy.us/~dnewman/tspart/extensions-stretch-03.png
  
Apply this extension right before plotting after first saving your drawing. This extension will reduce every object in your drawing to sequences of line segments.  Objects drawn as circles, squares, etc. will be reduced to sequences of line segments.  Inkscape will no longer recognize them as being anything but a bunch of line segments.
+
http://mtbaldy.us/~dnewman/tspart/extensions-stretch-04.png
  
== Notes ==
+
http://mtbaldy.us/~dnewman/tspart/extensions-stretch-05.png
  
1. Note that the angular length of the line segment stays the same just as the angular length of a complete line of latitude -- 360&nbsp;degrees -- remains unchanged.<br/>
+
http://mtbaldy.us/~dnewman/tspart/extensions-stretch-06.jpg
2.  This spanning horizontal line or bounding box does not take into account the cylindrical nature of your drawing. I.e., it does not recognize that left and right edges of your drawing touch when plotted on an egg.  If you have such objects, drag them elsewhere in your drawing, stretch them and then drag them back to the edges.
 
  
 
----
 
----
  
[[Reorder Paths for Speed|<<< Reorder Paths for Speed]] || Stretch
+
[[Post process trace bitmap|<<< Post process trace bitmap]] | Stretch | [[Twist|Twist >>>]]

Please note that all contributions to Evil Mad Scientist Wiki are considered to be released under the GNU Free Documentation License 1.3 (see Evil Mad Scientist Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)