July 1994 - GRAPHICS PROGRAMMING


FEATURES

MORPHING 3-D OBJECTS IN C++

by Glenn M. Lewis

Glenn presents a C++ morphing program that simulates a "melting" effect (and its reverse) on 3-D objects. The program, which compiles and runs on UNIX machines, PCs, and the Amiga, generates objects analogous to key frames in animation sequences.

GENERATING REALISTIC TERRAIN

by Robert Krten

Realistic landscapes are the bread and butter of computer graphics. Robert shares a technique he calls "fault-generation" for simulating mountains and other geological features found in nature--and it's fast!

3-D TEXTURE MAPPING

by Jeremy Spiller

Texture mapping allows you to project a 2-D image, or texture map, onto a flat polygon that has been placed on a 3-D surface. Jeremy's program draws a rotating cube (the model) painted with three different texture maps.

RAY: A RAY-TRACING PROGRAM IN C++

by Alain Mangen

Alain uses C++ inheritance to create RAY, a powerful ray-tracing program that performs hidden-surface removal and simulates shadow and semishadow effects to produce images of dazzling realism.

LOTFI VISIONS, PART 1

by Jack Woehr

In the first installment of this exclusive interview with Lotfi Zadeh, the father of fuzzy logic, Zadeh discusses the philosophical underpinnings of fuzzy logic, how it relates to fractals and AI, and his youth in the USSR and Iran.

EMBEDDED SYSTEMS

A C++ CLASS FOR GENERATING BAR CODES

by Douglas Reilly

Any application that depends upon accurate entry of data with little or no user intervention is a candidate for bar codes. The PCL class Doug presents here lets you create bar-code symbols on PCL-compatible laser printers.

NETWORKED SYSTEMS

POSTMAN: A BRIDGE TO THE UNIX MAIL SYSTEM

by Zongnan H. Lu

Postman is an interface program that sits between an in-house, UNIX-based, personal-information system and the UNIX sendmail program. It provides a way to exchange mail between user-application programs and the outside world through the existing UNIX mail system.

EXAMINING ROOM

RAY TRACING AND THE POV-RAY TOOLKIT

by Craig A. Lindley

The POV-Ray ("Persistence of Vision Ray Tracer") toolkit is a powerful, multiplatform package available free of charge in source-code and executable form for PCs (running under DOS, Windows, NT, or OS/2), Macintosh, Amiga, UNIX (including the X Window System), and VMS workstations.

PROGRAMMER'S WORKBENCH

EXAMINING AUDIO DSP ALGORITHMS

by Dennis Cronin

Dennis implements DSP algorithms to create real-time audio effects--pitch change, echo, flanging, and phase shifting--for the Microsoft Windows Sound System.

COLUMNS

PROGRAMMING PARADIGMS

by Michael Swaine

Michael wraps up his mushroom-identification programming project for the Newton MessagePad.

C PROGRAMMING

by Al Stevens

Al continues his presentation of the Quincy preprocessor, this month focusing on the parts that resolve #define macros and evaluate #if expressions.

ALGORITHM ALLEY

by Tim Kientzle

The circle algorithm presented here is both fast and exact when plotting the closest points to the circle and drawing ellipses.

UNDOCUMENTED CORNER

edited by Andrew Schulman

Ralf Brown examines the undocumented side of the private programming interface of QEMM, Quarterdeck's 386 memory manager.

PROGRAMMER'S BOOKSHELF

by Jonathan Erickson

This month, we look at three books on graphics file formats--the Encyclopedia of Graphics File Formats, Bitmapped Graphics Programming in C++, and Programming for Graphics Files in C and C++.

FORUM

EDITORIAL

by Jonathan Erickson

LETTERS

by you

SWAINE'S FLAMES

by Michael Swaine

PROGRAMMER'S SERVICES

OF INTEREST

by Monica E. Berg


Copyright © 1994, Dr. Dobb's Journal