-+-+-+-+-+-+-+-+ START OF PART 10 -+-+-+-+-+-+-+-+ X(all)i(the)f(libraries)g(and)h(demo)g(programs)0 378 y(within)g(an)h(hour)n X(.)0 492 y Fi(NB:)19 b(This)f(is)h(version)g(2.01)f(of)h(the)f(PHIGS)h X(Toolkit)g(supporting)h(versions)g(1.1,)0 541 y(1.2,)f(1.3,)f(1.4)h(of)f X(SunPHIGS)i(and)e(version)h(2.3A)g(of)f(DEC)h(PHIGS.`7D)0 687 Xy Fu(2.2.1)50 b(SunOS)0 793 y Fq(T)m(o)14 b(build)e(the)i(PHIGS)f(T)m(oolkit V) Xf(library)h(go)g(into)g(the)g(library)g(directory)m(.)21 b(First)13 Xb(you)g(need)h(to)g(edit)f(the)g(\256le)h(make\256le.)24 b(Just)0 X842 y(change)15 b(the)e(value)h(of)g(PHIGSINCDIR)e(\(path)i(to)f(phigs.h\))g X(in)g(the)h(released)h(make\256le.)24 b(If)14 b(you)f(have)h(SunPHIGS)g(1.1) Vg X(or)0 892 y(SunPHIGS)d(1.2)g(make)i(sure)e(the)g(SUNVERS)h(\257ag)g(is)f(set V) Xg(to)g(-DPRESUN1PT3.)0 970 y Fi(NB:)19 b(The)f(PHIGS)h(Toolkit)g(does)g(not) Vf X(yet)h(work)g(with)f(SunPHIGS)i(2.0.)0 1048 y Fq(Now)11 b(type)g(make,)i(as) Vf X(follows:)54 1161 y Fi($)18 b(make)0 1275 y Fq(This)11 b(will)f(compile)h X(all)g(the)g(library)g(source)g(\256les)h(and)f(create)i(a)f(library)e X(\256le)h(called)h(libptk.a.)0 1353 y(T)m(o)h(build)e(the)i(Fortran)f X(interface)h(library)f(go)g(to)g(the)h(fortran/library)d(directory)m(.)19 Xb(This)12 b(time)h(you)f(will)g(need)h(to)f(change)h(the)0 X1403 y(contents)d(of)h(the)f(\256le)h(sunphigs77.h)f(to)g(the)g(path)h(for)f X(phigs77.h)g(on)g(your)g(machine.)16 b(Y)l(ou)11 b(will)e(also)i(need)g(to)f X(edit)h(the)f(value)0 1452 y(of)h(PHIGSINCDIR)f(in)h(the)g(make\256le.)17 Xb(Now)11 b(type)g(make.)54 1566 y Fi($)18 b(cd)h(fortran/library)54 X1616 y($)f(make)0 1729 y Fq(This)11 b(will)f(compile)h(all)g(the)g(Fortran)g X(interface)h(source)f(\256les)h(and)f(create)i(a)f(library)e(called)h X(libptk77.a.)0 1875 y Fu(2.2.2)50 b(V)-6 b(AX/VMS)0 1981 y XFq(T)m(o)12 b(build)f(the)h(PHIGS)g(T)m(oolkit)f(library)g(go)g(into)g(the)h X(library)f(directory)g(and)h(run)g(the)g(install)f(command)h(\256le)h(or)f X(make\256le)h(if)0 2030 y(you)e(have)g(VMS)h(make)g(on)f(your)g(machine:)54 X2144 y Fi($)18 b(set)h(def)f(`5B.library`5D)54 2194 y($)g(@install)54 X2244 y(or)54 2294 y($)g(make)0 2407 y Fq(This)11 b(will)f(compile)h(all)g X(the)g(library)g(source)g(\256les)h(and)f(create)i(an)e(object)g(library)f X(\256le)i(called)f(ptk.olb.)0 2485 y(T)m(o)h(build)d(the)j(Fortran)e X(interface)i(library)e(go)h(into)f(the)h(fortran.library)e(directory)i(and)g X(run)g(the)g(install)f(command)i(\256le:)54 2599 y Fi($)18 Xb(set)h(def)f(`5B.fortran.library`5D)54 2648 y($)g(@install)54 X2698 y(or)54 2748 y($)g(make)0 2956 y Fq(13th)k(May)m(,)12 Xb(1992)636 b(16)839 b(2.01)p eop X%%Page: 17 18 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)0 8 y(The)12 b(\256les)g(are)g(compiled)f(into)f(an)h(object)g X(library)f(called)i(ptk77.olb.)0 87 y(The)g(DEC)f(PHIGS)g(C)g(kernel)g(does) Vg X(not)f(have)i(a)f(Fortran)g(interface)g(so)g(this)f(is)h(provided)f(in)g(the V) Xh(Fortran)g(binding)e(directory)m(.)54 208 y Fi($)18 b(set)h(def)f X(`5B.fortran.binding`5D)54 257 y($)g(@install)54 307 y(or)54 357 Xy($)g(make)0 477 y Fq(The)12 b(Fortran)f(binding)e(to)i(DEC)g(PHIGS)g(C)g(is V) Xh(compiled)e(and)i(put)e(in)h(a)h(library)e(\256le)h(called)h(phigs77.olb.)0 X646 y Fr(2.3)59 b(Demonstration)16 b(Pr)o(ograms)0 768 y Fq(V)-5 Xb(ersion)11 b(2.0)h(of)f(the)g(PHIGS)g(T)m(oolkit)f(includes)h(the)g X(following)e(demonstration)g(programs:)64 888 y Fl(\267)21 Xb Fq(cnstest.)15 b(This)d(shows)f(the)g(range)h(of)f(colours)f(available)h X(in)g(the)g(colour)g(naming)g(scheme.)64 971 y Fl(\267)21 b XFq(phinter)n(.)14 b(This)d(an)h(interactive)e(tool)g(for)h(using)f(the)h X(PHIGS)h(textual)e(interpreter)n(.)64 1054 y Fl(\267)21 b Fq(toptest.)14 Xb(This)d(demonstrates)h(the)f(PHIGS)g(structure)g(network)f(topology)f X(drawing)i(facilities.)64 1137 y Fl(\267)21 b Fq(stcttest.)15 Xb(This)c(demonstrates)g(the)h(PHIGS)f(structure)g(content)f(drawer)n(.)64 X1220 y Fl(\267)21 b Fq(menutest.)15 b(This)c(demonstrates)h(the)f(use)h(of)f X(PHIGS)g(menus.)64 1303 y Fl(\267)21 b Fq(windtest.)14 b(This)d(illustrates) Vf X(PHIGS)h(windows)g(and)g(camera)i(operations.)64 1386 y Fl(\267)21 Xb Fq(utiltest.)14 b(This)e(reads)g(in)f(the)g(lamp)h(and)f(postcard)h X(structure)f(and)g(calls)h(up)f(the)h(PHIGS)f(debugger)g(and)h(PHIGS)f(view) X104 1436 y(editor)n(.)0 1605 y Fr(2.4)59 b(Building)16 b(the)g(demonstration V) Xg(pr)o(ograms)f(on)i(SunOS)0 1735 y Fu(2.4.1)50 b(C)14 b(demos)0 X1842 y Fq(First)c(go)g(into)f(the)h(demo)h(directory)e(and)i(edit)f(the)g X(make\256le.)16 b(Just)10 b(change)h(the)g(paths)f(of)g(PHIGSINCDIR)g(\(path V) Xf(to)h(phigs.h\))0 1892 y(and)k(PHIGSLIBDIR)f(\(path)g(to)g(libphigs.a\))g X(in)g(the)h(released)h(make\256le.)24 b(If)13 b(you)g(are)i(using)e(a)h X(monochrome)g(workstation)0 1941 y(then)d(make)h(sure)g(the)f(SUNVERS)g X(\257ag)h(=)g(-DSUNMONO.)0 2020 y(T)m(o)g(build)d(all)i(the)g(demo)h X(programs)f(type:)54 2141 y Fi($)18 b(make)h(all)0 2288 y Fu(2.4.2)50 Xb(Fortran)14 b(demos)0 2395 y Fq(First)f(go)h(into)f(the)h(fortran/demo)f X(directory)g(and)h(edit)g(the)g(make\256le.)25 b(Just)13 b(change)i(the)f X(paths)g(of)g(PHIGSINCDIR)f(\(path)0 2445 y(to)i(phigs.h\))f(and)h X(PHIGSLIBDIR)g(\(path)g(to)f(libphigs.a\))g(in)h(the)g(released)h X(make\256le.)29 b(Again)15 b(you)f(will)g(need)i(to)f(change)0 X2495 y(the)g(contents)f(of)g(the)h(\256le)g(sunphigs77.h)e(to)h(the)h(path)f X(for)g(phigs77.h)g(on)g(your)g(machine.)27 b(If)14 b(you)h(have)g(a)g X(monochrome)0 2544 y(workstation)e(then)i(you)g(will)f(need)i(to)e(edit)h X(the)g(menutest.f)g(and)h(utiltest.f)d(\256les)j(in)f(the)g X(fortran/source/demo)f(directory)m(.)0 2594 y(Simply)c(comment)i(out)f(the)g X(line)54 2715 y Fi(colour)19 b(=)f(8)0 2956 y Fq(13th)k(May)m(,)12 Xb(1992)636 b(17)839 b(2.01)p eop X%%Page: 18 19 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)0 8 y(and)11 b(remove)h(the)f(comment)h(character)h(on)e(the)g X(line)g(above)g(it)g(to)f(give)54 126 y Fi(colour)19 b(=)f(0)0 X243 y Fq(in)11 b(both)f(\256les.)0 321 y(T)m(o)i(build)d(all)i(the)g(demo)h X(programs)f(type:)54 438 y Fi($)18 b(make)h(all)0 606 y Fr(2.5)59 Xb(Building)16 b(the)g(demonstration)g(pr)o(ograms)f(on)i(V)-8 Xb(AX/VMS)0 736 y Fu(2.5.1)50 b(C)14 b(demos)0 842 y Fq(Go)d(to)g(the)g X(`5B.demo`5D)h(directory)e(and)h(run)g(the)g(build.com)g(\256le)g(for)g(each V)i X(demo)e(program.)54 959 y Fi($)18 b(@build)h(cnstest)54 1009 Xy($)f(@build)h(menutest)54 1059 y($)f(@build)h(phinter)54 1109 Xy($)f(@build)h(toptest)54 1159 y($)f(@build)h(stcttest)54 1208 Xy($)f(@build)h(windtest)54 1258 y($)f(@build)h(utiltest)0 1375 Xy Fq(The)12 b(\256le)f(install.com)g(will)f(build)g(all)h(the)g(tests)g(in)g X(one)g(go.)54 1493 y Fi($)18 b(@install)0 1610 y Fq(If)11 b(you)g(have)h X(make)g(just)e(type)54 1727 y Fi($)18 b(make)h(all)0 1874 y XFu(2.5.2)50 b(Fortran)14 b(demos)0 1980 y Fq(Go)d(to)g(the)g(`5B.fortran.dem Vo`5D) Xg(directory)f(and)i(run)e(the)i(build.com)e(\256le)i(for)e(each)j(demo)f X(program.)54 2097 y Fi($)18 b(@build)h(cnstest)54 2147 y($)f(@build)h X(menutest)54 2197 y($)f(@build)h(phinter)54 2247 y($)f(@build)h(toptest)54 X2297 y($)f(@build)h(stcttest)54 2346 y($)f(@build)h(windtest)54 X2396 y($)f(@build)h(utiltest)0 2513 y Fq(The)12 b(\256le)f(install.com)g X(will)f(build)g(all)h(the)g(tests)g(in)g(one)g(go.)54 2631 Xy Fi($)18 b(@install)0 2748 y Fq(If)11 b(you)g(have)h(make)g(just)e(type)0 X2956 y(13th)22 b(May)m(,)12 b(1992)636 b(18)839 b(2.01)p eop X%%Page: 19 20 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)54 8 y Fi($)18 b(make)h(all)0 129 y Fq(If)12 b(you)f(\256nd)g(a)i X(bug)e(in)g(the)h(PHIGS)f(T)m(oolkit,)g(or)h(in)f(the)h(documentation,)f X(please)h(report)f(it)g(to)h(phigstoolki)o(t@uk.ac.man.cs,)0 X178 y(or:)104 299 y(T)m(oby)f(Howard)104 349 y(Department)g(of)g(Computer)g X(Science)104 399 y(University)e(of)i(Manchester)104 448 y(Oxford)f(Road)104 X498 y(Manchester)i(M13)f(9PL)104 548 y(United)f(Kingom)104 X598 y(T)m(el:)15 b(+44)c(61)g(275)g(6274)104 648 y(Fax:)k(+44)c(61)g(275)g X(6236)0 2956 y(13th)22 b(May)m(,)12 b(1992)636 b(19)839 b(2.01)p Xeop X%%Page: 20 21 Xbop 0 349 a Fj(Chapter)24 b(3)0 585 y Fs(Using)k(the)h(PHIGS)h(T)-10 Xb(oolkit)0 835 y Fq(This)13 b(chapter)g(describes)g(how)g(to)f(compile,)i X(link)d(and)i(run)g(C)f(and)h(Fortran)f(PHIGS)h(programs)g(using)f(the)h X(PHIGS)g(T)m(oolkit)0 885 y(on)e(the)g(SunOS)g(and)g(V)-5 b(AX/VMS)11 Xb(operating)f(systems.)0 1054 y Fr(3.1)59 b(SunPHIGS)17 b(on)f(SunOS)0 X1175 y Fq(T)m(o)f(use)g(SunPHIGS)f(and)g(the)h(PHIGS)f(T)m(oolkit)f(on)h(a)h X(particular)f(system,)i(you)e(need)h(to)f(know)g(in)g(which)g(directories)f X(the)0 1225 y(software)h(has)g(been)g(installed,)f(and)h(you)f(should)g X(refer)h(to)f(local)g(documentation)g(for)g(the)h(details.)22 Xb(In)13 b(the)h(following,)e(we)0 1275 y(assume)e(that)e(both)g(SunPHIGS)g X(has)h(been)g(installed)f(under)g Fi(/usr/lib)p Fq(,)j(and)e(the)f(PHIGS)h(T V) Xm(oolkit)e(under)h Fi(/usr/local/lib)p Fq(.)0 1354 y(In)j(order)g(to)g(run)f X(SunPHIGS)h(programs,)h(the)f(environment)f(variable)h Fi(PHIGSDIR)i XFq(must)e(be)h(set)g(correctly)m(.)j(For)c(example:)54 1474 Xy Fi(hostname\045)20 b(setenv)f(PHIGSDIR)g(/usr/lib/phigs1.3/lib)0 X1595 y Fq(C-shell)10 b(users)i(may)g(wish)f(to)f(put)h(this)f(command)i(in)f X(their)g Fi(.cshrc)h Fq(\256le.)0 1742 y Fu(3.1.1)50 b(C)14 Xb(Pr)o(ograms)0 1849 y Fq(All)c(C)i(programs)f(must)g(have)h(the)f(following V) Xe(lines)i(at)g(the)g(beginning)f(of)h(the)g(source:)72 1969 Xy Fi(#include)19 b()72 2019 y(#include)g("ptk.h")0 X2140 y Fq(For)11 b(a)h(C)f(application)f(which)h(uses)h(a)g(SunT)m(ool)e X(workstation)f(type)i(compiling)f(and)i(linking)d(can)j(be)f(performed)h X(using:)54 2260 y Fi(hostname\045)20 b(cc)e(appl.c)h(-o)f(appl)h X(-I/usr/include/phigs)i(-I/usr/local/inclu)q(de)g(\\)234 2310 Xy(-L/usr/lib/phigs1.3)g(-L/usr/local/lib)g(-lptk)e(-lphigs)g(-lsuntool)h(\\) X234 2360 y(-lsunwindow)g(-lpixrect)g(-lm)0 2507 y Fu(3.1.2)50 Xb(Fortran)14 b(Pr)o(ograms)0 2614 y Fq(For)c(a)h(Fortran)f(application)f X(which)g(uses)i(a)g(SunT)m(ool)f(workstation)e(type)i(compiling)f(and)h X(linking)f(can)i(be)f(performed)h(using:)912 2956 y(20)p eop X%%Page: 21 22 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)54 8 y Fi(hostname\045)20 b(f77)e(appl.f)h(-o)g(appl)f X(-I/usr/common/includ)q(e/phig)q(s)j(-I../include)f(\\)234 X58 y(-I../../include)h(-L/usr/common/lib/phig)q(s1.3)g(-L../library)f(\\)234 X108 y(-L../../library)h(-lptk77)e(-lptk)g(-lphigs77)g(\\)234 X158 y(-lphigs)g(-lsuntool)h(-lsunwindow)g(-lpixrect)f(-lm)54 X278 y(libphigs.a)234 b Fq(The)12 b(basic)g(SunPHIGS)f(library)m(.)54 X328 y Fi(libphigs77.a)192 b Fq(The)12 b(Fortran)f(compatibility)e(library)m X(.)54 378 y Fi(liblphigs.a)213 b Fq(Library)11 b(for)g(Sun)g(Canvas)g X(workstations.)0 498 y(The)e(libraries)f(with)f(which)h(the)g(PHIGS)h X(application)e(must)h(be)h(linked)e(depends)i(on)f(whether)g(it)f(is)i(a)g(C V) Xf(or)g(Fortran)g(application)0 548 y(and)17 b(whether)f(it)g(uses)h(a)g X(SunCanvas)g(workstation)e(type)h(or)g(not.)31 b(The)17 b(Sun)f(libraries)g X(which)g(must)h(be)g(linked)e(are)i(the)0 598 y Fi(suntool,)i(sunwindow)h XFq(and)e Fi(pixrect)12 b Fq(libraries,)f(and)g(the)g(order)f(of)h(the)g X(libraries)f(in)h(the)f(link)g(is)h(of)g(critical)f(importance.)0 X767 y Fr(3.2)59 b(DEC)17 b(PHIGS)f(on)g(V)-8 b(AX/VMS)0 888 Xy Fq(The)10 b(DEC)f(PHIGS)g(library)e(is)i(supplied)f(as)i(an)f(installed)f X(shareable)h(image)h(library)m(,)f(which)f(makes)i(linking)d(faster)i(and)g X(easier)0 938 y(and)14 b(the)f(resulting)f(executable)i(image)h(\256le)e X(smaller)n(.)23 b(As)14 b(the)f(DEC)h(PHIGS)f(shareable)i(image)f(has)g(been V) Xg(inserted)f(in)g(the)0 988 y(system)f(image)g(library)e(it)g(is)h(not)g X(necessary)i(to)d(specify)i(the)f(name)h(of)f(this)f(library)g(when)i X(linking.)0 1136 y Fu(3.2.1)50 b(C)14 b(Pr)o(ograms)0 1242 Xy Fq(T)m(o)i(link)d(a)j(compiled)f(PHIGS)g(C)g(program)g(to)g(DEC)g(PHIGS,)h X(it)e(is)h(necessary)i(to)e(specify)g(the)g(object)g(\256le)g(name)h(of)f X(the)0 1292 y(program)c(on)g(the)g(command)h(line,)f(together)g(with)f(the)h X(name)h(of)f(the)h(PHIGS)f(T)m(oolkit)f(library)g(for)h(example:)54 X1412 y Fi($)18 b(link)h(myprog,)g(sys$input/opt,)i(ptk_library:ptk/lib)75 Xb()180 1462 y(sys$library:vaxcrtl.)q(exe/sh)q(are)309 Xb()0 1583 y Fq(Substitute)8 b Fi(ptk_library)k XFq(in)d(the)h(above)g(to)f(the)h(appropriate)f(pathname)h(of)g(the)g(PHIGS)f X(T)m(oolkit)g(object)g(library)m(.)14 b(Note)c(that)0 1632 Xy(the)h(additional)f(link)g(libraries)g(are)i(needed)g(for)f(the)g(C)g X(run-time)g(routines.)0 1711 y(T)m(o)g(simplify)f(the)g(command)i(line)e(it) Vh X(is)f(possible)g(to)h(create)h(an)f(`60options)e(\256le')i(for)f(each)i X(program.)k(For)10 b(example,)i(create)g(the)0 1761 y(\256le)f XFi(program.opt)j Fq(which)d(contains)f(the)i(following)c(line:)54 X1882 y Fi(sys$library:vaxcrtl.e)q(xe/sha)q(re)0 2002 y Fq(Now)j(to)g(link)f X(the)h(program,)g(the)h(following)c(command)13 b(would)d(be)h(used:)54 X2122 y Fi($)18 b(link)h(myprog,)g(program/opt,)h(ptk_library:ptk/lib)0 X2270 y Fu(3.2.2)50 b(Fortran)14 b(Pr)o(ograms)0 2377 y Fq(If)f(Fortran)g X(language)h(binding)e(functions)g(are)i(used)g(in)f(a)i(program,)f(it)f(is)g X(necessary)i(to)f(link)e(your)h(program')n(s)g(object)g(\256le)0 X2427 y(with)d(the)h(appropriate)g(binding)e(object)i(library)f(and)h(the)h X(PHIGS)f(T)m(oolkit)f(binding)f(object)i(library)m(,)g(for)f(example:)54 X2547 y Fi($)18 b(link)37 b(myprog,)19 b(sys$library:phigs_fo)q(r_bnd/)q(lib, V) Xi(ptk_library:ptk_for)q(_bnd/l)q(ib)0 2956 y Fq(13th)h(May)m(,)12 Xb(1992)636 b(21)839 b(2.01)p eop X%%Page: 22 23 Xbop 0 -137 a Fq(PHIGS)11 b(T)m(oolkit)f(User)i(Manual)1235 Xb(PTK/100)0 8 y Fu(3.2.3)50 b(Specifying)13 b(the)g(W)m(orkstation)f(T)l(ype V) X0 115 y Fq(DEC)i(PHIGS)f(allows)g(the)h(workstation)d(type)i(used)h(by)f(a)h X(program)g(to)f(be)h(changed)g(at)f(run-time,)h(removing)e(the)i(need)g(to)0 X164 y(re-compile)d(and)h(link)e(the)h(application)f(program.)16 Xb(T)m(o)c(use)g(this)e(facility)g(a)i(PHIGS)g(workstation)e(must)h(be)h X(opened)f(with)f(the)0 214 y(type)h(0,)g(for)g(example:)54 X332 y Fi(popenphigs\(1,)20 b(0,)f(0\))54 b(\(for)19 b(C\))54 X381 y(CALL)g(POPWK\(1,)g(0,)f(0\))55 b(\(for)19 b(FORTRAN\))0 X499 y Fq(DEC)9 b(PHIGS)g(will)f(then)h(translate)g(the)g(logical)f(names)j X(PHIGS$WSTYPE)f(and)f(PHIGS$CONID)f(to)h(determine)g(the)g(work-)0 X549 y(station)h(type)h(and)g(device)h(connection)f(respectively)m(.)0 X627 y(T)m(o)h(change)g(the)f(values)g(in)g(these)h(logical)e(names)j X(involves)d(using)g(the)h(DEFINE)h(command.)k(The)c(syntax)f(is)g(as)h X(follows:)54 744 y Fi($)18 b(define)h(phigs$conid)h()54 +-+-+-+-+-+-+-+- END OF PART 10 +-+-+-+-+-+-+-+-