egbert@cs.uiuc.edu (Parris Egbert) (01/31/91)
There is now available from the University of Illinois an implementation of PEX called UIPEX. Those with Internet access can use anonymous ftp to retrieve UIPEX from a.cs.uiuc.edu (128.174.252.1). The file is named uipex.tar.Z, and is found in the pub/uipex directory. Once you have retrieved the file, uncompress it and then extract the individual files using tar. There are README files in the UIPEX directories that explain how to compile the code once it has been extracted. UIPEX is an implementation of PEX version 4.0, that was created on the IBM RT PC under 4.3. It contains a near complete implementation of PHIGS and PHIGS PLUS as defined in the approved ANSI PHIGS spec entitled "Computer Graphics - Programmer's Hierarchical Interactive Graphics System (PHIGS) Functional Description, Archive File Format, Clear-Text Encoding of Archive File" (Document number X3H/89-54) and the proposed PHIGS PLUS spec entitled "Computer Graphics - Programmer's Hierarchical Interactive Graphics System (PHIGS) Part 4 - Plus Lumiere und Surfaces (PHIGS PLUS)" dated July 25, 1989. The PHIGS C binding that is used is the ANSI proposed binding entitled "Computer Graphics - Programmer's Hierarchical Interactive Graphics System (PHIGS) C Binding" (Document number X3.144.4-198x, dated 20 June 1988). When we began the implementation, there was no PHIGS PLUS C binding, hence, we created our own. The UIPEX PHIGS PLUS C binding can be obtained via anonymous ftp from the above location in pub/uipex/phigs_plus_c_bind.Z, or by contacting the Department of Computer Science at the University of Illinois. In addition, we have written several technical reports as the project progressed, and they are also available (either via anonymous ftp or from the department). All of the documents are in compressed PostScript format, and are in the pub/uipex directory on the above machine. The available documents are: tech report number ftp file name Description ------ ----------------- -------------------------------------- 2 me_c_bind.PS.Z The UIPEX Modeling Extention C binding 4 phigs_plus_c_bind.PS.Z The UIPEX PHIGS PLUS C binding 5 dipex.PS.Z Design doc for the device independent portion of the PEX server. 6 api_doc.PS.Z Design doc for the Application Programmer Interface (i.e., PHIGS) portion of UIPEX. 8 ddpex_doc.PS.Z Design doc for the device dependent portion of the PEX server. 9 sung_thesis.PS.Z A description of UIPEX and how X is extended to accomodate PEX. 10 egbert_thesis.PS.Z A description of how PHIGS is implemented using PEX, and problems that arise in doing so. The major component of PHIGS that we have not implemented is Metafiles. Essentially all other PHIGS capabilities are present. At the time of our implementation, PHIGS PLUS was not yet an accepted standard, and the definition of PEX was still volatile. Thus, we have implemented all of the characteristics of PHIGS PLUS for which there were corresponding PEX capabliities. Because of this, the "SET OF FILL AREA SET 3 WITH DATA" primitive that is defined in PHIGS PLUS has not been implemented. Due to the limited resources we have had on this project, the code has not been tested as extensively as we would have liked. If you find bugs as you use the code, we would appreciate knowing about them, but at the present time have no plans on supporting UIPEX or providing updated versions of it in the near future. Please send bugs reports, questions, or comments about UIPEX to: uipex@cs.uiuc.edu To request the set of technical reports listed above, please send your name, address, and a check for $25.00 US (for the entire set) made payable to the University of Illinois to: Rhonda Murphy Department of Computer Science University of Illinois at Urbana-Champaign 1304 W. Springfield Urbana, IL 61801 (217) 333-2444 rmurphy@cs.uiuc.edu
david@ibmpa.awdpa.ibm.com (02/02/91)
In article <1991Jan30.212921.3736@cs.uiuc.edu> egbert@cs.uiuc.edu (Parris Egbert) writes: > >There is now available from the University of Illinois an >implementation of PEX called UIPEX. > Congratulations! --------------------------------------------------------- David Berkowitz ..!uunet!ibmsupt!david (415) 855-4485 IBM AWD Palo Alto Opinions are mine. Who else would want them?
jorice@maths.tcd.ie (Jonathan Rice) (02/05/91)
>In article <1991Jan30.212921.3736@cs.uiuc.edu> egbert@cs.uiuc.edu (Parris Egbert) writes: >> >>There is now available from the University of Illinois an >>implementation of PEX called UIPEX. >> What'll it run on? -- JOR
egbert@cs.uiuc.edu (Parris Egbert) (02/12/91)
There have been several questions regarding the types of machines UIPEX will run on. We wrote the code on an IBM RT PC running 4.3. We have not ported the code to other machines, but designed it so that porting would be easy. For example, we have not made any IBM-server specific function calls. To port to another machine, do the following: 1. Compile $(PEXTOP)/pex/server/dipex and $(PEXTOP)/pex/server/ddpex this should generate libdipex.a and libddpex.a. As far as we know, dipex and ddpex are not making any IBM-server specific function calls (Since we only have access to the IBM-server code, the above statement is made base on the fact that we are only making calls to $(XTOP)/server/dix functions and all the output related routines are called through the GC->function pointers.), this means porting the dipex and ddpex should be a matter of compiling the two libraries. 2. Edit the file $(XTOP)/server/ddx/mi/miinitext.c, add in the line PexExtensionInit(); into the InitExtensions routine. Remember to re-make the libmi.a library to reflect the change. 3. Re-link the X-server like what you would do otherwise, but this time, you need to specify libdipex.a and libddpex.a as link-time libraries. That should do it.