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

📄 pickmatrix.ps

📁 计算机图形学~想必是很多人需要的~在此共享一下
💻 PS
字号:
%!PS-Adobe-1.0%%Creator: splat:n8 (Nate Robins,,,,,,,<engr>)%%Title: stdin (ditroff)%%CreationDate: Tue Jul 22 19:19:14 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(G)N268(GL)X322(LU)X368(UP)X422(PI)X464(IC)X490(CK)X540(KM)X594(MA)X660(AT)X714(TR)X760(RI)X810(IX)X836(X)X894(\()X896(\()X932(\))X934(\))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)X3318(G)X3320(GL)X3374(LU)X3420(UP)X3474(PI)X3516(IC)X3542(CK)X3592(KM)X3646(MA)X3712(AT)X3766(TR)X3812(RI)X3862(IX)X3888(X)X3946(\()X3948(\()X3984(\))X3986(\))X266 864(N)N268(NA)X322(AM)X376(ME)X442(E)X3 f10 s554 960(gluPickMatrix)N1 f9 f1072(-)X1 f1136(de\256ne)X1352(a)X1408(picking)X1668(region)X9 s266 1190(C)N268(C)X348(S)X350(SP)X392(PE)X434(EC)X480(CI)X530(IF)X556(FI)X598(IC)X624(CA)X674(AT)X728(TI)X774(IO)X800(ON)X854(N)X10 s554 1286(void)N3 f716(gluPickMatrix)X1 f1214(\()X1261(GLdouble)X2 f1606(x)X1 f1642(,)X1229 1382(GLdouble)N2 f1574(y)X1 f1610(,)X1229 1478(GLdouble)N2 f1574(delX)X1 f1721(,)X1229 1574(GLdouble)N2 f1574(delY)X1 f1716(,)X1229 1670(GLint)N2 f1440(*viewport)X1 f1780(\))X554 1862(delim)N756($$)X9 s266 1996(P)N268(PA)X310(AR)X364(RA)X414(AM)X468(ME)X534(ET)X580(TE)X626(ER)X672(RS)X722(S)X2 f10 s554 2092(x)N1 f590(,)X2 f630(y)X1 f686 2188(Specify)N951(the)X1069(center)X1286(of)X1373(a)X1429(picking)X1689(region)X1914(in)X1996(window)X2274(coordinates.)X2 f554 2322(delX)N1 f701(,)X2 f741(delY)X1 f686 2418(Specify)N951(the)X1069(width)X1271(and)X1407(height,)X1647(respectively,)X2075(of)X2162(the)X2280(picking)X2540(region)X2765(in)X2847(window)X3125(coordinates.)X2 f554 2552(viewport)N1 f686 2648(Speci\256es)N995(the)X1113(current)X1361(viewport)X1666(\(as)X1780(from)X1956(a)X3 f2012(glGetIntegerv)X1 f2509(call\).)X9 s266 2782(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 2878(gluPickMatrix)N1 f1082(creates)X1336(a)X1402(projection)X1757(matrix)X1996(that)X2146(can)X2288(be)X2395(used)X2573(to)X2666(restrict)X2920(drawing)X3214(to)X3307(a)X3374(small)X3578(region)X3814(of)X3912(the)X554 2974(viewport.)N900(This)X1063(is)X1137(typically)X1438(useful)X1655(to)X1738(determine)X2080(what)X2257(objects)X2505(are)X2624(being)X2822(drawn)X3043(near)X3202(the)X3320(cursor.)X3581(Use)X3 f3726(gluPick-)X554 3070(Matrix)N1 f821(to)X909(restrict)X1158(drawing)X1447(to)X1535(a)X1597(small)X1796(region)X2027(around)X2277(the)X2402(cursor.)X2670(Then,)X2882(enter)X3070(selection)X3382(mode)X3587(\(with)X3 f3783(glRen-)X554 3166(derMode)N1 f866(\))X914(and)X1051(rerender)X1341(the)X1460(scene.)X1700(All)X1822(primitives)X2166(that)X2306(would)X2526(have)X2698(been)X2870(drawn)X3091(near)X3250(the)X3368(cursor)X3589(are)X3708(identi\256ed)X554 3262(and)N690(stored)X906(in)X988(the)X1106(selection)X1411(buffer.)X554 3396(The)N701(matrix)X933(created)X1189(by)X3 f1292(gluPickMatrix)X1 f1813(is)X1889(multiplied)X2240(by)X2343(the)X2464(current)X2715(matrix)X2947(just)X3085(as)X3175(if)X3 f3247(glMultMatrix)X1 f3742(is)X3818(called)X554 3492(with)N719(the)X840(generated)X1176(matrix.)X1448(To)X1560(effectively)X1927(use)X2057(the)X2178(generated)X2514(pick)X2675(matrix)X2907(for)X3023(picking,)X3305(\256rst)X3451(call)X3 f3589(glLoadIden-)X554 3588(tity)N1 f691(to)X774(load)X933(an)X1030(identity)X1295(matrix)X1525(onto)X1688(the)X1807(perspective)X2194(matrix)X2424(stack.)X2650(Then)X2836(call)X3 f2973(gluPickMatrix)X1 f3471(,)X3512(and)X3649(\256nally,)X3894(call)X554 3684(a)N610(command)X946(\(such)X1140(as)X3 f1227(gluPerspective)X1 f1726(\))X1773(to)X1855(multiply)X2145(the)X2263(perspective)X2649(matrix)X2878(by)X2978(the)X3096(pick)X3254(matrix.)X554 3818(When)N814(using)X3 f1055(gluPickMatrix)X1 f1621(to)X1751(pick)X1957(NURBS,)X2311(be)X2455(careful)X2747(to)X2877(turn)X3074(off)X3236(the)X3403(NURBS)X3738(property)X3 f554 3914(GLU_AUTO_LOAD_MATRIX)N1 f1643(.)X1705(If)X3 f1780(GLU_AUTO_LOAD_MATRIX)X1 f2890(is)X2964(not)X3087(turned)X3313(off,)X3448(then)X3607(any)X3744(NURBS)X554 4010(surface)N810(rendered)X1115(is)X1191(subdivided)X1565(differently)X1927(with)X2093(the)X2215(pick)X2377(matrix)X2610(than)X2772(the)X2894(way)X3052(it)X3120(was)X3269(subdivided)X3644(without)X3912(the)X554 4106(pick)N712(matrix.)X9 s266 4240(E)N268(EX)X314(XA)X368(AM)X422(MP)X488(PL)X530(LE)X576(E)X10 s554 4336(When)N766(rendering)X1094(a)X1150(scene)X1349(as)X1436(follows:)X554 4528(glMatrixMode\(GL_PROJECTION\);)N2287(glLoadIdentity\(\);)X3402(gluPerspective\(...\);)X554 4624 0.1202(glMatrixMode\(GL_MODELVIEW\);)AN1759(/*)X1841(Draw)X2040(the)X2158(scene)X2357(*/)X554 4816(a)N610(portion)X861(of)X948(the)X1066(viewport)X1371(can)X1503(be)X1599(selected)X1878(as)X1965(a)X2021(pick)X2179(region)X2404(like)X2544(this:)X554 5008(glMatrixMode\(GL_PROJECTION\);)N1758(glLoadIdentity\(\);)X2344(gluPickMatrix\(x,)X2927(y,)X3021(width,)X3257(height,)X3512(viewport\);)X3881(glu-)X554 5104(Perspective\(...\);)N1080 0.1202(glMatrixMode\(GL_MODELVIEW\);)AX2285(/*)X2367(Draw)X2566(the)X2684(scene)X2883(*/)X9 s266 5238(S)N268(SE)X310(EE)X356(E)X432(A)X434(AL)X488(LS)X534(SO)X576(O)X3 f10 s554 5334(glGet)N1 f741(,)X3 f781(glLoadIndentity)X1 f1335(,)X3 f1375(glMultMatrix)X1 f1847(,)X3 f1887(glRenderMode)X1 f2399(,)X3 f2439(gluPerspective)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 + -