-+-+-+-+-+-+-+-+ START OF PART 125 -+-+-+-+-+-+-+-+ X1864 60 V 1512 62 354 2 v 11 136 a Fq(SUBROUTINE)12 b Fp(ptkf_3ptto3pt)e XFq(\(p1,)h(p2,)g(p3,)g(q1,)h(q2,)f(q3,)g(operation,)g(matrix,)g(error\))25 X225 y(IN)91 b(REAL)119 b Fa(p1\(3\))146 b Fq(3D)11 b(point.)25 X275 y(IN)91 b(REAL)119 b Fa(p2\(3\))146 b Fq(3D)11 b(point.)25 X324 y(IN)91 b(REAL)119 b Fa(p3\(3\))146 b Fq(3D)11 b(point.)25 X374 y(IN)91 b(REAL)119 b Fa(q1\(3\))146 b Fq(3D)11 b(point.)25 X424 y(IN)91 b(REAL)119 b Fa(q2\(3\))146 b Fq(3D)11 b(point.)25 X474 y(IN)91 b(REAL)119 b Fa(q3\(3\))146 b Fq(3D)11 b(point.)25 X524 y(IN)91 b(INTEGER)50 b Fa(operation)80 b Fq(concatenation)11 Xb(operation.)25 574 y(OUT)50 b(REAL)119 b Fa(matrix\(4,)9 b(4\))50 Xb Fq(4x4)10 b(matrix.)25 623 y(OUT)50 b(INTEGER)g Fa(error)154 Xb Fq(error)11 b(code.)0 692 y(This)g(function)e(returns)h(the)g(3)h(point)e X(to)h(3)g(point)f(transformation)g(as)j(described)e(in)g(`5B1)n(1`5D,)h(page Vs)h X(353\261355.)h(The)e(transforma-)0 742 y(tion)e(has)j(the)e(following)e X(properties:)14 b Fi(p1)d Fq(is)f(transformed)h(onto)f Fi(q1)p XFq(;)g(the)h(vector)g Fi(\(p2-p1\))h Fq(is)e(transformed)g(to)h(be)g X(parallel)f(to)0 792 y(the)i(vector)g Fi(\(q2-q1\))p Fq(;)i(the)e(plane)g X(containing)f(the)h(three)h(points)e Fi(p1,)18 b(p2,)h(p3)12 Xb Fq(is)g(transformed)g(into)f(the)i(plane)f(containing)0 842 Xy Fi(q1,)19 b(q2,)f(q3)p Fq(.)j(The)14 b(transformation)e(is)h(concatenated) Vh X(with)e(the)h(4)d Fl(\264)g Fq(4)j(matrix)g Fi(matrix)h Fq(on)f(the)g(basis) Vg X(of)g Fi(operation)p Fq(.)22 b(If)0 892 y(the)11 b(parameters)i(are)f X(invalid,)e Fi(error)i Fq(is)f(set)h(to)e(-1.)16 b(Otherwise,)11 Xb(its)g(value)g(is)g Fi(ptkcpcok)p Fq(.)p 1347 989 520 2 v X1347 1068 2 80 v 1361 1042 a Fb(ptkf_accumul)o(ate)o(tra)o(n)p X1864 1068 V 1347 1070 520 2 v 11 1144 a Fq(SUBROUTINE)h Fp X(ptkf_accumulatetran)f Fq(\(\256xed,)g(shift,)g(rot,)g(scale,)i(operation,)d X(matrix\))25 1233 y(IN)91 b(REAL)119 b Fa(\256xed\(2\))110 Xb Fq(origin.)25 1282 y(IN)91 b(REAL)119 b Fa(shift\(2\))h Fq(shift)10 Xb(factor)n(.)25 1332 y(IN)91 b(REAL)119 b Fa(rotx)170 b Fq(x)11 Xb(rotation.)25 1382 y(IN)91 b(REAL)119 b Fa(scale\(2\))102 Xb Fq(scale)12 b(factor)n(.)25 1432 y(IN)91 b(INTEGER)50 b Fa(operation)80 Xb Fq(concatenation)11 b(operation.)25 1482 y(OUT)50 b(REAL)119 Xb Fa(matrix\(3,)9 b(3\))50 b Fq(3x3)10 b(matrix.)0 1551 y(This)i(function)f X(computes)i(the)f(speci\256ed)h(2D)f(shift,)g(scale)h(and)g(rotate)f X(transformations,)f(in)h(the)g(order)g(scale,)i(rotate,)f(shift,)0 X1600 y(and)e(then)g(concatenates)i(the)e(resulting)f(transformation)f(with)i X(the)g(speci\256ed)h(matrix)f(on)g(the)g(basis)g(of)g Fi(operation)p XFq(.)p 1317 1698 550 2 v 1317 1777 2 80 v 1331 1751 a Fb(ptkf_accumul)o(ate) Vo X(tra)o(n3)p 1864 1777 V 1317 1779 550 2 v 11 1853 a Fq(SUBROUTINE)h XFp(ptkf_accumulatetran3)e Fq(\(\256xed,)i(shift,)f(rotx,)f(roty)m(,)h(rotz,) Vh X(scale,operation,)g(matrix\))25 1942 y(IN)91 b(REAL)119 b Fa(\256xed\(3\))11 V0 Xb Fq(origin.)25 1991 y(IN)91 b(REAL)119 b Fa(shift\(3\))h Fq(shift)10 Xb(factor)n(.)25 2041 y(IN)91 b(REAL)119 b Fa(rotx)170 b Fq(x)11 Xb(rotation.)25 2091 y(IN)91 b(REAL)119 b Fa(rotx)170 b Fq(y)11 Xb(rotation.)25 2141 y(IN)91 b(REAL)119 b Fa(rotx)170 b Fq(z)11 Xb(rotation.)25 2191 y(IN)91 b(REAL)119 b Fa(scale\(3\))102 Xb Fq(scale)12 b(factor)n(.)25 2240 y(IN)91 b(INTEGER)50 b Fa(operation)80 Xb Fq(concatenation)11 b(operation.)25 2290 y(OUT)50 b(REAL)119 Xb Fa(matrix\(4,)9 b(4\))50 b Fq(4x4)10 b(matrix.)0 2359 y(This)i(function)f X(computes)i(the)f(speci\256ed)h(3D)f(shift,)g(scale)h(and)g(rotate)f X(transformations,)f(in)h(the)g(order)g(scale,)i(rotate,)f(shift,)0 X2409 y(and)e(then)g(concatenates)i(the)e(resulting)f(transformation)f(with)i X(the)g(speci\256ed)h(matrix)f(on)g(the)g(basis)g(of)g Fi(operation)p XFq(.)0 2956 y(13th)22 b(May)m(,)12 b(1992)626 b(167)828 b(2.01)p Xeop X%%Page: 168 169 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)p 1596 -19 271 2 v 1596 60 2 80 v 1610 35 a Fb(ptkf_addv)p X1864 60 V 1596 62 271 2 v 11 136 a Fq(SUBROUTINE)12 b Fp(ptkf_addv)e XFq(\(p1,)h(p2,)h(p3\))25 225 y(IN)91 b(REAL)50 b Fa(p1\(2\))e XFq(2D)12 b(vector)n(.)25 274 y(IN)91 b(REAL)50 b Fa(p2\(2\))e XFq(2D)12 b(vector)n(.)25 324 y(OUT)50 b(REAL)g Fa(p3\(2\))e XFq(2D)12 b(vector)n(.)0 393 y(This)f(function)f(evaluates)i(the)f(2D)g X(vector)g Fi(p1+p2)i Fq(and)e(returns)g(the)g(result)f(in)h XFi(p3)p Fq(.)p 1566 490 301 2 v 1566 569 2 80 v 1580 544 a XFb(ptkf_addv3)p 1864 569 V 1566 571 301 2 v 11 645 a Fq(SUBROUTINE)h XFp(ptkf_addv3)e Fq(\(p1,)h(p2,)h(p3\))25 734 y(IN)91 b(REAL)50 Xb Fa(p1\(3\))e Fq(3D)12 b(vector)n(.)25 784 y(IN)91 b(REAL)50 Xb Fa(p2\(3\))e Fq(3D)12 b(vector)n(.)25 833 y(OUT)50 b(REAL)g XFa(p3\(3\))e Fq(3D)12 b(vector)n(.)0 902 y(This)f(function)f(evaluates)i(the V) Xf(3D)g(vector)g Fi(p1+p3)i Fq(and)e(returns)g(the)g(result)f(in)h XFi(p3)p Fq(.)p 1426 1000 441 2 v 1426 1079 2 80 v 1440 1053 Xa Fb(ptkf_box3tobox3)p 1864 1079 V 1426 1081 441 2 v 11 1155 Xa Fq(SUBROUTINE)h Fp(ptkf_box3tobox3)d Fq(\(box1,)i(box2,)f(preserve,)j X(operation,)d(matrix,)i(error\))25 1243 y(IN)91 b(REAL)124 Xb Fa(box1\(6\))107 b Fq(3D)11 b(volume.)25 1293 y(IN)91 b(REAL)124 Xb Fa(box2\(6\))107 b Fq(3D)11 b(volume.)25 1343 y(IN)91 b(LOGICAL)50 Xb Fa(preserve)89 b Fq(preserve)12 b(aspect)g(ratio.)25 1393 Xy(IN)91 b(INTEGER)55 b Fa(operation)79 b Fq(concatenation)11 Xb(operation.)25 1443 y(OUT)50 b(REAL)124 b Fa(matrix\(4,)9 Xb(4\))49 b Fq(4x4)11 b(matrix.)25 1493 y(OUT)50 b(INTEGER)55 Xb Fa(error)153 b Fq(error)11 b(code.)0 1561 y(This)k(function)e(computes)j(a V) Xf(mapping)g(from)g(one)g(3D)g(box)f(to)g(another)h(\261)g(a)h(3D)f(window)e X(to)i(3D)g(viewport)e(transforma-)0 1611 y(tion)8 b(\261)i(and)g X(concatenates)g(this)f(transformation)f(with)h Fi(matrix)i XFq(on)e(the)g(basis)h(of)f Fi(operation)p Fq(.If)j(the)d(parameters)i(are)f X(invalid,)0 1661 y Fi(error)i Fq(is)f(set)h(to)f(-1.)k(Otherwise,)c(its)g X(value)g(is)g(0.)p 1486 1758 381 2 v 1486 1837 2 80 v 1500 X1812 a Fb(ptkf_boxtobox)p 1864 1837 V 1486 1839 381 2 v 11 X1913 a Fq(SUBROUTINE)h Fp(ptkf_boxtobox)d Fq(\(box1,)i(box2,)g(preserve,)h X(operation,)f(matrix,)g(error\))25 2002 y(IN)91 b(REAL)124 Xb Fa(box1\(4\))107 b Fq(2D)11 b(box.)25 2052 y(IN)91 b(REAL)124 Xb Fa(box2\(4\))107 b Fq(2D)11 b(box.)25 2102 y(IN)91 b(LOGICAL)50 Xb Fa(preserve)89 b Fq(preserve)12 b(aspect)g(ratio.)25 2152 Xy(IN)91 b(INTEGER)55 b Fa(operation)79 b Fq(concatenation)11 Xb(operation.)25 2201 y(OUT)50 b(REAL)124 b Fa(matrix\(3,)9 Xb(3\))49 b Fq(3x3)11 b(matrix.)25 2251 y(OUT)50 b(INTEGER)55 Xb Fa(error)153 b Fq(error)11 b(code.)0 2320 y(This)k(function)e(computes)j(a V) Xf(mapping)g(from)g(one)g(2D)g(box)f(to)g(another)h(\261)g(a)h(2D)f(window)e X(to)i(2D)g(viewport)e(transforma-)0 2370 y(tion)g(\320and)h(concatenates)h X(this)e(transformation)g(it)g(with)g Fi(matrix)j Fq(on)d(the)h(basis)h(of)e XFi(operation)p Fq(.)26 b(If)14 b(the)g(parameters)h(are)0 2420 Xy(invalid,)10 b Fi(error)i Fq(is)f(set)h(to)f(-1.)k(Otherwise,)c(its)g(value V) Xg(is)g(0.)0 2956 y(13th)22 b(May)m(,)12 b(1992)626 b(168)828 Xb(2.01)p eop X%%Page: 169 170 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)p 1274 -19 593 2 v 1274 60 2 80 v 1288 35 a Fb(ptkf_concate)o(nat) Vo X(em)o(atri)o(x)p 1864 60 V 1274 62 593 2 v 11 136 a Fq(SUBROUTINE)12 Xb Fp(ptkf_concatenatematrix)e Fq(\(operation,)h(matrix1,)g(matrix2,)g X(result\))25 225 y(IN)91 b(INTEGER)50 b Fa(operation)99 b Fq(concatenation)1 V1 Xb(operation.)25 275 y(IN)91 b(REAL)119 b Fa(matrix1\(3,)9 b(3\))49 Xb Fq(3x3)11 b(matrix.)25 324 y(IN)91 b(REAL)119 b Fa(matrix2\(3,)9 Xb(3\))49 b Fq(3x3)11 b(matrix.)25 374 y(OUT)50 b(REAL)119 b XFa(result\(3,)9 b(3\))78 b Fq(3x3)11 b(matrix.)0 443 y(This)k(function)e X(concatenates)k(the)d(3)e Fl(\264)g Fq(3)j(matrices)h Fi(matrix1)g XFq(and)f Fi(matrix2)i Fq(on)d(the)h(basis)g(of)g Fi(operation)p XFq(.)28 b(The)16 b(result)0 493 y(is)10 b(stored)f(in)h Fi(result)p XFq(.)16 b(Note)10 b(that)f Fi(result)i Fq(can)g(also)f(be)g XFi(matrix1)h Fq(or)f Fi(matrix2)h Fq(since)f(a)h(copy)f(is)f(made.)16 Xb(When)11 b Fi(operation)0 543 y Fq(is)i Fi(preconcatenate)p XFq(,)18 b(then)13 b Fi(result)19 b Fl(\254)f Fi(matrix2)h(*)f(matrix1)p XFq(.)24 b(When)14 b Fi(operation)h Fq(is)f Fi(postconcatenate)p XFq(,)j Fi(result)0 593 y Fl(\254)h Fi(matrix1)h(*)f(matrix2)p XFq(.)p 1244 690 623 2 v 1244 769 2 80 v 1258 744 a Fb(ptkf_concate)o(nate)o X(ma)o(tri)o(x3)p 1864 769 V 1244 771 623 2 v 11 845 a Fq(SUBROUTINE)12 Xb Fp(ptkf_concatenatematrix3)e Fq(\(operation,)h(matrix1,)f(matrix2,)h X(result\))25 934 y(IN)91 b(INTEGER)50 b Fa(operation)99 b Fq(concatenation)1 V1 Xb(operation.)25 984 y(IN)91 b(REAL)119 b Fa(matrix1\(4,)9 b(4\))49 Xb Fq(4x4)11 b(matrix.)25 1033 y(IN)91 b(REAL)119 b Fa(matrix2\(4,)9 Xb(4\))49 b Fq(4x4)11 b(matrix.)25 1083 y(OUT)50 b(REAL)119 Xb Fa(result\(4,)9 b(4\))78 b Fq(4x4)11 b(matrix.)0 1152 y(This)k(function)e X(concatenates)k(the)d(4)e Fl(\264)g Fq(4)j(matrices)h Fi(matrix1)g XFq(and)f Fi(matrix2)i Fq(on)d(the)h(basis)g(of)g Fi(operation)p XFq(.)28 b(The)16 b(result)0 1202 y(is)10 b(stored)f(in)h Fi(result)p XFq(.)16 b(Note)10 b(that)f Fi(result)i Fq(can)g(also)f(be)g XFi(matrix1)h Fq(or)f Fi(matrix2)h Fq(since)f(a)h(copy)f(is)f(made.)16 Xb(When)11 b Fi(operation)0 1252 y Fq(is)i Fi(preconcatenate)p XFq(,)18 b(then)13 b Fi(result)19 b Fl(\254)f Fi(matrix2)h(*)f(matrix1)p XFq(.)24 b(When)14 b Fi(operation)h Fq(is)f Fi(postconcatenate)p XFq(,)j Fi(result)0 1302 y Fl(\254)h Fi(matrix1)h(*)f(matrix2)p XFq(.)p 1529 1399 338 2 v 1529 1478 2 80 v 1543 1452 a Fb(ptkf_crossv3)p X1864 1478 V 1529 1480 338 2 v 11 1553 a Fq(SUBROUTINE)12 b XFp(ptkf_cr)o(ossv3)f Fq(\(v1,)h(v2,)f(v3\))25 1642 y(IN)91 Xb(REAL)50 b Fa(v1\(3\))e Fq(3D)12 b(vector)n(.)25 1692 y(IN)91 Xb(REAL)50 b Fa(v2\(3\))e Fq(3D)12 b(vector)n(.)25 1742 y(OUT)50 Xb(REAL)g Fa(v3\(3\))e Fq(3D)12 b(vector)n(.)0 1811 y(This)k(function)e X(evaluates)i(the)g(cross)g(product)f(of)g(the)h(two)f(3D)g(vectors)h XFi(v1)g Fq(and)g Fi(v2)p Fq(,)i(returning)c(the)h(new)h(vector)g(as)g(the)0 X1861 y(function)11 b(result.)18 b(Since)13 b(a)f(local)h(copy)f(is)g(made)h X(statements)g(such)g(as)g Fi(call)18 b(ptkf_crossv\(v1,)j(v2,)d(v2\))13 Xb Fq(will)e(produce)0 1910 y(the)g(correct)h(answer)n(.)p 1605 X2008 261 2 v 1605 2087 2 80 v 1620 2061 a Fb(ptkf_dotv)p 1864 X2087 V 1605 2089 261 2 v 0 2162 a Fq(REAL)g(FUNCTION)f Fp(ptkf_dotv)f XFq(\(v1,)i(v2\))25 2251 y(IN)50 b(REAL)g Fa(v1\(2\))e Fq(2D)11 Xb(vector)n(.)25 2301 y(IN)50 b(REAL)g Fa(v2\(2\))e Fq(2D)11 Xb(vector)n(.)0 2376 y(Evaluates)h(the)f(dot)f(product)h(of)g(the)g(two)f(2D) Vi X(vectors)f Fi(v1)h Fq(and)f Fi(v2)p Fq(,)h(returning)e(it)g(as)i(the)f(value V) Xh(of)f(the)g(function.)0 2956 y(13th)22 b(May)m(,)12 b(1992)626 Xb(169)828 b(2.01)p eop X%%Page: 170 171 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)p 1576 -19 291 2 v 1576 60 2 80 v 1590 35 a Fb(ptkf_dotv3)p X1864 60 V 1576 62 291 2 v 0 136 a Fq(REAL)12 b(FUNCTION)f Fp(ptkf_dotv3)f XFq(\(v1,)h(v2\))25 225 y(IN)50 b(REAL)g Fa(v1\(3\))e Fq(3D)11 Xb(vector)n(.)25 274 y(IN)50 b(REAL)g Fa(v2\(3\))e Fq(3D)11 Xb(vector)n(.)0 349 y(This)f(function)e(evaluates)j(the)f(dot)f(product)f(of) Vi X(the)g(two)f(3D)h(vectors)g Fi(v1)g Fq(and)g Fi(v2)p Fq(,)h(returning)e(it)g X(as)h(the)g(value)g(of)g(the)f(function.)p 1582 447 284 2 v X1582 526 2 80 v 1596 500 a Fb(ptkf_equal)p 1864 526 V 1582 X528 284 2 v 0 601 a Fq(LOGICAL)j(FUNCTION)f Fp(ptkf_equal)g XFq(\(one,)g(two\))25 690 y(IN)50 b(REAL)g Fa(one)e Fq(\257oating)11 Xb(point)e(number)n(.)25 740 y(IN)50 b(REAL)g Fa(two)j Fq(\257oating)11 Xb(point)e(number)n(.)0 815 y(This)14 b(function)f(returns)h(TRUE)h(if)f XFi(one)h Fq(and)f Fi(two)h Fq(are)h(equal,)f(or)f(their)g(dif)o(ference)h(is V) Xf(less)h(than)f(the)g(global)g(constant)f(tol-)0 865 y(erance)g XFi(ptkcpceps)p Fq(.)p 1287 962 580 2 v 1287 1041 2 80 v 1301 X1016 a Fb(ptkf_evalviewm)o(appi)o(ng)p 1864 1041 V 1287 1043 X580 2 v 11 1117 a Fq(SUBROUTINE)f Fp(ptkf_evalviewmapping)d XFq(\(wlimits,)h(vlimits,)g(operation,)h(matrix,)g(error\))25 X1206 y(IN)91 b(REAL)119 b Fa(wlimits\(4\))80 b Fq(window)10 Xb(limits.)25 1256 y(IN)91 b(REAL)119 b Fa(vlimits\(4\))87 b XFq(viewport)10 b(limits.)25 1306 y(IN)91 b(INTEGER)50 b Fa(operation)80 Xb Fq(concatenation)11 b(operation.)25 1356 y(OUT)50 b(REAL)119 Xb Fa(matrix\(3,)9 b(3\))50 b Fq(3x3)10 b(matrix.)25 1405 y(OUT)50 Xb(INTEGER)g Fa(error)154 b Fq(error)11 b(code.)0 1474 y(This)h(function)e X(evaluates)j(a)f(2d)f(PHIGS)h(view)g(mapping)f(matrix.)17 b(If)12 Xb(the)f(function)g(succeeds,)j Fi(error)e Fq(is)g(set)g(to)f XFi(ptkcpcok)p Fq(.)0 1524 y(Otherwise,)g Fi(error)i Fq(is)e(329)f(if)h(the)g X(window)g(limits)f(are)i(not)e(valid,)h(and)g(330)g(if)g(the)g(viewport)f X(limits)g(are)i(not)e(valid.)p 1257 1621 610 2 v 1257 1700 X2 80 v 1271 1675 a Fb(ptkf_evalviewm)o(appi)o(ng3)p 1864 1700 XV 1257 1702 610 2 v 11 1776 a Fq(SUBROUTINE)i Fp(ptkf_evalviewmapping3)d XFq(\(wlimits,)18 b(vlimits,)g(viewtype,)i(refpoint,vplanedist,)d(opera-)722 X1826 y(tion,)10 b(matrix,)h(error\))25 1877 y(IN)91 b(REAL)119 Xb Fa(wlimits\(6\))80 b Fq(window)10 b(limits.)25 1926 y(IN)91 Xb(REAL)119 b Fa(vlimits\(6\))87 b Fq(viewport)10 b(limits.)25 X1976 y(IN)91 b(INTEGER)50 b Fa(viewtype)91 b Fq(projection)9 Xb(type.)25 2026 y(IN)91 b(REAL)119 b Fa(refpoint\(3\))66 b XFq(projection)9 b(reference)k(point.)25 2076 y(IN)91 b(REAL)119 Xb Fa(vplanedist)68 b Fq(view)11 b(plane)g(distance.)25 2126 Xy(IN)91 b(INTEGER)50 b Fa(operation)80 b Fq(concatenation)11 Xb(operation.)25 2176 y(OUT)50 b(REAL)119 b Fa(matrix\(4,)9 Xb(4\))50 b Fq(4x4)10 b(matrix.)25 2225 y(OUT)50 b(INTEGER)g XFa(error)154 b Fq(error)11 b(code.)0 2294 y(This)h(function)f(evaluates)j(a) Vf X(3D)f(PHIGS)h(view)f(mapping)g(matrix.)19 b(If)12 b(the)g(function)f X(succeeds,)k Fi(error)f Fq(is)e(set)h(to)f(0.)19 b(Other)o(-)0 X2344 y(wise,)12 b Fi(error)h Fq(is)e(329)g(if)g(the)h(window)e(limits)g(are) Vj X(not)e(valid,)g(336)g(if)g(the)g(back)h(plane)g(is)f(in)g(front)g(of)g(front V) Xf(plane,)i(330)f(if)g(the)0 2394 y(viewport)e(limits)g(are)j(not)d(valid,)i X(335)f(if)f(the)i(projection)e(reference)j(point)d(is)h(on)g(the)h(view)f X(plane,)h(and)g(340)e(if)h(the)h(projection)0 2444 y(reference)i(point)d(is) Vh X(between)g(front)g(and)g(back)h(planes.)0 2956 y(13th)22 b(May)m(,)12 Xb(1992)626 b(170)828 b(2.01)p eop X%%Page: 171 172 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)p 1237 -19 630 2 v 1237 60 2 80 v 1251 35 a Fb(ptkf_evalviewori)o X(ent)o(ati)o(on)p 1864 60 V 1237 62 630 2 v 11 136 a Fq(SUBROUTINE)12 Xb Fp(ptkf_evalvieworientation)d Fq(\(viewrefpoint,)h(viewupvector)n(,)h X(operation,)f(matrix,)h(error\))25 225 y(IN)91 b(REAL)119 b +-+-+-+-+-+-+-+- END OF PART 125 +-+-+-+-+-+-+-+-