[Home] [Puzzles & Projects] [Delphi Techniques] [Math topics] [Library] [Utilities]
|
|
Earl Glynn has maintained a website of technical Delphi programs for over 20 years. It was one of my first Delphi finds and one that belongs in my "Favorite Sites" page if I had gotten around to create it. This "3D Lab" program is a typical example that I had loaded into my Future Projects folder many years ago and recently rediscovered. The program uses three support units whose source is included in the download. These are the tools used to build the the objects demonstrated in this program. Like my understanding of the automobile, I understand this code well enough to use it without knowing a lot about the inner workings . I do understand the math behind simulating points in 3D space and portraying them in 2D; it is nice do have Delphi implementations predefined in hese units. I have used them in several programs over the years to illustrate and animate 3D objects.
Earl's original 3D Lab program allows users to select the figure to be drawn and three aspects of the viewing camera's position relative to the image: azimuth (the horizontal angle), elevation (the vertical angle), and distance from he object. There is also a "Screen Control" group box with options for virtual Height and Width of the virtual for the 2D projection of the images. The somewhat confusing "To Camera" value represents the virtual distance from the object to the screen that would produce an image of this size. The ratio of Screen-To-Camera distance to the X or Y screen size can be considered to be the power of the viewing lens. If we double the screen size and the To-Camera distance, the projected image is unchanged. Thanks for Earl for permission to modify and post the original program here on DFF. The only significant feature I added was a speed control box to animate changing azimuth and/or elevation values. Running/Exploring the Program
|
[Feedback] [Newsletters (subscribe/view)] [About me]Copyright © 2000-2018, Gary Darby All rights reserved. |