Welcome to octplot 0.4.0

octplot is free software. Please see the file COPYING for details. For
documentation, please see the files in the doc subdirectory. 
(currently no useful files).

Octplot has been tested on Linux & cygwin, and should work on OSX and
native windows. Please also read the corresponding readme for your
platform

This is a major release. 
New user visible changes in this release:

1) clable & contourf -- see help contourf
2) shading for surfaces -- see help shading
3) per vertex color for patches
4) robust multi-figure support.

STARTING OCTPLOT
----------------
invoking octplot_enable/octplot_disable will add/remove the octplot
dir to your loadpath and setup other stuff so that octplot will
work. 

TRYING WIHOUT INSTALL
---------------------
If you want to try octplot out without installing, run octave from the
src directory after compilation. e.g. to run the demos:

./configure && make
cd src
octave
octplot_enable
addpath("../demos");
contour_demo
...

INSTALLING
----------
You can control what the install directories are using the following
options:

  --with-path: the install path prefix (rarely needed) 
  --with-mpath: where toggle_octplot.m goes (this should lie in Octave's
                LOADPATH)
  --with-opath: where octplot's .oct files go (this should *not* lie in
                Octave's LOADPATH)
  --with-octplotmpath: where octplot's .m files go (this should *not* lie in
		       Octave's LOADPATH)
  --with-fontpath: where octplot's font files go 

./configure && make && make install
is the way to go.

there are some nice demos in the demos directory.

EXAMPLES
--------

Example script:

############################################
## first, setup octplot
octplot_enable

## simple sin with line property settings & xtic control
t=(0:10000)/10000*2*pi;
h=plot(t,sin(t),"b-;sin;");
title("simple sin");
xlabel("t [pi]");
ylabel("sin(t)");
axis([0 2*pi -1 1]);
set(gca(),"xtick",(0:0.5:2)*pi);
set(gca(),"xticklabel","0|pi/2|pi|3pi/2|2pi");

## change line style and add markers -- might be slow since there are
## 1e4 data points
set(h,"linestyle","-","marker","o");
## change legend location NEW in 0.3.1
legend("Location","SouthWest");

## now add some coloured rotated text
## NEW in 0.2.5
text(0.1,0,"Rotated","fontsize",24,"rotation",25,"color","m");
## now make hardcopy, first eps, than png, than pdf (the last two require ghostscript)
print("demo.eps");
## NEW in 0.2.5
print("demo.png","-dpng");
## NEW in 0.2.5
print("demo.pdf","-dpdf");

###############################################
## freqz plot (requires octave-forge for butter.m)
## shows off subplots
[b,a]=butter(5,[0.4,0.6],"stop");
freqz(b,a);

##############################################
## simple contourf plot
clf();
[x,y]=meshgrid(-2:.2:2, -2:.2:3); 
z = x.*exp(-x.^2 - y.^2);
colormap(hot);
contourf(x,y,z);
grid("on");

##############################################
## contour plot with labels
clf();
[x,y]=meshgrid(-2:.2:2, -2:.2:3);
z = x.*exp(-x.^2 - y.^2);
colormap(hot);
[c,h] = contour(x,y,z,-0.4:0.1:0.4);
clabel(c,h);

##############################################
## simple pseudocolor plot
clf();
[x,y]=meshgrid(-2:.2:2, -2:.2:3); 
z = x.*exp(-x.^2 - y.^2);
pcolor(x,y,z);
colormap(jet);
grid("on");

try zooming using the left mouse button, zoom-out using the right
mouse button, double click to transfer current mouse coords to
clipboard. press "g" to toggle grid

for help on object properties try:
help figure_props
help axes_props
help line_props
help text_props
help surface_props
help patch_props
help legend_props

Enjoy, and report the numerous bugs you find to me at sourceforge.

==================================================

Prequisites:

1) octave >= 2.1.50
2) octave-forge >= 2004.07.07 (uses dispatch, addpath, rmpath, colormaps)
3) fltk >= 1.1.4
4) freetype >= 9.0.3
5) ghostscript if you want pdf,png and jpg hardcopy. Otherwise you are stuck
   with eps/ps only (not so bad IMHO)
   
3,4,5 are pretty standard and are available in most distros, including cygwin. Note that if you are installing the libraries in binary form (e.g. rpm, apt or cygwin) you should install the dev or devel package

In fedora:
yum install fltk-devel freetype-devel
In debian
apt-get install fltk-dev freetype-dev

adapt for your favorite distro.

of course octave is needed to run (not to compile though, except for
the oct files). I recommend using octave version >= 2.9.0. Octplot
also requires octave-forge, currently only for the dispatch function,
but in the future, I will make use of many more functions from
octave-forge. I recommend octave-forge >= 2004.07.07 because it has a
superior dispatch function.

Octplot relies on fltk (tested with fltk >= 1.1.4) compiled with OpenGL
support. fltk is available from www.fltk.org and in binary form for a
lot of platforms (I know of redhat, fedora, cygwin) If you are
compiling fltk from source, be sure to enable OpenGL support in fltk
by runing fltk's configure with at least the "--enable-gl" flag before
compiling it i.e.:

cd fltk-1.1.4
./configure --enable-gl
make
make install

Please read the platform specific READMEs for further help

