Welcome to my website!

I thought a large number of people could benefit from my Ph.D. Thesis on Computer Graphics Architectures I prepared between 1983 and 1986 at the University of Lyon, France. It is only available in French but if you feel like you need a translation, drop me a line and I'll make an extra effort! pdf so you can get a clean print (900kB-French).

 I've been asked some time ago for an English translation of the hidden line removal section using an extension of the Bresenham line drawing algorithm. You can find a pdf version here. I also include a small test/implementation in C for the program I wrote back in 1987!, including simple lighting, and displaying/printing the result on console.If you'd like to use it to drive your 3D printer, go ahead! it's the perfect way to perform a fast, software driven, 3D printing. The algorithm is ideal for one-plane-at-a-time printing, which is exactly what 3D printers do.

Other work and algorithms available on this website:

• 2D polygon clipping. This algorithm offers a very fast execution speed and can be used with both integer or floating-point arithmetic units. It has been developed for Sun Microsystems in 1989. This work is protected by US patent #5079719, UK patent #GB2232564, Canadian patent #2010967, Hong Kong patent #HK0940766 and Singapore patent #SG94908209. pdf (184kB). This paper receives a lot of interest from internet users, at least according to the number of hits reported by academia.edu. If you are interested (and serious ) in implementing optimizing further (in size, test speed or specific reject cases) the algorithm, drop me a line, there are a few additional ideas I never published and will gladly share.
• World coordinates 3D clipping of Triangle strips. This algorithm is using elements from the general clipping chapter of my Ph.D. Thesis and addresses the clipping equations in world coordinates (the most general case for 3D clipping) with and without homogeneous coordinates and the specific optimization case of structured graphics primitives such as triangle strips and quad meshes, which are widely used in computer graphics for their capacity in representing complex graphics with a small memory usage. Rather than computing the intersections on the point structures themselves, the algorithm further optimizes speed in using pointers, much more compact to manipulate. This gives a significant speed advantage over more standard algorithms. This work (a close implementation) is used in the XGL™ graphics library, a component of the Solaris™ operating system (Sun Microsystems, Inc.). It has also been published in Graphics Gems II, edited by Jim Arvo.  pdf (75kB)
• A case study on graphics primitives and data structures optimization in order to ensure the software/hardware independence for Graphics libraries, without compromising performance. Presented at Eurographics in 1991. pdf (96kB)
• Back when I worked for Sun Microsystems as Technical and Architecture Lead and later as Manager of XGL™. XGL™ is a 2D and 3D graphics library. A lot of information on XGL and how to program with the library can be found in the Answerbook collection from Sun. Here's another document: XGL technical white paper: A presentation of the different capabilities of XGL™, a graphics component of the Solaris™ operating system (Sun Microsystems, Inc.). Published by Sun Microsystems in 1993. pdf (635kB). Other XGL documents saved from the net: the XGL reference manual and the XGL programming guide.
• Fun with Quaternions, or at least practical examples on how to use them for your 3D transforms. From elements initially published in my thesis, but also in Graphics Gems and the Suntech journal. pdf (119kB)

In Different areas:

• Wiz4com’s Mobile Phone Application Software Suite and Environment; a white paper on the software suite Wiz4com created back in 2005. pdf (555kB)

• USB antitheft. Always wanted to know how to prevent these USB devices connected to your desktop computer from disappearing during the night? Well, this will at least ensure your insurance company will validate the fact they have been stolen... Read on for this patent (US# 6745330) I filed for while working for Hewlett-Packard; the drawings are here. This patent has been sold (with several others) to Google by Hewlett Packard (http://www.seobythesea.com/2012/02/hewlett-packard-patents-assigned-google/) in June 2012.

• Guitar works. I play guitar, have been for some time and have been playing with the band Daily-Blues in the south of France. You can hear some of my music (although I do not play enough to "publish"...) on different links, such as mp3.com [The Cliffs Of Grenoble] or yourguitarplace.com [The Cliffs Of Grenoble],[Horizon]. You can also watch and listen to Daily Blues on youtube.
I have been tweaking a Dean B. Zelinski guitar recently, check it out !; I also love my own James Trussart Steelcaster. Finest guitar on Earth! And then other guitars... :)

• SWOL (for Speaker Wake On Lan). A feature I would really like to find on powered speakers. Rather than having to move around the studio (or stage) to power one by one all the speakers (or equipment) which are otherwise connected together, to a music workstation or mixer on stage or in a music room, I think it would be a lot easier (and make sense) to have speakers and other musical equipment powered on or off by the click of a mouse or a selected command from the Music workstation. I sent a tweet to Uli Behringer about this on March 30, 2013; we'll see if this makes it to a product one day. Maybe this already exists on bigger rigs but I didn't find any reference to it. The technology is there and exists for computers. Now that many (not yet most) of the devices we use for musical (re)production are digital, we should be able to find this for music equipment.

• X32 (Behringer Digital Mixer) I acquired a standard X32 in 2014 and really enjoy the unit. It's a great tool, with plenty of capabilities and very good sound. It is now replacing my old Yamaha, which I liked a lot but was really getting difficult to deal with when it comes to transferring data from the mixer to my PC... Not so with the Behringer! a direct USB 2.0 connection to a PC enables direct and full recording of 32 tracks. No more issues with re-synching the different tracks, no more a limitation in size for transferring tracks and no CD to use for the task! The X32 can be controlled via UDP and OSC protocol; I created a few utilities to manipulate my X32, some of the source files are available too..

I have also been reviewing a certain number of papers and books for ACM over the past few years; here's a list of elements I reviewed:

• Synthetic actors in computer-generated 3D films / Nadia Magnenat-Thalmann , Daniel Thalmann
Book, Springer-Verlag New York, Inc. November 1990 77%
• Fast line scan-conversion / J. G. Rokne , Brian Wyvill , Xiaolin Wu
ACM Transactions on Graphics (TOG) October 1990 Volume 9 Issue 4
• Rasterization of nonparametric curves / John D. Hobby
ACM Transactions on Graphics (TOG) July 1990 Volume 9 Issue 3
• A geometric characterization of parametric cubic curves / Maureen C. Stone , Tony D. DeRose
ACM Transactions on Graphics (TOG) July 1989 Volume 8 Issue 3
• The mathematical structure of raster graphics / Eugene L. Fiume
Book, Academic Press Professional, Inc. January 1989
• Star-vertices: a compact representation for planar meshes with adjacency information / Marcelo Kallmann , Daniel Thalmann
Journal of Graphics Tools January 2002 Volume 6 Issue 1
• Controllable morphing of compatible planar triangulations
ACM Transactions on Graphics (TOG) October 2001 Volume 20 Issue 4
• Natural hairstyle modeling and animation
Graphical Models March 2001 Volume 63 Issue 2
• The relative contributions of stereo, lighting, and background scenes in promoting 3D depth visualization / Geoffrey S. Hubona , Philip N. Wheeler , Gregory W. Shirah , Matthew Brandt
ACM Transactions on Computer-Human Interaction (TOCHI) September 1999 Volume 6 Issue 3
• Computing moments of objects enclosed by piecewise polynomial surfaces / Carlos Gonzalez-Ochoa , Scott McCammon , Jörg Peters
ACM Transactions on Graphics (TOG) July 1998 Volume 17 Issue 3
• Texture mapping 3D models of real-world scenes / Frederick M. Weinhaus , Venkat Devarajan
ACM Computing Surveys (CSUR) December 1997 Volume 29 Issue 4
• Geometric modeling (2nd ed.) / Michael E. Mortenson
Book, John Wiley & Sons, Inc. February 1997
• Interaction design for large displays / Kishore Swaminathan , Steve Sato
interactions January 1997 Volume 4 Issue 1
• Time/space tradeoffs for polygon mesh rendering / Reuven Bar-Yehuda , Craig Gotsman
ACM Transactions on Graphics (TOG) April 1996 Volume 15 Issue 2
ACM Transactions on Graphics (TOG) July 1996 Volume 15 Issue 3
• Height distributional distance transform methods for height field ray tracing / David W. Paglieroni , Sidney M. Petersen
ACM Transactions on Graphics (TOG) October 1994 Volume 13 Issue 4
• 3-D sound for virtual reality and multimedia / Durand R. Begault
Book, Academic Press Professional, Inc. August 1994
• Interactive design of smooth objects with probabilistic point constraints / Ari Rappoport , Yaacov Hel-Or , Michael Werman
ACM Transactions on Graphics (TOG) April 1994 Volume 13 Issue 2
Proceedings of the 1993 symposium on Parallel rendering November 1993
• Natural minimal surfaces (videotape): via theory and computation / David Hoffman
Book, Science Television Company January 1990
• Multiprocessor methods for computer graphics rendering / Scott Whitman
Book, A. K. Peters, Ltd. June 1992
• Architectures of high-performance 3D graphics accelerators (videotape) / Kurt Akeley
Book, University Video Communications April 1992
• Rendering curves and surfaces with hybrid subdivision and forward differencing / Ari Rappoport
ACM Transactions on Graphics (TOG) October 1991 Volume 10 Issue 4
• A triangulation algorithm from arbitrary shaped multiple planar contours / A. B. Ekoule , F. C. Peyrin , C. L. Odet
ACM Transactions on Graphics (TOG) April 1991 Volume 10 Issue 2

Page maintained by Patrick-Gilles Maillot.

Mar 2014