diff --git a/Old_Packages/Installation_doc/description.txt b/Old_Packages/Installation_doc/description.txt new file mode 100644 index 00000000000..030090ba1c8 --- /dev/null +++ b/Old_Packages/Installation_doc/description.txt @@ -0,0 +1 @@ +The installation guide for CGAL-1.0. diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/Fig/a-simp.ipe b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/a-simp.ipe new file mode 100644 index 00000000000..386bf93ce46 --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/a-simp.ipe @@ -0,0 +1,429 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Ipe 5.0 +%%BoundingBox: 147 244 452 555 +%%EndComments +{\catcode37=9\def\IPEdummy{({{)}} pop +%%}\makeatletter\let\@notdefinable\relax +%%\def\IPEc#1[#2]#3{\newcommand{#1}[#2]{#3}\ignorespaces}\@ifundefined +%%{selectfont}{\let\selectfont\relax\def\fontsize#1#2{}}{}\makeatother +%%\IPEc\IPEput[4]{\put(0,0){\special{psfile=\IPEfile}}} +%%\IPEc\IPEmp[2]{\minipage[t]{#1bp}#2\special{color pop}\endminipage} +%%\IPEc\IPEtext[1]{\makebox(0,0)[lb]{#1\special{color pop}}} +%%\IPEc\IPEfs[1]{\IPEcolfs{0 0 0}{#1}} +%%\IPEc\IPEcolfs[2]{\dimen0=#2pt\fontsize{#2}{1.2\dimen0}\selectfont +%%\special{color push rgb #1}} +%%\IPEc\IPEsize[2]{\unitlength1bp\ignorespaces} +%%\IPEsize{302.5}{308.836} +%%\begin{picture}(302.5,308.836)(148.75,245.582) +%%\IPEput{147}{244}{452}{555} +%%\end{picture}\endinput} +%% Ipe postscript prologue + +/IpeDict 60 dict def +IpeDict begin +/origmatrix matrix currentmatrix def + +/sg {setgray} bind def +/sc {setrgbcolor} bind def +/ss {0 setdash setlinewidth} bind def +/sk {stroke} bind def +/fi {fill} bind def +/sfi {gsave fill grestore} bind def +/mt {moveto} bind def +/lt {lineto} bind def +/np {newpath} bind def +/cl {closepath} bind def +/N {moveto} bind def +/L {lineto} bind def +/E {lineto} bind def +/C {lineto closepath} bind def +%%%% +%% x y size dx dy -> ar -> x y [ draws arrowhead, computes new vertex ] +/smallarrow {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath fill +-1 0 moveto currentpoint transform grestore itransform} bind def +/ar {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath +gsave origmatrix setmatrix [] 0 setdash stroke grestore fill +0 0 moveto currentpoint transform grestore itransform} bind def +%%%% +/af {ar moveto} bind def +/at {ar lineto} bind def +%% x y size dx dy -> arw -> [ draws arrowhead ] +/arw {ar pop pop} bind def +%%%% +/ci {0 360 arc} bind def +/el {gsave concat 0 exch 0 exch 0 360 newpath arc origmatrix +setmatrix} bind def +/gs {gsave} bind def +/gr {grestore} bind def +/gsts {gsave translate scale } bind def +%% +/marker {gsave translate 0 setlinewidth [] 0 setdash newpath} bind def +/m1 {marker 0 exch 0 exch 0 360 arc stroke grestore} bind def +/m2 {marker 0 exch 0 exch 0 360 arc fill grestore} bind def +/m3 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath stroke grestore} bind def +/m4 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath fill grestore} bind def +/m5 {marker dup dup moveto dup neg dup lineto dup dup neg moveto dup +neg exch lineto closepath stroke grestore} bind def + +%% splines +systemdict /setpacking known {/savepacking currentpacking def false + setpacking} if +/q0 {0 0} def +/q1 {0 0} def +/q2 {0 0} def +/q3 {0 0} def +/p0 {0 0} def +/p1 {0 0} def +/p2 {0 0} def +/p3 {0 0} def +systemdict /setpacking known {savepacking setpacking} if + +%% x y /qi -> defp -> [/qi [x y] def] +/defp {dup 4 1 roll load astore def} bind def + +/midpoint { exch 4 3 roll add 2 div 3 1 roll add 2 div } bind def +/thirdpoint { exch 4 3 roll 2 mul add 3 div 3 1 roll exch 2 mul add 3 +div } bind def + +/prespl {/p3 defp /p2 defp /p1 defp /p0 defp +p1 p2 thirdpoint /q1 defp +p2 p1 thirdpoint /q2 defp +p1 p0 thirdpoint q1 midpoint /q0 defp +p2 p3 thirdpoint q2 midpoint /q3 defp } bind def +/postspl { q1 q2 q3 curveto p1 p2 p3 } bind def +/fspl { prespl q0 moveto postspl } bind def +/spl { prespl postspl } bind def +/xspl { pop pop pop pop pop pop } bind def + +/qspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto } bind def + +/cqspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto +p2 p1 midpoint /q0 defp +p2 p0 midpoint /q3 defp +p2 q0 thirdpoint /q1 defp +p2 q3 thirdpoint /q2 defp q1 q2 q3 curveto +p0 p2 midpoint /q0 defp +p0 p1 midpoint /q3 defp +p0 q0 thirdpoint /q1 defp +p0 q3 thirdpoint /q2 defp q1 q2 q3 curveto } bind def + +%% bitmaps +/pix { /picstr exch string def } def +%% wd ht -> preimg -> ..stuff for image.. +/preimg { 8 [ 3 index 0 0 5 index neg 0 7 index ] + {currentfile picstr readhexstring pop} } def +/img { preimg image } bind def +/kimg { preimg false 3 colorimage } bind def +%% +end +%% Ipe prologue end + +IpeDict begin 319.75 365.582 translate + +% Preamble 1 +%%\documentclass[a4paper]{article} +% Group + +% Line +% ss 0 +0.4 [] ss +np % # 4 +-140 160 mt +100 160 lt +100 -80 lt +-140 -80 lt +cl % cl +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 40 mt +100 40 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 160 mt +-20 -80 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 26.6666 % r +13.3333 ci +% sk +0 sg sk +% End + +% Group + +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-140 26.6666 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +100 26.6666 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 13.3333 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 26.6666 mt +100 26.6666 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 13.3333 mt +100 13.3333 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 20 % r +140 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-104.491 -80 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +64.491 -80 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-47.7972 160.02 mt +52.6014 -86.1606 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-29.7856 186.782 mt +78.9274 -79.969 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-117.824 -80 mt +-23.1829 188.836 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-97.8184 -79.9831 mt +-13.3333 160 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-79.0064 -66.6964 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-140 -49 % r +31 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +100 -48.5 % r +31.5 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +40.0721 -73.2142 % r +6.6666 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0 [] ss +np % # 55 +-26.5814 179.068 mt +-110.555 -59.2641 lt +-112.55 -63.4681 lt +-113.51 -65.2382 lt +-114.545 -66.7133 lt +-116.281 -69.0366 lt +-117.315 -70.106 lt +-118.423 -71.2492 lt +-119.606 -72.3186 lt +-120.788 -73.2774 lt +-122.782 -74.7525 lt +-125.479 -76.3382 lt +-127.843 -77.5183 lt +-130.281 -78.4771 lt +-132.719 -79.104 lt +-135.416 -79.5834 lt +-138.519 -79.989 lt +-77.8263 -80.0259 lt +-81.5203 -79.8046 lt +-84.1431 -79.0302 lt +-86.027 -78.0346 lt +-87.4677 -76.9282 lt +-88.9083 -75.5269 lt +-90.1643 -73.9043 lt +-91.0878 -72.2449 lt +-91.8266 -70.2166 lt +-92.2699 -67.9302 lt +-92.3807 -66.4552 lt +-92.1221 -64.6113 lt +-91.5311 -61.993 lt +-29.2954 114.671 lt +46.4179 -70.9391 lt +46.7513 -72.9622 lt +46.6487 -74.4219 lt +46.3152 -75.5743 lt +45.8278 -76.6499 lt +45.1096 -77.6231 lt +44.1861 -78.5194 lt +43.083 -79.2108 lt +41.826 -79.6974 lt +40.0559 -79.9535 lt +98.3515 -79.9952 lt +95.2339 -79.6544 lt +92.7102 -79.1208 lt +90.2607 -78.4539 lt +87.9449 -77.624 lt +85.6438 -76.5273 lt +83.5358 -75.3862 lt +81.4871 -73.9783 lt +79.4681 -72.3629 lt +77.7312 -70.7623 lt +76.0389 -68.9543 lt +74.5395 -67.0129 lt +73.1143 -64.8639 lt +71.9267 -62.7891 lt +cl % cl +% fic +1 1 0 sc sfi +% sk +0 sg sk +% End + +% Line +% ss 0 +0 [] ss +np % # 4 +-65.4238 13.3351 mt +-60.7421 26.6732 lt +6.14596 26.6644 lt +11.5544 13.3263 lt +cl % cl +% fic +1 1 0 sc sfi +% sk +0 sg sk +% End + +% End + +end %% of Ipe figure diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/Fig/c-simp.ipe b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/c-simp.ipe new file mode 100644 index 00000000000..4294eee945a --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/c-simp.ipe @@ -0,0 +1,476 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Ipe 5.0 +%%BoundingBox: 159 258 441 541 +%%EndComments +{\catcode37=9\def\IPEdummy{({{)}} pop +%%}\makeatletter\let\@notdefinable\relax +%%\def\IPEc#1[#2]#3{\newcommand{#1}[#2]{#3}\ignorespaces}\@ifundefined +%%{selectfont}{\let\selectfont\relax\def\fontsize#1#2{}}{}\makeatother +%%\IPEc\IPEput[4]{\put(0,0){\special{psfile=\IPEfile}}} +%%\IPEc\IPEmp[2]{\minipage[t]{#1bp}#2\special{color pop}\endminipage} +%%\IPEc\IPEtext[1]{\makebox(0,0)[lb]{#1\special{color pop}}} +%%\IPEc\IPEfs[1]{\IPEcolfs{0 0 0}{#1}} +%%\IPEc\IPEcolfs[2]{\dimen0=#2pt\fontsize{#2}{1.2\dimen0}\selectfont +%%\special{color push rgb #1}} +%%\IPEc\IPEsize[2]{\unitlength1bp\ignorespaces} +%%\IPEsize{280}{280.144} +%%\begin{picture}(280,280.144)(160,259.928) +%%\IPEput{159}{258}{441}{541} +%%\end{picture}\endinput} +%% Ipe postscript prologue + +/IpeDict 60 dict def +IpeDict begin +/origmatrix matrix currentmatrix def + +/sg {setgray} bind def +/sc {setrgbcolor} bind def +/ss {0 setdash setlinewidth} bind def +/sk {stroke} bind def +/fi {fill} bind def +/sfi {gsave fill grestore} bind def +/mt {moveto} bind def +/lt {lineto} bind def +/np {newpath} bind def +/cl {closepath} bind def +/N {moveto} bind def +/L {lineto} bind def +/E {lineto} bind def +/C {lineto closepath} bind def +%%%% +%% x y size dx dy -> ar -> x y [ draws arrowhead, computes new vertex ] +/smallarrow {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath fill +-1 0 moveto currentpoint transform grestore itransform} bind def +/ar {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath +gsave origmatrix setmatrix [] 0 setdash stroke grestore fill +0 0 moveto currentpoint transform grestore itransform} bind def +%%%% +/af {ar moveto} bind def +/at {ar lineto} bind def +%% x y size dx dy -> arw -> [ draws arrowhead ] +/arw {ar pop pop} bind def +%%%% +/ci {0 360 arc} bind def +/el {gsave concat 0 exch 0 exch 0 360 newpath arc origmatrix +setmatrix} bind def +/gs {gsave} bind def +/gr {grestore} bind def +/gsts {gsave translate scale } bind def +%% +/marker {gsave translate 0 setlinewidth [] 0 setdash newpath} bind def +/m1 {marker 0 exch 0 exch 0 360 arc stroke grestore} bind def +/m2 {marker 0 exch 0 exch 0 360 arc fill grestore} bind def +/m3 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath stroke grestore} bind def +/m4 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath fill grestore} bind def +/m5 {marker dup dup moveto dup neg dup lineto dup dup neg moveto dup +neg exch lineto closepath stroke grestore} bind def + +%% splines +systemdict /setpacking known {/savepacking currentpacking def false + setpacking} if +/q0 {0 0} def +/q1 {0 0} def +/q2 {0 0} def +/q3 {0 0} def +/p0 {0 0} def +/p1 {0 0} def +/p2 {0 0} def +/p3 {0 0} def +systemdict /setpacking known {savepacking setpacking} if + +%% x y /qi -> defp -> [/qi [x y] def] +/defp {dup 4 1 roll load astore def} bind def + +/midpoint { exch 4 3 roll add 2 div 3 1 roll add 2 div } bind def +/thirdpoint { exch 4 3 roll 2 mul add 3 div 3 1 roll exch 2 mul add 3 +div } bind def + +/prespl {/p3 defp /p2 defp /p1 defp /p0 defp +p1 p2 thirdpoint /q1 defp +p2 p1 thirdpoint /q2 defp +p1 p0 thirdpoint q1 midpoint /q0 defp +p2 p3 thirdpoint q2 midpoint /q3 defp } bind def +/postspl { q1 q2 q3 curveto p1 p2 p3 } bind def +/fspl { prespl q0 moveto postspl } bind def +/spl { prespl postspl } bind def +/xspl { pop pop pop pop pop pop } bind def + +/qspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto } bind def + +/cqspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto +p2 p1 midpoint /q0 defp +p2 p0 midpoint /q3 defp +p2 q0 thirdpoint /q1 defp +p2 q3 thirdpoint /q2 defp q1 q2 q3 curveto +p0 p2 midpoint /q0 defp +p0 p1 midpoint /q3 defp +p0 q0 thirdpoint /q1 defp +p0 q3 thirdpoint /q2 defp q1 q2 q3 curveto } bind def + +%% bitmaps +/pix { /picstr exch string def } def +%% wd ht -> preimg -> ..stuff for image.. +/preimg { 8 [ 3 index 0 0 5 index neg 0 7 index ] + {currentfile picstr readhexstring pop} } def +/img { preimg image } bind def +/kimg { preimg false 3 colorimage } bind def +%% +end +%% Ipe prologue end + +IpeDict begin 313.291 371.496 translate + +% Preamble 1 +%%\documentclass[a4paper]{article} +% Group + +% Line +% ss 0 +0.4 [] ss +np % # 4 +-140 160 mt +100 160 lt +100 -80 lt +-140 -80 lt +cl % cl +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 40 mt +100 40 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 160 mt +-20 -80 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 40 % r +13.3333 ci +% sk +0 sg sk +% End + +% Group + +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +49 -80 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +-89 160 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +100 109 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +-140 -29 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 40 % r +112.7 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-13.2911 28.4322 % r +140 ci +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.8836 -80.294 % r +248.87 % ang +59.5857 101.345 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.5174 160.287 % r +248.5 % ang +-103.814 -59.1054 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.5174 160.287 % r +232.691 % ang +-99.33 -57.4205 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.5174 -79.5628 % r +232.277 % ang +57.3667 97.4678 np arc +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 -80 mt +100 40 lt +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-140.017 -28.9663 % r +195.37 % ang +-18.627 8.87209 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-139.676 160.287 % r +195.37 % ang +-15 2 np arc +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +39.9954 130.961 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +23.9506 -35.9852 % r +31.4948 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 121 +53.3982 130.866 mt +55.0755 145.185 lt +55.6574 160.084 lt +44.19 159.981 lt +38.1653 161.656 lt +18.9616 165.551 lt +-2.02204 168.012 lt +-13.3868 168.388 lt +-24.2723 167.978 lt +-35.0551 166.713 lt +-46.0433 164.561 lt +-56.4838 161.622 lt +-66.7189 157.794 lt +-75.7902 153.659 lt +-86.3334 147.884 lt +-95.6785 141.596 lt +-104.031 135.035 lt +-112.349 127.312 lt +-119.709 119.418 lt +-126.452 110.943 lt +-132.545 101.751 lt +-137.885 92.3193 lt +-142.644 81.9992 lt +-146.443 71.679 lt +-149.319 61.3588 lt +-151.099 52.2689 lt +-152.263 42.8714 lt +-152.605 33.098 lt +-152.263 23.8713 lt +-151.167 14.5763 lt +-149.319 5.24718 lt +-146.717 -4.01363 lt +-143.226 -13.377 lt +-139.426 -21.5101 lt +-134.702 -30.0191 lt +-129.43 -37.913 lt +-123.748 -45.1234 lt +-117.449 -51.958 lt +-110.227 -58.6558 lt +-102.867 -64.3285 lt +-94.72 -69.967 lt +-86.5045 -74.512 lt +-77.8098 -78.5102 lt +-68.8755 -81.7224 lt +-59.4962 -84.4221 lt +-50.2537 -86.2674 lt +-40.2925 -87.3951 lt +-24.6146 -88.0444 lt +-20.0619 -88.2153 lt +-0.0366287 -87.4635 lt +18.8932 -85.2764 lt +38.5419 -81.3124 lt +48.8797 -78.5102 lt +49.9409 -74.5462 lt +53.0217 -59.271 lt +54.7332 -44.235 lt +54.9044 -41.9112 lt +54.0828 -44.9184 lt +53.0217 -48.1648 lt +50.9678 -52.2655 lt +49.2905 -54.5893 lt +47.3393 -57.0497 lt +44.0873 -60.1253 lt +42.1704 -61.6972 lt +39.0211 -63.6451 lt +36.3169 -64.9436 lt +32.8595 -66.2764 lt +29.7445 -66.9598 lt +17.1474 -69.4886 lt +-0.995104 -71.6757 lt +-7.53325 -71.9149 lt +-19.9592 -72.3591 lt +-32.522 -71.8465 lt +-36.4586 -71.0605 lt +-45.4614 -68.5659 lt +-54.5669 -65.2512 lt +-62.8166 -61.3897 lt +-71.5455 -56.5713 lt +-79.4187 -51.2745 lt +-86.9153 -45.4652 lt +-93.9669 -38.904 lt +-100.129 -32.172 lt +-106.153 -24.6198 lt +-111.562 -16.555 lt +-116.046 -8.62696 lt +-120.085 0.155438 lt +-123.406 9.14287 lt +-126.042 18.4379 lt +-127.856 27.8695 lt +-129.054 37.4721 lt +-129.396 46.9379 lt +-128.917 56.5746 lt +-127.822 65.7671 lt +-125.973 75.0279 lt +-123.474 83.947 lt +-122.208 87.3984 lt +-120.325 91.2258 lt +-116.012 98.983 lt +-111.356 106.125 lt +-105.811 113.096 lt +-99.7862 119.658 lt +-93.1454 125.809 lt +-86.4361 131.003 lt +-79.0764 135.89 lt +-71.1005 140.537 lt +-63.5012 143.988 lt +-54.9092 147.167 lt +-46.3856 149.559 lt +-37.7594 151.233 lt +-29.9204 152.258 lt +-19.9592 152.668 lt +-6.98555 152.258 lt +-1.26894 152.019 lt +16.5997 149.9 lt +35.0503 146.21 lt +44.0189 143.715 lt +46.5177 142.553 lt +49.1193 140.81 lt +50.8651 138.76 lt +51.9605 136.812 lt +53.0217 133.771 lt +cl % cl +% fic +1 1 0 sc sfi +% sk +0 sg sk +% End + +% End + +end %% of Ipe figure diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/Fig/g-simp.ipe b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/g-simp.ipe new file mode 100644 index 00000000000..4efc709e119 --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/g-simp.ipe @@ -0,0 +1,529 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Ipe 5.0 +%%BoundingBox: 159 258 441 541 +%%EndComments +{\catcode37=9\def\IPEdummy{({{)}} pop +%%}\makeatletter\let\@notdefinable\relax +%%\def\IPEc#1[#2]#3{\newcommand{#1}[#2]{#3}\ignorespaces}\@ifundefined +%%{selectfont}{\let\selectfont\relax\def\fontsize#1#2{}}{}\makeatother +%%\IPEc\IPEput[4]{\put(0,0){\special{psfile=\IPEfile}}} +%%\IPEc\IPEmp[2]{\minipage[t]{#1bp}#2\special{color pop}\endminipage} +%%\IPEc\IPEtext[1]{\makebox(0,0)[lb]{#1\special{color pop}}} +%%\IPEc\IPEfs[1]{\IPEcolfs{0 0 0}{#1}} +%%\IPEc\IPEcolfs[2]{\dimen0=#2pt\fontsize{#2}{1.2\dimen0}\selectfont +%%\special{color push rgb #1}} +%%\IPEc\IPEsize[2]{\unitlength1bp\ignorespaces} +%%\IPEsize{280}{280.144} +%%\begin{picture}(280,280.144)(160,259.928) +%%\IPEput{159}{258}{441}{541} +%%\end{picture}\endinput} +%% Ipe postscript prologue + +/IpeDict 60 dict def +IpeDict begin +/origmatrix matrix currentmatrix def + +/sg {setgray} bind def +/sc {setrgbcolor} bind def +/ss {0 setdash setlinewidth} bind def +/sk {stroke} bind def +/fi {fill} bind def +/sfi {gsave fill grestore} bind def +/mt {moveto} bind def +/lt {lineto} bind def +/np {newpath} bind def +/cl {closepath} bind def +/N {moveto} bind def +/L {lineto} bind def +/E {lineto} bind def +/C {lineto closepath} bind def +%%%% +%% x y size dx dy -> ar -> x y [ draws arrowhead, computes new vertex ] +/smallarrow {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath fill +-1 0 moveto currentpoint transform grestore itransform} bind def +/ar {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath +gsave origmatrix setmatrix [] 0 setdash stroke grestore fill +0 0 moveto currentpoint transform grestore itransform} bind def +%%%% +/af {ar moveto} bind def +/at {ar lineto} bind def +%% x y size dx dy -> arw -> [ draws arrowhead ] +/arw {ar pop pop} bind def +%%%% +/ci {0 360 arc} bind def +/el {gsave concat 0 exch 0 exch 0 360 newpath arc origmatrix +setmatrix} bind def +/gs {gsave} bind def +/gr {grestore} bind def +/gsts {gsave translate scale } bind def +%% +/marker {gsave translate 0 setlinewidth [] 0 setdash newpath} bind def +/m1 {marker 0 exch 0 exch 0 360 arc stroke grestore} bind def +/m2 {marker 0 exch 0 exch 0 360 arc fill grestore} bind def +/m3 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath stroke grestore} bind def +/m4 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath fill grestore} bind def +/m5 {marker dup dup moveto dup neg dup lineto dup dup neg moveto dup +neg exch lineto closepath stroke grestore} bind def + +%% splines +systemdict /setpacking known {/savepacking currentpacking def false + setpacking} if +/q0 {0 0} def +/q1 {0 0} def +/q2 {0 0} def +/q3 {0 0} def +/p0 {0 0} def +/p1 {0 0} def +/p2 {0 0} def +/p3 {0 0} def +systemdict /setpacking known {savepacking setpacking} if + +%% x y /qi -> defp -> [/qi [x y] def] +/defp {dup 4 1 roll load astore def} bind def + +/midpoint { exch 4 3 roll add 2 div 3 1 roll add 2 div } bind def +/thirdpoint { exch 4 3 roll 2 mul add 3 div 3 1 roll exch 2 mul add 3 +div } bind def + +/prespl {/p3 defp /p2 defp /p1 defp /p0 defp +p1 p2 thirdpoint /q1 defp +p2 p1 thirdpoint /q2 defp +p1 p0 thirdpoint q1 midpoint /q0 defp +p2 p3 thirdpoint q2 midpoint /q3 defp } bind def +/postspl { q1 q2 q3 curveto p1 p2 p3 } bind def +/fspl { prespl q0 moveto postspl } bind def +/spl { prespl postspl } bind def +/xspl { pop pop pop pop pop pop } bind def + +/qspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto } bind def + +/cqspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto +p2 p1 midpoint /q0 defp +p2 p0 midpoint /q3 defp +p2 q0 thirdpoint /q1 defp +p2 q3 thirdpoint /q2 defp q1 q2 q3 curveto +p0 p2 midpoint /q0 defp +p0 p1 midpoint /q3 defp +p0 q0 thirdpoint /q1 defp +p0 q3 thirdpoint /q2 defp q1 q2 q3 curveto } bind def + +%% bitmaps +/pix { /picstr exch string def } def +%% wd ht -> preimg -> ..stuff for image.. +/preimg { 8 [ 3 index 0 0 5 index neg 0 7 index ] + {currentfile picstr readhexstring pop} } def +/img { preimg image } bind def +/kimg { preimg false 3 colorimage } bind def +%% +end +%% Ipe prologue end + +IpeDict begin 313.291 371.496 translate + +% Preamble 1 +%%\documentclass[a4paper]{article} +% Group + +% Line +% ss 0 +0.4 [] ss +np % # 4 +-140 160 mt +100 160 lt +100 -80 lt +-140 -80 lt +cl % cl +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 40 mt +100 40 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 160 mt +-20 -80 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 40 % r +13.3333 ci +% sk +0 sg sk +% End + +% Group + +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +49 -80 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +-89 160 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +100 109 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 40 mt +-140 -29 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 40 % r +112.7 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-13.2911 28.4322 % r +140 ci +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.8836 -80.294 % r +248.87 % ang +59.5857 101.345 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.5174 160.287 % r +248.5 % ang +-103.814 -59.1054 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.5174 160.287 % r +232.691 % ang +-99.33 -57.4205 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-19.5174 -79.5628 % r +232.277 % ang +57.3667 97.4678 np arc +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-139.676 160.287 % r +195.37 % ang +-15 2 np arc +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +39.9954 130.961 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +55.5395 160.256 mt +55.5395 -94.1878 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +42.2062 40 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +28.8729 48 mt +28.8729 -94.1878 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 26.6667 mt +100 26.6667 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +68.8728 13.3333 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +15.5396 13.3333 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +68.8728 -66.6667 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 135 +53.3982 130.866 mt +55.0755 145.185 lt +55.6574 160.084 lt +44.19 159.981 lt +38.1653 161.656 lt +18.9616 165.551 lt +-2.02204 168.012 lt +-13.3868 168.388 lt +-24.2723 167.978 lt +-35.0551 166.713 lt +-46.0433 164.561 lt +-56.4838 161.622 lt +-66.7189 157.794 lt +-75.7902 153.659 lt +-86.3334 147.884 lt +-95.6785 141.596 lt +-104.031 135.035 lt +-112.349 127.312 lt +-119.709 119.418 lt +-126.452 110.943 lt +-132.545 101.751 lt +-137.885 92.3193 lt +-142.644 81.9992 lt +-146.443 71.679 lt +-149.319 61.3588 lt +-151.099 52.2689 lt +-152.263 42.8714 lt +-152.605 33.098 lt +-152.263 23.8713 lt +-151.167 14.5763 lt +-149.319 5.24718 lt +-146.717 -4.01363 lt +-143.226 -13.377 lt +-139.426 -21.5101 lt +-134.702 -30.0191 lt +-129.43 -37.913 lt +-123.748 -45.1234 lt +-117.449 -51.958 lt +-110.227 -58.6558 lt +-102.867 -64.3285 lt +-94.72 -69.967 lt +-86.5045 -74.512 lt +-77.8098 -78.5102 lt +-68.8755 -81.7224 lt +-59.4962 -84.4221 lt +-50.2537 -86.2674 lt +-40.2925 -87.3951 lt +-24.6146 -88.0444 lt +-20.0619 -88.2153 lt +-0.0366287 -87.4635 lt +18.8932 -85.2764 lt +38.5419 -81.3124 lt +55.5252 -76.5428 lt +55.5394 14.0653 lt +55.8133 15.7739 lt +56.2241 17.4142 lt +56.7375 18.8494 lt +57.4906 20.2847 lt +58.4491 21.6174 lt +59.476 22.7793 lt +60.6741 23.8045 lt +61.838 24.693 lt +63.2415 25.3764 lt +64.5422 25.9915 lt +66.1169 26.3674 lt +68.8554 26.675 lt +15.8998 26.675 lt +17.9194 26.4358 lt +19.631 26.0257 lt +20.6237 25.6498 lt +22.3695 24.8297 lt +23.3279 24.1462 lt +24.3206 23.4286 lt +25.2449 22.4717 lt +25.8268 21.8566 lt +26.5457 20.8656 lt +27.196 19.9088 lt +27.6753 18.8153 lt +28.1203 17.8584 lt +28.4968 16.5257 lt +28.9076 14.2703 lt +28.9049 -67.0917 lt +17.1474 -69.4886 lt +-0.995104 -71.6757 lt +-7.53325 -71.9149 lt +-19.9592 -72.3591 lt +-32.522 -71.8465 lt +-36.4586 -71.0605 lt +-45.4614 -68.5659 lt +-54.5669 -65.2512 lt +-62.8166 -61.3897 lt +-71.5455 -56.5713 lt +-79.4187 -51.2745 lt +-86.9153 -45.4652 lt +-93.9669 -38.904 lt +-100.129 -32.172 lt +-106.153 -24.6198 lt +-111.562 -16.555 lt +-116.046 -8.62696 lt +-120.085 0.155438 lt +-123.406 9.14287 lt +-126.042 18.4379 lt +-127.856 27.8695 lt +-129.054 37.4721 lt +-129.396 46.9379 lt +-128.917 56.5746 lt +-127.822 65.7671 lt +-125.973 75.0279 lt +-123.474 83.947 lt +-122.208 87.3984 lt +-120.325 91.2258 lt +-116.012 98.983 lt +-111.356 106.125 lt +-105.811 113.096 lt +-99.7862 119.658 lt +-93.1454 125.809 lt +-86.4361 131.003 lt +-79.0764 135.89 lt +-71.1005 140.537 lt +-63.5012 143.988 lt +-54.9092 147.167 lt +-46.3856 149.559 lt +-37.7594 151.233 lt +-29.9204 152.258 lt +-19.9592 152.668 lt +-6.98555 152.258 lt +-1.26894 152.019 lt +16.5997 149.9 lt +35.0503 146.21 lt +44.0189 143.715 lt +46.5177 142.553 lt +49.1193 140.81 lt +50.8651 138.76 lt +51.9605 136.812 lt +53.0217 133.771 lt +cl % cl +% fic +1 1 0 sc sfi +% sk +0 sg sk +% End + +% End + +end %% of Ipe figure diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/Fig/l-simp.ipe b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/l-simp.ipe new file mode 100644 index 00000000000..5cc3e06f508 --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/Fig/l-simp.ipe @@ -0,0 +1,453 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Ipe 5.0 +%%BoundingBox: 162 252 437 547 +%%EndComments +{\catcode37=9\def\IPEdummy{({{)}} pop +%%}\makeatletter\let\@notdefinable\relax +%%\def\IPEc#1[#2]#3{\newcommand{#1}[#2]{#3}\ignorespaces}\@ifundefined +%%{selectfont}{\let\selectfont\relax\def\fontsize#1#2{}}{}\makeatother +%%\IPEc\IPEput[4]{\put(0,0){\special{psfile=\IPEfile}}} +%%\IPEc\IPEmp[2]{\minipage[t]{#1bp}#2\special{color pop}\endminipage} +%%\IPEc\IPEtext[1]{\makebox(0,0)[lb]{#1\special{color pop}}} +%%\IPEc\IPEfs[1]{\IPEcolfs{0 0 0}{#1}} +%%\IPEc\IPEcolfs[2]{\dimen0=#2pt\fontsize{#2}{1.2\dimen0}\selectfont +%%\special{color push rgb #1}} +%%\IPEc\IPEsize[2]{\unitlength1bp\ignorespaces} +%%\IPEsize{272.372}{293.742} +%%\begin{picture}(272.372,293.742)(163.814,253.129) +%%\IPEput{162}{252}{437}{547} +%%\end{picture}\endinput} +%% Ipe postscript prologue + +/IpeDict 60 dict def +IpeDict begin +/origmatrix matrix currentmatrix def + +/sg {setgray} bind def +/sc {setrgbcolor} bind def +/ss {0 setdash setlinewidth} bind def +/sk {stroke} bind def +/fi {fill} bind def +/sfi {gsave fill grestore} bind def +/mt {moveto} bind def +/lt {lineto} bind def +/np {newpath} bind def +/cl {closepath} bind def +/N {moveto} bind def +/L {lineto} bind def +/E {lineto} bind def +/C {lineto closepath} bind def +%%%% +%% x y size dx dy -> ar -> x y [ draws arrowhead, computes new vertex ] +/smallarrow {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath fill +-1 0 moveto currentpoint transform grestore itransform} bind def +/ar {gsave exch atan 4 2 roll translate rotate dup scale +newpath 0 0 moveto -1 0.3 lineto -1 -0.3 lineto closepath +gsave origmatrix setmatrix [] 0 setdash stroke grestore fill +0 0 moveto currentpoint transform grestore itransform} bind def +%%%% +/af {ar moveto} bind def +/at {ar lineto} bind def +%% x y size dx dy -> arw -> [ draws arrowhead ] +/arw {ar pop pop} bind def +%%%% +/ci {0 360 arc} bind def +/el {gsave concat 0 exch 0 exch 0 360 newpath arc origmatrix +setmatrix} bind def +/gs {gsave} bind def +/gr {grestore} bind def +/gsts {gsave translate scale } bind def +%% +/marker {gsave translate 0 setlinewidth [] 0 setdash newpath} bind def +/m1 {marker 0 exch 0 exch 0 360 arc stroke grestore} bind def +/m2 {marker 0 exch 0 exch 0 360 arc fill grestore} bind def +/m3 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath stroke grestore} bind def +/m4 {marker dup dup moveto dup dup neg lineto dup neg dup lineto dup +neg exch lineto closepath fill grestore} bind def +/m5 {marker dup dup moveto dup neg dup lineto dup dup neg moveto dup +neg exch lineto closepath stroke grestore} bind def + +%% splines +systemdict /setpacking known {/savepacking currentpacking def false + setpacking} if +/q0 {0 0} def +/q1 {0 0} def +/q2 {0 0} def +/q3 {0 0} def +/p0 {0 0} def +/p1 {0 0} def +/p2 {0 0} def +/p3 {0 0} def +systemdict /setpacking known {savepacking setpacking} if + +%% x y /qi -> defp -> [/qi [x y] def] +/defp {dup 4 1 roll load astore def} bind def + +/midpoint { exch 4 3 roll add 2 div 3 1 roll add 2 div } bind def +/thirdpoint { exch 4 3 roll 2 mul add 3 div 3 1 roll exch 2 mul add 3 +div } bind def + +/prespl {/p3 defp /p2 defp /p1 defp /p0 defp +p1 p2 thirdpoint /q1 defp +p2 p1 thirdpoint /q2 defp +p1 p0 thirdpoint q1 midpoint /q0 defp +p2 p3 thirdpoint q2 midpoint /q3 defp } bind def +/postspl { q1 q2 q3 curveto p1 p2 p3 } bind def +/fspl { prespl q0 moveto postspl } bind def +/spl { prespl postspl } bind def +/xspl { pop pop pop pop pop pop } bind def + +/qspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto } bind def + +/cqspl { /p2 defp /p1 defp /p0 defp +p1 p0 midpoint /q0 defp +p1 p2 midpoint /q3 defp +p1 q0 thirdpoint /q1 defp +p1 q3 thirdpoint /q2 defp q0 moveto q1 q2 q3 curveto +p2 p1 midpoint /q0 defp +p2 p0 midpoint /q3 defp +p2 q0 thirdpoint /q1 defp +p2 q3 thirdpoint /q2 defp q1 q2 q3 curveto +p0 p2 midpoint /q0 defp +p0 p1 midpoint /q3 defp +p0 q0 thirdpoint /q1 defp +p0 q3 thirdpoint /q2 defp q1 q2 q3 curveto } bind def + +%% bitmaps +/pix { /picstr exch string def } def +%% wd ht -> preimg -> ..stuff for image.. +/preimg { 8 [ 3 index 0 0 5 index neg 0 7 index ] + {currentfile picstr readhexstring pop} } def +/img { preimg image } bind def +/kimg { preimg false 3 colorimage } bind def +%% +end +%% Ipe prologue end + +IpeDict begin 322.853 373.538 translate + +% Preamble 1 +%%\documentclass[a4paper]{article} +% Group + +% Line +% ss 0 +0.4 [] ss +np % # 4 +-140 160 mt +100 160 lt +100 -80 lt +-140 -80 lt +cl % cl +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 40 mt +100 40 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-20 160 mt +-20 -80 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-140 146.667 % r +13.3333 ci +% sk +0 sg sk +% End + +% Group + +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +100 40 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +100 160 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-140 40 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-140 -66.6667 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-140 -40 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-20 -80 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-126.667 160 mt +-126.667 -80 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-100 160 mt +-100 -80 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-113.333 160 % r +13.3333 ci +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-113.333 -80 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 146.667 mt +100 146.667 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 -13.3333 mt +100 -13.3333 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 -46.6666 mt +100 -46.6666 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-140 -63.3333 mt +100 -63.3333 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-113.333 -80 mt +100 26.6667 lt +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 2 +-126.667 146.667 mt +-6.6667 -80 lt +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-28.9179 -37.8216 % r +25.5457 ci +% sk +0 sg sk +% End + +% Arc +% ss 0 +0.4 [] ss +% xy +-140 -40 % r +136.8 % ang +-36 98 np arc +% sk +0 sg sk +% End + +% Circle +% ss 0 +0.4 [] ss +np % xy +-86.6667 146.667 % r +13.3333 ci +% sk +0 sg sk +% End + +% Line +% ss 0 +0.4 [] ss +np % # 63 +-139.984 159.97 mt +-137.754 159.768 lt +-136.403 159.498 lt +-135.525 159.228 lt +-134.106 158.655 lt +-132.991 157.98 lt +-131.606 157.036 lt +-130.39 155.991 lt +-129.546 154.979 lt +-128.6 153.63 lt +-127.992 152.45 lt +-127.384 151.135 lt +-127.012 149.718 lt +-126.742 148.302 lt +-126.607 146.683 lt +-126.679 -66.78 lt +-126.735 -68.0727 lt +-126.961 -69.4778 lt +-127.355 -70.9954 lt +-127.889 -72.26 lt +-128.565 -73.5808 lt +-129.297 -74.6768 lt +-130.423 -75.9695 lt +-131.549 -77.0374 lt +-132.816 -77.8524 lt +-134.252 -78.6674 lt +-136.25 -79.4542 lt +-137.686 -79.8477 lt +-139.966 -79.9882 lt +-9.29708 -79.9986 lt +-8.38218 -76.7902 lt +-6.98873 -71.98 lt +-4.87743 -61.3853 lt +-3.63881 -51.0436 lt +-3.31708 -43.5623 lt +-3.34523 -37.1268 lt +-3.62674 -41.5389 lt +-4.49941 -45.4452 lt +-5.54098 -48.1992 lt +-7.06111 -51.0657 lt +-9.34131 -54.2694 lt +-11.4808 -56.4333 lt +-13.3668 -58.0351 lt +-15.3937 -59.5808 lt +-18.2932 -61.0702 lt +-20.8831 -62.1381 lt +-22.9662 -62.6439 lt +-25.6687 -63.2341 lt +-28.8778 -63.3465 lt +-99.977 -63.3149 lt +-99.9956 146.658 lt +-99.8549 148.484 lt +-99.32 150.761 lt +-98.8133 152.278 lt +-98.0533 153.571 lt +-97.2087 154.808 lt +-96.2235 155.96 lt +-95.0974 157.028 lt +-93.8588 157.927 lt +-92.3668 158.686 lt +-90.9593 159.36 lt +-89.3829 159.754 lt +-87.1027 160.007 lt +cl % cl +% fic +1 1 0 sc sfi +% sk +0 sg sk +% End + +% End + +end %% of Ipe figure diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/installation.tex b/Old_Packages/Installation_doc/doc_tex/Installation/installation.tex new file mode 100644 index 00000000000..85b420e1d55 --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/installation.tex @@ -0,0 +1,1051 @@ +%% +%% *** CGAL Installation Guide *** +%% +%% file: installation.tex +%% + +%% macro for GNU +\newcommand{\gnu}{\textsc{Gnu}} + +%% macro for g++ +\newcommand{\Gcc}[1]{\gnu~\texttt{g++}~{\rm #1}} + +%% macro for egcs +\newcommand{\egcs}[1]{\textsc{Cygnus}~\texttt{egcs}~{\rm #1}} + +%% macro for SUNPRO CC +\newcommand{\sunprocc}[1]{\textsc{Sunpro}~\texttt{CC}~{\rm #1}} + +%% macro for SGI CC +\newcommand{\mipsprocc}{\textsc{SGI}~Mips(Pro)~\texttt{CC}} + +%% macro for Borland C++ +\newcommand{\bcc}[1]{\textsc{Borland}~\texttt{C++}~{\rm #1}} + +%% macro for Microsoft Visual C++ +\newcommand{\msvc}[1]{\textsc{Microsoft}~Visual~\texttt{C++}~{\rm #1}} + +%% macro for CGAL release number +\newcommand{\cgalrelease}{1.0} + +%% macro for CGAL directory +\newcommand{\cgaldir}{\texttt{CGAL-\cgalrelease}} + +%% macro for YOUR CGAL directory :) +\newcommand{\yourcgaldir}{$<$\textit{insert your \cgaldir\ dir}$>$} + +%% macro for CGAL install config directory +\newcommand{\cgalinstconfdir}{\cgaldir\texttt{/config/install}} + +%% macros for WWW pages +\newcommand{\cgalhomepage}{\path'http://www.cs.ruu.nl/CGAL'} +\newcommand{\compilerpage}{\path'http://www.cs.ruu.nl/CGAL/Compilers/'} +\newcommand{\faqpage}{\path'http://www.cs.ruu.nl/CGAL/FAQ/'} +\newcommand{\hpstlpage}{\path'http://www.cs.rpi.edu/~musser/stl.html'} +\newcommand{\sgistlpage}{\path'http://www.sgi.com/Technology/STL/'} +\newcommand{\stlportpage}{\path'http://www.metabyte.com/~fbp/stl/'} + +\section{Introduction} + +\cgal\ is a {\em Computational Geometry Algorithms Library\/} written +in \CC, which is developed in an {\sc Esprit Ltr} project. The goal is +to make the large body of geometric algorithms developed in the field +of computational geometry available for industrial application. + +This document describes how to install \cgal\ on your system. Besides +that, you will find some information about the makefile structure of +\cgal\ and the support for simultaneously using \cgal\ and \leda, the +Library of Efficient Datatypes and Algorithms\footnote{see + \path~http://www.mpi-sb.mpg.de/LEDA/index.html~ for information.}, +and/or the \gnu\ Multiple Precision library GMP. + +\section{Prerequisites \label{sec:prerequisites}} + +In order to build the \cgal\ libraries you need a \CC\ compiler. +Currently only a small number of recent compilers on unix platforms +are supported. The reason is that most compilers do not conform to the +upcoming ANSI/ISO standard\footnote{see e.g. + \path~http://reality.sgi.com/austern/std-c++/faq.html\#PartB~ for + information} and some of them have so many limitations/bugs that we +could not work around all of them. + +More precisely, \cgaldir\ supports the following Unix +compilers/operating systems: + +\begin{center} +\begin{tabular}{||c||c||} +\hline +\hline +\textbf{compiler} & \textbf{operating system} \\ +\hline +\hline +\multicolumn{1}{|l|}{\mipsprocc\ 7.2} & \multicolumn{1}{|l|}{IRIX 6.2} \\ +\hline +\multicolumn{1}{|l|}{\sunprocc{4.2}} & \multicolumn{1}{|l|}{Solaris 2.5} \\ +\hline +\multicolumn{1}{|l|}{\Gcc{2.8.0 / 2.8.1}} & \multicolumn{1}{|l|}{IRIX 6.2 / SUN Solaris 2.5 / +Linux 2.0} \\ +\hline +\multicolumn{1}{|l|}{\egcs{1.0.1 / 1.0.2} } & \multicolumn{1}{|l|}{IRIX 5.3 / IRIX 6.2 / Solaris 2.5 / Linux 2.0} \\ +\hline +\end{tabular} +\end{center} + +If your compiler/operating system is not on this list, this not +necessarily implies that \cgal\ does not work on your +system\footnote{e.g. we would expect \egcs{1.0.*} to work on IRIX 6.4 + as well}, it just means we did not test it so far. For some +compilers we did the tests, but not all parts of \cgal\ work with +them. This includes \mipsprocc\ 4.0, \sunprocc{4.1} and \Gcc{2.7.2}. +An overview of known problems is given at the following URL: +\begin{quote} + \compilerpage +\end{quote} + +N.B. It is highly recommended to read this information, since some of +these older compilers may cause a lot of problems! Especially the +support for templates is sometimes very poor. + +At the same location you can find some hints about \cgal\ support for +PC compilers (\bcc{5.02}\ and \msvc{5.0}), but this in a very +premature state at the moment. + +In case you want to use \leda\ together with \cgal\ (needed e.g. for +the graphical demo programs), you should have a look at section +\ref{sec:leda} now. + +\section{Getting \cgal} + +The \cgal\ library can be downloaded in two different ways: using ftp +or using WWW. If you have a WWW connection, the easiest way to +download \cgal\ is via the \cgal\ homepage: +\begin{quote} + \cgalhomepage +\end{quote} +and go to the `Software' section. + +Just follow the instructions on this page to obtain your copy of the +library. The \cgal\ library can also be downloaded using FTP. The +library can be found at the following location: + +\begin{verbatim} + ftp.cs.ruu.nl +\end{verbatim} + +in the directory \texttt{/pub/CGAL}. This directory contains release +\cgalrelease\ of the \cgal\ library. There is also a \texttt{README} +file that contains descriptions of the files in this directory. An +example of an FTP-session is given below. + +\begin{alltt} + $ ftp ftp.cs.ruu.nl + Name (ftp.cs.ruu.nl:): anonymous + Password: + ftp> cd pub/CGAL + ftp> get README + ftp> binary + ftp> get \cgaldir.tar.gz + ftp> quit +\end{alltt} + +After you have downloaded the file containing the \cgal\ library, you +have to decompress it. For the zipfile use the command + +\begin{verbatim} + unzip .zip +\end{verbatim} + +and for the gzipped file use the commands + +\begin{verbatim} + gunzip .tar.gz + tar xvf .tar +\end{verbatim} + +N.B. On a PC you should use an unzip utility that can deal with long +filenames (like WinZip or InfoZip)! + +In both cases the directory \cgaldir\ will be created. This directory +contains the following subdirectories: + +\begin{center} +\begin{tabular}{||c||c||} +\hline\hline +\textbf{directory} & \textbf{contents} \\ \hline\hline +\multicolumn{1}{|l}{\texttt{auxiliary}} & \multicolumn{1}{|l|}{packages that can optionally be used with \cgal} \\ \hline +\multicolumn{1}{|l}{\texttt{config}} & \multicolumn{1}{|l|}{configuration files for install script} \\ \hline +\multicolumn{1}{|l}{\texttt{doc\_html}} & \multicolumn{1}{|l|}{documentation (HTML)} \\ \hline +\multicolumn{1}{|l}{\texttt{doc\_ps}} & \multicolumn{1}{|l|}{documentation (Postscript)} \\ \hline +\multicolumn{1}{|l}{\texttt{examples}} & \multicolumn{1}{|l|}{example programs } \\ \hline +\multicolumn{1}{|l}{\texttt{include}} & \multicolumn{1}{|l|}{header files} \\ \hline +\multicolumn{1}{|l}{\texttt{lib}} & \multicolumn{1}{|l|}{(shared) object libraries} \\ \hline +\multicolumn{1}{|l}{\texttt{make}} & \multicolumn{1}{|l|}{files with platform dependent makefile settings} \\ \hline +\multicolumn{1}{|l}{\texttt{src}} & \multicolumn{1}{|l|}{source files} \\ \hline +\end{tabular} +\end{center} + +\section{Installing \cgal} + +The directory \cgaldir\ contains a Bourne shell script called +\texttt{install\_cgal}. The script can be run in two modes: a +menu-driven interactive mode and a non-interactive mode. Normally you +should use the interactive mode, but in case you run into problems +with it or don't like it for some reason, you can still use the +non-interactive mode. + +We first describe a sample installation in section +\ref{sec:sample-inst}. This provides you with an overview on how the +interactive installation works. If you want more detailed information +about specific menus and their options, take a look at section +\ref{sec:interactive-mode}. Finally, for the non-interactive mode +refer to section \ref{sec:non-interactive}. + +\textbf{Warning.} If you have an old compiler like \Gcc{2.7.2}, or if +you want to use \leda\ in combination with \cgal, there are some +compatibility issues that need to be addressed first. See +section~\ref{sec:leda} and \compilerpage\ for more information about +this. + +\section{A Sample Installation \label{sec:sample-inst}} + +In this section we sketch an example installation on a \textsc{Sun} +running Solaris 2.5 with the \sunprocc{4.2} compiler. For a complete +description of the different menus and their options refer to section +\ref{sec:interactive-mode}. + +\subsection{Starting the script} + +Go to the \cgaldir\ directory and enter the command +\begin{verbatim} + ./install_cgal -i +\end{verbatim} + +You get a message indicating the \cgal\ version you are going to +install and that you are running the interactive mode. Then it takes +some time while the script locates a number of utility programs. You +will not get informed about this\footnote{If you are that curious what + happens exactly, have a look at the file + \texttt{\cgaldir/install.log}.}, but see some dots written to the +screen indicating progress. + +\begin{scriptsize} +\begin{alltt} +-------------------------------------------------------- + This is the install script for CGAL \cgalrelease +-------------------------------------------------------- + +starting interactive mode - one moment, please +...... + + Choosing compiler SUNPRO 4.2. + Testing for builtin STL ... no. +. +\end{alltt} +\end{scriptsize} + +If there is any compiler installed on your system and accessible +through your \texttt{PATH} environment variable that is supported by +\cgal, one of these compilers is chosen and it is checked whether it +has a ``builtin'' \stl, i.e. if \stl\ works without adding any +specific compiler flags. Here the chosen compiler is \sunprocc{4.2} +that has no builtin \stl. \footnote{If your compiler has a builtin + \stl, you will have to wait for a moment while the script tests for + a number of language features, which can't be done without \stl.} If +there is more than one compiler installed on your system (and +supported by \cgal), you may later choose to use a different compiler +from the compiler menu. + +A menu similar to the following will appear on your screen. + +\begin{scriptsize}\label{pic:main-menu} +\begin{alltt} + **************************************************************** + ** CGAL 1.0 Installation Main Menu ** + ** ------------------------------- ** + ** ** + ** OS: sparc_SunOS-5.5 ** + ** Compiler: SUNPRO CC 4.2 ** + ** STL_DIR: please configure!!! ** + ** LEDA: not supported. ** + ** GMP: not supported. ** + ** ** + ** The setup has not been tested. ** + ** ** + ** There are no libs for this os/compiler. ** + ** ** + ** Compiler Menu ** + ** LEDA Menu ** + ** GMP Menu ** + ** Test (and save) setup ** + ** Run all setup tests (no cache) ** + ** ** + ** Build CGAL Libraries ** + ** ** + ** Back to OS ** + ** ** + ** Your Choice: ** + ** ** + **************************************************************** +\end{alltt} +\end{scriptsize} + +The first lines below the headline contain some kind of status report: +current OS and compiler, are \leda\ and GMP supported etc., in this +case it also tells you that \stl\ still has to be configured. + +Moreover you can see that the current setup has not been tested yet +and that there do not exist \cgal\ libraries for this OS/compiler +combination in the \cgal\ lib directory by now. It is always a good +idea to test your configuration before you start building the \cgal\ +libraries, but before that we first have to setup \stl.\footnote{This + is not necessary for compilers with builtin \stl. So you might want + to skip the next section and go directly to section + \ref{sec:build-the-libs}.} + +\subsection{Setting up \stl \label{sec:set-up-stl}} + +Please type ``\texttt{c}'' to go to the compiler menu where all +compiler specific options can be configured. Then type ``\texttt{i}'' +and you will be prompted to enter the include directory where \stl\ +header files reside on your system. The script only accepts +directories that exist and pass a confidence test.\footnote{In this + case it checks for a file \texttt{iterator.h} in the directory. + This file should be present in all \stl\ implementations.} Let's +assume, you have a \textsc{HP} \stl\ on your system in {\tt + /pub/local/STL/HP}. + +After you set up the \stl\ directory, the script tries to compile some +small example programs to check whether \stl\ works principally and if +it does, which language features are supported by your compiler and +your \stl\ version. This is necessary, since there are many different +\stl\ implementations and \cgal\ (partly) depends on which +implementation is used. A message \texttt{ok} always indicates that +your compiler works as it should i.e. a feature is supported resp. a +bug is \textit{not} present. On the other hand \texttt{no} resp. +\texttt{unfortunately} indicate a lack of support resp. bug. + +\begin{scriptsize} +\begin{verbatim} + **************************************************************** + ** CGAL 1.0 Installation Compiler Menu ** + ** ----------------------------------- ** + ** ** + ** OS: sparc_SunOS-5.5 ** + ** Compiler: SUNPRO CC 4.2 ** + ** STL_DIR: please configure!!! ** + ** LEDA: not supported. ** + ** GMP: not supported. ** + ** ** + ** The setup has not been tested. ** + ** ** + ** Choose compiler ** + ** STL include directory ** + ** ** + ** Set custom compiler flags ** + ** ** + ** Set custom linker flags ** + ** ** + ** Test (and save) setup ** + ** ** + ** Back to Main Menu ** + ** ** + ** New STL_DIR: /pub/local/STL/HP ** + ** ** + **************************************************************** + + Testing for STL ... ok. + Testing for SGI STL 3.0 ... no. + Testing for SGI 6/97 STL ... no. + Testing for SGI 1996 STL ... no. + Testing for SGI CC STL ... no. + Testing for HP STL ... ok. + ... + + ... + Saving current setup ... done. +\end{verbatim} +\end{scriptsize} + +If the \stl\ test succeeds, the current setup is marked as tested and +the settings are saved to a file in the directory \cgalinstconfdir. +Thus, if you run the install script a second time for this +OS/compiler, you won't have to enter the \stl\ directory again, but it +is retrieved from the corresponding config file instead. + +\subsection{Building the \cgal\ libraries \label{sec:build-the-libs}} + +Now we are ready to build the \cgal\ libraries. First go back to the +main menu with ``\texttt{q}`` and then type ``{\tt b}'' to start +compilation. Building consists of three steps: +\begin{enumerate} +\item writing the include makefile, +\item compiling the static libraries \textit{and} +\item compiling the shared libraries. +\end{enumerate} +The include makefile encapsulates the OS-- and compiler-specific +settings and should be included (hence the name) in all makefiles that +compile \cgal\ applications. If everything went ok, the output should +look as follows (if not, you should have a look at the error messages +from compiler or linker). + +\begin{scriptsize} +\begin{verbatim} + **************************************************************** + ** ** + ** Compiling CGAL 1.0 ** + ** ------------------ ** + ** ** + **************************************************************** + + OS: sparc_SunOS-5.5 + COMPILER: SUNPRO CC 4.2 + STL: CGAL_STL_HP + LEDA: not supported + GMP: not supported + + Generating Makefiles ... done. + Building CGAL_lib ... done. + Building CGAL_sharedlib ... done. + + **************************************************************** + ** Please press to continue. ** + **************************************************************** +\end{verbatim} +\end{scriptsize} + +That's all, it's done. Press ``\texttt{}'' to return to the main +menu and proceed by installing for a different compiler (go to the +compiler menu and choose ``\texttt{c}'' to get a list of supported +compilers detected on your system) or with \leda\ or GMP support (go +to the \leda\ resp. GMP menu) or simply quit the install script by +typing ``\texttt{q}''. When leaving the script, you get a list of +successful builds during the session. + +Now it would be a good idea to print and read the `Getting Started +with \cgal' document that can be found in the \texttt{doc\_ps} +directory. + +\section{The interactive mode}\label{sec:interactive-mode} + +To run the install script in the interactive mode, go to the \cgaldir\ +directory and enter the command +\begin{verbatim} + ./install_cgal -i +\end{verbatim} + +After initialisation during which certain utility programs are located +and your system is searched for compilers supported by \cgal, you get +into the \cgal\ installation {\em main menu} (see page +\pageref{pic:main-menu} for a picture). + +>From the main menu you can reach a number of different sub-menus, of +which the most important maybe is the {\em compiler menu}. This is +where you can choose the compiler you want to work with and setup \stl. +The compiler menu is described in section \ref{sec:compiler-menu}. + +If you want to use \leda\ or \gnu\ GMP with \cgal, you will have to go +to the {\em leda menu} described in section \ref{sec:leda-menu} resp. +to the {\em gmp menu} described in section \ref{sec:gmp-menu}. + +Finally you can build the \cgal\ libraries by typing \texttt{b}. +However, it is recommended to run the {\em setup test} which is +available in all menus as option \texttt{t} before. The setup test +includes an \stl\ test, a \leda\ test and a GMP test, but not all +tests are performed always; e.g. the \leda\ test is only done, if you +enabled \leda\ support. The install script keeps track of the tests +passed and only tests again, if you change the setup in a way that +might affect the test result. If you want to redo \textit{all} tests, +you have to choose option ``\texttt{a}'' from the main menu. This also +retests for \leda\ or GMP installation in system directories which +otherwise is only done the first time you enable \leda/GMP support for +an OS/compiler combination. + +\subsection{Files created during installation} + +The install script stores all relevant settings for an OS/compiler +combination in the directory +\begin{center} + \texttt{\cgalinstconfdir/$<$\textit{CGAL-OS-description}$>$} +\end{center} +where $<$\textit{CGAL-OS-description}$>$ identifies your OS/compiler +combination in a way specified in section \ref{sec:os-compiler-id}. +\footnote{Note that these files are only OS/compiler specific, i.e. + there are no different files for with and without \leda\ support.} +This saves you typing everything again, if you upgrade \cgal\ or +another package that makes recompiling the \cgal\ libraries necessary. + +Besides the config files, \texttt{install\_cgal} uses several +temporary files during interactive installation. Most of them are +removed after use, but some are not, since it might be helpful to keep +some information about the last run. You can keep or delete them as +you like, as they are not needed anymore once the script terminated. +It follows a list of these files (all are plain ASCII and reside in +\cgaldir). +\begin{center} + \renewcommand{\arraystretch}{1.3} + \begin{tabular}{|l|l|} \hline + {\bf filename} & {\bf content}\\\hline\hline + \texttt{install.log} & detailed overall protocol\\\hline + \texttt{install.completed} & list of systems for which \cgal\ libraries + have been built\\\hline + \texttt{compile.log} & output of the last compiler call\\\hline + \end{tabular} +\end{center} + +\subsection{The Compiler Menu}\label{sec:compiler-menu} + +Here is the place to setup the compiler specific options, such as the +compiler to use (if more than one has been detected) and the location of the +\stl\ files. + +Some compilers come with their own \stl\ adaption to which we refer as +\textit{builtin} and some compilers are not shipped with \stl. In the +latter case you have to supply an \texttt{STL\_DIR}, i.e. the path to +a directory where the \stl\ header files are stored.\footnote{See + section \ref{sec:stl} on where you can obtain an \stl\ + implementation and what problems you might have to consider.} In +this case we speak of an external \stl. Even if your compiler has +builtin \stl, you can still choose to use an external \stl\ by setting +\texttt{STL\_DIR} appropriately.\bigskip + +\fbox{ +\begin{minipage}{.95\linewidth} +\vspace{2pt} +\centerline{{\large\bf Compiler Menu}} +\vspace{2pt} +\begin{description} +\item[$<$C$>$] Choose the compiler to be used from the list of + detected compilers. +\item[$<$S$>$] (\textit{present if a builtin \stl\ was detected for the + current compiler)} Determine, if compiler builtin or an external + \stl\ is used. +\item[$<$I$>$] (\textit{present if an external \stl\ is used)} Set the + include directory for an external \stl. +\item[$<$F$>$] Set custom compiler flags. These are the first flags + given to the compiler in every call. Under normal circumstances + there should be no need to set any such flag. +\item[$<$L$>$] Set custom linker flags. These are the first flags + given to the linker in every call. Under normal circumstances + there should be no need to set any such flag. +\end{description} +\vspace{2pt} +\end{minipage} +\hfil} + +\subsection{The \leda\ Menu}\label{sec:leda-menu} + +This is the place to setup \leda\ specific options, if you plan to use +\leda\ together with \cgal\ (see also section \ref{sec:leda}). In +order to enable \leda\ support in \cgal, \leda\ has to be installed on +your system. + +If \leda\ support is enabled the first time, the script tests whether +\leda\ is installed in standard system directories. If this test does +not succeed, you have to supply directories containing the \leda\ header +files (\texttt{LEDA\_INCL\_DIR}) and \leda\ libraries ({\tt + LEDA\_LIB\_DIR}). Even if the tests are passed, you still have the +option to set these directories differently.\bigskip + +\fbox{ +\begin{minipage}{.95\linewidth} +\vspace{2pt} +\centerline{{\large\bf \leda\ Menu}} +\vspace{2pt} +\begin{description} +\item[$<$E$>$] Enable/Disable \leda\ support in \cgal. +\item[$<$I$>$] (\textit{present if \leda\ support is enabled)} Set the + include directory for \leda . +\item[$<$J$>$] (\textit{present if \leda\ support is enabled, \leda\ headers + have been found in a system include directory and {\tt + LEDA\_INCL\_DIR} has been set)} Use \leda\ header from system + include directory. +\item[$<$L$>$] (\textit{present if \leda\ support is enabled)} Set the + directory containing the \leda\ libraries. +\item[$<$M$>$] (\textit{present if \leda\ support is enabled, \leda\ libs + have been found in a system lib directory and \texttt{LEDA\_LIB\_DIR} + has been set)} Use \leda\ libraries from system lib directory. +\end{description} +\vspace{2pt} +\end{minipage} +\hfil} + +\subsection{The GMP Menu}\label{sec:gmp-menu} + +This menu is to setup GMP (\gnu\ Muptiple Precision Library) specific +options, if you plan to use GMP together with \cgal . In the {\tt + auxiliary} directory you can find a GMP distribution, if you do not +already have it installed on your system. This menu contains an option +to install GMP in you \cgal\ directory tree, but of course you can +also install it independently from \cgal . + +If GMP support is enabled the first time, the script tests whether GMP +is installed in standard system directories or in the \cgal\ tree. If +this test does not succeed, you have to supply directories containing +the GMP header files (\texttt{GMP\_INCL\_DIR}) and GMP libraries ({\tt + GMP\_LIB\_DIR}). Even if the tests are passed, you still have the +option to set these directories differently.\bigskip + +\fbox{ +\begin{minipage}{.95\linewidth} +\vspace{2pt} +\centerline{{\large\bf GMP Menu}} +\vspace{2pt} +\begin{description} +\item[$<$C$>$] Install the GMP distribution shipped with \cgal\ in the + \cgal\ directory tree. +\item[$<$G$>$] Enable/Disable GMP support in \cgal. +\item[$<$I$>$] (\textit{present if GMP support is enabled)} Set the + include directory for GMP. +\item[$<$L$>$] (\textit{present if GMP support is enabled)} Set the + directory containing the GMP libraries. +\item[$<$M$>$] (\textit{present if GMP support is enabled, there is a GMP + installation in system directories or in the \cgal\ tree and {\tt + GMP\_INCL\_DIR} or \texttt{GMP\_LIB\_DIR} have been set)} Use GMP + installation from system directories / \cgal\ tree. +\end{description} +\vspace{2pt} +\end{minipage} +\hfil} + +\section{The non-interactive mode \label{sec:non-interactive}} + +To run the install script in the non-interactive mode, go to the +\cgaldir\ directory and enter the command +\begin{verbatim} + ./install_cgal -ni +\end{verbatim} +where \texttt{} is the C++ compiler executable.\\ +You can either specify a full path, e.g. \texttt{/usr/local/bin/g++}, +or just the basename, e.g. \texttt{g++}, which means the script +searches your \texttt{PATH} for the compiler location. If your +compiler call contains whitespaces it has to be quoted, e.g. +\texttt{./install\_cgal -ni "CC -64"}. The options given this way +become part of your \cgal-OS description (see section +\ref{sec:os-compiler-id}) which is useful e.g. to distinguish between +different compilers using the same frontend (\mipsprocc\ on +\texttt{IRIX6}). + +There are a number of additional command line options to customize +your \cgal\ setup which are discussed below. You should read the +corresponding paragraphs before you continue, especially if one or +more of the following conditions apply to you: +\begin{itemize} +\item your compiler does not have a ``builtin'' \stl\ (section + \ref{sec:stl-setup}), +\item you want to use \leda\ together with \cgal\ (section + \ref{sec:leda-setup}) \textit{or} +\item you want to use \gnu\ GMP together with \cgal\ (section + \ref{sec:gmp-setup}). +\end{itemize} + +Once you started the script, it should give you a message indicating +the \cgal\ version you are going to install and that you are running +the non-interactive mode. Then it proceeds by locating some utility +programs, determining your OS and compiler version, displaying the +settings you gave via command line and classifying (see also section +\ref{sec:stl}) the \stl\ version used (which -- of course -- won't +work, if you didn't set up \stl\ correctly, see section +\ref{sec:stl-setup} below). Your compiler is also checked for a number +of bugs resp. support of certain language features; a message +\texttt{ok} always indicates that your compiler works as it should +i.e. a feature is supported resp. a bug is \textit{not} present. On +the other hand \texttt{no} resp. \texttt{unfortunately} indicate a +lack of support resp. presence of a bug. + +Finally the current setup is summarized, system specific directories +for makefiles and libraries are created (if they did not exist before) +and a new include makefile is written into the makefile directory. If +there already exists a makefile for the current OS/compiler +combination, it is backuped and you should get a corresponding +message. + +To compile the \cgal\ libraries go now to the \texttt{src} directory. +Then type \texttt{make -f makefile\_lib} to compile the \cgal\ object +library and \texttt{make -f makefile\_sharedlib} to compile the \cgal\ +shared object library. If you want to make changes to the makefiles +first, see section \ref{sec:makefiles} for an explanation of the +makefile structure of \cgal. + +When this is finished it would be a good idea to print and read the +`Getting Started with \cgal' document that can be found in the +\texttt{doc\_ps} directory. + +\subsection{Setting up \stl}\label{sec:stl-setup} + +The install script and the makefiles use the variable +\texttt{STL\_DIR} to indicate the STL that shall be used with \cgal. +This variable should point to the directory where STL header files are +stored. It can be set from command line with option +``\texttt{--STL\_DIR \textit{$<$dir$>$}}''. If you do not set +\texttt{STL\_DIR} this way, it is assumed that the compiler has +``builtin'' \stl\ and this is used. If your compiler does not have +builtin \stl, you \textit{have to} supply an \texttt{STL\_DIR} to get +things running. + +\subsection{Setting up \leda\ support}\label{sec:leda-setup} + +See also section \ref{sec:leda}. By default there is no support for +\leda, but you can change this easily by use of the command line +option ``\texttt{-leda}''. If \leda\ is installed in system directories +on your system, you should indicate this by setting the flags ``{\tt + --leda-sys-incl}'' resp. ``\texttt{--leda-sys-lib}''. If this is not +the case, you have to supply the directories containing the \leda\ +header files (``\texttt{--LEDA\_INCL\_DIR} \textit{$<$dir$>$}'') resp. the +\leda\ libraries for your compiler (``\texttt{--LEDA\_LIB\_DIR} {\it + $<$dir$>$}''). + +\subsection{Setting up support for GMP}\label{sec:gmp-setup} + +By default there is no support for GMP, but you can change this easily +by use of the command line option ``\texttt{-gmp}''. If GMP is installed +in system directories on your system, you are already done now. If +this is not the case, you have to supply the directories containing +the GMP header files (``\texttt{--GMP\_INCL\_DIR} \textit{$<$dir$>$}'') and +the GMP library (``\texttt{--GMP\_LIB\_DIR} \textit{$<$dir$>$}''). + +\subsection{Other Options}\label{sec:other-options} + +There are some more less important features of the install script +we will summarize here. + +First of all you can get the version number of \texttt{cgal\_install} +with option ``\texttt{--version}''. Note that all other options are +ignored in this case. + +Second there is an option ``\texttt{-os \textit{$<$compiler$>$}}'' +where \textit{$<$compiler$>$} is your \CC\ compiler. This allows you +to determine your \cgal-OS description (see section +\ref{sec:os-compiler-id}). The compiler can either be given by an +absolute path like +\begin{verbatim} +./install_cgal -os /usr/local/gcc-2.8.1/sun/bin/g++ +\end{verbatim} +or just by denoting its basename, as long as it is on your path: +\begin{verbatim} +./install_cgal -os CC +\end{verbatim} +The option is intended for testing purposes and automatic detection of +the correct include makefile (see also section \ref{sec:makefiles}). + +Finally there exists an option ``\texttt{--verbose}'' that can be set in +interactive mode as well as in non-interactive mode. When set you get +a detailed summary of error messages occuring during \textit{any} +compiler test (determining \stl\ version etc.). Normally you only get +these messages, if a required test (such as the general \stl\ test) +fails, otherwise you are just informed, \textit{if} it succeeded or not. +This option is not recommended for general use, but it can be useful +to check why a certain test fails that was expected to be passed. + +\section{Troubleshooting\label{sec:troubleshooting}} + +In case you run into problems with \cgal, you should first have a look +at the \cgal\ homepage: +\begin{alltt} +\cgalhomepage +\end{alltt} +If you can't find a solution to your problem there, please send email +to \texttt{cgal@cs.ruu.nl}. + +\section{Identifying OS and Compiler}\label{sec:os-compiler-id} + +Since \cgal\ supports several different operating systems and +compilers, this is also reflected in the structure of the \cgal\ +directory tree. Each OS/compiler combination has its own lib directory +under \texttt{\cgaldir/lib}) (and analogously its own include makefile +in \texttt{\cgaldir/make}) named as determined by the following +scheme. +\begin{center} + \textit{$<$arch$>$\texttt{\_}$<$os$>$\texttt{-}$<$os-version$>$\texttt{\_}$<$comp$>${\tt + -}$<$comp-version$>$}[\texttt{\_}LEDA] +\end{center} + +\begin{description} +\item[$<$arch$>$] is the system architecture as defined by ``{\tt + uname -p}'' or ``\texttt{uname -m}'', +\item[$<$os$>$] is the operating system as defined by ``\texttt{uname + -s}'', +\item[$<$os-version$>$] is the operating system version as defined by + ``\texttt{uname -r}'', +\item[$<$comp$>$] is the basename of the compiler executable (if it + contains spaces, these are replaced by "-") \textit{and} +\item[$<$comp-version$>$] is the compiler's version number (which + unfortunately can not be derived in a uniform manner, since it is + quite compiler specific). +\end{description} + +The suffix \texttt{\_}LEDA is appended to indicate \leda\ support. This +destinction is necessary, because the object libraries look (at least +possibly) different. + +We call the resulting string \cgal-OS description. + +Examples are \texttt{mips\_IRIX-6.2\_CC-7.2} or {\tt + sparc\_SunOS-5.5\_g++-2.8.1\_LEDA}. You can use the install +script to get your \cgal-OS description, see section +\ref{sec:other-options}. + +\section{The \cgal\ makefile structure \label{sec:makefiles}} + +The \cgal\ distribution contains the following makefiles: +\begin{itemize} +\item \texttt{\cgaldir/src/makefile\_lib} for compiling the \cgal\ + object library \texttt{libCGAL.a}, + +\item \texttt{\cgaldir/src/makefile\_sharedlib} for compiling the + \cgal\ shared object library \texttt{libCGAL.so}, + +\item \texttt{\cgaldir/src/makefile\_geomview} for compiling a library + for geomview support, + +\item \texttt{\cgaldir/examples/makefile} as sample makefile + \textit{and} + +\item \texttt{\cgaldir/examples/*/makefile} for compiling the \cgal\ + example programs. +\end{itemize} + +All these makefiles are generic: they can be used for more than one compiler. +To achieve this, the first section of each makefile contains an include +statement that looks as follows: + +\begin{verbatim} + CGAL_MAKEFILE = /users/jannes/CGAL-1.0/make/makefile_ + include $(CGAL_MAKEFILE) +\end{verbatim} + +The file \texttt{CGAL\_MAKEFILE} is an include file with platform +dependent makefile settings. The abbreviation \texttt{} +(see section \ref{sec:os-compiler-id} for details) is +used to identify the operating system and compiler for which the +settings hold. For example, the file +\texttt{makefile\_mips\_IRIX-5.3\_CC-4.0} contains makefile settings +for the IRIX 5.3 operating system and the \mipsprocc\ 4.0 +compiler. These include files are automatically generated by the +\texttt{install\_cgal} script and they are all located in the +\texttt{\cgaldir/make} directory. +For convenience, the \texttt{install\_cgal} script will substitute the +include makefile that was generated most recently. + +If you want to compile an application or an object library with a +different compiler, the only thing you need to do is to substitute +another include makefile for the \texttt{CGAL\_MAKEFILE} variable. An +alternative way to do this is to create an environment variable +\texttt{CGAL\_MAKEFILE}. To pass the value of the environment variable +to the makefile you can either comment out the \texttt{CGAL\_MAKEFILE} +line in the makefile or use an appropriate command line option for +the make utility. +A comfortable way to set \texttt{CGAL\_MAKEFILE} is by using +\texttt{install\_cgal~-os} (see section \ref{sec:other-options}). +E.g. if your compiler is \texttt{g++}, you would type +\begin{alltt} +CGAL_MAKEFILE=`\yourcgaldir/install_cgal -os g++` +\end{alltt} +in bourne shell resp. +\begin{alltt} +setenv CGAL_MAKEFILE `\yourcgaldir/install_cgal -os g++` +\end{alltt} +in csh derivatives. + +All makefiles contain sections with compiler and linker +flags. You can add your own flags here. For example, you might want +to add the flag \texttt{-DCGAL\_NO\_PRECONDITIONS} to turn off +precondition checking. The flags \texttt{\$(CGAL\_CXXFLAGS)} and +\texttt{\$(CGAL\_LDFLAGS)} should never be removed. + +The default extension for \cgal\ source files is \texttt{.C}. The +last section of the makefiles contains a suffix rule that tells the +compiler how to create a \texttt{.o}-file from a \texttt{.C}-file. If +you want to use the default rule that is defined by the make utility, +you may want to remove this suffix rule. However, note that this may +have consequences for the makefile variables +\texttt{CGAL\_CXX} and \texttt{CXXFLAGS}. + +\section{Compiling a \cgal\ application} +The directory \texttt{CGAL-1.0/examples} contains a small program (example.C) +and a sample makefile with some comments. The \texttt{CGAL\_MAKEFILE} +variable in this makefile (see section \ref{sec:makefiles}) is automatically substituted +by the \texttt{install\_cgal} script and equals the most recently generated include +makefile in the \texttt{\cgaldir/make} directory. After the installation of \cgal\ this +sample makefile is ready for use. Just type 'make example' to compile the program example.C. +You may use this makefile as a blueprint for your own makefiles. + +Furthermore the directories \texttt{\cgaldir/examples} and \texttt{\cgaldir/demo} +contain many subdirectories with non-graphical and graphical example programs. +In all these directories you will find a makefile that is ready for use. + +\section{Using \cgal\ and \leda \label{sec:leda}} +This section describes how to use \cgal\ and \leda\ simultaneously. + +\subsection{Support for \leda} +\cgal\ supports \leda\ in the following ways: + +\begin{enumerate} +\item +There are support functions defined for the \leda\ number types +\texttt{big\_float}, \texttt{integer}, \texttt{rational} and \texttt{real} +(see the files \texttt{}). + +\item +\cgal\ defines the following \leda-related compiler flags: +\begin{itemize} +\item When \leda\ is used, the flags \texttt{CGAL\_USE\_LEDA} and +\texttt{LEDA\_PREFIX} will be set. +\item When \leda\ is used, the \leda\ memory management (\leda\ handles) will be +used for geometric primitives in \cgal. This can be turned of by setting the flag +\texttt{CGAL\_NO\_LEDA\_HANDLE}. In that case \cgal\ memory management will +be used (see \texttt{}). +\end{itemize} +\end{enumerate} + +The include makefiles in the \texttt{\cgaldir/make} directory +corresponding to \leda\ can be recognized by the suffix +``\texttt{\_LEDA}''. + +\subsection{\leda\ and \stl\ conflicts} + +When you are using an old compiler or an old version of \stl, the combination of +\leda\ and \stl\ (which is required for \cgal) may give some problems. + +\subsubsection{Definition of type bool} + +If a compiler doesn't support the keyword bool, libraries like \leda\ +and \stl\ provide their own definition of bool. Unfortunately the +\leda\ definition of bool is incompatible with the definition in most +\stl\ implementations. One of them needs to be changed. The easiest +solution is to modify \stl\ as follows: + +\begin{enumerate} +\item locate the definition of bool; most of the time it is defined as + +\begin{verbatim} + typedef int bool; +\end{verbatim} + +in a file called bool.h or stl\_config.h + +\item replace this definition by the following: + +\begin{verbatim} +#ifdef CGAL_USE_LEDA +#include +#else + typedef int bool; +#endif +\end{verbatim} +\end{enumerate} + +The flag \texttt{CGAL\_USE\_LEDA} ensures that you can continue to use \stl\ wwithout +depending on \leda. + +REMARK 1) +If you don't like to modify centrally managed \stl\ files, it is possible to fake +it. This can be done by making changes to a copy of the \stl\ file bool.h or +stl\_config.h. After this you have to make sure that this copy is found earlier +on the include path than the original file. +It is also possible to modify \leda\ instead of \stl. However, then +you have to modify and recompile (if you have the source code) \leda. + +REMARK 2) If you are using \leda\ 3.5 (and not 3.4 or 3.6), the \leda\ +definition of bool can be disabled by defining the flag +\texttt{LEDA\_BOOL\_H}. So if you add \texttt{-DLEDA\_BOOL\_H} to the +custom compiler flags during the installation of \cgal, you can use +\leda\ and \stl\ simultaneously without changing either of them. + +\subsubsection{'red' and 'black' conflict} + +When compiling the graphical demo programs that use \leda\ windows +with \leda\ versions prior to 3.6.1, you may encounter a name clash. +This is because \leda\ defines the colors 'red' and 'black' in the +file \texttt{}, whereas some \stl\ +implementations use 'red' and 'black' in the implementation of trees. +One of the libraries needs to be modified. In this case the easiest +solution seems to prefix the \leda\ color constants with something +like \texttt{leda\_}. + +\section{The Standard Template Library \label{sec:stl}} + +For using the \cgal\ library, the Standard Template Library is +required. Recent compilers provide their own implementation of \stl. +There are also free implementations. Most notable are the +original Hewlett Packard implementation (\hpstlpage), the implementation +from Silicon Graphics (\sgistlpage, also contains documentation and +links to other \stl\ resources) and a port of this SGI version to +a lot of other compilers (\stlportpage). + +The \texttt{install\_cgal} script tries to figure out which \stl\ is used. +This is necessary for the circulator package, and also to work around some +bugs. In case the right version is not recognized, you could try to use +the non-interactive mode of the \texttt{install\_cgal} script +(see section \ref{sec:non-interactive}). The compiler flag +\verb~CGAL_STL_VERSION~ can take the following values: + +\begin{center} +\begin{tabular}{|l|l|} +\hline \hline +CGAL\_STL\_GCC & \stl\ version that comes with gcc-2.7.2 \\ \hline +CGAL\_STL\_HP & Free HP version \\ \hline +CGAL\_STL\_SGI\_3\_0 & SGI STL 3.0 \\ \hline +CGAL\_STL\_SGI\_WWW & Free new SGI implementation \\ \hline +CGAL\_STL\_SGI\_WWW\_OLD & Free SGI implementation for older compilers \\ \hline +CGAL\_STL\_SGI\_CC & SGI implementation that comes with their\\ + & 7.0/7.1 compilers \\ \hline +CGAL\_STL\_UNKNOWN & unknown \stl\ version (this will probably not work) \\ \hline +%CGAL\_STL\_WITH\_ITERATOR\_TRAITS & \stl\ implementation that relies on\\ +% & iterator traits\\ \hline +\hline +\end{tabular} +\end{center} + +Most \stl\ libraries consist of only header files. An exception is +HP's \stl, which also has source files \verb~random.cpp~ and +\verb~tempbuf.cpp~. The \cgal\ makefiles do {\em not} take care of +this. You have to compile these files yourself and add them to the +custom linker flags during the installation of CGAL, or enter them +manually in the makefiles. + +%%?? I've removed that, since the config/install files +%%?? have changed since then and I would expect +%%?? problems from here. We should add a section like this again +%%?? for CGAL-1.0.1 +%%\section{Upgrading a \cgal\ 0.9 installation} +%%In case you have \cgal\ 0.9 installed on your system, you might like +%%to reuse your configuration files. Simply use the following commands +%%to put them into the right place: +%%\begin{verbatim} +%%mkdir /config/install +%%cp /config/* /config/install +%%\end{verbatim} +%%where \texttt{} is your \cgal\ 0.9 root directory +%%(e.g. \texttt{/pub/local/CGAL-0.9}) and \texttt{} is +%%the root directory of your new \cgal\ installation (e.g. {\tt +%% /pub/local/CGAL-1.0}). + +%%It is {\bf strongly} recommended to rerun all tests using the option +%%\texttt{A} from the main menu. + +\section{Compiler workarounds} +In \cgal\ a number of compiler flags is defined, all of them start +with the prefix \texttt{CGAL\_CFG}. These flags are used to work +around compiler bugs and limitations. For example, the flag +\texttt{CGAL\_CFG\_NO\_BUILTIN\_BOOL} denotes that the compiler +doesn't know the keyword bool. If this flag is defined, the type bool +will be borrowed from the \stl\ library (currently by including the +file \texttt{}). + +For each compiler a file \texttt{} is defined, with the +correct settings of all flags. This file is generated automatically by the +\texttt{install\_cgal} script. For this the test programs in the directory +\texttt{\cgaldir/config/testfiles} are used. The file \texttt{} +and the test programs contain a description of the problem, so in case of trouble +with a \texttt{CGAL\_CFG} flag it is a good idea to take a look at it. + +The file \texttt{} manages all configuration problems of the compiler. +This file includes the file \texttt{CGAL/compiler\_config.h}. +It is therefore important that the file \texttt{} is always included +before any other \cgal\ source file that depends on workaround flags. In most cases +you don't have to do anything special for this, because many CGAL files +already take care of including \texttt{}. Nevertheless it would be a +good idea to always start your \cgal\ programs with including +\texttt{} (or \texttt{}, which contains some more basic +\cgal\ definitions). + diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/path.sty b/Old_Packages/Installation_doc/doc_tex/Installation/path.sty new file mode 100644 index 00000000000..a074a865cb3 --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/path.sty @@ -0,0 +1,308 @@ +%%% modified for TeX version before 3.0 +%%% for TeX version after 3.0 check the line indicated by %XXXXX +% +%%% @LaTeX-style-file{ +%%% author = "Philip Taylor", +%%% version = "3.02", +%%% date = "23-Oct-1991 13:45:12", +%%% filename = "path.sty", +%%% address = "The Computer Centre +%%% RHBNC, University of London +%%% Egham Hill +%%% Egham, Surrey TW20 0EX, ENGLAND +%%% Tel: +44 784 443172 +%%% Fax: +44 784 434348 +%%% checksum = "20022 300 1599 12491", +%%% email = "P.Taylor@Vax.Rhbnc.Ac.Uk (Internet)", +%%% codetable = "ISO/ASCII", +%%% keywords = "file name, filename, path name, pathname, +%%% discretionary, discretionaries", +%%% supported = "yes", +%%% docstring = {Computer filenames, host names, and e-mail +%%% addresses tend to be long strings that +%%% cause line breaking problems for TeX. +%%% Sometimes rather long strings are +%%% encountered; here are two examples: +%%% +%%% Friesland%rz.informatik.uni-hamburg.dbp.de%germany.csnet@relay.cs.net +%%% +%%% mighty-mouse-gw.scrc.symbolics.com +%%% +%%% This file defines a macro, \path|...|, +%%% similar to LaTeX's \verb|...| macro, that +%%% sets the text in the typewriter font, +%%% allowing hyphen-less line breaks at +%%% punctuation characters. +%%% +%%% The default set of punctuation characters is +%%% defined as +%%% +%%% \discretionaries |~!@$%^&*()_+`-=#{"}[]:;'<>,.?\/| +%%% +%%% However, you can change it as needed, for +%%% example +%%% +%%% \discretionaries +@%!.+ +%%% +%%% would assign to it the set @ % ! . which +%%% commonly occur in electronic mail addresses. +%%% +%%% The delimiter characters surrounding the +%%% arguments to \discretionaries and \path +%%% will normally be a punctuation character not +%%% found in the argument, and not otherwise +%%% significant to TeX. In particular, backslash +%%% cannot be used as a delimiter. In the rare +%%% event that this is required, set +%%% +%%% \specialpathdelimiterstrue +%%% +%%% This practice is not recommended, because TeX +%%% then runs about four times slower while it is +%%% typesetting \path\...\ requests. +%%% \specialpathdelimitersfalse is the normal +%%% setting. +%%% +%%% This file may be used in Plain TeX or AmSTeX +%%% by +%%% +%%% \input path.sty +%%% +%%% and in LaTeX by +%%% +%%% \documentstyle[...,path,...]{...} +%%% +%%% The checksum field above contains a CRC-16 +%%% checksum as the first value, followed by the +%%% equivalent of the standard UNIX wc (word +%%% count) utility output of lines, words, and +%%% characters. This is produced by Robert +%%% Solovay's checksum utility.} +%%% } +%%% ==================================================================== + +% ====================================================================== +% +% The \path Macro +% +% An early prototype of this code which was developed by Nelson H. F. +% Beebe used a recursive macro to peel off one +% character at a time, then with a nest of \ifx statements, test for +% each punctuation character, and if one is found, insert discretionary +% linebreaks in the form of \- or \penalty0. While this usually works, +% it is not entirely satisfactory, because the nested \ifx statements +% are ugly, and the recursion can exhaust TeX's macro stack for +% arguments longer than about 30 characters. +% +% A second version by NHFB built upon the ideas used by the LaTeX +% \verb|...| macro; this was mostly successful, but was flawed by its +% inability to handle at least the three characters ^ [ ], by loss of +% use of @ for naming internal private macros, and by its inability to +% allow the set of characters at which breaks are permissible. +% +% The problem was then passed off to Philip Taylor, who wrote this third +% version which fully solves the problem. Phil therefore gets the +% author credit in the file header above. [Gee, thanks ! ** Phil] +% +% ====================================================================== + +\immediate\write16{This is path.sty, Version 3.02 <23-Oct-1991 13:45:12>} +\immediate\write16{% +modified for TeX version<3.0 (10/19/1992) by M.Wat. (bear)} +% watanabe@akiu.gw.tohoku.ac.jp suggested correction at "XXXXX" below +% added by bear@hashi1.civil.tohoku.ac.jp + +%%% We will regrettably need one \count variable with an open name, +%%% in which to save the category code of commercial-at ... + +\newcount \ATcode +\ATcode = \catcode `\@ + +%%% Make commercial-at a letter to provide concealed control sequences + +\catcode `\@ = 11 + +%%% and then declare two \count variables with concealed names + +\newcount \c@tcode +\newcount \c@unter + +%%% and a boolean variable with an open name, to specify the nature of +%%% the delimiters which will be associated with the \path command + +\newif \ifspecialpathdelimiters + +%%% We need to define control sequences which expand to both +%%% active and passive spaces ... + +\begingroup +\catcode `\ = 10 +\gdef \passivesp@ce { } +\catcode `\ = 13\relax% +\gdef\activesp@ce{ }% +\endgroup + +%%% \discretionaries will define a macro \discr@ti@n@ri@s which will +%%% make every character between the first and final a +%%% discretionary breakpoint. + +\def \discretionaries %%% + % start a group (ended in \discr@ti@naries ), + % make every character (apart from space) active, + % then transfer control to \discr@tionaries ... + {\begingroup + \c@tcodes = 13 + \discr@tionaries + } + +%%% \discr@tionaries will receive as parameter the initial +%%% which will delimit the set of discretionaries; this +%%% will be active. + +\def \discr@tionaries #1%%% + % knowing the initial , define \discr@ti@naries with a + % delimited parameter structure, the final delimiter being + % the second instance of + {\def \discr@ti@naries ##1#1%%% + % \discr@ti@naries will receive as parameter the set of + % characters which are to be made discretionaries; it ends the + % group and then defines \discr@ti@n@ries, a tail-recursive + % macro, which will quietly process each of the + % discretionaries in turn ... + {\endgroup + \def \discr@ti@n@ries ####1%%% or + % by checking to see if it has reached the end of the + % list, i.e. comparing its parameter with the known final + % ... + {\if \noexpand ####1\noexpand #1% + % if they match, there is no more to do ... + \let \n@xt = \relax + \else + % otherwise the character becomes active and is + % defined as a discretionary with the three texts + % , thus suppressing true + % hyphenation; the macro then prepares to process + % the next character. + \catcode `####1 = 13 + \def ####1{\discretionary + {\char `####1}{}{\char `####1}}% + \let \n@xt = \discr@ti@n@ries + \fi + % here either tail recursion occurs, if there are more + % characters to process, or tail recursion ceases if all + % have been exhausted + \n@xt + }% + % of course, none of this must take place during the \stress + % {call} of \discretionaries; execution is deferred until + % another macro such as \path calls the concealed action + % macro \discr@ti@n@ri@s; we therefore define this macro to + % have the desired effect. + \def \discr@ti@n@ri@s {\discr@ti@n@ries ##1#1}% + }% + % and finally invoke \discr@ti@naries to process the set of + % discretionary characters; it will take everything up to the + % second instance of as its parameter (and therefore as the + % set of characters to be processed). + \discr@ti@naries + } + +%%% \path, which is the user interface to \p@th, first checks +%%% to see whether \specialpathdelimiters is or ; +%%% if , it needs to take special action to ensure that +%%% \stress {all} characters (apart from ) are acceptable +%%% as delimiters; this is very time-consuming, and should be +%%% avoided if at all possible. It also defines \endp@th, to +%%% close the appropriate number of groups, and finally transfers +%%% control to \p@th + +\def \path + {\ifspecialpathdelimiters + \begingroup + \c@tcodes = 12 + \def \endp@th {\endgroup \endgroup}% + \else + \let \endp@th = \endgroup + \fi + \p@th + } + +%%% \p@th, which has essentially the same syntax as \discretionaries, +%%% expects to be followed by a , a , and a second instance +%%% of ; it will typeset in the \tt font with hyphenation +%%% inhibited --- breaks (but not true hyphenation) are allowed at any +%%% or all of the special characters which have +%%% previously been declared as \discretionaries. + +\def \p@th #1%%% + % it starts by opening a group (ended in \p@@th) ... + % switches to \tt, and inhibits hyphenation; + % allows breaks at \discretionaries; saves the + % catcode of the initial , because if it has also been + % declared within \discretionaries, the initial and final + % won't match (which would be a disaster); \c@tcode is overloaded, + % but there is no conflict that I can detect ... + % invokes \discr@ti@n@ri@s to render active the set of special + % characters which have previously been declared as + % \discretionaries; each of these characters will expand to a real + % \discretionary, with replacement texts ; and + % re-instates the catcode of the initial . + {\begingroup + \tt + \c@tcode = \catcode `#1 + \discr@ti@n@ri@s + \catcode `\ = \active + \expandafter \edef \activesp@ce {\passivesp@ce \hbox {}}% + \catcode `#1 = \c@tcode + % it next defines an inner macro \p@@th with delimited parameter + % structure, the final delimiter being the same as the initial + % delimiter which it has itself received as #1. + \def \p@@th ##1#1% + % Within \p@@th, + % permissible breakpoints are specified, + % the path is typeset, + % and the group(s) ended. + {\hbox {}##1% + \endp@th + }% + \p@@th + } + +%%% \c@tcodes expects to be followed by the r-h-s of a numeric +%%% assignment optionally including the assignment operator; it saves +%%% the value of the r-h-s in \c@tcode, and invokes \c@tc@des. + +\def \c@tcodes {\afterassignment \c@tc@des \c@tcode} + +%%% \c@tc@des uses the value saved in \c@tcode, and assigns it to the +%%% \catcode of all characters with the single exception of , +%%% which retains its normal catcode of 10; on exit, every single +%%% character apart from will have the catcode which followed +%%% \c@tcodes. The code is optimised to avoid unnecessary usage of +%%% save-stack space. + +\def \c@tc@des + {\c@unter = 0 + \loop + \ifnum \catcode \c@unter = \c@tcode + \else + \catcode \c@unter = \c@tcode + \fi +% \ifnum \c@unter < 255 %XXXXX + \ifnum \c@unter < 127 + \advance \c@unter by 1 + \repeat + \catcode `\ = 10 + } + +%%% We restore the original catcode of commercial-at + +\catcode `\@ = \ATcode + +%%% Define a default set of discretionary break characters +%%% to include all punctuation characters except vertical +%%% bar + +\discretionaries |~!@$%^&*()_+`-=#{}[]:";'<>,.?\/| + +\endinput diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/title.tex b/Old_Packages/Installation_doc/doc_tex/Installation/title.tex new file mode 100644 index 00000000000..5ba67d6213f --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/title.tex @@ -0,0 +1,31 @@ + +\pagestyle{empty} + +\begin{titlepage} +\mbox{} +\vskip3cm +\centerline{\IpeScale{25}\Ipe{Fig/c-simp.ipe} \Ipe{Fig/g-simp.ipe} + \Ipe{Fig/a-simp.ipe} \Ipe{Fig/l-simp.ipe}} + +\vskip2cm +\centerline{ {\Huge\bf CGAL} {\huge\bf Installation Guide} } + +\vskip2cm +\centerline{Release 1.0, April 1998} +%\centerline{Update: \today} + +\end{titlepage} + +\mbox{} +\vfill +This manual was written by Michael Hoffmann and Wieger Wesselink. +\vfill +This work was supported +by the ESPRIT IV Long Term Research Project No.~21957 (CGAL). +\vskip5cm + +\pagestyle{plain} +\pagenumbering{roman} +\setcounter{page}{0} +\cleardoublepage + diff --git a/Old_Packages/Installation_doc/doc_tex/Installation/wrapper.tex b/Old_Packages/Installation_doc/doc_tex/Installation/wrapper.tex new file mode 100644 index 00000000000..080eec6f36f --- /dev/null +++ b/Old_Packages/Installation_doc/doc_tex/Installation/wrapper.tex @@ -0,0 +1,28 @@ +\documentclass[]{article} +\usepackage{alltt} +\usepackage{cc_manual} +\usepackage{amssymb} +\usepackage{epsf} +\usepackage{ipe} +\usepackage{path} +\textwidth 15.6cm +\textheight 23 cm +\topmargin -14mm +\evensidemargin 3mm +\oddsidemargin 3mm +\headsep 1cm +\parindent 0em +\setlength{\parskip}{1ex minus 0.9ex} + +\begin{document} + +\include{title} + +\pagenumbering{arabic} + +\tableofcontents + +\include{installation} + +\end{document} + diff --git a/Old_Packages/Installation_doc/version b/Old_Packages/Installation_doc/version new file mode 100644 index 00000000000..22b89134e61 --- /dev/null +++ b/Old_Packages/Installation_doc/version @@ -0,0 +1 @@ +1.0 (02 Apr 1998)