Yes. I develop them at home, using both XP and Windows 7, and I test them on a laptop that runs Vista. The programs also run on the NT network at my school. As operating systems get more complicated, however, subtle problems can occur.
2. Are there Macintosh or Linux versions of these programs?
I wish there were, but no. There are options, however. One Mac user reports success using a package called Crossover. Another endorses Wine, and has written a tutorial for his classmates (if you follow this path, you will probably have to re-define the default fonts, however). Another user runs Winplot using Ubuntu Linux, and has written instructions for those wanting to do the same. In my earliest attempts to be a programmer (as a college student), I worked with Fortran on IBM hardware. Twenty years later, when the time came to buy my own personal computer, I stayed with the IBM platform, mostly because I liked designing programs to do what I wanted them to do, and programming the IBM was encouraged. I also disliked the feel and the look of the original Mac.
3. Why doesn’t Winplot draw thick dotted and dashed lines?
The ancient compiler I use to create my programs does not have the option of thickening dotted or dashed lines. For screen display, the user has be creative and find a way to do without. For embedding diagrams in documents, however, there is a solution — export the diagram to an EPS file. Although the screen will not show a thick dotted line, the EPS file will, and this file can almost certainly be imported into your word processor.
4. Why doesn’t Winplot (Wingeom, Winfeed, etc) let me resize a drawing window?
Windows XP introduced a feature called “show window contents while dragging”. Although all my drawing windows can be resized safely using the File|Image Size function, this is still a bad idea to inflict on windows that need time to draw their contents. For example, it is annoyingly difficult just to slide one fractal window across another. It is fortunate that this pointless feature can be disabled! In XP, you open the Control Panel|Display|Appearance|Effects dialog box, uncheck the item, then click OK and Apply. In Windows 7, the control is truly well hidden: First follow the path Contol Panel|System and Security|System, then open the Advanced System Settings dialog box, click the Performance Settings button, uncheck the item in the list of Custom features, and click Apply.
5. When the graphing window is adjusted, why do implicitly defined graphs disappear, or appear in fragments?
Implicitly defined graphs are drawn by a special method, which establishes an anchor point (found by a random search) on each connected component of the graph (a complete display might consist of several components). If the view is adjusted (by zooming in, for example), it may happen that an anchor point is no longer visible, and the corresponding component will disappear. Curves that leave the view frame are usually clipped at the boundary. Because the program also preserves these clip points, they can become conspicuous if the view is adjusted (by zooming out, for example). If the View menu item “Implicit redraw” is checked, however, any window change will put the program back into search mode (forcing the recalculation of anchor and clip points), and implicit graphs should refresh normally.
6. Why doesn’t 3D Winplot draw implicitly defined surfaces?
It does, but (in contrast with implicit curves in 2D) not automatically. The program needs guidance. After entering the equation, the user is prompted to provide coordinates for a box that contains the surface. Having done this, the user must then click the “levels” button in the Inventory. See the Equa|Help text for more details.
7. Why doesn’t Winplot (Wingeom, etc) open a file when I double-click its icon?
Windows now allows periods in folder names. The antiquated compiler I use to create my programs regards such unexpected periods in the path name as errors, because at one time they were errors. The solution is to avoid putting Peanut files into folders with names like “peanut.wplot”.
8. Will Winplot (or Wingeom) put arrows at the ends of lines (specifically axes) and other graphs?
Arrows that indicate direction are routinely available; specifically rays, vectors, and the positive direction on a coordinate axis or on a parametrically defined curve. The creative user will find ways of putting arrows in other places. Because it is not trivial for Winplot to decide on its own where a graph “ends”, given that some curves leave the window and then return, arrows at the ends of curves are usually problematic. They are available for curves with restricted domains, however.
9. Can Winplot draw dotted curves?
Other than lines and segments, no. Nonlinear graphs are typically drawn by marking hundreds of dots and connecting them. Even if the pen were “dotted”, the effect would be lost because the segments are so short. To distinguish one curve from another, I have found that varying thickness and color suffice.
10. Are the programs really free?
Yes. I request only that they not be sold. I would rather have friends than money. What I do like to receive is ideas for improvements, and of course I appreciate reports of bugs.
11. Why is Winplot (Wingeom, etc) crashing (doing crazy things) when I open a 2D graphing window?
There may well be a bug in the program (please tell me), but the cause is usually a corrupted initialization file. Most windows create these ini files when they close, saving user preferences such as background color, window size and placement, font selections, and so on. If the program crashes for any reason, the ini file can be left holding bad information, which is retrieved by the program the next time that you open that window. Havoc results. The obvious remedy is to find the offending file and delete it from the Windows directory. It is actually easier to open the troublesome window after checking the main menu item “Using defaults”. This tells the program to ignore the ini file if there is one. As soon as the window has been safely closed, its ini file is restored to health.
12. Is there a version of Winplot (Wingeom, etc) in German (Polish, Danish, etc)?
If not, you can create one. What is required is the patience and time to work through the resource and help files and translate them into the language you want. These are plain text files, which are inserted into the program code. You do not need to know how to program. The existing foreign-language versions of my programs were created in this way by volunteers. If you would like to volunteer to translate, just let me know — my e-mail address can be found in the Help|About dialog box.
13. Why will Winplot not graph the cube-root function?
It will, but you have to enter the equation as y = root(3,x). (See the Library help file.) Because expressions like x^(1/3) are evaluated using logarithms, negative values of x must be rejected.
14. For graphing sine curves, is it possible to put Winplot into “degree mode”, and to mark a special scale on the x-axis?
The problem is that there are really two sine functions, one of which produces 1.00 when you apply it to the numerical input 90, the other of which produces 0.8940 when you apply it to the numerical input 90. It is unfortunate that both functions are called by the same name (sin), which creates the impression that it is the number 90 that changes its character. In Winplot, “sin” always refers to the radian-mode version, and expressions like “sin(x deg)” and “sin(t deg)” are currently the only established way of obtaining the degree-mode version.
One of my goals when writing Winplot was to have a grapher that could display many varieties of graphs (including parametric, polar, and implicit) simultaneously on a single sheet of graph paper. For this to work, it is essential that the axes not be constricted by labels or “modes”. For example, the graph of a circle defined parametrically as x = cos(t), y = sin(t) would be vulnerable if the meanings of the axes (and the functions) were allowed to change suddenly. The existence of inverse functions such as arcsin further complicates matters, since special markings would also be needed on the y-axis.
15. Did you know that Winplot is not graphing “int” correctly?
Although there is not yet total agreement, it has become the convention to use “floor” in place of “int”, which is what Winplot does. This also allows “int” to be used for the integer part of a number, as its name suggests. You can read more on this subject here and here.
16. In what language are your programs written?
The ancient Windows 3.1 versions are written in Pascal. The Windows 95/98/2K/ME/XP/Vista/7 versions are written in C++.
17. Is the source code available?
No. I am happy to correspond with anyone about the solutions I have found to various programming problems, however, and even share chunks of code, but I do not wish to release entire programs. There may come a day when I will want to relinquish control, but right now I like overseeing the development of the programs. Another issue is that my code is pretty hard to follow, and my documentation is probably nowhere near industry standards. The code is also voluminous — more than 1 MB of text for Winplot, for example. In other words, I doubt that one could learn much from it.
18. Is there an installation program?
No. Other than registering file extensions, there is nothing for such a program to do. To learn how to register file extensions (so that you can open a file by double-clicking its icon), click here.
19. What is your occupation?
I am a high-school math teacher. Programming is just a hobby that has gotten out of control. Encouraged by students in the mid 1980s, I wrote a couple of MS-DOS programs, designed to alleviate the drudgery of the homework that I was assigning them. I was also intrigued when I heard a colleague describe the original “Geometric Supposer”, and tried writing a program that would carry out geometric constructions and print diagrams for tests. Then I started sharing these programs with teachers from other schools. You can imagine the rest.
20. Where did “peanut” come from?
The first three letters are an acronym for the school I teach at (Phillips Exeter Academy, in Exeter, NH).
This FAQ page is available in
German, thanks to Kate Bondareva, in
Belorussian, thanks to Patricia Clausnitzer, and in
Russian, thanks to Andrew Kovalev.