⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fgluproject.ps

📁 计算机图形学~想必是很多人需要的~在此共享一下
💻 PS
字号:
%!PS-Adobe-1.0%%Creator: splat:n8 (Nate Robins,,,,,,,<engr>)%%Title: stdin (ditroff)%%CreationDate: Tue Jul 22 19:19:50 1997%%EndComments% Start of psdit.pro -- prolog for ditroff translator% Copyright (c) 1985,1987 Adobe Systems Incorporated. All Rights Reserved. % GOVERNMENT END USERS: See Notice file in TranScript library directory% -- probably /usr/lib/ps/Notice% $Revision: 1.2 $/$DITroff 140 dict def $DITroff begin/fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def/xi {0 72 11 mul translate 72 resolution div dup neg scale 0 0 moveto  /fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def F  /pagesave save def}def/PB{save /psv exch def currentpoint translate  resolution 72 div dup neg scale 0 0 moveto}def/PE{psv restore}def/m1 matrix def /m2 matrix def /m3 matrix def /oldmat matrix def/tan{dup sin exch cos div}bind def/point{resolution 72 div mul}bind def/dround	{transform round exch round exch itransform}bind def/xT{/devname exch def}def/xr{/mh exch def /my exch def /resolution exch def}def/xp{}def/xs{docsave restore end}def/xt{}def/xf{/fontname exch def /slotno exch def fontnames slotno get fontname eq not {fonts slotno fontname findfont put fontnames slotno fontname put}if}def/xH{/fontheight exch def F}bind def/xS{/fontslant exch def F}bind def/s{/fontsize exch def /fontheight fontsize def F}bind def/f{/fontnum exch def F}bind def/F{fontheight 0 le {/fontheight fontsize def}if   fonts fontnum get fontsize point 0 0 fontheight point neg 0 0 m1 astore   fontslant 0 ne{1 0 fontslant tan 1 0 0 m2 astore m3 concatmatrix}if   makefont setfont .04 fontsize point mul 0 dround pop setlinewidth}bind def/X{exch currentpoint exch pop moveto show}bind def/N{3 1 roll moveto show}bind def/Y{exch currentpoint pop exch moveto show}bind def/S /show load def/ditpush{}def/ditpop{}def/AX{3 -1 roll currentpoint exch pop moveto 0 exch ashow}bind def/AN{4 2 roll moveto 0 exch ashow}bind def/AY{3 -1 roll currentpoint pop exch moveto 0 exch ashow}bind def/AS{0 exch ashow}bind def/MX{currentpoint exch pop moveto}bind def/MY{currentpoint pop exch moveto}bind def/MXY /moveto load def/cb{pop}def	% action on unknown char -- nothing for now/n{}def/w{}def/p{pop showpage pagesave restore /pagesave save def}def/abspoint{currentpoint exch pop add exch currentpoint pop add exch}def/dstroke{currentpoint stroke moveto}bind def/Dl{2 copy gsave rlineto stroke grestore rmoveto}bind def/arcellipse{oldmat currentmatrix pop currentpoint translate 1 diamv diamh div scale /rad diamh 2 div def rad 0 rad -180 180 arc oldmat setmatrix}def/Dc{gsave dup /diamv exch def /diamh exch def arcellipse dstroke     grestore diamh 0 rmoveto}def/De{gsave /diamv exch def /diamh exch def arcellipse dstroke    grestore diamh 0 rmoveto}def/Da{currentpoint /by exch def /bx exch def /fy exch def /fx exch def   /cy exch def /cx exch def /rad cx cx mul cy cy mul add sqrt def   /ang1 cy neg cx neg atan def /ang2 fy fx atan def cx bx add cy by add   2 copy rad ang1 ang2 arcn stroke exch fx add exch fy add moveto}def/Barray 200 array def % 200 values in a wiggle/D~{mark}def/D~~{counttomark Barray exch 0 exch getinterval astore /Bcontrol exch def pop /Blen Bcontrol length def Blen 4 ge Blen 2 mod 0 eq and {Bcontrol 0 get Bcontrol 1 get abspoint /Ycont exch def /Xcont exch def  Bcontrol 0 2 copy get 2 mul put Bcontrol 1 2 copy get 2 mul put  Bcontrol Blen 2 sub 2 copy get 2 mul put  Bcontrol Blen 1 sub 2 copy get 2 mul put  /Ybi /Xbi currentpoint 3 1 roll def def 0 2 Blen 4 sub  {/i exch def   Bcontrol i get 3 div Bcontrol i 1 add get 3 div   Bcontrol i get 3 mul Bcontrol i 2 add get add 6 div   Bcontrol i 1 add get 3 mul Bcontrol i 3 add get add 6 div   /Xbi Xcont Bcontrol i 2 add get 2 div add def   /Ybi Ycont Bcontrol i 3 add get 2 div add def   /Xcont Xcont Bcontrol i 2 add get add def   /Ycont Ycont Bcontrol i 3 add get add def   Xbi currentpoint pop sub Ybi currentpoint exch pop sub rcurveto  }for dstroke}if}defend/ditstart{$DITroff begin /nfonts 60 def			% NFONTS makedev/ditroff dependent! /fonts[nfonts{0}repeat]def /fontnames[nfonts{()}repeat]def/docsave save def}def% character outcalls/oc {/pswid exch def /cc exch def /name exch def   /ditwid pswid fontsize mul resolution mul 72000 div def   /ditsiz fontsize resolution mul 72 div def   ocprocs name known{ocprocs name get exec}{name cb}   ifelse}def/fractm [.65 0 0 .6 0 0] def/fraction {/fden exch def /fnum exch def gsave /cf currentfont def  cf fractm makefont setfont 0 .3 dm 2 copy neg rmoveto  fnum show rmoveto currentfont cf setfont(\244)show setfont fden show   grestore ditwid 0 rmoveto} def/oce {grestore ditwid 0 rmoveto}def/dm {ditsiz mul}def/ocprocs 50 dict def ocprocs begin(14){(1)(4)fraction}def(12){(1)(2)fraction}def(34){(3)(4)fraction}def(13){(1)(3)fraction}def(23){(2)(3)fraction}def(18){(1)(8)fraction}def(38){(3)(8)fraction}def(58){(5)(8)fraction}def(78){(7)(8)fraction}def(sr){gsave .05 dm .16 dm rmoveto(\326)show oce}def(is){gsave 0 .15 dm rmoveto(\362)show oce}def(->){gsave 0 .02 dm rmoveto(\256)show oce}def(<-){gsave 0 .02 dm rmoveto(\254)show oce}def(==){gsave 0 .05 dm rmoveto(\272)show oce}defend% DIThacks fonts for some special chars50 dict dup begin/FontType 3 def/FontName /DIThacks def/FontMatrix [.001 0.0 0.0 .001 0.0 0.0] def/FontBBox [-220 -280 900 900] def% a lie but .../Encoding 256 array def0 1 255{Encoding exch /.notdef put}forEncoding dup 8#040/space put %space dup 8#110/rc put %right ceil dup 8#111/lt put %left  top curl dup 8#112/bv put %bold vert dup 8#113/lk put %left  mid curl dup 8#114/lb put %left  bot curl dup 8#115/rt put %right top curl dup 8#116/rk put %right mid curl dup 8#117/rb put %right bot curl dup 8#120/rf put %right floor dup 8#121/lf put %left  floor dup 8#122/lc put %left  ceil dup 8#140/sq put %square dup 8#141/bx put %box dup 8#142/ci put %circle dup 8#143/br put %box rule dup 8#144/rn put %root extender dup 8#145/vr put %vertical rule dup 8#146/ob put %outline bullet dup 8#147/bu put %bullet dup 8#150/ru put %rule dup 8#151/ul put %underline pop/DITfd 100 dict def/BuildChar{0 begin /cc exch def /fd exch def /charname fd /Encoding get cc get def /charwid fd /Metrics get charname get def /charproc fd /CharProcs get charname get def charwid 0 fd /FontBBox get aload pop setcachedevice 40 setlinewidth newpath 0 0 moveto gsave charproc grestore end}def/BuildChar load 0 DITfd put%/UniqueID 5 def/CharProcs 50 dict defCharProcs begin/space{}def/.notdef{}def/ru{500 0 rls}def/rn{0 750 moveto 500 0 rls}def/vr{20 800 moveto 0 -770 rls}def/bv{20 800 moveto 0 -1000 rls}def/br{20 770 moveto 0 -1040 rls}def/ul{0 -250 moveto 500 0 rls}def/ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def/bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def/sq{80 0 rmoveto currentpoint dround newpath moveto    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def/bx{80 0 rmoveto currentpoint dround newpath moveto    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def/ci{355 333 rmoveto currentpoint newpath 333 0 360 arc    50 setlinewidth stroke}def/lt{20 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def/lb{20 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def/rt{20 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def/rb{20 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def/lk{20 800 moveto 20 300 -280 300 s4 arcto pop pop 1000 sub    currentpoint stroke moveto    20 300 4 2 roll s4 a4p 20 -200 lineto stroke}def/rk{20 800 moveto 20 300 320 300 s4 arcto pop pop 1000 sub    currentpoint stroke moveto    20 300 4 2 roll s4 a4p 20 -200 lineto stroke}def/lf{20 800 moveto 0 -1000 rlineto s4 0 rls}def/rf{20 800 moveto 0 -1000 rlineto s4 neg 0 rls}def/lc{20 -200 moveto 0 1000 rlineto s4 0 rls}def/rc{20 -200 moveto 0 1000 rlineto s4 neg 0 rls}defend/Metrics 50 dict def Metrics begin/.notdef 0 def/space 500 def/ru 500 def/br 0 def/lt 250 def/lb 250 def/rt 250 def/rb 250 def/lk 250 def/rk 250 def/rc 250 def/lc 250 def/rf 250 def/lf 250 def/bv 250 def/ob 350 def/bu 350 def/ci 750 def/bx 750 def/sq 750 def/rn 500 def/ul 500 def/vr 0 defendDITfd begin/s2 500 def /s4 250 def /s3 333 def/a4p{arcto pop pop pop pop}def/2cx{2 copy exch}def/rls{rlineto stroke}def/currx{currentpoint pop}def/dround{transform round exch round exch itransform} defendend/DIThacks exch definefont popditstart(psc)xT576 1 1 xr1(Times-Roman)xf 1 f2(Times-Italic)xf 2 f3(Times-Bold)xf 3 f4(Times-BoldItalic)xf 4 f5(Helvetica)xf 5 f6(Helvetica-Bold)xf 6 f7(Courier)xf 7 f8(Courier-Bold)xf 8 f9(Symbol)xf 9 f10(DIThacks)xf 10 f10 s1 fxi%%EndProlog%%Page: 1 110 s 0 xH 0 xS 1 f10 f96(h)Y24(hhh)X4176(h)X4200(hhh)X9 s1 f266 480(F)N268(FG)X310(GL)X364(LU)X410(UP)X464(PR)X506(RO)X556(OJ)X610(JE)X640(EC)X686(CT)X736(T)X786(\()X788(\()X824(\))X826(\))X1885(U)X1887(UN)X1941(NI)X1995(IX)X2021(X)X2093(S)X2095(Sy)X2137(ys)X2175(st)X2205(te)X2227(em)X2261(m)X2337(V)X2339(V)X3426(F)X3428(FG)X3470(GL)X3524(LU)X3570(UP)X3624(PR)X3666(RO)X3716(OJ)X3770(JE)X3800(EC)X3846(CT)X3896(T)X3946(\()X3948(\()X3984(\))X3986(\))X266 864(N)N268(NA)X322(AM)X376(ME)X442(E)X3 f10 s554 960(fgluProject)N1 f9 f958(-)X1 f1022(map)X1180(object)X1396(coordinates)X1786(to)X1868(window)X2146(coordinates)X9 s266 1190(F)N268(FO)X310(OR)X364(RT)X414(TR)X460(RA)X510(AN)X564(N)X648(S)X650(SP)X692(PE)X734(EC)X780(CI)X830(IF)X856(FI)X898(IC)X924(CA)X974(AT)X1028(TI)X1074(IO)X1100(ON)X1154(N)X10 s554 1286(INTEGER*4)N3 f997(fgluProject)X1 f1381(\()X1428(REAL*8)X2 f1737(objX)X1 f1888(,)X1425 1382(REAL*8)N2 f1734(objY)X1 f1880(,)X1425 1478(REAL*8)N2 f1734(objZ)X1 f1880(,)X1425 1574(CHARACTER*8)N2 f2009(model)X1 f2205(,)X1425 1670(CHARACTER*8)N2 f2009(proj)X1 f2142(,)X1425 1766(CHARACTER*8)N2 f2009(view)X1 f2156(,)X1425 1862(CHARACTER*8)N2 f2009(winX)X1 f2173(,)X1425 1958(CHARACTER*8)N2 f2009(winY)X1 f2168(,)X1425 2054(CHARACTER*8)N2 f2009(winZ)X1 f2188(\))X554 2246(delim)N756($$)X9 s266 2380(P)N268(PA)X310(AR)X364(RA)X414(AM)X468(ME)X534(ET)X580(TE)X626(ER)X672(RS)X722(S)X2 f10 s554 2476(objX)N1 f705(,)X2 f745(objY)X1 f891(,)X2 f931(objZ)X1 f1077 2572(Specify)N1342(the)X1460(object)X1676(coordinates.)X2 f554 2706(model)N1 f1077(Speci\256es)X1386(the)X1504(current)X1752(modelview)X2128(matrix)X2357(\(as)X2471(from)X2647(a)X3 f2703(glGetDoublev)X1 f3194(call\).)X2 f554 2840(proj)N1 f1077(Speci\256es)X1386(the)X1504(current)X1752(projection)X2097(matrix)X2326(\(as)X2440(from)X2616(a)X3 f2672(glGetDoublev)X1 f3163(call\).)X2 f554 2974(view)N1 f1077(Speci\256es)X1386(the)X1504(current)X1752(viewport)X2057(\(as)X2171(from)X2347(a)X3 f2403(glGetIntegerv)X1 f2900(call\).)X2 f554 3108(winX)N1 f718(,)X2 f758(winY)X1 f917(,)X2 f957(winZ)X1 f1077 3204(Return)N1315(the)X1433(computed)X1769(window)X2047(coordinates.)X9 s266 3338(D)N268(DE)X322(ES)X368(SC)X410(CR)X460(RI)X510(IP)X536(PT)X578(TI)X624(IO)X650(ON)X704(N)X3 f10 s554 3434(fgluProject)N1 f968(transforms)X1341(the)X1470(speci\256ed)X1786(object)X2013(coordinates)X2414(into)X2569(window)X2858(coordinates)X3259(using)X2 f3463(model)X1 f3659(,)X2 f3710(proj)X1 f3843(,)X3894(and)X2 f554 3530(view)N1 f701(.)X742(The)X888(result)X1087(is)X1161(stored)X1378(in)X2 f1461(winX)X1 f1625(,)X2 f1666(winY)X1 f1825(,)X1866(and)X2 f2003(winZ)X1 f2162(.)X2203(A)X2282(return)X2495(value)X2690(of)X3 f2778(GL_TRUE)X1 f3176(indicates)X3481(success,)X3762(a)X3818(return)X554 3626(value)N748(of)X3 f835(GL_FALSE)X1 f1267(indicates)X1572(failure.)X554 3760(To)N669(compute)X971(the)X1095(coordinates,)X1511(let)X1617($v)X1724(=)X1796(\("objX",)X2096("objY",)X2369("objZ",)X2633(1.0\)$)X2827(represented)X3225(as)X3319(a)X3382(matrix)X3618(with)X3787(4)X3854(rows)X554 3856(and)N690(1)X750(column.)X1050(Then)X3 f1235(fgluProject)X1 f1639(computes)X1966($v)X2066(sup)X2197(prime$)X2444(as)X2531(follows:)X554 4048(v)N614(sup)X745(prime)X952(\304=\304)X1071(P)X1135(\304times\304)X1382(M)X1473(\304times\304)X1720(v)X554 4240(where)N791($P$)X955(is)X1048(the)X1186(current)X1454(projection)X1819(matrix)X2 f2069(proj)X1 f2202(,)X2263($M$)X2455(is)X2549(the)X2688(current)X2957(modelview)X3354(matrix)X2 f3604(model)X1 f3841(\(both)X554 4336(represented)N945(as)X1032($4)X1132(times)X1325(4$)X1425(matrices)X1717(in)X1799(column-major)X2273(order\))X2490(and)X2626('$times$')X2953(represents)X3299(matrix)X3528(multiplication.)X554 4470(The)N699(window)X977(coordinates)X1367(are)X1486(then)X1644(computed)X1980(as)X2067(follows:)X554 4662("winX")N818(\304=\304)X937("view")X1179(\(0\))X1293(\304+\304)X1412("view")X1654(\(2\))X1768(\304*\304)X1882(\(v)X1969(sup)X2100(prime)X2307(\(0\))X2421(\304+\304)X2540(1\)\304/\3042)X554 4854("winY")N818(\304=\304)X937("view")X1179(\(1\))X1293(\304+\304)X1412("view")X1654(\(3\)\304*\304\(v)X1929(sup)X2060(prime)X2267(\(1\))X2381(\304+\304)X2500(1\)\304/\3042)X2703(.EN)X554 5046("winZ")N809(\304=\304)X928(\(v)X1015(sup)X1146(prime)X1353(\(2\))X1487(\304+\304)X1606(1\)\304/\304)X1769(2)X9 s266 5276(S)N268(SE)X310(EE)X356(E)X432(A)X434(AL)X488(LS)X534(SO)X576(O)X3 f10 s554 5372(glGet)N1 f741(,)X3 f781(fgluUnProject)X1 f266 6144(Page)N442(1)X3577(July)X3730(22,)X3850(1997)X10 f0 6428(h)N24(hhh)X4176(h)X4200(hhh)X1 p%%Trailerxtxs

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -