Revision: 8690
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8690&view=rev
Author:   mdboom
Date:     2010-09-08 14:32:17 +0000 (Wed, 08 Sep 2010)

Log Message:
-----------
[3058804] part of a line is not drawn

Modified Paths:
--------------
    branches/v1_0_maint/lib/matplotlib/tests/test_simplification.py
    branches/v1_0_maint/src/path_converters.h

Added Paths:
-----------
    
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.pdf
    
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.png
    
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.svg

Added: 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.pdf
===================================================================
(Binary files differ)


Property changes on: 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.pdf
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.png
===================================================================
(Binary files differ)


Property changes on: 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.svg
===================================================================
--- 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.svg
                            (rev 0)
+++ 
branches/v1_0_maint/lib/matplotlib/tests/baseline_images/test_simplification/para_equal_perp.svg
    2010-09-08 14:32:17 UTC (rev 8690)
@@ -0,0 +1,296 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd";>
+<!-- Created with matplotlib (http://matplotlib.sourceforge.net/) -->
+<svg width="576pt" height="432pt" viewBox="0 0 576 432"
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   version="1.1"
+   id="svg1">
+<filter id="colorAdd"><feComposite in="SourceGraphic" in2="BackgroundImage" 
operator="arithmetic" k2="1" k3="1"/></filter>
+<g id="figure1">
+<g id="patch1">
+<path style="fill: #ffffff; stroke: #ffffff; stroke-width: 1.000000; 
stroke-linejoin: round; stroke-linecap: square;  opacity: 1.000000"  
d="M0.000000 432.000000L576.000000 432.000000L576.000000 0.000000
+L0.000000 0.000000z"/>
+</g>
+<g id="axes1">
+<g id="patch2">
+<path style="fill: #ffffff; opacity: 1.000000"  d="M72.000000 
388.800000L518.400000 388.800000L518.400000 43.200000
+L72.000000 43.200000z"/>
+</g>
+<g id="line2d1">
+<defs>
+  <clipPath id="p50431ccdcb28178602d99d9270004dde">
+<rect x="72.000000" y="43.200000" width="446.400000" height="345.600000"/>
+  </clipPath>
+</defs><path style="fill: none; stroke: #0000ff; stroke-width: 1.000000; 
stroke-linejoin: round; stroke-linecap: square;  opacity: 1.000000" 
clip-path="url(#p50431ccdcb28178602d99d9270004dde)" d="M220.800000 
158.400000L369.600000 158.400000L518.400000 43.200000
+L369.600000 158.400000L220.800000 273.600000L72.000000 388.800000
+L220.800000 273.600000L369.600000 273.600000"/>
+</g>
+<g id="line2d2">
+<defs><path id="m87f81da4bcf58d853202912065521dc1" d="M0.000000 
3.000000C0.795609 3.000000 1.558740 2.683901 2.121320 2.121320
+C2.683901 1.558740 3.000000 0.795609 3.000000 0.000000
+C3.000000 -0.795609 2.683901 -1.558740 2.121320 -2.121320
+C1.558740 -2.683901 0.795609 -3.000000 0.000000 -3.000000
+C-0.795609 -3.000000 -1.558740 -2.683901 -2.121320 -2.121320
+C-2.683901 -1.558740 -3.000000 -0.795609 -3.000000 0.000000
+C-3.000000 0.795609 -2.683901 1.558740 -2.121320 2.121320
+C-1.558740 2.683901 -0.795609 3.000000 0.000000 3.000000z"/></defs>
+<g clip-path="url(#p50431ccdcb28178602d99d9270004dde)"><use style="fill: 
#ff0000; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; 
stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="220.800000" y="158.400000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="369.600000" y="158.400000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="518.400000" y="43.200000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="369.600000" y="158.400000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="220.800000" y="273.600000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="72.000000" y="388.800000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="220.800000" y="273.600000"/>
+<use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m87f81da4bcf58d853202912065521dc1" x="369.600000" y="273.600000"/>
+</g></g>
+<g id="matplotlib.axis1">
+<g id="xtick1">
+<g id="line2d3">
+<defs><path id="m30e32995789d870ad79a2e54c91cf9c6" d="M0.000000 
0.000000L0.000000 -4.000000"/></defs>
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="72.000000" y="388.800000"/>
+</g></g>
+<g id="line2d4">
+<defs><path id="m9281cae24120827b11d5ea8a7ad3e96b" d="M0.000000 
0.000000L0.000000 4.000000"/></defs>
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="72.000000" y="43.200000"/>
+</g></g>
+<g id="text1">
+<defs>
+<path id="c_7a2040fe3b94fcd41d0a72c84e93b115" d="M31.781250 
-66.406250q-7.609375 0.000000 -11.453125 7.500000q-3.828125 7.484375 -3.828125 
22.531250q0.000000 14.984375 3.828125 22.484375q3.843750 7.500000 11.453125 
7.500000q7.671875 0.000000 11.500000 -7.500000q3.843750 -7.500000 3.843750 
-22.484375q0.000000 -15.046875 -3.843750 -22.531250q-3.828125 -7.500000 
-11.500000 -7.500000M31.781250 -74.218750q12.265625 0.000000 18.734375 
9.703125q6.468750 9.687500 6.468750 28.140625q0.000000 18.406250 -6.468750 
28.109375q-6.468750 9.687500 -18.734375 9.687500q-12.250000 0.000000 -18.718750 
-9.687500q-6.468750 -9.703125 -6.468750 -28.109375q0.000000 -18.453125 6.468750 
-28.140625q6.468750 -9.703125 18.718750 -9.703125"/>
+<path id="c_ed3e21196fb739f392806f09ca0594ef" d="M10.687500 
-12.406250l10.312500 0.000000l0.000000 12.406250l-10.312500 0.000000z"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(63.250000,401.706250)scale(0.120000)">
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="xtick2">
+<g id="line2d5">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="146.400000" y="388.800000"/>
+</g></g>
+<g id="line2d6">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="146.400000" y="43.200000"/>
+</g></g>
+<g id="text2">
+<defs>
+<path id="c_1260a2df50f305f3db244e29828f968e" d="M10.796875 
-72.906250l38.718750 0.000000l0.000000 8.312500l-29.687500 0.000000l0.000000 
17.859375q2.140625 -0.734375 4.281250 -1.093750q2.156250 -0.359375 4.312500 
-0.359375q12.203125 0.000000 19.328125 6.687500q7.140625 6.687500 7.140625 
18.109375q0.000000 11.765625 -7.328125 18.296875q-7.328125 6.515625 -20.656250 
6.515625q-4.593750 0.000000 -9.359375 -0.781250q-4.750000 -0.781250 -9.828125 
-2.343750l0.000000 -9.921875q4.390625 2.390625 9.078125 3.562500q4.687500 
1.171875 9.906250 1.171875q8.453125 0.000000 13.375000 -4.437500q4.937500 
-4.437500 4.937500 -12.062500q0.000000 -7.609375 -4.937500 -12.046875q-4.921875 
-4.453125 -13.375000 -4.453125q-3.953125 0.000000 -7.890625 0.875000q-3.921875 
0.875000 -8.015625 2.734375z"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(137.775000,401.706250)scale(0.120000)">
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="xtick3">
+<g id="line2d7">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="220.800000" y="388.800000"/>
+</g></g>
+<g id="line2d8">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="220.800000" y="43.200000"/>
+</g></g>
+<g id="text3">
+<defs>
+<path id="c_42baa63129a918535c52adb20d687ea7" d="M12.406250 
-8.296875l16.109375 0.000000l0.000000 -55.625000l-17.531250 3.515625l0.000000 
-8.984375l17.437500 -3.515625l9.859375 0.000000l0.000000 64.609375l16.109375 
0.000000l0.000000 8.296875l-41.984375 0.000000z"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(212.307812,401.706250)scale(0.120000)">
+<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="xtick4">
+<g id="line2d9">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="295.200000" y="388.800000"/>
+</g></g>
+<g id="line2d10">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="295.200000" y="43.200000"/>
+</g></g>
+<g id="text4">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(286.832812,401.550000)scale(0.120000)">
+<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="xtick5">
+<g id="line2d11">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="369.600000" y="388.800000"/>
+</g></g>
+<g id="line2d12">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="369.600000" y="43.200000"/>
+</g></g>
+<g id="text5">
+<defs>
+<path id="c_ed3f3ed3ebfbd18bcb9c012009a68ad1" d="M19.187500 
-8.296875l34.421875 0.000000l0.000000 8.296875l-46.281250 0.000000l0.000000 
-8.296875q5.609375 -5.812500 15.296875 -15.593750q9.703125 -9.796875 12.187500 
-12.640625q4.734375 -5.312500 6.609375 -9.000000q1.890625 -3.687500 1.890625 
-7.250000q0.000000 -5.812500 -4.078125 -9.468750q-4.078125 -3.671875 -10.625000 
-3.671875q-4.640625 0.000000 -9.796875 1.609375q-5.140625 1.609375 -11.000000 
4.890625l0.000000 -9.968750q5.953125 -2.390625 11.125000 -3.609375q5.187500 
-1.218750 9.484375 -1.218750q11.328125 0.000000 18.062500 5.671875q6.734375 
5.656250 6.734375 15.125000q0.000000 4.500000 -1.687500 8.531250q-1.671875 
4.015625 -6.125000 9.484375q-1.218750 1.421875 -7.765625 8.187500q-6.531250 
6.765625 -18.453125 18.921875"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(360.889062,401.706250)scale(0.120000)">
+<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="xtick6">
+<g id="line2d13">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="444.000000" y="388.800000"/>
+</g></g>
+<g id="line2d14">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="444.000000" y="43.200000"/>
+</g></g>
+<g id="text6">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(435.414062,401.706250)scale(0.120000)">
+<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="xtick7">
+<g id="line2d15">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="518.400000" y="388.800000"/>
+</g></g>
+<g id="line2d16">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="518.400000" y="43.200000"/>
+</g></g>
+<g id="text7">
+<defs>
+<path id="c_3dcfa38a02242cb63ec6726c6e70be7a" d="M40.578125 
-39.312500q7.078125 1.515625 11.046875 6.312500q3.984375 4.781250 3.984375 
11.812500q0.000000 10.781250 -7.421875 16.703125q-7.421875 5.906250 -21.093750 
5.906250q-4.578125 0.000000 -9.437500 -0.906250q-4.859375 -0.906250 -10.031250 
-2.718750l0.000000 -9.515625q4.093750 2.390625 8.968750 3.609375q4.890625 
1.218750 10.218750 1.218750q9.265625 0.000000 14.125000 -3.656250q4.859375 
-3.656250 4.859375 -10.640625q0.000000 -6.453125 -4.515625 -10.078125q-4.515625 
-3.640625 -12.562500 -3.640625l-8.500000 0.000000l0.000000 -8.109375l8.890625 
0.000000q7.265625 0.000000 11.125000 -2.906250q3.859375 -2.906250 3.859375 
-8.375000q0.000000 -5.609375 -3.984375 -8.609375q-3.968750 -3.015625 -11.390625 
-3.015625q-4.062500 0.000000 -8.703125 0.890625q-4.640625 0.875000 -10.203125 
2.718750l0.000000 -8.781250q5.625000 -1.562500 10.531250 -2.343750q4.906250 
-0.781250 9.250000 -0.781250q11.234375 0.000000 17.765625 5.109375q6.546875 
5.093750 6.546875 13.781250q0.000000 6.062500 -3.468750 10.234375q-3.468750 
4.171875 -9.859375 5.781250"/>
+</defs>
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(509.712500,401.706250)scale(0.120000)">
+<use xlink:href="#c_3dcfa38a02242cb63ec6726c6e70be7a"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+</g>
+<g id="matplotlib.axis2">
+<g id="ytick1">
+<g id="line2d17">
+<defs><path id="m3400efa6b1638b3fea9e19e898273957" d="M0.000000 
0.000000L4.000000 0.000000"/></defs>
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="388.800000"/>
+</g></g>
+<g id="line2d18">
+<defs><path id="m20b58b2501143cb5e0a5e8f1ef6f1643" d="M0.000000 
0.000000L-4.000000 0.000000"/></defs>
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="388.800000"/>
+</g></g>
+<g id="text8">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(50.500000,393.167188)scale(0.120000)">
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="ytick2">
+<g id="line2d19">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="331.200000"/>
+</g></g>
+<g id="line2d20">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="331.200000"/>
+</g></g>
+<g id="text9">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(50.750000,335.567188)scale(0.120000)">
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="ytick3">
+<g id="line2d21">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="273.600000"/>
+</g></g>
+<g id="line2d22">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="273.600000"/>
+</g></g>
+<g id="text10">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(51.015625,277.967188)scale(0.120000)">
+<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="ytick4">
+<g id="line2d23">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="216.000000"/>
+</g></g>
+<g id="line2d24">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="216.000000"/>
+</g></g>
+<g id="text11">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(51.265625,220.289062)scale(0.120000)">
+<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="ytick5">
+<g id="line2d25">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="158.400000"/>
+</g></g>
+<g id="line2d26">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="158.400000"/>
+</g></g>
+<g id="text12">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(50.578125,162.767187)scale(0.120000)">
+<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="ytick6">
+<g id="line2d27">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="100.800000"/>
+</g></g>
+<g id="line2d28">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="100.800000"/>
+</g></g>
+<g id="text13">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(50.828125,105.167188)scale(0.120000)">
+<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/>
+</g>
+</g>
+</g>
+<g id="ytick7">
+<g id="line2d29">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="43.200000"/>
+</g></g>
+<g id="line2d30">
+<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; 
stroke-linejoin: round; stroke-linecap: butt;  opacity: 1.000000" 
xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="43.200000"/>
+</g></g>
+<g id="text14">
+<g style="fill: #000000; opacity: 1.000000" 
transform="translate(50.625000,47.567187)scale(0.120000)">
+<use xlink:href="#c_3dcfa38a02242cb63ec6726c6e70be7a"/>
+<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/>
+<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/>
+</g>
+</g>
+</g>
+</g>
+<g id="patch3">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000; 
stroke-linejoin: round; stroke-linecap: square;  opacity: 1.000000"  
d="M72.000000 43.200000L518.400000 43.200000"/>
+</g>
+<g id="patch4">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000; 
stroke-linejoin: round; stroke-linecap: square;  opacity: 1.000000"  
d="M518.400000 388.800000L518.400000 43.200000"/>
+</g>
+<g id="patch5">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000; 
stroke-linejoin: round; stroke-linecap: square;  opacity: 1.000000"  
d="M72.000000 388.800000L518.400000 388.800000"/>
+</g>
+<g id="patch6">
+<path style="fill: none; stroke: #000000; stroke-width: 1.000000; 
stroke-linejoin: round; stroke-linecap: square;  opacity: 1.000000"  
d="M72.000000 388.800000L72.000000 43.200000"/>
+</g>
+</g>
+</g>
+</svg>

Modified: branches/v1_0_maint/lib/matplotlib/tests/test_simplification.py
===================================================================
--- branches/v1_0_maint/lib/matplotlib/tests/test_simplification.py     
2010-09-08 13:48:29 UTC (rev 8689)
+++ branches/v1_0_maint/lib/matplotlib/tests/test_simplification.py     
2010-09-08 14:32:17 UTC (rev 8690)
@@ -73,6 +73,8 @@
     path = transform.transform_path(path)
     simplified = list(path.iter_segments(simplify=(800, 600)))
 
+    print len(simplified)
+
     assert len(simplified) == 3884
 
 def test_sine_plus_noise():
@@ -90,6 +92,8 @@
     path = transform.transform_path(path)
     simplified = list(path.iter_segments(simplify=(800, 600)))
 
+    print len(simplified)
+
     assert len(simplified) == 876
 
 @image_comparison(baseline_images=['simplify_curve'])
@@ -135,6 +139,8 @@
     path = transform.transform_path(path)
     simplified = list(path.iter_segments(simplify=(800, 600)))
 
+    print len(simplified)
+
     assert len(simplified) == 17
 
 def test_start_with_moveto():
@@ -204,6 +210,17 @@
     ax.set_xlim(5, 9)
     fig.savefig('clipper_edge')
 
+...@image_comparison(baseline_images=['para_equal_perp'])
+def test_para_equal_perp():
+    x = np.array([0, 1, 2, 1, 0, -1, 0, 1])
+    y = np.array([1, 1, 2, 1, 0, -1, 0, 0])
+
+    fig = plt.figure()
+    ax = fig.add_subplot(111)
+    ax.plot(x + 1, y + 1)
+    ax.plot(x + 1, y + 1, 'ro')
+    fig.savefig('para_equal_perp')
+
 if __name__=='__main__':
     import nose
     nose.runmodule(argv=['-s','--with-doctest'], exit=False)

Modified: branches/v1_0_maint/src/path_converters.h
===================================================================
--- branches/v1_0_maint/src/path_converters.h   2010-09-08 13:48:29 UTC (rev 
8689)
+++ branches/v1_0_maint/src/path_converters.h   2010-09-08 14:32:17 UTC (rev 
8690)
@@ -682,24 +682,30 @@
                    min of our final line) */
                 double paradNorm2 = paradx * paradx + parady * parady;
 
-                m_lastMax = false;
-                if (totdot >= 0.0)
-                {
-                    if (paradNorm2 > m_dnorm2Max)
+                if (perpdNorm2 == paradNorm2) {
+                    _push(&m_lastx, &m_lasty);
+                    _push(x, y);
+                    break;
+                } else {
+                    m_lastMax = false;
+                    if (totdot >= 0.0)
                     {
-                        m_lastMax = true;
-                        m_dnorm2Max = paradNorm2;
-                        m_nextX = *x;
-                        m_nextY = *y;
+                        if (paradNorm2 > m_dnorm2Max)
+                        {
+                            m_lastMax = true;
+                            m_dnorm2Max = paradNorm2;
+                            m_nextX = *x;
+                            m_nextY = *y;
+                        }
                     }
-                }
-                else
-                {
-                    if (paradNorm2 < m_dnorm2Min)
+                    else
                     {
-                        m_dnorm2Min = paradNorm2;
-                        m_nextX = *x;
-                        m_nextY = *y;
+                        if (paradNorm2 < m_dnorm2Min)
+                        {
+                            m_dnorm2Min = paradNorm2;
+                            m_nextX = *x;
+                            m_nextY = *y;
+                        }
                     }
                 }
 


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Matplotlib-checkins mailing list
Matplotlib-checkins@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to