(*^ ::[paletteColors = 128; showRuler; currentKernel; fontset = title, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, L1, e8, 24, "New York"; ; fontset = subtitle, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, L1, e6, 18, "New York"; ; fontset = subsubtitle, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, italic, L1, e6, 14, "New York"; ; fontset = section, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, grayBox, M22, bold, L1, a20, 18, "New York"; ; fontset = subsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, blackBox, M19, bold, L1, a15, 14, "New York"; ; fontset = subsubsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, whiteBox, M18, bold, L1, a12, 12, "New York"; ; fontset = text, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = smalltext, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 10, "New York"; ; fontset = input, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeInput, M42, N23, bold, L-5, 12, "Courier"; ; fontset = output, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier"; ; fontset = message, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, R65535, L-5, 12, "Courier"; ; fontset = print, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier"; ; fontset = info, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, B65535, L-5, 12, "Courier"; ; fontset = postscript, PostScript, formatAsPostScript, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeGraphics, M7, l34, w282, h287, L1, 12, "Courier"; ; fontset = name, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, italic, L1, 10, "Geneva"; ; fontset = header, inactive, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = Left Header, inactive, 12, "Palatino"; ; fontset = footer, inactive, noKeepOnOnePage, preserveAspect, center, M7, L1, 12, "New York"; ; fontset = Left Footer, inactive, 12, "Palatino"; ; fontset = help, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 10, "Geneva"; ; fontset = clipboard, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = completions, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "Courier"; ; fontset = special1, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = special2, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = special3, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = special4, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ; fontset = special5, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "New York"; ;] :[font = input; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] from Exploring Parallel Graphics at the concept level with Mathematicaª © Jacques J. Vidal, 1992 ;[s] 5:0,2;4,3;60,2;71,3;98,1;99,-1; 4:0,12,10,Courier,1,12,0,0,0;1,15,12,New York,1,12,0,0,0;2,17,14,New York,3,14,0,0,0;2,17,14,New York,1,14,0,0,0; :[font = subsection; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; ] Parametric Representation of 3D Curves :[font = text; inactive; closed; dontPreserveAspect; cellOutline; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontColorRed = 65535; fontSize = 14; startGroup; ] We need functions that make graphic objects out of parametric functions :[font = input; closed; dontPreserveAspect; cellOutline; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontColorRed = 65535; fontSize = 14; ] curveline2D[ xy:{ _, _}, ul:{_, u0_, u1_, du_}] := Graphics[Line[Table[N[xy], ul]]] /; NumberQ[N[u0]] && NumberQ[N[u1]] && NumberQ[N[du]] curveline2D[xy_, {u_, u0_, u1_}] := Block[{plotpoints}, plotpoints = PlotPoints/. Options[Plot3D]; curveline2D[ xy, {u, u0, u1, (u1-u0)/(plotpoints-1)}] ] :[font = input; closed; dontPreserveAspect; cellOutline; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontColorRed = 65535; fontSize = 14; endGroup; ] curveline3D[ xyz:{_, _, _}, ul:{_, u0_, u1_, du_}] := Graphics3D[Line[Table[N[xyz], ul]]] /; NumberQ[N[u0]] && NumberQ[N[u1]] && NumberQ[N[du]] curveline3D[xyz_, {u_, u0_, u1_}] := Block[{plotpoints}, plotpoints = PlotPoints/. Options[Plot3D]; curveline3D[ xyz, {u, u0, u1, (u1-u0)/(plotpoints-1)}] ] :[font = section; inactive; pageBreakBelow; dontNoPageBreakBelow; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Parametric Vector Equations The position of a point P in 2D or 3D space is given by its coordinates P{x,y} or P{x,y,z}. A line or curve trajectory in space is intrinsically a one-dimensional object that can therefore be represented by one vector (one point in 2D or 3D space) function of a single parameter u. :[font = section; inactive; dontNoPageBreakBelow; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Lines: P[u] = a1*u + a0 A first-order function. It is defined completely by 2 constant vectors (two fixed points). A nth order vector function would require n+1 points. For instance these two points could be the two ends of a line segment P1 and P2 ;[s] 13:0,2;11,3;12,2;20,3;22,2;27,3;29,2;209,4;217,2;249,3;251,2;256,3;258,1;259,-1; 5:0,23,18,New York,1,18,0,0,0;1,12,9,New York,5,9,0,0,0;6,18,14,New York,1,14,0,0,0;5,18,14,New York,5,14,0,0,0;1,18,14,New York,3,14,0,0,0; :[font = input; PICT; formatAsPICT; output; inactive; preserveAspect; groupLikeGraphics; leftWrapOffset = 18; leftNameWrapOffset = 18; pictureLeft = 30; pictureWidth = 190; pictureHeight = 118; fontSize = 14; pictureID = 14538; ] :[font = input; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; startGroup; ] P[u] = a1*u + a0 = (P2-P1)*u + P1 x = (x2-x1)*u + x1; y = (y2-y1)*u + y1 ;[s] 13:0,2;1,3;9,2;11,3;16,2;20,3;23,2;25,3;26,2;28,3;34,2;38,3;77,1;78,-1; 4:0,12,10,Courier,1,12,0,0,0;1,15,12,New York,1,12,0,0,0;6,17,14,New York,5,14,0,0,0;6,17,14,New York,1,14,0,0,0; :[font = output; output; inactive; preserveAspect; fontSize = 14; ] P1 + (-P1 + P2)*u ;[o] P1 + (-P1 + P2) u :[font = output; output; inactive; preserveAspect; fontSize = 14; endGroup; ] y1 + u*(-y1 + y2) ;[o] y1 + u (-y1 + y2) :[font = input; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; ] The fixed points, hence the form of the polynomials is chosen to to fit some user criterion. Here u=0 at P1, the beginning of the segment, and u=1 at P2. ;[s] 2:0,2;156,1;157,-1; 3:0,12,10,Courier,1,12,0,0,0;1,15,12,New York,1,12,0,0,0;1,17,14,New York,1,14,0,0,0; :[font = section; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; ] Cubics: A cubic (3rd degree polynomial such as P[u] = a3*u^3 + a2*u^2 +a1*u + a0 Third is the minimal order capable of representing(in3D) a non-planar curve segment. Note that a3, a2, a1 and a0 are vectors and that P[u] expands into two (or three in 3D) separate equations repectively for Px, Py and Pz. ;[s] 19:0,1;8,2;66,1;68,2;75,1;77,2;83,1;85,2;90,1;92,2;191,1;193,2;195,1;197,2;199,1;201,2;206,1;208,2;318,0;319,-1; 3:1,23,18,New York,1,18,0,0,0;9,18,14,New York,5,14,0,0,0;9,18,14,New York,1,14,0,0,0; :[font = subsection; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; ] Basis Functions: Observe that P[u] is also a weighted sum of four independent functions of u, namely u^3, u^2, u and 1. There are other variant sets of cubic basis functions. A suitable choice will yield useful properties. Bezier curves and Splines are such variant :[font = section; inactive; pageBreakBelow; dontNoPageBreakBelow; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; ] To get a whole curve, we will string third degree polynomial segments fitted end-to-end, each controlled by FOUR points rather than represent the whole curve with a polynomial of high degree. In this way the curve can be modified locally, without disturbing other parts. ;[s] 4:0,1;64,2;73,1;275,0;276,-1; 3:1,23,18,New York,1,18,0,0,0;2,18,14,New York,1,14,0,0,0;1,18,14,New York,3,14,0,0,0; :[font = subsubsection; inactive; noPageBreak; dontPreserveAspect; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Bezier Segments ;[s] 2:0,1;15,0;16,-1; 2:1,16,12,New York,1,12,0,0,0;1,18,14,New York,1,14,0,0,0; :[font = subsection; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; ] A single curve segment in the Bezier formulation is a weighted sum of four specific basis polynomials of the parameter u, called Blending Functions defined on the interval {0,1} and four Control Points that define a bounding box (a convex hull) for the curve. The curve is anchored at the two end points P[0] and P[3]. The two middle points are not generally on the curve but exert a "pull" to it through their respective blending function. Each point is a "handle" on one of the blending functions and from its position controls the amount of each function that is blended in the final curve. ;[s] 5:0,0;130,1;148,0;188,1;203,0;599,-1; 2:3,18,14,New York,1,14,0,0,0;2,18,14,New York,3,14,0,0,0; :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] The Bezier blending functions have the general form b[u,n,k] = Binomial[n,k] u^k (1-u)^(n-k) which for third order functions reduces to ;[s] 4:0,1;53,2;94,1;137,0;138,-1; 3:1,16,12,New York,0,12,0,0,0;2,18,14,New York,0,14,0,0,0;1,18,14,New York,1,14,0,0,0; :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Clear[u, bezierfunc] bezierfunc[u_] = {(1 - u)^3, 3*(1 - u)^2*u, 3*(1 - u)*u^2, u^3}; :[font = input; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; startGroup; ] Plot[Release[bezierfunc[u]], {u,0,1}] :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; pictureLeft = 0; pictureTop = 4; pictureWidth = 274; pictureHeight = 170; fontSize = 14; endGroup; ] %! %%Creator: Mathematica %%AspectRatio: 0.61803 MathPictureStart % Scaling calculations 0.02381 0.95238 0.01472 0.5886 [ [(0.2)] 0.21429 0.00222 0 1 Msboxa [(0.4)] 0.40476 0.00222 0 1 Msboxa [(0.6)] 0.59524 0.00222 0 1 Msboxa [(0.8)] 0.78571 0.00222 0 1 Msboxa [(1)] 0.97619 0.00222 0 1 Msboxa [(0.2)] 0.01131 0.13244 1 0 Msboxa [(0.4)] 0.01131 0.25016 1 0 Msboxa [(0.6)] 0.01131 0.36788 1 0 Msboxa [(0.8)] 0.01131 0.4856 1 0 Msboxa [(1)] 0.01131 0.60332 1 0 Msboxa [ -0.001 -0.001 0 0 ] [ 1.001 0.61903 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics [ ] 0 setdash 0 setgray gsave gsave 0.002 setlinewidth 0 0.01472 moveto 1 0.01472 lineto stroke 0.21429 0.00847 moveto 0.21429 0.02097 lineto stroke 0 setgray [(0.2)] 0.21429 0.00222 0 1 Mshowa 0.40476 0.00847 moveto 0.40476 0.02097 lineto stroke 0 setgray [(0.4)] 0.40476 0.00222 0 1 Mshowa 0.59524 0.00847 moveto 0.59524 0.02097 lineto stroke 0 setgray [(0.6)] 0.59524 0.00222 0 1 Mshowa 0.78571 0.00847 moveto 0.78571 0.02097 lineto stroke 0 setgray [(0.8)] 0.78571 0.00222 0 1 Mshowa 0.97619 0.00847 moveto 0.97619 0.02097 lineto stroke 0 setgray [(1)] 0.97619 0.00222 0 1 Mshowa 0.02381 0 moveto 0.02381 0.61803 lineto stroke 0.01756 0.13244 moveto 0.03006 0.13244 lineto stroke 0 setgray [(0.2)] 0.01131 0.13244 1 0 Mshowa 0.01756 0.25016 moveto 0.03006 0.25016 lineto stroke 0 setgray [(0.4)] 0.01131 0.25016 1 0 Mshowa 0.01756 0.36788 moveto 0.03006 0.36788 lineto stroke 0 setgray [(0.6)] 0.01131 0.36788 1 0 Mshowa 0.01756 0.4856 moveto 0.03006 0.4856 lineto stroke 0 setgray [(0.8)] 0.01131 0.4856 1 0 Mshowa 0.01756 0.60332 moveto 0.03006 0.60332 lineto stroke 0 setgray [(1)] 0.01131 0.60332 1 0 Mshowa grestore grestore 0 0 moveto 1 0 lineto 1 0.618034 lineto 0 0.618034 lineto closepath clip newpath 0 setgray gsave gsave gsave 0.004 setlinewidth 0.02381 0.60332 moveto 0.06349 0.53277 lineto 0.10317 0.46809 lineto 0.14286 0.40903 lineto 0.18254 0.35534 lineto 0.22222 0.30676 lineto 0.2619 0.26303 lineto 0.30159 0.2239 lineto 0.34127 0.18912 lineto 0.38095 0.15842 lineto 0.42063 0.13155 lineto 0.46032 0.10826 lineto 0.5 0.08829 lineto 0.53968 0.07139 lineto 0.57937 0.05729 lineto 0.61905 0.04575 lineto 0.65873 0.03652 lineto 0.69841 0.02932 lineto 0.7381 0.02391 lineto 0.75794 0.0218 lineto 0.77778 0.02004 lineto 0.79762 0.0186 lineto 0.81746 0.01744 lineto 0.8373 0.01654 lineto 0.85714 0.01586 lineto 0.86706 0.0156 lineto 0.87698 0.01538 lineto 0.8869 0.0152 lineto 0.89683 0.01506 lineto 0.90675 0.01494 lineto 0.91667 0.01486 lineto 0.92163 0.01483 lineto 0.92659 0.0148 lineto 0.93155 0.01478 lineto 0.93651 0.01476 lineto 0.94147 0.01474 lineto 0.94643 0.01473 lineto 0.94891 0.01473 lineto 0.95139 0.01473 lineto 0.95387 0.01472 lineto 0.95635 0.01472 lineto 0.95883 0.01472 lineto 0.96131 0.01472 lineto 0.96255 0.01472 lineto 0.96379 0.01472 lineto 0.96503 0.01472 lineto 0.96627 0.01472 lineto 0.96751 0.01472 lineto 0.96875 0.01472 lineto 0.96999 0.01472 lineto Mistroke 0.97123 0.01472 lineto 0.97619 0.01472 lineto Mfstroke grestore grestore gsave gsave 0.004 setlinewidth 0.02381 0.01472 moveto 0.06349 0.08229 lineto 0.10317 0.13836 lineto 0.14286 0.18371 lineto 0.18254 0.21909 lineto 0.20238 0.23329 lineto 0.22222 0.24528 lineto 0.24206 0.25516 lineto 0.2619 0.26303 lineto 0.28175 0.26899 lineto 0.29167 0.27128 lineto 0.30159 0.27312 lineto 0.31151 0.27454 lineto 0.31647 0.27509 lineto 0.32143 0.27553 lineto 0.32639 0.27588 lineto 0.32887 0.27601 lineto 0.33135 0.27612 lineto 0.33383 0.27621 lineto 0.33507 0.27624 lineto 0.33631 0.27627 lineto 0.33755 0.27629 lineto 0.33879 0.2763 lineto 0.34003 0.27631 lineto 0.34127 0.27632 lineto 0.34251 0.27631 lineto 0.34375 0.2763 lineto 0.34499 0.27629 lineto 0.34623 0.27627 lineto 0.34747 0.27624 lineto 0.34871 0.27621 lineto 0.35119 0.27613 lineto 0.35615 0.27589 lineto 0.36111 0.27557 lineto 0.37103 0.27465 lineto 0.38095 0.27338 lineto 0.40079 0.26985 lineto 0.42063 0.26508 lineto 0.46032 0.25217 lineto 0.5 0.23544 lineto 0.53968 0.21564 lineto 0.57937 0.19354 lineto 0.61905 0.16991 lineto 0.65873 0.14552 lineto 0.69841 0.12112 lineto 0.7381 0.09749 lineto 0.77778 0.07539 lineto 0.81746 0.05559 lineto 0.85714 0.03886 lineto 0.87698 0.03188 lineto Mistroke 0.89683 0.02596 lineto 0.91667 0.02118 lineto 0.92659 0.01926 lineto 0.93651 0.01765 lineto 0.94643 0.01639 lineto 0.95139 0.01588 lineto 0.95635 0.01547 lineto 0.96131 0.01514 lineto 0.96379 0.01501 lineto 0.96627 0.0149 lineto 0.96875 0.01482 lineto 0.96999 0.01479 lineto 0.97123 0.01476 lineto 0.97247 0.01474 lineto 0.97371 0.01473 lineto 0.97619 0.01472 lineto Mfstroke grestore grestore gsave gsave 0.004 setlinewidth 0.02381 0.01472 moveto 0.02505 0.01472 lineto 0.02629 0.01473 lineto 0.02753 0.01474 lineto 0.02877 0.01476 lineto 0.03125 0.01482 lineto 0.03373 0.0149 lineto 0.03869 0.01514 lineto 0.04365 0.01547 lineto 0.05357 0.01639 lineto 0.06349 0.01765 lineto 0.08333 0.02118 lineto 0.10317 0.02596 lineto 0.14286 0.03886 lineto 0.18254 0.05559 lineto 0.22222 0.07539 lineto 0.2619 0.09749 lineto 0.30159 0.12112 lineto 0.34127 0.14552 lineto 0.38095 0.16991 lineto 0.42063 0.19354 lineto 0.46032 0.21564 lineto 0.5 0.23544 lineto 0.53968 0.25217 lineto 0.55952 0.25915 lineto 0.57937 0.26508 lineto 0.59921 0.26985 lineto 0.60913 0.27178 lineto 0.61905 0.27338 lineto 0.62897 0.27465 lineto 0.63393 0.27515 lineto 0.63889 0.27557 lineto 0.64385 0.27589 lineto 0.64881 0.27613 lineto 0.65129 0.27621 lineto 0.65253 0.27624 lineto 0.65377 0.27627 lineto 0.65501 0.27629 lineto 0.65625 0.2763 lineto 0.65749 0.27631 lineto 0.65873 0.27632 lineto 0.65997 0.27631 lineto 0.66121 0.2763 lineto 0.66245 0.27629 lineto 0.66369 0.27627 lineto 0.66493 0.27624 lineto 0.66617 0.27621 lineto 0.66865 0.27612 lineto 0.67113 0.27601 lineto 0.67361 0.27588 lineto Mistroke 0.67857 0.27553 lineto 0.68353 0.27509 lineto 0.68849 0.27454 lineto 0.69841 0.27312 lineto 0.70833 0.27128 lineto 0.71825 0.26899 lineto 0.7381 0.26303 lineto 0.75794 0.25516 lineto 0.77778 0.24528 lineto 0.81746 0.21909 lineto 0.85714 0.18371 lineto 0.89683 0.13836 lineto 0.93651 0.08229 lineto 0.97619 0.01472 lineto Mfstroke grestore grestore gsave gsave 0.004 setlinewidth 0.02381 0.01472 moveto 0.02505 0.01472 lineto 0.02629 0.01472 lineto 0.02753 0.01472 lineto 0.02877 0.01472 lineto 0.03001 0.01472 lineto 0.03125 0.01472 lineto 0.03249 0.01472 lineto 0.03373 0.01472 lineto 0.03497 0.01472 lineto 0.03621 0.01472 lineto 0.03869 0.01472 lineto 0.04117 0.01472 lineto 0.04365 0.01472 lineto 0.04613 0.01472 lineto 0.04861 0.01473 lineto 0.05357 0.01473 lineto 0.05853 0.01474 lineto 0.06349 0.01476 lineto 0.06845 0.01478 lineto 0.07341 0.0148 lineto 0.08333 0.01486 lineto 0.09325 0.01494 lineto 0.10317 0.01506 lineto 0.1131 0.0152 lineto 0.12302 0.01538 lineto 0.14286 0.01586 lineto 0.1627 0.01654 lineto 0.18254 0.01744 lineto 0.20238 0.0186 lineto 0.22222 0.02004 lineto 0.2619 0.02391 lineto 0.30159 0.02932 lineto 0.34127 0.03652 lineto 0.38095 0.04575 lineto 0.42063 0.05729 lineto 0.46032 0.07139 lineto 0.5 0.08829 lineto 0.53968 0.10826 lineto 0.57937 0.13155 lineto 0.61905 0.15842 lineto 0.65873 0.18912 lineto 0.69841 0.2239 lineto 0.7381 0.26303 lineto 0.77778 0.30676 lineto 0.81746 0.35534 lineto 0.85714 0.40903 lineto 0.89683 0.46809 lineto 0.93651 0.53277 lineto 0.97619 0.60332 lineto Mistroke Mfstroke grestore grestore grestore % End of Graphics MathPictureEnd :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Let us name four vectors to serve as coefficients or "weights" for the functions. We will show that a good name for them would be the "control points" :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] controlpoints = {P[0], P[1], P[2], P[3]}; ;[s] 5:0,2;17,3;18,4;20,5;42,1;43,-1; 6:0,12,10,Courier,1,12,0,0,0;1,15,12,New York,1,12,0,0,0;1,14,11,Courier,1,14,0,0,0;1,14,11,Courier,0,14,0,0,0;1,17,14,New York,0,14,0,0,0;1,17,14,New York,1,14,0,0,0; :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Then, a general point P[u] on the Bezier segment is expressed by a polynomial, a sum of the basis functions weighted by the control points. It is obtained by forming the dot product: :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] beziersegment=controlpoints.bezierfunc[u] :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; ] (1 - u)^3*P[0] + 3*(1 - u)^2*u*P[1] + 3*(1 - u)*u^2*P[2] + u^3*P[3] ;[o] 3 2 2 3 (1 - u) P[0] + 3 (1 - u) u P[1] + 3 (1 - u) u P[2] + u P[3] :[font = input; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; ] What did we gain by this reformulation? Let us check the value of P[u] at both ends of the segment (u=0): ;[s] 2:0,2;108,1;109,-1; 3:0,12,10,Courier,1,12,0,0,0;1,15,12,New York,0,12,0,0,0;1,17,14,New York,0,14,0,0,0; :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] ReplaceAll[beziersegment,u->0] :[font = output; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; endGroup; ] P[0] ;[o] P[0] :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] ReplaceAll[beziersegment,u->1] :[font = output; output; inactive; preserveAspect; fontSize = 14; endGroup; ] P[3] ;[o] P[3] :[font = text; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; fontSize = 14; ] The :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; ] Let us rewrite the weighted sum in terms of the powers of u: :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; startGroup; ] Collect[Expand[beziersegment],u] :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; endGroup; ] P[0] + u*(-3*P[0] + 3*P[1]) + u^2*(3*P[0] - 6*P[1] + 3*P[2]) + u^3*(-P[0] + 3*P[1] - 3*P[2] + P[3]) ;[o] 2 P[0] + u (-3 P[0] + 3 P[1]) + u (3 P[0] - 6 P[1] + 3 P[2]) + 3 u (-P[0] + 3 P[1] - 3 P[2] + P[3]) :[font = text; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; ] This expression revieals that beziersegment can be written in vector-matrix form as the triple dot product, : powerfunc.bezier.controlpoints where :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; startGroup; ] powerfunc = {u^3,u^2,u,1} :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; endGroup; ] {u^3, u^2, u, 1} ;[o] 3 2 {u , u , u, 1} :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; ] and bezier is a matrix of integers, characteristic of the Bezier representation. ;[s] 3:0,0;4,1;10,0;82,-1; 2:2,16,12,New York,0,12,0,0,0;1,16,12,New York,1,12,0,0,0; :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; startGroup; ] bezier = Transpose[{{-1,3,-3,1},{3,-6,3,0},{-3,3,0,0},{1,0,0,0}}] MatrixForm[bezier] :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; ] {{-1, 3, -3, 1}, {3, -6, 3, 0}, {-3, 3, 0, 0}, {1, 0, 0, 0}} ;[o] {{-1, 3, -3, 1}, {3, -6, 3, 0}, {-3, 3, 0, 0}, {1, 0, 0, 0}} :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; endGroup; ] MatrixForm[{{-1, 3, -3, 1}, {3, -6, 3, 0}, {-3, 3, 0, 0}, {1, 0, 0, 0}}] ;[o] -1 3 -3 1 3 -6 3 0 -3 3 0 0 1 0 0 0 :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; startGroup; ] Collect[Expand[powerfunc.bezier.controlpoints],u] ;[s] 2:0,1;49,0;50,-1; 2:1,12,10,Courier,1,12,0,0,0;1,15,12,New York,1,12,0,0,0; :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; endGroup; ] P[0] + u*(-3*P[0] + 3*P[1]) + u^2*(3*P[0] - 6*P[1] + 3*P[2]) + u^3*(-P[0] + 3*P[1] - 3*P[2] + P[3]) ;[o] 2 P[0] + u (-3 P[0] + 3 P[1]) + u (3 P[0] - 6 P[1] + 3 P[2]) + 3 u (-P[0] + 3 P[1] - 3 P[2] + P[3]) :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; ] The expression is identical. This is a canonical matrix formulation that can be generalized to other polynomial constructions as well (such as Hermite, Lagrange or Splines). the only part that will change will be the components of the square matrix. :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] We can also calculate an expression for the derivative of the curve, which yields a formula for the magnitude and direction of the tangent vector : :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] dbeziersegment = controlpoints.D[bezierfunc[u],u] :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; ] -3*(1 - u)^2*P[0] + (3*(1 - u)^2 - 6*(1 - u)*u)*P[1] + (6*(1 - u)*u - 3*u^2)*P[2] + 3*u^2*P[3] ;[o] 2 2 -3 (1 - u) P[0] + (3 (1 - u) - 6 (1 - u) u) P[1] + 2 2 (6 (1 - u) u - 3 u ) P[2] + 3 u P[3] :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] and evaluate this derivative at both ends of the interval to find the direction of the tangent vector at the two boundaries: :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] dbeziersegment/.u->0 :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] -3*P[0] + 3*P[1] ;[o] -3 P[0] + 3 P[1] :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] dbeziersegment/.u->1 :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; endGroup; ] -3*P[2] + 3*P[3] ;[o] -3 P[2] + 3 P[3] :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] We see that the initial tangent to the curve (at u=0) points in the direction P0->P1 and that the final tangent (at the end of the segment, u=1) points to the direction P2-P3 . We can therefore join succesive segments while maintaining first-order continuity by forming the next segment with control points such that the first control point is the P[3] from the previous segment and the second is constrained to lie on the line defined by the line P[2]-P[3]. ;[s] 4:0,1;236,2;258,1;464,0;465,-1; 3:1,16,12,New York,0,12,0,0,0;2,18,14,New York,0,14,0,0,0;1,18,14,New York,2,14,0,0,0; :[font = subsubsection; inactive; dontPreserveAspect; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Examples in Two Dimensions :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] * One Bezier Segment ;[s] 3:0,1;1,2;21,0;22,-1; 3:1,16,12,New York,0,12,0,0,0;1,18,14,New York,0,14,0,0,0;1,18,14,New York,1,14,0,0,0; :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] Clear [ u,controlpoints ] beziersegment =powerfunc.bezier.controlpoints ;[s] 3:0,1;26,2;71,0;72,-1; 3:1,12,10,Courier,1,12,0,0,0;1,14,11,Courier,1,14,0,0,0;1,17,14,New York,1,14,0,0,0; :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; ] {1 - 3*u + 3*u^2 - u^3, 3*u - 6*u^2 + 3*u^3, 3*u^2 - 3*u^3, u^3} . controlpoints ;[o] 2 3 2 3 2 3 3 {1 - 3 u + 3 u - u , 3 u - 6 u + 3 u , 3 u - 3 u , u } . controlpoints :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] controlpoints =Table[ P[i]=Table[Random[Integer,{0,10}],{2}],{i,0,3}]; Show[curveline2D[beziersegment, {u,0,1,0.05}], Graphics[{PointSize[0.03],Map[Point,controlpoints], Line[controlpoints]}]] :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 275; pictureHeight = 170; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 0.61803 MathPictureStart % Scaling calculations -0.7381 0.19048 0.01472 0.05886 [ [ 0 0 0 0 ] [ 1 0.618034 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics [ ] 0 setdash 0 setgray gsave gsave grestore grestore 0 0 moveto 1 0 lineto 1 0.618034 lineto 0 0.618034 lineto closepath clip newpath 0 setgray gsave gsave 0.004 setlinewidth 0.02381 0.60332 moveto 0.15952 0.54328 lineto 0.28095 0.48678 lineto 0.3881 0.4338 lineto 0.48095 0.38436 lineto 0.55952 0.33845 lineto 0.62381 0.29607 lineto 0.67381 0.25722 lineto 0.70952 0.2219 lineto 0.73095 0.19012 lineto 0.7381 0.16187 lineto 0.73095 0.13714 lineto 0.70952 0.11595 lineto 0.67381 0.0983 lineto 0.62381 0.08417 lineto 0.55952 0.07358 lineto 0.48095 0.06651 lineto 0.3881 0.06298 lineto 0.28095 0.06298 lineto 0.15952 0.06651 lineto 0.02381 0.07358 lineto stroke grestore gsave gsave gsave 0.03 setlinewidth 0.02381 0.60332 Mdot 0.97619 0.1913 Mdot 0.97619 0.01472 Mdot 0.02381 0.07358 Mdot grestore 0.004 setlinewidth 0.02381 0.60332 moveto 0.97619 0.1913 lineto 0.97619 0.01472 lineto 0.02381 0.07358 lineto stroke grestore grestore grestore % End of Graphics MathPictureEnd :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; ] Graphics[{{Line[{{4., 10.}, {4.7125, 8.980000000000000001}, {5.35, 8.020000000000000001}, {5.9125, 7.12}, {6.4, 6.28}, {6.8125, 5.5}, {7.15, 4.78}, {7.4125, 4.119999999999999999}, {7.599999999999999999, 3.52}, {7.7125, 2.979999999999999999}, {7.75, 2.5}, {7.712500000000000001, 2.08}, {7.599999999999999999, 1.719999999999999999}, {7.412499999999999999, 1.419999999999999999}, {7.149999999999999999, 1.179999999999999999}, {6.812499999999999999, 0.9999999999999999981}, {6.399999999999999998, 0.8800000000000000003}, {5.912499999999999999, 0.8199999999999999999}, {5.349999999999999999, 0.8199999999999999988}, {4.712499999999999998, 0.8800000000000000017}, {3.999999999999999998, 0.9999999999999999982}}]}, {{PointSize[0.03], {Point[{4, 10}], Point[{9, 3}], Point[{9, 0}], Point[{4, 1}]}, Line[{{4, 10}, {9, 3}, {9, 0}, {4, 1}}]}}}] ;[o] -Graphics- :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] {{4.00404, 10.0015}, {8.99575, 3.04284}, {8.99575, -0.00156263}, {4.00404, 0.992527}} :[font = subsubsection; inactive; dontPreserveAspect; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Bezier Curves :[font = text; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Connecting two or more Bezier Segment is simple but imposes constraints on the three points that saddle the boundary. The middle point is shared by both segments, i.e., the last control point of a segment must be the first control point of the next. In addition, if first order continuity is desired, the three points must be colinear. Here is a quick example: ;[s] 3:0,1;38,2;367,0;368,-1; 3:1,16,12,New York,0,12,0,0,0;1,18,14,New York,1,14,0,0,0;1,18,14,New York,0,14,0,0,0; :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] Clear [ u, b1, b2 ] allcontrolpoints = Round[{{3.96564, -0.0636932}, {12.23111, 8.63459},{2.78686, 16.91616}, {6.13512, 4.72036}, {6.84548, 3.22923}, {7.78622, 1.30318}, {8.45818, 9.38015}}] :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] {{4, 0}, {12, 9}, {3, 17}, {6, 5}, {7, 3}, {8, 1}, {8, 9}} ;[o] {{4, 0}, {12, 9}, {3, 17}, {6, 5}, {7, 3}, {8, 1}, {8, 9}} :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] controlpoints = Take[allcontrolpoints,{1,4}] b1 = beziersegment; controlpoints = Take[allcontrolpoints,{4,7}] b2 = beziersegment; :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] Show[curveline2D[b1, {u,0,1,0.02}],curveline2D[b2, {u,0,1,0.02}], Graphics[{PointSize[0.03],Map[Point,allcontrolpoints], Line[allcontrolpoints]}]] :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 89; pictureWidth = 250; pictureHeight = 154; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 0.61803 MathPictureStart % Scaling calculations -0.29365 0.10582 0.01472 0.03462 [ [ 0 0 0 0 ] [ 1 0.618034 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics [ ] 0 setdash 0 setgray gsave gsave grestore grestore 0 0 moveto 1 0 lineto 1 0.618034 lineto 0 0.618034 lineto closepath clip newpath 0 setgray gsave gsave 0.004 setlinewidth 0.12963 0.01472 moveto 0.17829 0.03337 lineto 0.22278 0.0519 lineto 0.26324 0.07029 lineto 0.29984 0.0885 lineto 0.3327 0.1065 lineto 0.36198 0.12426 lineto 0.38783 0.14175 lineto 0.41039 0.15894 lineto 0.42981 0.17578 lineto 0.44624 0.19227 lineto 0.45983 0.20835 lineto 0.47072 0.224 lineto 0.47906 0.23919 lineto 0.485 0.25389 lineto 0.48868 0.26806 lineto 0.49025 0.28167 lineto 0.48986 0.2947 lineto 0.48766 0.3071 lineto 0.4838 0.31886 lineto 0.47841 0.32993 lineto 0.47166 0.34029 lineto 0.46368 0.3499 lineto 0.45462 0.35873 lineto 0.44463 0.36675 lineto 0.43386 0.37394 lineto 0.42246 0.38025 lineto 0.41057 0.38565 lineto 0.39833 0.39012 lineto 0.38591 0.39363 lineto 0.37344 0.39613 lineto 0.36107 0.3976 lineto 0.34895 0.39802 lineto 0.33723 0.39733 lineto 0.32605 0.39553 lineto 0.31556 0.39256 lineto 0.3059 0.38841 lineto 0.29724 0.38304 lineto 0.2897 0.37642 lineto 0.28345 0.36851 lineto 0.27862 0.35929 lineto 0.27537 0.34872 lineto 0.27384 0.33678 lineto 0.27418 0.32343 lineto 0.27654 0.30863 lineto 0.28106 0.29236 lineto 0.28789 0.27459 lineto 0.29718 0.25528 lineto 0.30907 0.23441 lineto 0.32372 0.21194 lineto Mistroke 0.34127 0.18783 lineto Mfstroke grestore gsave 0.004 setlinewidth 0.34127 0.18783 moveto 0.34762 0.18368 lineto 0.35396 0.17955 lineto 0.36029 0.17544 lineto 0.36661 0.17139 lineto 0.37291 0.16741 lineto 0.37918 0.1635 lineto 0.38542 0.1597 lineto 0.39163 0.15601 lineto 0.3978 0.15246 lineto 0.40392 0.14906 lineto 0.40998 0.14582 lineto 0.416 0.14276 lineto 0.42195 0.13991 lineto 0.42784 0.13727 lineto 0.43365 0.13486 lineto 0.43939 0.1327 lineto 0.44505 0.13081 lineto 0.45062 0.1292 lineto 0.4561 0.12789 lineto 0.46148 0.1269 lineto 0.46676 0.12623 lineto 0.47194 0.12592 lineto 0.477 0.12597 lineto 0.48195 0.12641 lineto 0.48677 0.12724 lineto 0.49147 0.12849 lineto 0.49604 0.13017 lineto 0.50046 0.1323 lineto 0.50475 0.1349 lineto 0.50889 0.13798 lineto 0.51288 0.14155 lineto 0.5167 0.14564 lineto 0.52037 0.15027 lineto 0.52387 0.15544 lineto 0.5272 0.16117 lineto 0.53034 0.16749 lineto 0.53331 0.17441 lineto 0.53609 0.18194 lineto 0.53867 0.1901 lineto 0.54106 0.19891 lineto 0.54324 0.20839 lineto 0.54522 0.21855 lineto 0.54698 0.2294 lineto 0.54852 0.24097 lineto 0.54984 0.25327 lineto 0.55093 0.26632 lineto 0.55179 0.28014 lineto 0.55241 0.29473 lineto 0.55278 0.31012 lineto Mistroke 0.55291 0.32633 lineto Mfstroke grestore gsave gsave gsave 0.03 setlinewidth 0.12963 0.01472 Mdot 0.97619 0.32633 Mdot 0.02381 0.60332 Mdot 0.34127 0.18783 Mdot 0.44709 0.11859 Mdot 0.55291 0.04934 Mdot 0.55291 0.32633 Mdot grestore 0.004 setlinewidth 0.12963 0.01472 moveto 0.97619 0.32633 lineto 0.02381 0.60332 lineto 0.34127 0.18783 lineto 0.44709 0.11859 lineto 0.55291 0.04934 lineto 0.55291 0.32633 lineto stroke grestore grestore grestore % End of Graphics MathPictureEnd :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] The Unformatted text for this cell was not generated. Use options in the Actions Settings dialog box to control when Unformatted text is generated. ;[o] -Graphics- :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] {4.78686, 8.91616} :[font = output; output; inactive; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; ] {4.78686, 8.91616} ;[o] {4.78686, 8.91616} :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; endGroup; endGroup; ] :[font = subsubsection; inactive; dontPreserveAspect; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; ] Examples in Three Dimensions :[font = input; dontPreserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; fontSize = 14; startGroup; ] Do[ controlpoints =Table[ P[i]=Table[Random[Integer,{0,10}],{3}],{i,0,3}]; Show[curveline3D[beziersegment, {u,0,1,0.05}], Graphics3D[{PointSize[0.03],Map[Point,controlpoints], Line[controlpoints]}]], {6}] :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 170; pictureHeight = 170; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 1 MathPictureStart % Scaling calculations 0.02381 0.95238 0.02381 0.95238 [ [ 0 0 0 0 ] [ 1 1 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics3D [ ] 0 setdash 0 setgray 0 0 moveto 1 0 lineto 1 1 lineto 0 1 lineto closepath clip newpath gsave 0.002 setlinewidth 0.17096 0.22803 moveto 0.40064 0.4667 lineto stroke 0.17096 0.22803 moveto 0.10564 0.7167 lineto stroke 0.38407 0.91695 moveto 0.10564 0.7167 lineto stroke 0.38407 0.91695 moveto 0.40064 0.4667 lineto stroke 0.62752 0.04138 moveto 0.8098 0.32977 lineto stroke 0.62752 0.04138 moveto 0.65616 0.55233 lineto stroke 0.86704 0.80337 moveto 0.65616 0.55233 lineto stroke 0.86704 0.80337 moveto 0.8098 0.32977 lineto stroke 0.17096 0.22803 moveto 0.10564 0.7167 lineto stroke 0.17096 0.22803 moveto 0.62752 0.04138 lineto stroke 0.65616 0.55233 moveto 0.62752 0.04138 lineto stroke 0.65616 0.55233 moveto 0.10564 0.7167 lineto stroke 0.40064 0.4667 moveto 0.38407 0.91695 lineto stroke 0.40064 0.4667 moveto 0.8098 0.32977 lineto stroke 0.86704 0.80337 moveto 0.8098 0.32977 lineto stroke 0.86704 0.80337 moveto 0.38407 0.91695 lineto stroke 0.17096 0.22803 moveto 0.62752 0.04138 lineto stroke 0.17096 0.22803 moveto 0.40064 0.4667 lineto stroke 0.8098 0.32977 moveto 0.40064 0.4667 lineto stroke 0.8098 0.32977 moveto 0.62752 0.04138 lineto stroke 0.10564 0.7167 moveto 0.65616 0.55233 lineto stroke 0.10564 0.7167 moveto 0.38407 0.91695 lineto stroke 0.86704 0.80337 moveto 0.38407 0.91695 lineto stroke 0.86704 0.80337 moveto 0.65616 0.55233 lineto stroke grestore 0 0 0 setrgbcolor 0.005 setlinewidth 0.44419 0.49227 moveto 0.26868 0.70267 lineto stroke 0 0 0 setrgbcolor 0.63024 0.23642 moveto 0.44419 0.49227 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.44419 0.49227 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.44109 0.47972 moveto 0.42261 0.50676 lineto stroke 0 0 0 setrgbcolor 0.45792 0.45345 moveto 0.44109 0.47972 lineto stroke 0 0 0 setrgbcolor 0.47302 0.42792 moveto 0.45792 0.45345 lineto stroke 0 0 0 setrgbcolor 0.42261 0.50676 moveto 0.40249 0.53473 lineto stroke 0 0 0 setrgbcolor 0.48621 0.40318 moveto 0.47302 0.42792 lineto stroke 0 0 0 setrgbcolor 0.40249 0.53473 moveto 0.38064 0.56385 lineto stroke 0 0 0 setrgbcolor 0.49725 0.37936 moveto 0.48621 0.40318 lineto stroke 0 0 0 setrgbcolor 0.50584 0.35667 moveto 0.49725 0.37936 lineto stroke 0 0 0 setrgbcolor 0.38064 0.56385 moveto 0.35683 0.59452 lineto stroke 0 0 0 setrgbcolor 0.51161 0.33542 moveto 0.50584 0.35667 lineto stroke 0 0 0 setrgbcolor 0.51419 0.31599 moveto 0.51161 0.33542 lineto stroke 0 0 0 setrgbcolor 0.44336 0.26411 moveto 0.63024 0.23642 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.44336 0.26411 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.44336 0.26411 moveto 0.46644 0.26272 lineto stroke 0 0 0 setrgbcolor 0.35683 0.59452 moveto 0.33068 0.62728 lineto stroke 0 0 0 setrgbcolor 0.51317 0.29882 moveto 0.51419 0.31599 lineto stroke 0 0 0 setrgbcolor 0.46644 0.26272 moveto 0.48496 0.26588 lineto stroke 0 0 0 setrgbcolor 0.50816 0.2844 moveto 0.51317 0.29882 lineto stroke 0 0 0 setrgbcolor 0.48496 0.26588 moveto 0.49883 0.27325 lineto stroke 0 0 0 setrgbcolor 0.49883 0.27325 moveto 0.50816 0.2844 lineto stroke 0 0 0 setrgbcolor 0.33068 0.62728 moveto 0.3016 0.66294 lineto stroke 0 0 0 setrgbcolor 0.3016 0.66294 moveto 0.26868 0.70267 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.63024 0.23642 Mdot 0 0 0 setrgbcolor 0.26868 0.70267 Mdot gsave 0 setgray 0.002 setlinewidth 0.62752 0.04138 moveto 0.8098 0.32977 lineto stroke 0.62752 0.04138 moveto 0.65616 0.55233 lineto stroke 0.86704 0.80337 moveto 0.65616 0.55233 lineto stroke 0.86704 0.80337 moveto 0.8098 0.32977 lineto stroke 0.17096 0.22803 moveto 0.10564 0.7167 lineto stroke 0.17096 0.22803 moveto 0.62752 0.04138 lineto stroke 0.65616 0.55233 moveto 0.62752 0.04138 lineto stroke 0.65616 0.55233 moveto 0.10564 0.7167 lineto stroke 0.10564 0.7167 moveto 0.65616 0.55233 lineto stroke 0.10564 0.7167 moveto 0.38407 0.91695 lineto stroke 0.86704 0.80337 moveto 0.38407 0.91695 lineto stroke 0.86704 0.80337 moveto 0.65616 0.55233 lineto stroke grestore % End of Graphics MathPictureEnd :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 170; pictureHeight = 170; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 1 MathPictureStart % Scaling calculations 0.02381 0.95238 0.02381 0.95238 [ [ 0 0 0 0 ] [ 1 1 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics3D [ ] 0 setdash 0 setgray 0 0 moveto 1 0 lineto 1 1 lineto 0 1 lineto closepath clip newpath gsave 0.002 setlinewidth 0.15817 0.17043 moveto 0.51126 0.54804 lineto stroke 0.15817 0.17043 moveto 0.11523 0.55259 lineto stroke 0.5124 0.89416 moveto 0.11523 0.55259 lineto stroke 0.5124 0.89416 moveto 0.51126 0.54804 lineto stroke 0.48548 0.03859 moveto 0.79563 0.45959 lineto stroke 0.48548 0.03859 moveto 0.48353 0.42974 lineto stroke 0.82722 0.81549 moveto 0.48353 0.42974 lineto stroke 0.82722 0.81549 moveto 0.79563 0.45959 lineto stroke 0.15817 0.17043 moveto 0.11523 0.55259 lineto stroke 0.15817 0.17043 moveto 0.48548 0.03859 lineto stroke 0.48353 0.42974 moveto 0.48548 0.03859 lineto stroke 0.48353 0.42974 moveto 0.11523 0.55259 lineto stroke 0.51126 0.54804 moveto 0.5124 0.89416 lineto stroke 0.51126 0.54804 moveto 0.79563 0.45959 lineto stroke 0.82722 0.81549 moveto 0.79563 0.45959 lineto stroke 0.82722 0.81549 moveto 0.5124 0.89416 lineto stroke 0.15817 0.17043 moveto 0.48548 0.03859 lineto stroke 0.15817 0.17043 moveto 0.51126 0.54804 lineto stroke 0.79563 0.45959 moveto 0.51126 0.54804 lineto stroke 0.79563 0.45959 moveto 0.48548 0.03859 lineto stroke 0.11523 0.55259 moveto 0.48353 0.42974 lineto stroke 0.11523 0.55259 moveto 0.5124 0.89416 lineto stroke 0.82722 0.81549 moveto 0.5124 0.89416 lineto stroke 0.82722 0.81549 moveto 0.48353 0.42974 lineto stroke grestore 0 0 0 setrgbcolor 0.005 setlinewidth 0.511 0.60747 moveto 0.447 0.36138 lineto stroke 0 0 0 setrgbcolor 0.68501 0.32947 moveto 0.511 0.60747 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.511 0.60747 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.59269 0.45115 moveto 0.57517 0.46812 lineto stroke 0 0 0 setrgbcolor 0.61214 0.43007 moveto 0.59269 0.45115 lineto stroke 0 0 0 setrgbcolor 0.63377 0.40371 moveto 0.61214 0.43007 lineto stroke 0 0 0 setrgbcolor 0.57517 0.46812 moveto 0.55939 0.48206 lineto stroke 0 0 0 setrgbcolor 0.50434 0.81475 moveto 0.51185 0.8767 lineto stroke 0 0 0 setrgbcolor 0.447 0.36138 moveto 0.51185 0.8767 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.51185 0.8767 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.6579 0.37071 moveto 0.63377 0.40371 lineto stroke 0 0 0 setrgbcolor 0.55939 0.48206 moveto 0.54526 0.49395 lineto stroke 0 0 0 setrgbcolor 0.68501 0.32947 moveto 0.6579 0.37071 lineto stroke 0 0 0 setrgbcolor 0.54526 0.49395 moveto 0.53271 0.50476 lineto stroke 0 0 0 setrgbcolor 0.53271 0.50476 moveto 0.52171 0.51547 lineto stroke 0 0 0 setrgbcolor 0.49828 0.75896 moveto 0.50434 0.81475 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.68501 0.32947 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.52171 0.51547 moveto 0.51227 0.52703 lineto stroke 0 0 0 setrgbcolor 0.51227 0.52703 moveto 0.50444 0.54043 lineto stroke 0 0 0 setrgbcolor 0.49382 0.70973 moveto 0.49828 0.75896 lineto stroke 0 0 0 setrgbcolor 0.50444 0.54043 moveto 0.49826 0.55662 lineto stroke 0 0 0 setrgbcolor 0.4911 0.66718 moveto 0.49382 0.70973 lineto stroke 0 0 0 setrgbcolor 0.49826 0.55662 moveto 0.49378 0.57655 lineto stroke 0 0 0 setrgbcolor 0.49378 0.57655 moveto 0.49108 0.60113 lineto stroke 0 0 0 setrgbcolor 0.49018 0.63112 moveto 0.4911 0.66718 lineto stroke 0 0 0 setrgbcolor 0.49108 0.60113 moveto 0.49018 0.63112 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.447 0.36138 Mdot gsave 0 setgray 0.002 setlinewidth 0.48548 0.03859 moveto 0.79563 0.45959 lineto stroke 0.48548 0.03859 moveto 0.48353 0.42974 lineto stroke 0.82722 0.81549 moveto 0.48353 0.42974 lineto stroke 0.82722 0.81549 moveto 0.79563 0.45959 lineto stroke 0.15817 0.17043 moveto 0.11523 0.55259 lineto stroke 0.15817 0.17043 moveto 0.48548 0.03859 lineto stroke 0.48353 0.42974 moveto 0.48548 0.03859 lineto stroke 0.48353 0.42974 moveto 0.11523 0.55259 lineto stroke 0.11523 0.55259 moveto 0.48353 0.42974 lineto stroke 0.11523 0.55259 moveto 0.5124 0.89416 lineto stroke 0.82722 0.81549 moveto 0.5124 0.89416 lineto stroke 0.82722 0.81549 moveto 0.48353 0.42974 lineto stroke grestore % End of Graphics MathPictureEnd :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 170; pictureHeight = 170; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 1 MathPictureStart % Scaling calculations 0.02381 0.95238 0.02381 0.95238 [ [ 0 0 0 0 ] [ 1 1 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics3D [ ] 0 setdash 0 setgray 0 0 moveto 1 0 lineto 1 1 lineto 0 1 lineto closepath clip newpath gsave 0.002 setlinewidth 0.0443 0.36569 moveto 0.38861 0.67687 lineto stroke 0.0443 0.36569 moveto 0.02727 0.47319 lineto stroke 0.38521 0.77417 moveto 0.02727 0.47319 lineto stroke 0.38521 0.77417 moveto 0.38861 0.67687 lineto stroke 0.65345 0.1335 moveto 0.91461 0.52351 lineto stroke 0.65345 0.1335 moveto 0.65998 0.24599 lineto stroke 0.92867 0.62634 moveto 0.65998 0.24599 lineto stroke 0.92867 0.62634 moveto 0.91461 0.52351 lineto stroke 0.0443 0.36569 moveto 0.02727 0.47319 lineto stroke 0.0443 0.36569 moveto 0.65345 0.1335 lineto stroke 0.65998 0.24599 moveto 0.65345 0.1335 lineto stroke 0.65998 0.24599 moveto 0.02727 0.47319 lineto stroke 0.38861 0.67687 moveto 0.38521 0.77417 lineto stroke 0.38861 0.67687 moveto 0.91461 0.52351 lineto stroke 0.92867 0.62634 moveto 0.91461 0.52351 lineto stroke 0.92867 0.62634 moveto 0.38521 0.77417 lineto stroke 0.0443 0.36569 moveto 0.65345 0.1335 lineto stroke 0.0443 0.36569 moveto 0.38861 0.67687 lineto stroke 0.91461 0.52351 moveto 0.38861 0.67687 lineto stroke 0.91461 0.52351 moveto 0.65345 0.1335 lineto stroke 0.02727 0.47319 moveto 0.65998 0.24599 lineto stroke 0.02727 0.47319 moveto 0.38521 0.77417 lineto stroke 0.92867 0.62634 moveto 0.38521 0.77417 lineto stroke 0.92867 0.62634 moveto 0.65998 0.24599 lineto stroke grestore 0 0 0 setrgbcolor 0.005 setlinewidth 0.58523 0.70919 moveto 0.46983 0.46708 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.58523 0.70919 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.58523 0.70919 moveto 0.56807 0.67706 lineto stroke 0 0 0 setrgbcolor 0.56807 0.67706 moveto 0.54806 0.6458 lineto stroke 0 0 0 setrgbcolor 0.54806 0.6458 moveto 0.52591 0.61543 lineto stroke 0 0 0 setrgbcolor 0.52591 0.61543 moveto 0.50239 0.586 lineto stroke 0 0 0 setrgbcolor 0.50239 0.586 moveto 0.47831 0.55751 lineto stroke 0 0 0 setrgbcolor 0.47831 0.55751 moveto 0.4545 0.52995 lineto stroke 0 0 0 setrgbcolor 0.4545 0.52995 moveto 0.43182 0.50331 lineto stroke 0 0 0 setrgbcolor 0.43182 0.50331 moveto 0.41116 0.47753 lineto stroke 0 0 0 setrgbcolor 0.41116 0.47753 moveto 0.39343 0.45256 lineto stroke 0 0 0 setrgbcolor 0.39343 0.45256 moveto 0.37954 0.42833 lineto stroke 0 0 0 setrgbcolor 0.46983 0.46708 moveto 0.11862 0.35264 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.46983 0.46708 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.37954 0.42833 moveto 0.37043 0.40473 lineto stroke 0 0 0 setrgbcolor 0.37043 0.40473 moveto 0.36705 0.38167 lineto stroke 0 0 0 setrgbcolor 0.11862 0.35264 moveto 0.67519 0.19811 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.11862 0.35264 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.36705 0.38167 moveto 0.37041 0.35902 lineto stroke 0 0 0 setrgbcolor 0.37041 0.35902 moveto 0.3815 0.33664 lineto stroke 0 0 0 setrgbcolor 0.3815 0.33664 moveto 0.4014 0.31437 lineto stroke 0 0 0 setrgbcolor 0.4014 0.31437 moveto 0.43122 0.29205 lineto stroke 0 0 0 setrgbcolor 0.43122 0.29205 moveto 0.47216 0.26948 lineto stroke 0 0 0 setrgbcolor 0.47216 0.26948 moveto 0.5255 0.24646 lineto stroke 0 0 0 setrgbcolor 0.5255 0.24646 moveto 0.59265 0.22276 lineto stroke 0 0 0 setrgbcolor 0.59265 0.22276 moveto 0.67519 0.19811 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.67519 0.19811 Mdot gsave 0 setgray 0.002 setlinewidth 0.65345 0.1335 moveto 0.91461 0.52351 lineto stroke 0.65345 0.1335 moveto 0.65998 0.24599 lineto stroke 0.92867 0.62634 moveto 0.65998 0.24599 lineto stroke 0.92867 0.62634 moveto 0.91461 0.52351 lineto stroke 0.0443 0.36569 moveto 0.02727 0.47319 lineto stroke 0.0443 0.36569 moveto 0.65345 0.1335 lineto stroke 0.65998 0.24599 moveto 0.65345 0.1335 lineto stroke 0.65998 0.24599 moveto 0.02727 0.47319 lineto stroke 0.02727 0.47319 moveto 0.65998 0.24599 lineto stroke 0.02727 0.47319 moveto 0.38521 0.77417 lineto stroke 0.92867 0.62634 moveto 0.38521 0.77417 lineto stroke 0.92867 0.62634 moveto 0.65998 0.24599 lineto stroke grestore % End of Graphics MathPictureEnd :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 170; pictureHeight = 170; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 1 MathPictureStart % Scaling calculations 0.02381 0.95238 0.02381 0.95238 [ [ 0 0 0 0 ] [ 1 1 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics3D [ ] 0 setdash 0 setgray 0 0 moveto 1 0 lineto 1 1 lineto 0 1 lineto closepath clip newpath gsave 0.002 setlinewidth 0.25084 0.18642 moveto 0.40937 0.36273 lineto stroke 0.25084 0.18642 moveto 0.20236 0.81119 lineto stroke 0.39339 0.95985 moveto 0.20236 0.81119 lineto stroke 0.39339 0.95985 moveto 0.40937 0.36273 lineto stroke 0.60466 0.04856 moveto 0.74236 0.24661 lineto stroke 0.60466 0.04856 moveto 0.62657 0.6917 lineto stroke 0.78799 0.86246 moveto 0.62657 0.6917 lineto stroke 0.78799 0.86246 moveto 0.74236 0.24661 lineto stroke 0.25084 0.18642 moveto 0.20236 0.81119 lineto stroke 0.25084 0.18642 moveto 0.60466 0.04856 lineto stroke 0.62657 0.6917 moveto 0.60466 0.04856 lineto stroke 0.62657 0.6917 moveto 0.20236 0.81119 lineto stroke 0.40937 0.36273 moveto 0.39339 0.95985 lineto stroke 0.40937 0.36273 moveto 0.74236 0.24661 lineto stroke 0.78799 0.86246 moveto 0.74236 0.24661 lineto stroke 0.78799 0.86246 moveto 0.39339 0.95985 lineto stroke 0.25084 0.18642 moveto 0.60466 0.04856 lineto stroke 0.25084 0.18642 moveto 0.40937 0.36273 lineto stroke 0.74236 0.24661 moveto 0.40937 0.36273 lineto stroke 0.74236 0.24661 moveto 0.60466 0.04856 lineto stroke 0.20236 0.81119 moveto 0.62657 0.6917 lineto stroke 0.20236 0.81119 moveto 0.39339 0.95985 lineto stroke 0.78799 0.86246 moveto 0.39339 0.95985 lineto stroke 0.78799 0.86246 moveto 0.62657 0.6917 lineto stroke grestore 0 0 0 setrgbcolor 0.005 setlinewidth 0.25775 0.25713 moveto 0.61439 0.52511 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.25775 0.25713 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.25775 0.25713 moveto 0.30179 0.28772 lineto stroke 0 0 0 setrgbcolor 0.30179 0.28772 moveto 0.34388 0.31243 lineto stroke 0 0 0 setrgbcolor 0.63735 0.17723 moveto 0.46978 0.91991 lineto stroke 0 0 0 setrgbcolor 0.61439 0.52511 moveto 0.63735 0.17723 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.63735 0.17723 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.34388 0.31243 moveto 0.38343 0.33187 lineto stroke 0 0 0 setrgbcolor 0.38343 0.33187 moveto 0.4199 0.3468 lineto stroke 0 0 0 setrgbcolor 0.51491 0.72411 moveto 0.49404 0.81375 lineto stroke 0 0 0 setrgbcolor 0.53246 0.64897 moveto 0.51491 0.72411 lineto stroke 0 0 0 setrgbcolor 0.54667 0.58658 moveto 0.53246 0.64897 lineto stroke 0 0 0 setrgbcolor 0.49404 0.81375 moveto 0.46978 0.91991 lineto stroke 0 0 0 setrgbcolor 0.55749 0.53541 moveto 0.54667 0.58658 lineto stroke 0 0 0 setrgbcolor 0.4199 0.3468 moveto 0.45286 0.35816 lineto stroke 0 0 0 setrgbcolor 0.56481 0.49406 moveto 0.55749 0.53541 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.46978 0.91991 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.56852 0.46124 moveto 0.56481 0.49406 lineto stroke 0 0 0 setrgbcolor 0.56847 0.4357 moveto 0.56852 0.46124 lineto stroke 0 0 0 setrgbcolor 0.45286 0.35816 moveto 0.48195 0.36704 lineto stroke 0 0 0 setrgbcolor 0.56449 0.41623 moveto 0.56847 0.4357 lineto stroke 0 0 0 setrgbcolor 0.55645 0.40161 moveto 0.56449 0.41623 lineto stroke 0 0 0 setrgbcolor 0.48195 0.36704 moveto 0.50696 0.37459 lineto stroke 0 0 0 setrgbcolor 0.54422 0.39063 moveto 0.55645 0.40161 lineto stroke 0 0 0 setrgbcolor 0.50696 0.37459 moveto 0.52773 0.38204 lineto stroke 0 0 0 setrgbcolor 0.52773 0.38204 moveto 0.54422 0.39063 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.61439 0.52511 Mdot gsave 0 setgray 0.002 setlinewidth 0.60466 0.04856 moveto 0.74236 0.24661 lineto stroke 0.60466 0.04856 moveto 0.62657 0.6917 lineto stroke 0.78799 0.86246 moveto 0.62657 0.6917 lineto stroke 0.78799 0.86246 moveto 0.74236 0.24661 lineto stroke 0.25084 0.18642 moveto 0.20236 0.81119 lineto stroke 0.25084 0.18642 moveto 0.60466 0.04856 lineto stroke 0.62657 0.6917 moveto 0.60466 0.04856 lineto stroke 0.62657 0.6917 moveto 0.20236 0.81119 lineto stroke 0.20236 0.81119 moveto 0.62657 0.6917 lineto stroke 0.20236 0.81119 moveto 0.39339 0.95985 lineto stroke 0.78799 0.86246 moveto 0.39339 0.95985 lineto stroke 0.78799 0.86246 moveto 0.62657 0.6917 lineto stroke grestore % End of Graphics MathPictureEnd :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 170; pictureHeight = 170; fontSize = 14; ] %! %%Creator: Mathematica %%AspectRatio: 1 MathPictureStart % Scaling calculations 0.02381 0.95238 0.02381 0.95238 [ [ 0 0 0 0 ] [ 1 1 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics3D [ ] 0 setdash 0 setgray 0 0 moveto 1 0 lineto 1 1 lineto 0 1 lineto closepath clip newpath gsave 0.002 setlinewidth 0.19059 0.18619 moveto 0.44405 0.45925 lineto stroke 0.19059 0.18619 moveto 0.12799 0.70183 lineto stroke 0.43468 0.9318 moveto 0.12799 0.70183 lineto stroke 0.43468 0.9318 moveto 0.44405 0.45925 lineto stroke 0.5712 0.02935 moveto 0.78258 0.34669 lineto stroke 0.5712 0.02935 moveto 0.58709 0.56343 lineto stroke 0.83389 0.83863 moveto 0.58709 0.56343 lineto stroke 0.83389 0.83863 moveto 0.78258 0.34669 lineto stroke 0.19059 0.18619 moveto 0.12799 0.70183 lineto stroke 0.19059 0.18619 moveto 0.5712 0.02935 lineto stroke 0.58709 0.56343 moveto 0.5712 0.02935 lineto stroke 0.58709 0.56343 moveto 0.12799 0.70183 lineto stroke 0.44405 0.45925 moveto 0.43468 0.9318 lineto stroke 0.44405 0.45925 moveto 0.78258 0.34669 lineto stroke 0.83389 0.83863 moveto 0.78258 0.34669 lineto stroke 0.83389 0.83863 moveto 0.43468 0.9318 lineto stroke 0.19059 0.18619 moveto 0.5712 0.02935 lineto stroke 0.19059 0.18619 moveto 0.44405 0.45925 lineto stroke 0.78258 0.34669 moveto 0.44405 0.45925 lineto stroke 0.78258 0.34669 moveto 0.5712 0.02935 lineto stroke 0.12799 0.70183 moveto 0.58709 0.56343 lineto stroke 0.12799 0.70183 moveto 0.43468 0.9318 lineto stroke 0.83389 0.83863 moveto 0.43468 0.9318 lineto stroke 0.83389 0.83863 moveto 0.58709 0.56343 lineto stroke grestore 0 0 0 setrgbcolor 0.005 setlinewidth 0.40089 0.73496 moveto 0.73666 0.84107 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.40089 0.73496 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.40089 0.73496 moveto 0.44246 0.74442 lineto stroke 0 0 0 setrgbcolor 0.44246 0.74442 moveto 0.47453 0.74393 lineto stroke 0 0 0 setrgbcolor 0.47453 0.74393 moveto 0.49782 0.73437 lineto stroke 0 0 0 setrgbcolor 0.49782 0.73437 moveto 0.51316 0.71674 lineto stroke 0 0 0 setrgbcolor 0.51316 0.71674 moveto 0.52149 0.69209 lineto stroke 0 0 0 setrgbcolor 0.27298 0.17283 moveto 0.57309 0.2467 lineto stroke 0 0 0 setrgbcolor 0.73666 0.84107 moveto 0.27298 0.17283 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.27298 0.17283 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.52149 0.69209 moveto 0.52382 0.66153 lineto stroke 0 0 0 setrgbcolor 0.52382 0.66153 moveto 0.52122 0.6262 lineto stroke 0 0 0 setrgbcolor 0.52122 0.6262 moveto 0.51479 0.58725 lineto stroke 0 0 0 setrgbcolor 0.51479 0.58725 moveto 0.50565 0.54583 lineto stroke 0 0 0 setrgbcolor 0.50565 0.54583 moveto 0.49495 0.50304 lineto stroke 0 0 0 setrgbcolor 0.49495 0.50304 moveto 0.48383 0.46002 lineto stroke 0 0 0 setrgbcolor 0.48383 0.46002 moveto 0.47346 0.41785 lineto stroke 0 0 0 setrgbcolor 0.47346 0.41785 moveto 0.46503 0.37761 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.73666 0.84107 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.46503 0.37761 moveto 0.45975 0.34038 lineto stroke 0 0 0 setrgbcolor 0.45975 0.34038 moveto 0.45889 0.30728 lineto stroke 0 0 0 setrgbcolor 0.45889 0.30728 moveto 0.46379 0.27943 lineto stroke 0 0 0 setrgbcolor 0.46379 0.27943 moveto 0.47592 0.25804 lineto stroke 0 0 0 setrgbcolor 0.47592 0.25804 moveto 0.4969 0.24443 lineto stroke 0 0 0 setrgbcolor 0.4969 0.24443 moveto 0.52857 0.24008 lineto stroke 0 0 0 setrgbcolor 0.52857 0.24008 moveto 0.57309 0.2467 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.57309 0.2467 Mdot gsave 0 setgray 0.002 setlinewidth 0.5712 0.02935 moveto 0.78258 0.34669 lineto stroke 0.5712 0.02935 moveto 0.58709 0.56343 lineto stroke 0.83389 0.83863 moveto 0.58709 0.56343 lineto stroke 0.83389 0.83863 moveto 0.78258 0.34669 lineto stroke 0.19059 0.18619 moveto 0.12799 0.70183 lineto stroke 0.19059 0.18619 moveto 0.5712 0.02935 lineto stroke 0.58709 0.56343 moveto 0.5712 0.02935 lineto stroke 0.58709 0.56343 moveto 0.12799 0.70183 lineto stroke 0.12799 0.70183 moveto 0.58709 0.56343 lineto stroke 0.12799 0.70183 moveto 0.43468 0.9318 lineto stroke 0.83389 0.83863 moveto 0.43468 0.9318 lineto stroke 0.83389 0.83863 moveto 0.58709 0.56343 lineto stroke grestore % End of Graphics MathPictureEnd :[font = postscript; PostScript; formatAsPostScript; output; inactive; preserveAspect; leftWrapOffset = 18; leftNameWrapOffset = 18; rightWrapOffset = 513; pictureLeft = 0; pictureTop = 4; pictureWidth = 170; pictureHeight = 170; fontSize = 14; endGroup; ] %! %%Creator: Mathematica %%AspectRatio: 1 MathPictureStart % Scaling calculations 0.02381 0.95238 0.02381 0.95238 [ [ 0 0 0 0 ] [ 1 1 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath %%Object: Graphics3D [ ] 0 setdash 0 setgray 0 0 moveto 1 0 lineto 1 1 lineto 0 1 lineto closepath clip newpath gsave 0.002 setlinewidth 0.18403 0.24623 moveto 0.36721 0.43659 lineto stroke 0.18403 0.24623 moveto 0.12276 0.76203 lineto stroke 0.34462 0.92159 moveto 0.12276 0.76203 lineto stroke 0.34462 0.92159 moveto 0.36721 0.43659 lineto stroke 0.66388 0.05534 moveto 0.80919 0.28524 lineto stroke 0.66388 0.05534 moveto 0.69973 0.59538 lineto stroke 0.86762 0.79525 moveto 0.69973 0.59538 lineto stroke 0.86762 0.79525 moveto 0.80919 0.28524 lineto stroke 0.18403 0.24623 moveto 0.12276 0.76203 lineto stroke 0.18403 0.24623 moveto 0.66388 0.05534 lineto stroke 0.69973 0.59538 moveto 0.66388 0.05534 lineto stroke 0.69973 0.59538 moveto 0.12276 0.76203 lineto stroke 0.36721 0.43659 moveto 0.34462 0.92159 lineto stroke 0.36721 0.43659 moveto 0.80919 0.28524 lineto stroke 0.86762 0.79525 moveto 0.80919 0.28524 lineto stroke 0.86762 0.79525 moveto 0.34462 0.92159 lineto stroke 0.18403 0.24623 moveto 0.66388 0.05534 lineto stroke 0.18403 0.24623 moveto 0.36721 0.43659 lineto stroke 0.80919 0.28524 moveto 0.36721 0.43659 lineto stroke 0.80919 0.28524 moveto 0.66388 0.05534 lineto stroke 0.12276 0.76203 moveto 0.69973 0.59538 lineto stroke 0.12276 0.76203 moveto 0.34462 0.92159 lineto stroke 0.86762 0.79525 moveto 0.34462 0.92159 lineto stroke 0.86762 0.79525 moveto 0.69973 0.59538 lineto stroke grestore 0 0 0 setrgbcolor 0.005 setlinewidth 0.1933 0.29961 moveto 0.7466 0.65918 lineto stroke 0 0 0 setrgbcolor 0.43525 0.44153 moveto 0.1933 0.29961 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.1933 0.29961 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.50633 0.70715 moveto 0.43525 0.44153 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.50633 0.70715 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.50633 0.70715 moveto 0.49545 0.67199 lineto stroke 0 0 0 setrgbcolor 0.49545 0.67199 moveto 0.48207 0.63713 lineto stroke 0 0 0 setrgbcolor 0.48207 0.63713 moveto 0.46694 0.6033 lineto stroke 0 0 0 setrgbcolor 0.46694 0.6033 moveto 0.45089 0.57116 lineto stroke 0 0 0 setrgbcolor 0.45089 0.57116 moveto 0.43474 0.54132 lineto stroke 0 0 0 setrgbcolor 0.43474 0.54132 moveto 0.41931 0.51432 lineto stroke 0 0 0 setrgbcolor 0.41931 0.51432 moveto 0.4054 0.49062 lineto stroke 0 0 0 setrgbcolor 0.4054 0.49062 moveto 0.3938 0.47062 lineto stroke 0 0 0 setrgbcolor 0.3938 0.47062 moveto 0.38525 0.45468 lineto stroke 0 0 0 setrgbcolor 0.38525 0.45468 moveto 0.38049 0.4431 lineto stroke 0 0 0 setrgbcolor 0.38049 0.4431 moveto 0.38023 0.43618 lineto stroke 0 0 0 setrgbcolor 0.38023 0.43618 moveto 0.38525 0.43422 lineto stroke 0 0 0 setrgbcolor 0.38525 0.43422 moveto 0.39632 0.43752 lineto stroke 0 0 0 setrgbcolor 0.39632 0.43752 moveto 0.41436 0.44649 lineto stroke 0 0 0 setrgbcolor 0.41436 0.44649 moveto 0.44037 0.46159 lineto stroke 0 0 0 setrgbcolor 0.44037 0.46159 moveto 0.47559 0.48344 lineto stroke 0 0 0 setrgbcolor 0.47559 0.48344 moveto 0.52156 0.51284 lineto stroke 0 0 0 setrgbcolor 0.52156 0.51284 moveto 0.58021 0.55086 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.43525 0.44153 Mdot 0 0 0 setrgbcolor 0.005 setlinewidth 0.58021 0.55086 moveto 0.65409 0.59897 lineto stroke 0 0 0 setrgbcolor 0.65409 0.59897 moveto 0.7466 0.65918 lineto stroke 0 0 0 setrgbcolor 0.03 setlinewidth 0.7466 0.65918 Mdot gsave 0 setgray 0.002 setlinewidth 0.66388 0.05534 moveto 0.80919 0.28524 lineto stroke 0.66388 0.05534 moveto 0.69973 0.59538 lineto stroke 0.86762 0.79525 moveto 0.69973 0.59538 lineto stroke 0.86762 0.79525 moveto 0.80919 0.28524 lineto stroke 0.18403 0.24623 moveto 0.12276 0.76203 lineto stroke 0.18403 0.24623 moveto 0.66388 0.05534 lineto stroke 0.69973 0.59538 moveto 0.66388 0.05534 lineto stroke 0.69973 0.59538 moveto 0.12276 0.76203 lineto stroke 0.12276 0.76203 moveto 0.69973 0.59538 lineto stroke 0.12276 0.76203 moveto 0.34462 0.92159 lineto stroke 0.86762 0.79525 moveto 0.34462 0.92159 lineto stroke 0.86762 0.79525 moveto 0.69973 0.59538 lineto stroke grestore % End of Graphics MathPictureEnd ^*)