-+-+-+-+-+-+-+-+ START OF PART 60 -+-+-+-+-+-+-+-+ X2 2 X-36 -84 X2 1916 1620 pl X1 2 X-33 -15 X-2 -2 X34 15 X4 1846 1521 pl X36 84 1880 1536 mls X2 2 X-32 -77 X-6 -9 X3 1916 1620 pl X6 9 X-6 -9 X2 1916 1620 pl X2 3 X-33 -15 X-2 -3 X33 15 X4 1845 1519 pl X2 3 X-29 -70 X-5 -10 X32 77 X4 1878 1534 pl X6 9 1910 1611 mls X5 10 X-14 -19 X2 1919 1620 pl X1 3 X-33 -14 X-1 -4 X33 15 X4 1843 1516 pl X1 4 X-27 -64 X-3 -10 X29 70 X4 1876 1531 pl X14 19 1905 1601 mls X3 10 X-18 -23 X-1 -6 X3 1921 1620 pl X1 4 X-34 -15 X0 -3 X33 14 X4 1842 1513 pl X0 3 X-24 -55 X-3 -12 X27 64 X4 1875 1527 pl X3 12 X-18 -21 X-3 -14 X18 23 X4 1902 1591 pl X0 3 X-33 -14 X-1 -4 X34 15 X4 1841 1509 pl X1 4 X-24 -47 X-1 -12 X24 55 X4 1875 1524 pl X1 12 X-17 -19 X-2 -14 X18 21 X4 1899 1579 pl X0 4 X-33 -15 X0 -3 X33 14 X4 1841 1506 pl X0 3 X-24 -38 X0 -12 X24 47 X4 1874 1520 pl X0 12 X-17 -15 X0 -16 X17 19 X4 1898 1567 pl X0 3 X-34 -14 X1 -4 X33 15 X4 1841 1502 pl X-1 4 X-24 -29 X1 -13 X24 38 X4 1874 1517 pl X-1 13 X-18 -13 X2 -15 X17 15 X4 1898 1555 pl X-1 4 X-33 -14 X0 -4 X34 14 X4 1841 1499 pl X0 4 X-27 -21 X3 -12 X24 29 X4 1875 1513 pl X-3 12 X-18 -10 X3 -15 X18 13 X4 1899 1542 pl X-1 3 X-33 -13 X1 -4 X33 14 X4 1842 1495 pl X-1 4 X-29 -12 X3 -13 X27 21 X4 1875 1509 pl X-3 13 X-19 -8 X4 -15 X18 10 X4 1902 1530 pl X-2 4 X-33 -14 X2 -3 X33 13 X4 1843 1492 pl X-2 3 X-32 -4 X5 -11 X29 12 X4 1876 1505 pl X-5 11 X-20 -5 X6 -14 X19 8 X4 1905 1517 pl X-1 3 X-34 -14 X2 -3 X33 14 X4 1845 1488 pl X-2 3 X-36 4 X6 -11 X32 4 X4 1878 1502 pl X-6 11 X-21 -3 X7 -13 X20 5 X4 1910 1506 pl X-2 3 X-34 -14 X2 -3 X34 14 X4 1846 1485 pl X-2 3 X-41 11 X7 -10 X36 -4 X4 1880 1499 pl X-7 10 X-22 0 X8 -13 X21 3 X4 1916 1495 pl X-3 2 X-33 -13 X2 -3 X34 14 X4 1848 1482 pl X-2 3 X-46 17 X7 -9 X41 -11 X4 1882 1496 pl X-7 9 X-24 1 X9 -10 X22 0 X4 1923 1485 pl X-2 3 X-34 -14 X3 -2 X33 13 X4 1851 1480 pl X-3 2 X-51 23 X8 -8 X46 -17 X4 1884 1493 pl X-8 8 X-26 3 X10 -10 X24 -1 X4 1930 1476 pl X-3 1 X-33 -13 X2 -2 X34 14 X4 1853 1477 pl X-2 2 X-58 28 X9 -7 X51 -23 X4 1887 1491 pl X-9 7 X-27 4 X10 -8 X26 -3 X4 1938 1468 pl X-2 2 X-34 -13 X3 -2 X33 13 X4 1856 1476 pl X-3 2 X-64 31 X9 -5 X58 -28 X4 1889 1489 pl X-9 5 X-29 5 X11 -6 X27 -4 X4 1947 1461 pl X-3 1 X-34 -13 X3 -1 X34 13 X4 1858 1474 pl X-3 1 X-70 33 X9 -3 X64 -31 X4 1892 1487 pl X-9 3 X-31 6 X11 -4 X29 -5 X4 1956 1456 pl X-3 1 X-34 -13 X3 -1 X34 13 X4 1861 1473 pl X-3 1 X-77 34 X10 -2 X70 -33 X4 1895 1486 pl X-10 2 X-32 7 X11 -3 X31 -6 X4 1965 1453 pl X-3 0 X-34 -13 X3 0 X34 13 X4 1864 1472 pl X-3 0 X-83 35 X9 -1 X77 -34 X4 1898 1485 pl X-9 1 X-34 7 X11 -1 X32 -7 X4 1975 1451 pl X-3 0 X-34 -13 X3 0 X34 13 X4 1867 1472 pl X-3 0 X-89 34 X9 1 X83 -35 X4 1901 1485 pl X-9 -1 X-36 6 X11 2 X34 -7 X4 1984 1450 pl X-3 -1 X-34 -13 X3 1 X34 13 X4 1870 1472 pl X-3 -1 X-95 33 X9 2 X89 -34 X4 1904 1485 pl X-9 -2 X-37 6 X10 2 X36 -6 X4 1993 1451 pl X-2 -1 X-34 -13 X2 1 X34 13 X4 1873 1473 pl X-2 -1 X-101 30 X8 4 X95 -33 X4 1907 1486 pl X-8 -4 X-38 5 X9 5 X37 -6 X4 2002 1453 pl X-3 -2 X-34 -12 X3 1 X34 13 X4 1875 1474 pl X-3 -1 X-105 26 X7 5 X101 -30 X4 1909 1487 pl X-7 -5 X-40 4 X9 6 X38 -5 X4 2010 1457 pl X-2 -1 X-34 -13 X2 2 X34 12 X4 1878 1476 pl X-2 -2 X-110 22 X7 6 X105 -26 X4 1912 1488 pl X-7 -6 X-41 2 X8 8 X40 -4 X4 2017 1462 pl X-2 -3 X-34 -13 X2 3 X34 13 X4 1880 1477 pl X-2 -3 X-114 17 X6 8 X110 -22 X4 1914 1490 pl X-6 -8 X-42 1 X7 9 X41 -2 X4 2024 1468 pl X-1 -2 X-35 -13 X2 2 X34 13 X4 1882 1480 pl X-2 -2 X-117 11 X5 8 X114 -17 X4 1916 1493 pl X-5 -8 X-44 -1 X7 10 X42 -1 X4 2030 1476 pl X-2 -3 X-34 -13 X1 3 X35 13 X4 1883 1482 pl X-1 -3 X-120 4 X4 10 X117 -11 X4 1918 1495 pl X-4 -10 X-44 -2 X4 11 X44 1 X4 2035 1484 pl X-1 -3 X-34 -13 X1 3 X34 13 X4 1885 1485 pl X-1 -3 X-123 -3 X4 10 X120 -4 X4 1919 1498 pl X-4 -10 X-44 -5 X4 13 X44 2 X4 2039 1494 pl X-1 -3 X-34 -14 X1 4 X34 13 X4 1886 1488 pl X-1 -4 X-124 -10 X2 11 X123 3 X4 1920 1501 pl X-2 -11 X-45 -6 X3 12 X44 5 X4 2043 1504 pl X0 -4 X-34 -13 X0 3 X34 14 X4 1887 1491 pl X0 -3 X-125 -18 X1 11 X124 10 X4 1921 1505 pl X-1 -11 X-45 -9 X1 14 X45 6 X4 2045 1515 pl X0 -3 X-34 -14 X0 4 X34 13 X4 1887 1495 pl X0 -4 X-125 -26 X0 12 X125 18 X4 1921 1508 pl X0 -12 X-45 -11 X0 14 X45 9 X4 2046 1526 pl X0 -4 X-34 -14 X0 4 X34 14 X4 1887 1498 pl X0 -4 X-124 -33 X-1 11 X125 26 X4 1921 1512 pl X1 -11 X-45 -14 X-1 14 X45 11 X4 2046 1538 pl X1 -3 X-34 -14 X-1 3 X34 14 X4 1887 1502 pl X1 -3 X-123 -42 X-2 12 X124 33 X4 1921 1516 pl X2 -12 X-44 -16 X-3 14 X45 14 X4 2045 1549 pl X1 -4 X-34 -14 X-1 4 X34 14 X4 1886 1505 pl X1 -4 X-120 -49 X-4 11 X123 42 X4 1920 1519 pl X4 -11 X-44 -18 X-4 13 X44 16 X4 2043 1561 pl X2 -3 X-35 -14 X-1 3 X34 14 X4 1885 1509 pl X1 -3 X-117 -57 X-4 11 X120 49 X4 1919 1523 pl X4 -11 X-44 -21 X-4 14 X44 18 X4 2039 1572 pl X1 -3 X-34 -15 X-2 4 X35 14 X4 1883 1512 pl X2 -4 X-114 -64 X-5 11 X117 57 X4 1918 1526 pl X5 -11 X-42 -22 X-7 12 X44 21 X4 2035 1583 pl X2 -3 X-34 -15 X-2 3 X34 15 X4 1882 1515 pl X2 -3 X-110 -71 X-6 10 X114 64 X4 1916 1530 pl X-1 4 X42 22 X2 2030 1594 pl X6 -10 X-27 -16 X2 2051 1620 pl X2 -3 X-34 -14 X-2 2 X34 15 X4 1880 1518 pl X2 -2 X-105 -78 X-7 9 X110 71 X4 1914 1533 pl X27 16 2024 1604 mls X7 -9 X-11 -7 X2 2028 1620 pl X3 -2 X-34 -15 X-3 3 X34 14 X4 1878 1521 pl X-6 7 X105 78 X2 1912 1535 pl X3 -3 X-99 -82 X2 2008 1620 pl X11 7 2017 1613 mls X6 -7 2011 1620 mls X2 -2 X-34 -15 X-2 2 X34 15 X4 1875 1523 pl X99 82 1909 1538 mls X2 -2 X-86 -80 X2 1993 1620 pl X3 -1 X-34 -15 X-3 1 X34 15 X4 1873 1525 pl X86 80 1907 1540 mls X3 -1 X-75 -79 X2 1979 1620 pl X3 -2 X-34 -15 X-3 2 X34 15 X4 1870 1526 pl X75 79 1904 1541 mls X3 -2 X-67 -77 X2 1968 1620 pl X3 0 X-34 -15 X-3 0 X34 15 X4 1867 1528 pl X67 77 1901 1543 mls X3 0 X-60 -77 X2 1958 1620 pl Xshowpage Xpsl restore Xend DEC_VAXGFX_save restore X%%EndDocument X 50 -33 a X endTexFig X519 1003 a Fq(Figure)11 b(9.1:)k(Dif)o(ferent)10 b(views)i(of)f(the)g(lamp)g X(structure.)0 1136 y Fr(9.2)59 b(W)o(indow)17 b(stacking)0 X1258 y Fq(W)n(indows)8 b(and)g(menus)h(are)g(closely)f(linked)f(in)g X(graphics)h(applications.)13 b(PHIGS)c(windows)e(and)h(PHIGS)g(menus)h(may)g X(overlap)0 1308 y(and)g(are)g(stacked)g(in)f(order)h(of)f(priority)m(.)k(The V) Xe(highest)d(priority)g(window)g(is)h(kept)h(at)f(a)h(lower)g(priority)d(than V) Xi(the)h(lowest)f(priority)0 1358 y(menu.)16 b(In)11 b(this)f(way)m(,)i(menus V) Xg(always)g(lie)f(on)g(top)f(of)h(windows)g(and)g(are)h(therefore)f(always)h X(visible.)0 1527 y Fr(9.3)59 b(W)o(indow)17 b(selection)0 1648 Xy Fq(Selection)12 b(of)f(windows)g(may)i(be)f(achieved)h(using)e(the)h(same) Vi X(input)c(devices)j(as)g(menus)f(\261)g(pick,)g(locator)g(and)g(string.)k X(Each)0 1698 y(window)e(has)i(4)g(regions:)22 b(the)16 b Fp(banner)p XFq(,)i(the)d Fp(view)h(ar)o(ea)p Fq(,)h(the)f Fp(frame)f Fq(and)h(the)f X(window)g Fp(icon)p Fq(.)28 b(The)16 b(icon)f(is)h(generated)0 X1748 y(automatically)e(as)h(a)g(square)h(containing)d(the)h(window)g X(identi\256er)n(.)24 b(The)15 b(selected)h(region)e(is)g(returned)g(with)g X(the)g(window)0 1798 y(identi\256er)n(.)0 1877 y(The)e(ways)g(in)e(which)h X(the)g(dif)o(ferent)g(types)g(of)g(logical)f(input)g(used)i(are)g(as)g X(follows:)64 1997 y Fl(\267)21 b Fp(Locator)p Fq(:)16 b(The)e(point)c(is)j X(tested)f(to)g(see)i(if)e(it)f(lies)h(inside)g(a)h(window)e(or)i(icon)f X(structure.)18 b(The)13 b(position)d(of)j(the)f(point)104 2047 Xy(within)e(the)i(window)f(region)h(is)g(returned)g(along)f(with)g(the)h X(window)f(identi\256er)h(and)g(window)f(region.)17 b(The)c(window)104 X2097 y(area)f(is)f(analogous)g(to)g(the)g(menu)h(item.)64 2180 Xy Fl(\267)21 b Fp(String)p Fq(:)14 b(The)e(string)e(is)h(compared)h(with)f X(the)g(title)f(of)h(the)g(window)m(.)64 2263 y Fl(\267)21 b XFp(Pick)p Fq(:)15 b(The)d(pick)f(path)g(is)g(followed)f(to)h(see)h(if)f(a)h X(window)e(structure)g(was)i(picked.)0 2432 y Fr(9.4)59 b(W)o(indow)17 Xb(attributes)0 2553 y Fq(The)c(attributes)e(of)g(a)i(window)e(are)i X(background)e(colour)n(,)h(title)f(colour)n(,)h(title)f(font,)h(banner)g X(colour)n(,)g(edge)h(colour)e(and)h(frame)0 2603 y(colour)n(.)i(The)e X(position)e(and)h(size)h(of)f(windows)f(and)i(icons)f(may)g(be)h(set)g(by)f X(the)g(application.)0 2956 y(13th)22 b(May)m(,)12 b(1992)636 Xb(50)839 b(2.01)p eop X%%Page: 51 52 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)0 8 y Fr(9.5)59 b(W)o(indow)17 b(viewing)0 130 y XFq(The)f(virtual)e(camera)j(interface)f(of)f(PHIGS)h(windows)e(is)i(based)g X(on)f(two)g(positions)e(in)i(W)m(orld)f(Coordinate)g(space)j(\261)e(the)0 X180 y(camera)e(position)c(and)j(the)f(point)f(of)h(interest.)k(The)d X(direction)e(of)h(view)g(is)g(always)h(towards)e(the)i(point)d(of)i(interest V) Xg(and)g(both)0 230 y(the)h(camera)h(position)d(and)i(point)e(of)h(interest)h X(can)g(be)g(moved)g(relative)f(to)g(each)i(other)n(.)j(The)d(camera)h X(requires)d(a)h(volume)g(in)0 279 y(W)m(orld)7 b(Coordinates)g(which)h(is)g X(mapped)h(to)f(the)g(viewing)f(area)j(of)e(the)g(PHIGS)g(window)m(.)14 Xb(This)8 b(volume)g(may)h(be)g(set)f(explicitly)0 329 y(or)i(de\256ned)g(by) Vg X(a)g(list)f(of)h(structures)f(which)h(the)g(PHIGS)g(T)m(oolkit)e(uses)j(to)e X(calculate)i(the)e(bounding)f(box)i(and)g(hence)h(the)e(view)0 X379 y(volume.)24 b(The)15 b(volume)f(may)h(be)g(scaled)g(to)f(give)f(zoom-in V) Xh(and)h(zoom-out)e(ef)o(fects.)26 b(The)15 b(camera)h(projection)d(type)h X(may)0 429 y(be)f(either)g(P)l(ARALLEL)i(or)e(PERSPECTIVE)h(and)f(the)g X(camera)i(up)e(vector)g(may)h(be)f(rotated)g(to)f(give)h(a)h(twist)e(ef)o X(fect.)22 b(The)0 479 y(camera)13 b(has)f(several)g(defaults)f(and)g(the)g X(simplest)g(way)h(to)e(view)i(an)f(object)g(would)f(be)i(as)g(follows:)54 X599 y Fi(/*)18 b(WINDOW)h(is)g(a)f(window)h(identifier)h(*/)54 X649 y(/*)e(objectid)i(is)e(a)g(structure)i(identifier)g(*/)54 X748 y(Pintlst)f(world;)54 848 y(world.number)h(=)e(1;)54 898 Xy(world.integers)i(=)f(&objectid;)54 998 y(ptk_setcameraworld\(WI)q(NDOW,)i X(&world\);)54 1047 y(ptk_posttowindow\(WIND)q(OW,)g(objectid\);)0 X1168 y Fq(T)m(o)12 b(rotate)f(around)f(the)h(object,)h(try)e(the)h X(following:)54 1288 y Fi(for)19 b(\(i)f(=)g(0;)g(i)h(<=)f(360;)h(i+=)f(10\)) X108 1338 y(ptk_rotatecameraposi)q(tion\(W)q(INDOW,)k(10.0\);)0 X1507 y Fr(9.6)59 b(Format)15 b(of)i(a)f(W)o(indow)g(structur)o(e)0 X1628 y Fq(A)d(PHIGS)f(T)m(oolkit)g(window)f(structure)h(has)h(a)g(\256xed)g X(format,)g(which)g(is)f(documented)h(below)m(.)19 b(Each)14 Xb(dif)o(ferent)e(part)g(of)g(the)0 1678 y(structure)7 b(is)h(marked)g(using) Vf X(a)i(LABEL)f(element,)i(where)e(the)g(label)f(identi\256er)g(is)h(obtained)f X(by)g(hashing)g(a)i(string)d(into)h(the)g(stan-)0 1728 y(dard)j(hashtable)g X(called)g("label".)15 b(The)10 b(`60window)f(name')i(used)f(in)g(the)f X(ADD_NAMES_T)o(O_SET)i(element)g(is)f(derived)f(from)0 1778 Xy(the)f(string)e Fi("name$windowN")p Fq(,)11 b(where)d(where)h XFi(N)f Fq(is)f(the)h(window)e(identi\256er)h(speci\256ed)h(in)f(the)h XFi(ptk_createwindow)i Fq(function.)0 1828 y(This)d(string)g(is)g(then)g X(hashed)h(using)e(the)i("name")g(hashtable,)h(and)e(the)h(integer)e(returned V) Xh(is)h(used)f(in)g(the)h(ADD_NAMES_T)o(O_SET)0 1877 y(element.)16 Xb(The)c(exact)g(format)f(of)g(a)h(window)e(structure)h(is)g(as)h(follows:)54 X1998 y Fi(ADD_NAMES_TO_SET)21 b(\(window)e(name\))54 2098 y(LABEL)g X(\("globaltran"\))54 2197 y(SET_LOCAL_TRANSFORMAT)q(ION_3)i(\(to)e(position) Vg X(window\))54 2297 y(LABEL\("begin-frame"\))108 2396 y(SET_PICK_IDENTIFIER)i X(\(window)f(frame\))108 2446 y(SET_INTERIOR_COLOUR_)q(INDEX)108 X2496 y(FILL_AREA)108 2546 y(SET_INTERIOR_COLOUR_)q(INDEX)108 X2596 y(FILL_AREA)108 2695 y(SET_PICK_IDENTIFIER)h(\(window)f(view\))108 X2745 y(SET_INTERIOR_COLOUR_)q(INDEX)0 2956 y Fq(13th)i(May)m(,)12 Xb(1992)636 b(51)839 b(2.01)p eop X%%Page: 52 53 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)108 8 y Fi(SET_EDGE_COLOUR_INDE)q(X)108 58 y(FILL_AREA_SET)108 X158 y(SET_PICK_IDENTIFIER)21 b(\(window)f(banner\))108 208 Xy(SET_INTERIOR_COLOUR_)q(INDEX)108 257 y(FILL_AREA_SET)108 X307 y(TEXT)54 407 y(LABEL\("end-frame"\))54 506 y(`5Breset)f(attributes)h(to V)e X(defaults`5D)54 606 y(SET_LOCAL_TRANSFORMAT)q(ION_3)j(\(unit)e(matrix\))54 X706 y(SET_VIEW_INDEX)h(\(window)g(view\))54 805 y(LABEL\("begin-window"\))10 V8 X905 y(`5Bfor)f(each)f(structure)i(posted)f(to)f(window:`5D)108 X955 y(EXECUTE_STRUCTURE)54 1054 y(LABEL\("end-window"\))54 X1104 y(REMOVE_NAMES_FROM_SET)k(\(window)d(name\))0 1273 y Fr(9.7)59 Xb(Example)0 1395 y Fq(The)12 b(demonstration)e(program)h Fi(windtest)i XFq(illustates)d(the)h(use)h(of)f(the)g(functions)f(in)g(this)h(library)m(.)0 X2956 y(13th)22 b(May)m(,)12 b(1992)636 b(52)839 b(2.01)p eop X%%Page: 53 54 Xbop 0 349 a Fj(Chapter)24 b(10)0 585 y Fs(The)29 b(PHIGS)g(Debugger)0 X835 y Fq(The)16 b(PHIGS)g(debugger)g(`5B9)o(`5D)g(is)f(a)i(powerful)d X(development)i(tool)e(for)i(PHIGS)f(applications.)28 b(It)15 Xb(enables)i(an)f(application)0 885 y(programmer)c(to)e(perform)h(an)h X(incremental)f(traversal)h(of)f(a)g(structure)g(network,)g(and)g(to)g X(monitor)f(the)h(state)g(of)g(the)g(traversal)0 935 y(as)h(it)e(proceeds.)0 X1014 y(The)i(PHIGS)f(Debugger)g(supports:)64 1134 y Fl(\267)21 Xb Fq(Incremental)11 b(traversal)h(of)f(structure)f(networks.)64 X1217 y Fl(\267)21 b Fq(Interactive)11 b(enquiry)f(and)h(modi\256cation)g(of) Vg X(structure)f(element)i(contents)f(during)f(traversal.)64 1300 Xy Fl(\267)21 b Fq(Setting)10 b(traversal)h(breakpoints)f(and)i(tracepoints)e X(\(analogous)h(to)f(programming)h(language)g(debugging\).)64 X1383 y Fl(\267)21 b Fq(W)n(indow-based)12 b(automatically)f(updated)h X(displays)f(of)h(the)g(topology)e(of)i(the)g(structure)g(network,)f(and)i X(the)f(contents)104 1433 y(of)f(structures)g(and)g(elements,)h(and)g(the)f +-+-+-+-+-+-+-+- END OF PART 60 +-+-+-+-+-+-+-+-