doc/images/node_disjoint.eps
author deba
Tue, 17 Oct 2006 10:50:57 +0000
changeset 2247 269a0dcee70b
permissions -rw-r--r--
Update the Path concept
Concept check for paths

DirPath renamed to Path
The interface updated to the new lemon interface
Make difference between the empty path and the path from one node
Builder interface have not been changed
// I wanted but there was not accordance about it

UPath is removed
It was a buggy implementation, it could not iterate on the
nodes in the right order
Right way to use undirected paths => path of edges in undirected graphs

The tests have been modified to the current implementation
     1 %!PS-Adobe-2.0 EPSF-2.0
     2 %%Title: node disjoint path
     3 %%Copyright: (C) 2006 LEMON Project
     4 %%Creator: LEMON, graphToEps()
     5 %%CreationDate: Fri May 12 01:53:21 2006
     6 %%BoundingBox: -290 -170 520 230
     7 %%EndComments
     8 /lb { setlinewidth setrgbcolor newpath moveto
     9       4 2 roll 1 index 1 index curveto stroke } bind def
    10 /l { setlinewidth setrgbcolor newpath moveto lineto stroke } bind def
    11 /c { newpath dup 3 index add 2 index moveto 0 360 arc closepath } bind def
    12 /sq { newpath 2 index 1 index add 2 index 2 index add moveto
    13       2 index 1 index sub 2 index 2 index add lineto
    14       2 index 1 index sub 2 index 2 index sub lineto
    15       2 index 1 index add 2 index 2 index sub lineto
    16       closepath pop pop pop} bind def
    17 /di { newpath 2 index 1 index add 2 index moveto
    18       2 index             2 index 2 index add lineto
    19       2 index 1 index sub 2 index             lineto
    20       2 index             2 index 2 index sub lineto
    21       closepath pop pop pop} bind def
    22 /nc { 0 0 0 setrgbcolor 5 index 5 index 5 index c fill
    23      setrgbcolor 1.1 div c fill
    24    } bind def
    25 /nsq { 0 0 0 setrgbcolor 5 index 5 index 5 index sq fill
    26      setrgbcolor 1.1 div sq fill
    27    } bind def
    28 /ndi { 0 0 0 setrgbcolor 5 index 5 index 5 index di fill
    29      setrgbcolor 1.1 div di fill
    30    } bind def
    31 /nfemale { 0 0 0 setrgbcolor 3 index 0.0909091 1.5 mul mul setlinewidth
    32   newpath 5 index 5 index moveto 5 index 5 index 5 index 3.01 mul sub
    33   lineto 5 index 4 index .7 mul sub 5 index 5 index 2.2 mul sub moveto
    34   5 index 4 index .7 mul add 5 index 5 index 2.2 mul sub lineto stroke
    35   5 index 5 index 5 index c fill
    36   setrgbcolor 1.1 div c fill
    37   } bind def
    38 /nmale {
    39   0 0 0 setrgbcolor 3 index 0.0909091 1.5 mul mul setlinewidth
    40   newpath 5 index 5 index moveto
    41   5 index 4 index 1 mul 1.5 mul add
    42   5 index 5 index 3 sqrt 1.5 mul mul add
    43   1 index 1 index lineto
    44   1 index 1 index 7 index sub moveto
    45   1 index 1 index lineto
    46   exch 5 index 3 sqrt .5 mul mul sub exch 5 index .5 mul sub lineto
    47   stroke
    48   5 index 5 index 5 index c fill
    49   setrgbcolor 1.1 div c fill
    50   } bind def
    51 /arrl 1 def
    52 /arrw 0.3 def
    53 /lrl { 2 index mul exch 2 index mul exch rlineto pop} bind def
    54 /arr { setrgbcolor /y1 exch def /x1 exch def /dy exch def /dx exch def
    55        /w exch def /len exch def
    56        newpath x1 dy w 2 div mul add y1 dx w 2 div mul sub moveto
    57        len w sub arrl sub dx dy lrl
    58        arrw dy dx neg lrl
    59        dx arrl w add mul dy w 2 div arrw add mul sub
    60        dy arrl w add mul dx w 2 div arrw add mul add rlineto
    61        dx arrl w add mul neg dy w 2 div arrw add mul sub
    62        dy arrl w add mul neg dx w 2 div arrw add mul add rlineto
    63        arrw dy dx neg lrl
    64        len w sub arrl sub neg dx dy lrl
    65        closepath fill } bind def
    66 /cshow { 2 index 2 index moveto dup stringwidth pop
    67          neg 2 div fosi .35 mul neg rmoveto show pop pop} def
    68 
    69 gsave
    70 10 dup scale
    71 %Edges:
    72 gsave
    73 4 0.3 1 0 -27 5 0 0 0 arr
    74 4 0.3 1 0 -13 -4 1 0 0 arr
    75 4 0.3 1 0 -9 15 1 0 0 arr
    76 4 0.3 1 0 3 -9 1 0 0 arr
    77 4 0.3 1 0 3 3 1 0 0 arr
    78 4 0.3 1 0 1 21 1 0 0 arr
    79 4 0.3 1 0 25 -5 1 0 0 arr
    80 4 0.3 1 0 28 13 1 0 0 arr
    81 4 0.3 1 0 45 3 0 0 0 arr
    82 4 0.3 1 0 -18 -14 1 0 0 arr
    83 4 0.3 1 0 25 -15 1 0 0 arr
    84 4 0.3 1 0 -12 7 0 0 0 arr
    85 4 0.3 1 0 39 -11 0 0 0 arr
    86 4 0.3 1 0 39 13 0 0 0 arr
    87 4 0.3 1 0 -20 17 1 0 0 arr
    88 11.7279 0.3 0.707107 -0.707107 -22 5 1 0 0 arr
    89 15.4012 0.3 0.792624 0.609711 -22 5 0 0 0 arr
    90 5.32455 0.3 0.948683 -0.316228 -15 17 1 0 0 arr
    91 15.7631 0.3 0.95448 0.298275 -13 -14 1 0 0 arr
    92 11.083 0.3 0.910366 -0.413803 -8 -4 0 0 0 arr
    93 12.8924 0.3 0.503871 -0.863779 -4 15 0 0 0 arr
    94 12.0384 0.3 0.843661 0.536875 -8 -4 1 0 0 arr
    95 9.77033 0.3 0.928477 -0.371391 -7 7 0 0 0 arr
    96 6.81025 0.3 0.640184 0.768221 -4 15 1 0 0 arr
    97 17.7883 0.3 0.904819 -0.425797 8 3 1 0 0 arr
    98 22.4094 0.3 0.939793 -0.341743 6 21 1 0 0 arr
    99 21.3607 0.3 0.894427 0.447214 8 3 0 0 0 arr
   100 22.4307 0.3 0.640184 0.768221 30 -15 1 0 0 arr
   101 16 0.3 0.882353 0.470588 30 -5 1 0 0 arr
   102 14.6205 0.3 0.768221 -0.640184 33 13 1 0 0 arr
   103 13.0357 0.3 0.071247 0.997459 44 -11 0 0 0 arr
   104 9.04987 0.3 0.0995037 -0.995037 44 13 0 0 0 arr
   105 18.4165 0.3 0.20601 -0.97855 -22 5 1 0 0 arr
   106 17.0278 0.3 0.94299 -0.33282 8 -9 1 0 0 arr
   107 9.19804 0.3 0.980581 0.196116 -22 5 0 0 0 arr
   108 8.84886 0.3 0.913812 0.406138 30 -15 0 0 0 arr
   109 5 0.3 1 0 33 13 0 0 0 arr
   110 11.1655 0.3 0.164399 0.986394 -22 5 1 0 0 arr
   111 grestore
   112 %Nodes:
   113 gsave
   114 -27 5 1 1 1 1 nc
   115 -22 5 1 1 1 1 nc
   116 -13 -4 1 1 1 1 nc
   117 -8 -4 1 1 1 1 nc
   118 -9 15 1 1 1 1 nc
   119 -4 15 1 1 1 1 nc
   120 3 -9 1 1 1 1 nc
   121 8 -9 1 1 1 1 nc
   122 3 3 1 1 1 1 nc
   123 8 3 1 1 1 1 nc
   124 1 21 1 1 1 1 nc
   125 6 21 1 1 1 1 nc
   126 25 -5 1 1 1 1 nc
   127 30 -5 1 1 1 1 nc
   128 28 13 1 1 1 1 nc
   129 33 13 1 1 1 1 nc
   130 45 3 1 1 1 1 nc
   131 50 3 1 1 1 1 nc
   132 -18 -14 1 1 1 1 nc
   133 -13 -14 1 1 1 1 nc
   134 25 -15 1 1 1 1 nc
   135 30 -15 1 1 1 1 nc
   136 -12 7 1 1 1 1 nc
   137 -7 7 1 1 1 1 nc
   138 39 -11 1 1 1 1 nc
   139 44 -11 1 1 1 1 nc
   140 39 13 1 1 1 1 nc
   141 44 13 1 1 1 1 nc
   142 -20 17 1 1 1 1 nc
   143 -15 17 1 1 1 1 nc
   144 grestore
   145 grestore
   146 showpage