-+-+-+-+-+-+-+-+ START OF PART 63 -+-+-+-+-+-+-+-+ X 782 1163 786 14 polyline 1186 809 1182 807 1178 803 1176 796 1176 792 1178 V 786 X 1182 782 1186 780 1193 780 1197 782 1201 786 1203 792 1203 796 1201 803 119 V7 X 807 1193 809 1186 809 17 polyline 1218 809 1218 780 2 polyline 1218 800 122 V4 X 807 1228 809 1235 809 1239 807 1241 800 1241 780 7 polyline 1241 800 1247 8 V07 X 1251 809 1258 809 1262 807 1264 800 1264 780 7 polyline 1281 809 1281 765 2 X polyline 1281 803 1285 807 1289 809 1295 809 1299 807 1304 803 1306 796 130 V6 X 792 1304 786 1299 782 1295 780 1289 780 1285 782 1281 786 14 polyline 1475 V 617 X 1470 621 1464 623 1456 623 1449 621 1445 617 1445 612 1447 608 1449 606 145 V4 X 604 1466 600 1470 598 1472 596 1475 591 1475 585 1470 581 1464 579 1456 579 X 1449 581 1445 585 20 polyline 1491 623 1491 587 1493 581 1498 579 1502 579 V 5 X polyline 1485 608 1500 608 2 polyline 1537 608 1537 579 2 polyline 1537 602 X 1533 606 1529 608 1523 608 1519 606 1514 602 1512 596 1512 591 1514 585 151 V9 X 581 1523 579 1529 579 1533 581 1537 585 14 polyline 1556 623 1556 587 1558 V 581 X 1562 579 1567 579 5 polyline 1550 608 1565 608 2 polyline 1577 596 1602 596 X 1602 600 1600 604 1598 606 1594 608 1588 608 1583 606 1579 602 1577 596 157 V7 X 591 1579 585 1583 581 1588 579 1594 579 1598 581 1602 585 17 polyline 1667 V 623 X 1667 579 1692 579 3 polyline 1701 623 1703 621 1705 623 1703 625 1701 623 5 X polyline 1703 608 1703 579 2 polyline 1740 602 1738 606 1732 608 1726 608 1 V719 X 606 1717 602 1719 598 1724 596 1734 594 1738 591 1740 587 1740 585 1738 581 X 1732 579 1726 579 1719 581 1717 585 17 polyline 1757 623 1757 587 1759 581 V 1763 X 579 1768 579 5 polyline 1751 608 1765 608 2 polyline 1479 705 1479 661 2 X polyline 1465 705 1494 705 2 polyline 1504 691 1504 661 2 polyline 1504 678 X 1506 684 1511 689 1515 691 1521 691 5 polyline 1555 691 1555 661 2 polyline X 1555 684 1550 689 1546 691 1540 691 1536 689 1532 684 1530 678 1530 674 153 V2 X 668 1536 663 1540 661 1546 661 1550 663 1555 668 14 polyline 1567 691 1580 V 661 X 2 polyline 1592 691 1580 661 2 polyline 1603 678 1628 678 1628 682 1626 687 X 1624 689 1620 691 1613 691 1609 689 1605 684 1603 678 1603 674 1605 668 160 V9 X 663 1613 661 1620 661 1624 663 1628 668 17 polyline 1643 691 1643 661 2 X polyline 1643 678 1645 684 1649 689 1653 691 1659 691 5 polyline 1691 684 1 V689 X 689 1682 691 1676 691 1670 689 1668 684 1670 680 1674 678 1685 676 1689 674 X 1691 670 1691 668 1689 663 1682 661 1676 661 1670 663 1668 668 17 polyline V 1729 X 691 1729 661 2 polyline 1729 684 1724 689 1720 691 1714 691 1710 689 1706 6 V84 X 1703 678 1703 674 1706 668 1710 663 1714 661 1720 661 1724 663 1729 668 14 X polyline 1745 705 1745 661 2 polyline 1150 714 1173 685 2 polyline 1173 714 X 1150 685 2 polyline 1200 729 1196 729 1192 727 1190 721 1190 685 5 polyline X 1183 714 1198 714 2 polyline 1221 714 1217 712 1213 708 1211 702 1211 698 1 V213 X 691 1217 687 1221 685 1227 685 1232 687 1236 691 1238 698 1238 702 1236 708 X 1232 712 1227 714 1221 714 17 polyline 1253 714 1253 685 2 polyline 1253 70 V2 X 1255 708 1259 712 1263 714 1269 714 5 polyline 1280 714 1280 685 2 polyline X 1280 706 1286 712 1290 714 1297 714 1301 712 1303 706 1303 685 7 polyline 1 V303 X 706 1309 712 1313 714 1320 714 1324 712 1326 706 1326 685 7 polyline 15 104 V8 15 X 1004 2 polyline 0 1048 29 1048 2 polyline 40 1033 40 1004 2 polyline 40 102 V1 42 X 1027 46 1031 50 1033 57 1033 5 polyline 90 1033 90 1004 2 polyline 90 1027 V 86 X 1031 82 1033 75 1033 71 1031 67 1027 65 1021 65 1017 67 1010 71 1006 75 100 V4 82 X 1004 86 1006 90 1010 14 polyline 103 1033 115 1004 2 polyline 128 1033 115 V 1004 X 2 polyline 138 1021 163 1021 163 1025 161 1029 159 1031 155 1033 149 1033 1 V44 X 1031 140 1027 138 1021 138 1017 140 1010 144 1006 149 1004 155 1004 159 100 V6 X 163 1010 17 polyline 178 1033 178 1004 2 polyline 178 1021 180 1027 184 103 V1 X 188 1033 195 1033 5 polyline 226 1027 224 1031 218 1033 211 1033 205 1031 2 V03 X 1027 205 1023 209 1021 220 1019 224 1017 226 1012 226 1010 224 1006 218 100 V4 X 211 1004 205 1006 203 1010 17 polyline 264 1033 264 1004 2 polyline 264 102 V7 X 260 1031 255 1033 249 1033 245 1031 241 1027 239 1021 239 1017 241 1010 245 X 1006 249 1004 255 1004 260 1006 264 1010 14 polyline 281 1048 281 1004 2 X polyline 348 1048 348 1004 2 polyline 348 1048 366 1048 373 1046 375 1044 3 V77 X 1040 377 1033 375 1029 373 1027 366 1025 348 1025 10 polyline 392 1033 392 V 1004 X 2 polyline 392 1021 394 1027 398 1031 402 1033 408 1033 5 polyline 427 1033 V 423 X 1031 419 1027 417 1021 417 1017 419 1010 423 1006 427 1004 433 1004 438 100 V6 X 442 1010 444 1017 444 1021 442 1027 438 1031 433 1033 427 1033 17 polyline V 482 X 1027 477 1031 473 1033 467 1033 463 1031 459 1027 456 1021 456 1017 459 101 V0 X 463 1006 467 1004 473 1004 477 1006 482 1010 14 polyline 494 1021 519 1021 V 519 X 1025 517 1029 515 1031 511 1033 505 1033 500 1031 496 1027 494 1021 494 101 V7 X 496 1010 500 1006 505 1004 511 1004 515 1006 519 1010 17 polyline 555 1027 V 553 X 1031 547 1033 540 1033 534 1031 532 1027 534 1023 538 1021 549 1019 553 101 V7 X 555 1012 555 1010 553 1006 547 1004 540 1004 534 1006 532 1010 17 polyline V 591 X 1027 588 1031 582 1033 576 1033 570 1031 568 1027 570 1023 574 1021 584 101 V9 X 588 1017 591 1012 591 1010 588 1006 582 1004 576 1004 570 1006 568 1010 17 X polyline 559 29 568 0 2 polyline 576 29 568 0 2 polyline 576 29 584 0 2 X polyline 593 29 584 0 2 polyline 616 29 612 27 607 23 605 17 605 13 607 6 6 V12 2 X 616 0 622 0 626 2 630 6 633 13 633 17 630 23 626 27 622 29 616 29 17 polyli Vne X 647 29 647 0 2 polyline 647 17 649 23 653 27 658 29 664 29 5 polyline 674 4 V4 X 674 0 2 polyline 695 29 674 8 2 polyline 683 17 697 0 2 polyline 731 23 729 V 27 X 723 29 716 29 710 27 708 23 710 19 714 17 725 15 729 13 731 8 731 6 729 2 7 V23 0 X 716 0 710 2 708 6 17 polyline 748 44 748 8 750 2 754 0 758 0 5 polyline 741 V 29 X 756 29 2 polyline 794 29 794 0 2 polyline 794 23 790 27 785 29 779 29 775 2 V7 X 771 23 769 17 769 13 771 6 775 2 779 0 785 0 790 2 794 6 14 polyline 813 44 V 813 X 8 815 2 819 0 823 0 5 polyline 806 29 821 29 2 polyline 834 44 836 42 838 4 V4 X 836 46 834 44 5 polyline 836 29 836 0 2 polyline 861 29 857 27 852 23 850 1 V7 X 850 13 852 6 857 2 861 0 867 0 871 2 875 6 878 13 878 17 875 23 871 27 867 V 29 X 861 29 17 polyline 892 29 892 0 2 polyline 892 21 899 27 903 29 909 29 913 V 27 X 915 21 915 0 7 polyline 1104 490 1104 461 2 polyline 1104 484 1100 488 1096 V 490 X 1090 490 1085 488 1081 484 1079 477 1079 473 1081 467 1085 463 1090 461 109 V6 X 461 1100 463 1104 467 14 polyline 1123 505 1123 469 1125 463 1129 461 1134 V 461 X 5 polyline 1117 490 1131 490 2 polyline 1148 505 1148 469 1150 463 1155 461 X 1159 461 5 polyline 1142 490 1157 490 2 polyline 1171 490 1171 461 2 polyli Vne X 1171 477 1173 484 1178 488 1182 490 1188 490 5 polyline 1196 505 1199 503 1 V201 X 505 1199 507 1196 505 5 polyline 1199 490 1199 461 2 polyline 1215 505 1215 V 461 X 2 polyline 1215 484 1219 488 1224 490 1230 490 1234 488 1238 484 1240 477 1 V240 X 473 1238 467 1234 463 1230 461 1224 461 1219 463 1215 467 14 polyline 1255 V 490 X 1255 469 1257 463 1261 461 1268 461 1272 463 1278 469 7 polyline 1278 490 1 V278 X 461 2 polyline 1297 505 1297 469 1299 463 1303 461 1307 461 5 polyline 1291 V 490 X 1305 490 2 polyline 1318 477 1343 477 1343 482 1341 486 1339 488 1335 490 1 V328 X 490 1324 488 1320 484 1318 477 1318 473 1320 467 1324 463 1328 461 1335 461 X 1339 463 1343 467 17 polyline 1379 484 1376 488 1370 490 1364 490 1358 488 V 1356 X 484 1358 480 1362 477 1372 475 1376 473 1379 469 1379 467 1376 463 1370 461 X 1364 461 1358 463 1356 467 17 polyline 1888 969 358 969 358 236 1888 236 18 V88 X 969 5 polyline 1000 827 435 827 435 626 1000 626 1000 827 5 polyline 1002 5 V43 X 435 543 435 343 1002 343 1002 543 5 polyline 1817 886 1403 886 1403 331 181 V7 X 331 1817 886 5 polyline showpage grestore X%%EndDocument X 425 -33 a X endTexFig X577 1239 a Fq(Figure)11 b(10.1:)j(The)e(PHIGS)g(T)o(raversal)f(Model.)64 X1373 y Fl(\267)21 b Fq(Initialise)14 b(each)j(entry)e(in)g(the)g(TSL)i(from) Ve X(default)g(values)h(obtained)f(from)h(the)f(PHIGS)h(Description)e(T)m(able.) X29 b(For)104 1423 y(example,)10 b(the)f(attribute)f Fk(polyline)g(index)h XFq(will)f(be)h(initialised)e(to)i(1,)g(the)g Fk(global)f Fq(and)h XFk(local)f Fq(modelling)g(transformations)104 1472 y(will)i(be)i(set)g(to)f X(the)h(identity)d(transformation,)i(and)h(the)f Fk(composite)g(modelling)f X(transformation)f Fq(\()p Fk(comp)p Fq(\))i(to)g Fk(global)f XFq(*)104 1522 y Fk(local)p Fq(.)64 1605 y Fl(\267)21 b Fq(T)o(raverse)11 Xb(each)h(structure)e Fk(S)h Fq(in)f(the)h(structure)f(network,)g(beginning)f X(with)h(the)g(root)g(of)g(the)h(network.)j(Elaborate)d(each)104 X1655 y(element)j Fk(E)f Fq(of)g Fk(S)h Fq(in)e(order)n(,)j(beginning)c(with) Vh X(element)i(1.)22 b(The)14 b(subsequent)e(action)h(depends)h(on)f(the)g(type) Vg X(of)g Fk(E)p Fq(,)i(as)104 1705 y(follows:)104 1796 y(attribute)10 Xb(setting)194 b(For)11 b(example,)h Fk(set)g(polyline)e(index)p XFq(.)16 b(Update)11 b(the)g(relevant)g(attribute)f(in)h(the)g(TSL.)104 X1863 y(transformation)f(setting)88 b(For)13 b(example,)h Fk(set)g(local)e X(transformation)p Fq(.)19 b(Update)13 b(the)g(relevant)g(transformation)f(in V) X560 1912 y(the)f(TSL,)h(and)g(update)f Fk(comp)g Fq(using)f XFk(comp)i Fq(=)g Fk(global)d Fq(*)i Fk(local)p Fq(.)104 1979 Xy(output)e(primitive)185 b(For)11 b(example,)h Fk(polyline)p XFq(.)i(The)e(coordinates)f(de\256ning)f(the)h(geometry)g(of)g(the)g X(primitive)560 2029 y(are)f(read)g(from)g(the)g(element)g(and)g(transformed) Vf X(using)g Fk(comp)p Fq(.)15 b(T)m(ogether)10 b(with)e(the)i(rele-)560 X2078 y(vant)f(current)h(TSL)h(attribute)e(values)h(the)g(primitive)e(is)i X(dispatched)g(to)f(the)h(workstation)560 2128 y(for)g(display)m(.)104 X2195 y(execute)i(structure)172 b(T)o(raversal)8 b(of)g Fk(S)h XFq(is)f(temporarily)f(halted,)i(and)f(a)h(new)g(traversal)f(starts)g(for)g X(the)g(referenced)560 2244 y(structure.)21 b(When)14 b(this)f(traversal)h(is V) Xf(complete,)i(the)f(halted)f(traversal)h(resumes)g(from)560 X2294 y(the)d(element)g(following)e Fk(E)p Fq(.)16 b(Before)11 Xb(the)g(referenced)i(structure)d(is)h(traversed,)h(the)f(TSL)560 X2344 y(is)i(stacked,)i Fk(global)d Fq(is)h(set)h(to)e Fk(comp)p XFq(,)j(and)e Fk(local)g Fq(set)h(to)f(the)g(identity)e(transformation.)560 X2394 y(When)g(traversal)g(of)g(the)h(referenced)g(structure)f(is)g(complete, V) Xh(the)f(TSL)h(is)f(unstacked.)0 2542 y Fu(10.1.1)50 b(Pr)o(oblems)15 Xb(with)e(traversal)0 2648 y Fq(Since)e(the)g(traversal)g(process)h(is)e X(atomic,)i(the)f(application)e(cannot)i(directly)f(determine)h(the)g X(attributes)e(and)i(other)g(values)g(in)0 2698 y(ef)o(fect)h(during)d X(traversal.)16 b(In)11 b(practice,)h(this)e(can)h(cause)i(problems:)h X(suppose)d(an)g(application)f(wishes)h(to)f(edit)h(a)g(structure)g(to)0 X2748 y(insert)i(a)g Fk(polyline)g Fq(element)g(to)g(be)h(drawn)f(with)f(a)i X(particular)e(polyline)g(index,)h(for)g(example)h(7.)21 b(This)14 Xb(is)f(straightforward:)0 2956 y(13th)22 b(May)m(,)12 b(1992)636 Xb(54)839 b(2.01)p eop X%%Page: 55 56 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)0 8 y(the)11 b(application)f(inserts)h(the)g Fk(polyline)f XFq(element)i(preceded)g(by)f(a)g Fk(set)h(polyline)e(index)h XFq(element)h(with)e(the)h(appropriate)g(value.)0 58 y(However)n(,)18 Xb(suppose)e(that)g(the)g(structure)f(already)i(contains)e(a)i XFk(polyline)e Fq(element)i Fk(P)1286 64 y Ff(1)1303 58 y Fq(,)h(as)f X(illustrated)d(in)h(Figure)h(10.2\(a\).)0 108 y(The)h(index)g(used)g(when)f X(this)g(polyline)f(is)i(drawn)f(will)g(be)h(dynamically)f(inherited)g(during V) Xf(traversal,)j(either)f(from)f(the)0 158 y(parent)d(structure,)g(if)f(there) Vh X(is)g(one,)h(or)e(from)h(the)g(PHIGS)g(Description)f(T)m(able.)21 Xb(When,)14 b(as)f(shown)g(in)f(Figure)h(10.2\(b\),)f(the)-169 X214 y X 34794921 11188078 657817 394690 50651955 16445440 startTexFig X-169 214 a X%%BeginDocument: edit.ps X /vltdict 5 dict def vltdict begin /gray 256 array def /index 0 def end X /setcolorindex `7Bvltdict exch /index exch put `7D def X /selcolorindex `7Bvltdict begin gray exch get 255 div setgray end `7D def X /setvlt `7Bvltdict begin setrgbcolor gray index currentgray 255 mul put end V `7D def X /decr `7B2 copy get 1 sub put `7D def /setvltmult `7Bsetcolorindex dup X vltdict /index get add setcolorindex `7Bvltdict /index decr setvlt `7D repe Vat `7D def X 1 1 1 0 0 0 1 0 0 1 0.5 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 1 X 0.47 0.27 0 1 1 1 11 0 setvltmult 64 `7B0 0 0`7D repeat 64 11 setvltmult X 64 `7B0 0 0`7D repeat 64 75 setvltmult 64 `7B0 0 0`7D repeat 64 139 setvltm Vult X 53 `7B0 0 0`7D repeat 53 203 setvltmult /polyline `7B3 1 roll newpath movet Vo X 1 sub `7Blineto`7D repeat stroke`7D def /textdict 5 dict def textdict begin X /font /Courier findfont def end /text `7Bmoveto show`7D def X /selecttext `7Btextdict begin font angle matrix rotate X width height matrix scale matrix concatmatrix makefont setfont end`7D def X /settextatt `7Btextdict begin /angle exch def /width exch def /height exch V def X end`7D def /filldict 2 dict def /setfillatt `7Bfilldict begin /border exch V def X /interior exch def end`7D def /fillareaset `7Bfilldict /interior get selcol Vorindex X newpath `7B currentfile token pop dup 0 gt X `7B currentfile token pop currentfile token pop moveto 1 sub X `7B currentfile token pop currentfile token pop lineto `7D repeat `7D `7Bex Vit `7D ifelse X `7D loop gsave eofill grestore filldict /border get selcolorindex stroke`7D V def X /dot `7Bnewpath 0 360 arc closepath fill`7D def X 31.6 26.87 translate 72 300 div dup scale 0 setlinecap 2 setlinejoin X /tmpstr 1 string def /tstr 1024 string def /ymax 3331 def X /scaleimage `7B0 ymax translate dup scale 0 ymax neg translate`7D def X /putrow `7Bvltdict begin matrix currentmatrix 4 1 roll 3 scaleimage transla Vte X `5B 1 0 0 1 0 0 `5D 1 8 3 -1 roll X `7Bgray currentfile tmpstr readhexstring pop 0 get get X cvi tmpstr exch 0 exch put tmpstr`7D image setmatrix end`7D def X /pr `7Bvltdict begin matrix currentmatrix 4 1 roll 3 scaleimage translate X `5B 1 0 0 1 0 0 `5D 1 8 3 -1 roll `7Bcurrentfile tstr readline pop /t exch V def X 0 1 t length 1 sub `09`7B dup t exch get 33 sub 255 mul 93 div round cvi X `09 t 3 1 roll put `09`7D for t `7D image setmatrix end`7D def /#copies 1 V def gsave X 1.000 1.000 1.000 0.000 0.000 0.000 1.000 0.000 0.000 1.000 0.500 0.000 1.0 V00 X 1.000 0.000 0.000 1.000 0.000 0.000 1.000 1.000 0.000 0.000 1.000 1.000 0.0 V00 +-+-+-+-+-+-+-+- END OF PART 63 +-+-+-+-+-+-+-+-