merge revisions 11872:11876 from trunk to gsoc2008-maciekd branch - license changes

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2008-maciekd@11918 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2010-03-06 13:26:09 +00:00
commit d1e871f0d2
433 changed files with 1381 additions and 12591 deletions

View file

@ -1,4 +0,0 @@
# see top-level Makefile.in
full
shadow
simple

View file

@ -1,20 +0,0 @@
TOP = ../../..
SWIG = $(TOP)/../swig
SWIGOPT = -I../../Include -noproxy
SRCS =
TARGET = gifplot
INTERFACE = gifplot.i
LIBS = -L../.. -lgifplot
INCLUDES = -I../../Include
all::
$(MAKE) -f $(TOP)/Makefile SRCS='$(SRCS)' SWIG='$(SWIG)' \
INCLUDES='$(INCLUDES)' LIBS='$(LIBS)' SWIGOPT='$(SWIGOPT)' \
TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' java
javac *.java
clean::
$(MAKE) -f $(TOP)/Makefile java_clean
rm -f *.gif
check: all

View file

@ -1,8 +0,0 @@
This example runs the entire gifplot.h header file through SWIG without
any changes. The program 'runme.java' does something a little more
interesting. After doing a make, run it using 'java runme'. You'll have to go
look at the header file to get a complete listing of the functions.
Note the differences in the runme.java files between this example and the
'full' example. This example does not use shadow classes.

Binary file not shown.

View file

@ -1,15 +0,0 @@
/* Oh what the heck, let's just grab the whole darn header file
and see what happens. */
%module gifplot
%{
/* Note: You still need this part because the %include directive
merely causes SWIG to interpret the contents of a file. It doesn't
include the right include headers for the resulting C code */
#include "gifplot.h"
%}
%include gifplot.h

View file

@ -1,75 +0,0 @@
// Plot a 3D function
import java.lang.Math;
public class runme {
static {
try {
System.loadLibrary("gifplot");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
System.exit(1);
}
}
public static void main(String argv[]) {
// Here are some plotting parameters
double xmin = -5.0;
double xmax = 5.0;
double ymin = -5.0;
double ymax = 5.0;
double zmin = -5.0;
double zmax = 5.0;
// Grid resolution
int nxpoints = 60;
int nypoints = 60;
SWIGTYPE_p_ColorMap cmap = gifplot.new_ColorMap("cmap");
SWIGTYPE_p_FrameBuffer frame = gifplot.new_FrameBuffer(500,500);
gifplot.FrameBuffer_clear(frame,(short)gifplot.BLACK);
SWIGTYPE_p_Plot3D p3 = gifplot.new_Plot3D(frame,xmin,ymin,zmin,xmax,ymax,zmax);
gifplot.Plot3D_lookat(p3,2*(zmax-zmin));
gifplot.Plot3D_autoperspective(p3,40);
gifplot.Plot3D_rotu(p3,60);
gifplot.Plot3D_rotr(p3,30);
gifplot.Plot3D_rotd(p3,10);
System.out.println( "Making a nice 3D plot..." );
gifplot.Plot3D_clear(p3,(short)gifplot.BLACK);
gifplot.Plot3D_start(p3);
double dx = 1.0*(xmax-xmin)/nxpoints;
double dy = 1.0*(ymax-ymin)/nypoints;
double cscale = 240.0/(zmax-zmin);
double x = xmin;
for (int i = 0; i < nxpoints; i++) {
double y = ymin;
for (int j = 0; j < nypoints; j++) {
double z1 = func(x,y);
double z2 = func(x+dx,y);
double z3 = func(x+dx,y+dy);
double z4 = func(x,y+dy);
double c1 = cscale*(z1-zmin);
double c2 = cscale*(z2-zmin);
double c3 = cscale*(z3-zmin);
double c4 = cscale*(z4-zmin);
double c = (c1+c2+c3+c4)/4;
if (c < 0) c = 0;
if (c > 239) c = 239;
gifplot.Plot3D_solidquad(p3,x,y,z1,x+dx,y,z2,x+dx,y+dy,z3,x,y+dy,z4,(short)(c+16));
y = y + dy;
}
x = x + dx;
}
gifplot.FrameBuffer_writeGIF(frame,cmap,"image.gif");
System.out.println( "Wrote image.gif" );
}
// Here is the function to plot
public static double func(double x, double y) {
return 5*java.lang.Math.cos(2*java.lang.Math.sqrt(x*x+y*y))*java.lang.Math.exp(-0.3*java.lang.Math.sqrt(x*x+y*y));
}
}

View file

@ -1,21 +0,0 @@
TOP = ../../..
SWIG = $(TOP)/../swig
SWIGOPT = -outcurrentdir
SRCS =
TARGET = gifplot
INTERFACEDIR = ../../Interface/
INTERFACE = gifplot.i
LIBS = -L../.. -lgifplot
INCLUDES = -I../../Include
all::
$(MAKE) -f $(TOP)/Makefile SRCS='$(SRCS)' SWIG='$(SWIG)' \
INCLUDES='$(INCLUDES)' LIBS='$(LIBS)' SWIGOPT='$(SWIGOPT)' \
TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' INTERFACEDIR='$(INTERFACEDIR)' java
javac *.java
clean::
$(MAKE) -f $(TOP)/Makefile java_clean
rm -f *.gif
check: all

View file

@ -1,5 +0,0 @@
This example uses the file in ../../Interface/gifplot.i to build
an interface with shadow classes. After doing a make, run the program runme, ie: 'java runme'.
Note the differences in the runme.java files between this example and the
'full' example. This example uses the shadow classes.

Binary file not shown.

View file

@ -1,76 +0,0 @@
// Plot a 3D function
import java.lang.Math;
public class runme {
static {
try {
System.loadLibrary("gifplot");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
System.exit(1);
}
}
public static void main(String argv[]) {
// Here are some plotting parameters
double xmin = -5.0;
double xmax = 5.0;
double ymin = -5.0;
double ymax = 5.0;
double zmin = -5.0;
double zmax = 5.0;
// Grid resolution
int nxpoints = 60;
int nypoints = 60;
ColorMap cmap = new ColorMap("cmap");
FrameBuffer frame = new FrameBuffer(500,500);
frame.clear((short)gifplot.BLACK);
Plot3D p3 = new Plot3D(frame,xmin,ymin,zmin,xmax,ymax,zmax);
p3.lookat(2*(zmax-zmin));
p3.autoperspective(40);
p3.rotu(60);
p3.rotr(30);
p3.rotd(10);
System.out.println( "Making a nice 3D plot..." );
p3.clear((short)gifplot.BLACK);
p3.start();
double dx = 1.0*(xmax-xmin)/nxpoints;
double dy = 1.0*(ymax-ymin)/nypoints;
double cscale = 240.0/(zmax-zmin);
double x = xmin;
for (int i = 0; i < nxpoints; i++) {
double y = ymin;
for (int j = 0; j < nypoints; j++) {
double z1 = func(x,y);
double z2 = func(x+dx,y);
double z3 = func(x+dx,y+dy);
double z4 = func(x,y+dy);
double c1 = cscale*(z1-zmin);
double c2 = cscale*(z2-zmin);
double c3 = cscale*(z3-zmin);
double c4 = cscale*(z4-zmin);
double c = (c1+c2+c3+c4)/4;
if (c < 0) c = 0;
if (c > 239) c = 239;
p3.solidquad(x,y,z1,x+dx,y,z2,x+dx,y+dy,z3,x,y+dy,z4,(short)(c+16));
y = y + dy;
}
x = x + dx;
}
frame.writeGIF(cmap,"image.gif");
System.out.println( "Wrote image.gif" );
}
// Here is the function to plot
public static double func(double x, double y) {
return 5*java.lang.Math.cos(2*java.lang.Math.sqrt(x*x+y*y))*java.lang.Math.exp(-0.3*java.lang.Math.sqrt(x*x+y*y));
}
}

View file

@ -1,21 +0,0 @@
TOP = ../../..
SWIG = $(TOP)/../swig
SWIGOPT = -noproxy
SRCS =
TARGET = simple
INTERFACE = simple.i
LIBS = -L../.. -lgifplot
INCLUDES = -I../../Include
all::
$(MAKE) -f $(TOP)/Makefile SRCS='$(SRCS)' SWIG='$(SWIG)' \
INCLUDES='$(INCLUDES)' LIBS='$(LIBS)' SWIGOPT='$(SWIGOPT)' \
TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' java
javac *.java
clean::
$(MAKE) -f $(TOP)/Makefile java_clean
rm -f *.gif
check: all

View file

@ -1,5 +0,0 @@
This is a very minimalistic example in which just a few functions
and constants from library are wrapped and used to draw some simple
shapes. After doing a make, run the java program, ie 'java runme'.

View file

@ -1,41 +0,0 @@
public class runme {
static {
try {
System.loadLibrary("simple");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
System.exit(1);
}
}
public static void main(String argv[]) {
// Draw some simple shapes
System.out.println( "Drawing some basic shapes" );
SWIGTYPE_p_ColorMap cmap = simple.new_ColorMap(null);
SWIGTYPE_p_FrameBuffer f = simple.new_FrameBuffer(400,400);
// Clear the picture
simple.FrameBuffer_clear(f,(short)simple.BLACK);
// Make a red box
simple.FrameBuffer_box(f,40,40,200,200,(short)simple.RED);
// Make a blue circle
simple.FrameBuffer_circle(f,200,200,40,(short)simple.BLUE);
// Make green line
simple.FrameBuffer_line(f,10,390,390,200, (short)simple.GREEN);
// Write an image out to disk
simple.FrameBuffer_writeGIF(f,cmap,"image.gif");
System.out.println( "Wrote image.gif" );
simple.delete_FrameBuffer(f);
simple.delete_ColorMap(cmap);
}
}

View file

@ -1,38 +0,0 @@
/* This example shows a very simple interface wrapping a few
primitive declarations */
%module simple
%{
#include "gifplot.h"
%}
typedef unsigned char Pixel;
/* Here are a few useful functions */
ColorMap *new_ColorMap(char *filename = 0);
void delete_ColorMap(ColorMap *cmap);
FrameBuffer *new_FrameBuffer(unsigned int width, unsigned int height);
void delete_FrameBuffer(FrameBuffer *frame);
void FrameBuffer_clear(FrameBuffer *frame, Pixel color);
void FrameBuffer_line(FrameBuffer *frame, int x1, int y1, int x2, int y2, Pixel color);
void FrameBuffer_box(FrameBuffer *frame, int x1, int y1, int x2, int y2, Pixel color);
void FrameBuffer_circle(FrameBuffer *frame, int x1, int y1, int radius, Pixel color);
int FrameBuffer_writeGIF(FrameBuffer *f, ColorMap *c, char *filename);
/* And some useful constants */
#define BLACK 0
#define WHITE 1
#define RED 2
#define GREEN 3
#define BLUE 4
#define YELLOW 5
#define CYAN 6
#define MAGENTA 7