Kopfbereich

Direkt zum Inhalt Direkt zur Navigation

Inhalt

Maxipic
Welcome to the Maxipic page! Maxipic is a full-blown GUI application that took me about three and a half years to write. It is a scientific application written for people who are like me interested in two-dimensional digital signal processing, image processing and system theory.
     It runs on all popular platforms, including Windows 95/98, Windows NT 3.51/4 and Windows 2000. Because it was developed as a Win16 and Win32 application it also runs on Windows 3.1x (does anyone remember that?). The Win32 variant even runs on Windows 3.1x with Win32s, but I haven't made a setup for that, because I don't believe that anyone serious is still using Win32s.


Dowload Maxipic 2.0 (Win32 version)

Downloads thus far:     3549
Size:7658756 bytes
MD5 Checksum:012f7d9d17d12ef1deeca72c7f7fe6ee




Dowload Maxipic 2.0 (Win16 version)

Downloads thus far:     2336
Size:4013258 bytes
MD5 Checksum:b19dec0039ecd5500bc0abc86d971dac


What is it?

It is an image processing application for 128x128, 256x256 or 512x512 pixels greyscale images that provides the ability to transform such images into the spatial domain with the two-dimensional Fourier Transform and modify the image in that domain just as simple as drawing in a paint program. The modified images can then be transformed back with the inverse two-dimensional Fourier Transform and compared to the original image. There are also a few standard image filter options such as Gaussian, Laplacian, Median, etc... .
     Besides from these real trivial basic capabilities, Maxipic has several advanced features that can only be found in real expensive commercial apps for other purposes such as office apps. For instance, there is a multilevel undo/redo feature with compression in the background, OLE inplace activation support, animated rendering of complex images as three-dimensional models in OpenGL windows, etc... (see the feature list for more details).    

Feature List:

    Import of raw data files and Windows BMP bitmap files. Export formats are BMP and JPEG and raw data (a description of the supported raw data file formats can be found in the online help).
 
    OLE inplace activation support for container applications such as word processors, etc..
 
    German or English user interface which can be changed at runtime on the fly. Comprehensive help file support and tutorial in both German and English.
 
    Rendering of images either as greyscale pictures, colored phasor images or as three-dimensional OpenGL images. OpenGL support includes multithreaded animation, printing, print preview, clipboard and bitmap export.
 
    TWAIN support.
 
    MAPI support: Standard "Send as.." and a "Send as ZIP" command.
 
    Multilevel undo/redo with multithreaded compression in the background.
 
    Full shell support with drag&drop of shortcuts on printer icons, new document creation from the shell, etc...
 
    Customized print preview, extended file, print and page settings dialogs.
 
    Customizable splitter window support, full screen mode and zooming capabilities.
 
    Office 97 like look&feel with a gradient caption, cool-style toolbars, icons in menus and smooth scrolling.
 
    Native support for the Microsoft IntelliMouse.
 
    Industry standard install/uninstall support.
 
    Dithering on 16 colors displays.
 
   
 

Why I wrote this cool program...

   
I wrote a similar application when I was studying optical techniques and image processing in 1993/94 in Darmstadt, Germany that was an SDI application (single document interface) which I named Minipic. In the autumn of 1995 I had the idea of rewriting this application as a MDI application (multiple document interface) and so Maxipic was born. It took me until summer 1997 until version 1.0 was out and until spring 1999 until version 2.0 (the current version) was ready. I also wrote this application to demonstrate what could be done (and also what I can do) when writing a state-of-the-art GUI application.

What was technically challenging in writing this program?

A real lot. I learned a lot of things during development of this program: Customizing the standard splitter window of Windows MFC, Windows OpenGL, including such nifty things as printing Windows OpenGL renderings or showing them in a print preview window, multithreaded animation techniques, and exploiting and extending Windows MFC while still writing portable code between 16 and 32 bits (... uuhm, yes, you guessed it: the code is sprinkled with #ifdefs...). I also learned how to customize standard common dialogs such as the file open box or the printing dialogs. I have even customized the page setup dialog box, which is something I haven't ever seen before, even in commercial apps.
Last Updated on Sunday, 01 March 2009 20:04