You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(79) |
Aug
(69) |
Sep
(120) |
Oct
(17) |
Nov
(7) |
Dec
|
---|
From: Tim R. <ti...@us...> - 2004-07-30 10:31:18
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11103 Modified Files: gtkFrame.cs Log Message: must be a problem with GL, because adding a button works fine Index: gtkFrame.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gtkFrame.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gtkFrame.cs 30 Jul 2004 10:28:30 -0000 1.2 --- gtkFrame.cs 30 Jul 2004 10:31:05 -0000 1.3 *************** *** 31,34 **** --- 31,39 ---- window.Resize( 640, 480 ); + fixedLayout = new Fixed(); + fixedLayout.SizeAllocated += new SizeAllocatedHandler( OnResize ); + fixedLayout.Show(); + window.Add( fixedLayout ); + window.ShowAll(); Debug.WriteLine( "Init GtkGLArea" ); *************** *** 39,52 **** glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); - - fixedLayout = new Fixed(); - fixedLayout.Put( glarea, 50, 50 ); - //fixedLayout.SizeAllocated += new SizeAllocatedHandler( OnResize ); - glarea.HeightRequest = 200; - glarea.WidthRequest = 200; ! fixedLayout.Show(); ! window.Add( fixedLayout ); ! window.ShowAll(); Debug.WriteLine( "MainLoop" ); --- 44,52 ---- glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); ! //fixedLayout.Put( glarea, 100, 50 ); ! fixedLayout.Put( new Button ("HALLO"), 100, 100 ); ! ! fixedLayout.ShowAll(); Debug.WriteLine( "MainLoop" ); |
From: Tim R. <ti...@us...> - 2004-07-30 10:28:43
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10760 Modified Files: gtkFrame.cs Log Message: programm is killed by kernel! don't know why Index: gtkFrame.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gtkFrame.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gtkFrame.cs 30 Jul 2004 06:46:15 -0000 1.1 --- gtkFrame.cs 30 Jul 2004 10:28:30 -0000 1.2 *************** *** 11,18 **** protected bool propStop = false; protected bool propMapped = false; ! protected float rotX = 0.0f; ! protected float rotY = 0.0f; ! protected float rotZ = 0.0f; protected Fixed fixedLayout; public GtkFrame() { --- 11,20 ---- protected bool propStop = false; protected bool propMapped = false; ! protected float propRotX = 0.0f; ! protected float propRotY = 0.0f; ! protected float propRotZ = 0.0f; protected Fixed fixedLayout; + protected Gtk.Window window; + protected VScale scaleRotX; public GtkFrame() { *************** *** 24,32 **** Debug.WriteLine( "Init Window" ); ! Gtk.Window window = new Gtk.Window( "Gtk Frame" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); window.Resize( 640, 480 ); Debug.WriteLine( "Init GtkGLArea" ); glarea = new GtkGLArea(); --- 26,35 ---- Debug.WriteLine( "Init Window" ); ! window = new Gtk.Window( "Gtk Frame" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); window.Resize( 640, 480 ); + Debug.WriteLine( "Init GtkGLArea" ); glarea = new GtkGLArea(); *************** *** 36,50 **** glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); ! fixedLayout = new Fixed(); fixedLayout.Put( glarea, 50, 50 ); glarea.HeightRequest = 200; glarea.WidthRequest = 200; ! fixedLayout.Show(); window.Add( fixedLayout ); ! ! glarea.Show (); ! window.ShowAll (); Debug.WriteLine( "MainLoop" ); --- 39,52 ---- glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); ! fixedLayout = new Fixed(); fixedLayout.Put( glarea, 50, 50 ); + //fixedLayout.SizeAllocated += new SizeAllocatedHandler( OnResize ); glarea.HeightRequest = 200; glarea.WidthRequest = 200; ! fixedLayout.Show(); window.Add( fixedLayout ); ! window.ShowAll(); Debug.WriteLine( "MainLoop" ); *************** *** 55,58 **** --- 57,71 ---- } + protected void OnResize( object obj, SizeAllocatedArgs args ) { + resize( glarea, args.Allocation.Height - 150, args.Allocation.Width - 150 ); + } + + protected void resize( Widget wdg, int h, int w ) { + if (wdg!=null) { + if ( (h>0) && (wdg.HeightRequest!=h) ) wdg.HeightRequest = h; + if ( (w>0) && (wdg.WidthRequest!=w) ) wdg.WidthRequest = w; + } + } + protected void OnDeleteEvent (object obj, DeleteEventArgs args) { Application.Quit (); *************** *** 143,147 **** --- 156,187 ---- } } + + protected float rotX { + get { return rotX; } + set { propRotX = value; + while (propRotX<0) propRotX += 360.0f; + while (propRotX>=360.0f) propRotX -= 360.0f; + if (glarea!=null) glarea.QueueDraw(); + } + } + + protected float rotY { + get { return rotY; } + set { propRotY = value; + while (propRotY<0) propRotY += 360.0f; + while (propRotY>=360.0f) propRotY -= 360.0f; + if (glarea!=null) glarea.QueueDraw(); + } + } + protected float rotZ { + get { return rotZ; } + set { propRotZ = value; + while (propRotZ<0) propRotZ += 360.0f; + while (propRotZ>=360.0f) propRotZ -= 360.0f; + if (glarea!=null) glarea.QueueDraw(); + } + } + public static void Main( string[] args) { Debug.Listeners.Add( new TextWriterTraceListener( Console.Out ) ); |
From: Tim R. <ti...@us...> - 2004-07-30 06:46:23
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11141 Modified Files: Makefile.gtk Added Files: gtkFrame.cs Log Message: Base application for OpenGL+Gtk#-Examples Index: Makefile.gtk =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/Makefile.gtk,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Makefile.gtk 28 Jul 2004 16:30:50 -0000 1.1 --- Makefile.gtk 30 Jul 2004 06:46:14 -0000 1.2 *************** *** 9,13 **** LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) gtkTriangle.exe gtkGears.exe gtkTexture.exe csdGL_Gtk.dll: libcsdGL.so --- 9,13 ---- LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) gtkTriangle.exe gtkGears.exe gtkTexture.exe gtkFrame.exe csdGL_Gtk.dll: libcsdGL.so --- NEW FILE: gtkFrame.cs --- using csDragons.OpenGL; using GLib; using Gtk; using GtkSharp; using System; using System.Diagnostics; public class GtkFrame : csdGL { protected GtkGLArea glarea; protected bool propStop = false; protected bool propMapped = false; protected float rotX = 0.0f; protected float rotY = 0.0f; protected float rotZ = 0.0f; protected Fixed fixedLayout; public GtkFrame() { Debug.Indent(); Debug.WriteLine( "Enering GtkFrame()" ); Debug.WriteLine( "Init Application" ); Application.Init(); Debug.WriteLine( "Init Window" ); Gtk.Window window = new Gtk.Window( "Gtk Frame" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); window.Resize( 640, 480 ); Debug.WriteLine( "Init GtkGLArea" ); glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); glarea.ConfigureEvent += new ConfigureEventHandler (OnConfigure); glarea.ExposeEvent += new ExposeEventHandler (OnExpose); glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); fixedLayout = new Fixed(); fixedLayout.Put( glarea, 50, 50 ); glarea.HeightRequest = 200; glarea.WidthRequest = 200; fixedLayout.Show(); window.Add( fixedLayout ); glarea.Show (); window.ShowAll (); Debug.WriteLine( "MainLoop" ); Application.Run (); Debug.WriteLine( "Exiting GtkFrame()" ); Debug.Unindent(); } protected void OnDeleteEvent (object obj, DeleteEventArgs args) { Application.Quit (); } protected void OnMap (object obj, MapEventArgs args) { glMapped = false; } protected void OnUnmap (object obj, UnmapEventArgs args) { glMapped = true; } protected virtual bool Animate () { rotX += 1.0f; rotY += 0.5f; rotZ += 0.1f; glarea.QueueDraw (); return !stop; } protected virtual void OnExpose (object obj, ExposeEventArgs args) { if (glarea.MakeCurrent()) { glClearColor( 0, 0, 0, 0 ); glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glPushMatrix(); glRotatef( rotX, 1.0f, 0.0f, 0.0f ); glRotatef( rotY, 0.0f, 1.0f, 0.0f ); glRotatef( rotZ, 0.0f, 0.0f, 1.0f ); glTranslatef( -0.5f, -0.5f, 0.0f ); draw(); glPopMatrix(); glarea.SwapBuffers(); } } protected virtual void draw() { glBegin( GL_TRIANGLES ); glColor3f( 1.0f, 0.0f, 0.0f ); glVertex2f( 0.0f, 0.0f); glColor3f( 0.0f, 1.0f, 0.0f ); glVertex2f( 0.5f, 1.0f); glColor3f( 0.0f, 0.0f, 1.0f ); glVertex2f( 1.0f, 0.0f); glEnd(); } protected virtual void OnConfigure (object obj, ConfigureEventArgs args) { if (glarea.MakeCurrent()) { glViewport(0, 0, glarea.Allocation.Width, glarea.Allocation.Height); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); float h = (float) glarea.Allocation.Height / (float) (glarea.Allocation.Width); glFrustum( -1.0f, 1.0f, -h, h, 5.0f, 5.0f ); glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); //glTranslatef( 0.0f, 0.0f, -40.0f); glEnd(); } } protected void OnRealized (object obj, EventArgs args) { glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.5f ); glClearDepth( 1.0f ); glEnable( GL_DEPTH_TEST ); glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); } protected bool stop { get { return propStop; } set { propStop = value; } } protected bool glMapped { get { return propMapped; } set { propMapped = value; if (!value) stop = true; } } public static void Main( string[] args) { Debug.Listeners.Add( new TextWriterTraceListener( Console.Out ) ); Debug.AutoFlush = true; GtkFrame gl = new GtkFrame(); } } |
From: Tim R. <ti...@us...> - 2004-07-28 16:31:06
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10022/samples Modified Files: Makefile Added Files: Makefile.gtk gtkTexture.cs gtkTriangle.cs Log Message: new examples --- NEW FILE: gtkTriangle.cs --- using csDragons.OpenGL; using GLib; using Gtk; using GtkSharp; using System; using System.Diagnostics; public class GtkTest : csdGL { GtkGLArea glarea; bool stop; float angle = 0.0f; public GtkTest() { Debug.Indent(); Debug.WriteLine( "Enering GtkTest()" ); Debug.WriteLine( "Init Application" ); Application.Init(); Debug.WriteLine( "Init Window" ); Gtk.Window window = new Gtk.Window( "Gtk Triangle" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); Debug.WriteLine( "Init GtkGLArea" ); glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); glarea.ConfigureEvent += new ConfigureEventHandler (OnConfigure); glarea.ExposeEvent += new ExposeEventHandler (OnExpose); glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); Table table = new Table( 10, 20, true ); table.Attach( glarea, 1, 19, 1, 9 ); window.Add( table ); glarea.Show (); window.ShowAll (); Debug.WriteLine( "MainLoop" ); Application.Run (); Debug.WriteLine( "Exiting GtkTest()" ); Debug.Unindent(); } protected void OnDeleteEvent (object obj, DeleteEventArgs args) { Application.Quit (); } protected void OnMap (object obj, MapEventArgs args) { GLib.Idle.Add (new IdleHandler (Animate)); stop = false; } protected void OnUnmap (object obj, UnmapEventArgs args) { stop = true; } protected bool Animate () { angle += 0.2f; glarea.QueueDraw (); return !stop; } protected void OnExpose (object obj, ExposeEventArgs args) { if (glarea.MakeCurrent()) { glClearColor( 0, 0, 0, 0 ); glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glPushMatrix(); glRotatef( angle, 0.0f, 0.0f, 1.0f ); glTranslatef( -0.5f, -0.5f, 0.0f ); triangle(); glPopMatrix(); glarea.SwapBuffers(); } } protected void triangle() { glBegin( GL_TRIANGLES ); glColor3f( 1.0f, 0.0f, 0.0f ); glVertex2f( 0.0f, 0.0f); glColor3f( 0.0f, 1.0f, 0.0f ); glVertex2f( 0.5f, 1.0f); glColor3f( 0.0f, 0.0f, 1.0f ); glVertex2f( 1.0f, 0.0f); glEnd(); } protected void OnConfigure (object obj, ConfigureEventArgs args) { if (glarea.MakeCurrent()) { glViewport(0, 0, glarea.Allocation.Width, glarea.Allocation.Height); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); float h = (float) glarea.Allocation.Height / (float) (glarea.Allocation.Width); glFrustum( -1.0f, 1.0f, -h, h, 5.0f, 5.0f ); glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); //glTranslatef( 0.0f, 0.0f, -40.0f); glEnd(); } } protected void OnRealized (object obj, EventArgs args) { glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.5f ); glClearDepth( 1.0f ); glEnable( GL_DEPTH_TEST ); glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); } public static void Main( string[] args) { Debug.Listeners.Add( new TextWriterTraceListener( Console.Out ) ); Debug.AutoFlush = true; GtkTest gl = new GtkTest(); } } Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/Makefile,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Makefile 18 Jul 2004 20:41:52 -0000 1.4 --- Makefile 28 Jul 2004 16:30:50 -0000 1.5 *************** *** 1,3 **** - FILES=generator.cs AssemblyInfo.cs define.cs typedef.cs function.cs CC=mcs DEBUG=/d:DEBUG --- 1,2 ---- *************** *** 10,21 **** LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) triangle.exe texture.exe gtkWidget.exe gears.exe gtkGears.exe csdGL.dll: libcsdGL.so ln -sf ../generator/csdGL.dll . - csdGL_Gtk.dll: libcsdGL.so - ln -sf ../generator/csdGL_Gtk.dll . - csdMath.dll: ln -sf ../math/csdMath.dll --- 9,18 ---- LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) triangle.exe texture.exe gears.exe ! $(MAKE) -f Makefile.gtk csdGL.dll: libcsdGL.so ln -sf ../generator/csdGL.dll . csdMath.dll: ln -sf ../math/csdMath.dll *************** *** 27,36 **** ln -sf ../cbonding/libcsdGL.so . - gtkWidget.exe:gtkWidget.cs csdGL_Gtk.dll - $(MCS) -r:glib-sharp.dll -r:gtk-sharp.dll -r:csdGL_Gtk.dll -r:System.Drawing gtkWidget.cs -o $@ - - gtkGears.exe:gtkGears.cs csdGL_Gtk.dll - $(MCS) -r:glib-sharp.dll -r:gtk-sharp.dll -r:csdGL_Gtk.dll -r:System.Drawing gtkGears.cs -o $@ - %.exe:%.cs $(MCS) -r:csdGL.dll -r:csdGLtools.dll -r:csdMath.dll -r:System.Drawing $^ -o $@ --- 24,27 ---- *************** *** 38,41 **** --- 29,33 ---- clean: + $(MAKE) -f Makefile.gtk clean rm -f *.exe rm -f *.dll --- NEW FILE: gtkTexture.cs --- using csDragons.OpenGL; using GLib; using Gtk; using GtkSharp; using System; using System.Diagnostics; public class GtkTest : csdGL { protected GtkGLArea glarea; protected ByteTexture2D tex1; protected uint tex1Id = 0; protected bool stop = false; public GtkTest() { Debug.Indent(); Debug.WriteLine( "Enering GtkTest()" ); Debug.WriteLine( "Init Application" ); Application.Init(); Debug.WriteLine( "Init Window" ); Gtk.Window window = new Gtk.Window( "Gtk Triangle" ); window.Resize( 480, 480 ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); Debug.WriteLine( "Init GtkGLArea" ); glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); glarea.ConfigureEvent += new ConfigureEventHandler (OnConfigure); glarea.ExposeEvent += new ExposeEventHandler (OnExpose); glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); Table table = new Table( 10, 20, true ); table.Attach( glarea, 1, 19, 1, 9 ); window.Add( table ); glarea.Show (); window.ShowAll (); Debug.WriteLine( "MainLoop" ); Application.Run (); Debug.WriteLine( "Exiting GtkTest()" ); Debug.Unindent(); } protected void OnDeleteEvent (object obj, DeleteEventArgs args) { Application.Quit (); } protected void OnMap (object obj, MapEventArgs args) { GLib.Idle.Add (new IdleHandler (Animate)); stop = false; } protected void OnUnmap (object obj, UnmapEventArgs args) { stop = true; } protected bool Animate () { glarea.QueueDraw (); return !stop; } protected void quad() { glEnable(GL_TEXTURE_2D); glBindTexture( GL_TEXTURE_2D, tex1Id ); glBegin(GL_QUADS); glTexCoord2f(0.0f, 0.0f); glVertex3f( 0.0f, 0.0f, 0.0f); glTexCoord2f(0.0f, 1.0f); glVertex3f( 0.0f, 1.0f, 0.0f); glTexCoord2f(1.0f, 1.0f); glVertex3f( 1.0f, 1.0f, 0.0f); glTexCoord2f(1.0f, 0.0f); glVertex3f( 1.0f, 0.0f, 0.0f); glEnd(); glDisable(GL_TEXTURE_2D); glBegin(GL_LINES); glColor3f( 1.0f, 0.0f, 0.0f ); glVertex3f( 0.0f, 0.0f, 0.0f ); glColor3f( 1.0f, 0.0f, 0.0f ); glVertex3f( 2.5f, 0.0f, 0.0f ); glEnd(); glBegin(GL_LINES); glColor3f( 1.0f, 0.0f, 0.0f ); glVertex3f( 0.0f, 0.0f, 0.0f ); glColor3f( 1.0f, 0.0f, 0.0f ); glVertex3f( 2.5f, 0.0f, 0.0f ); glEnd(); glBegin(GL_LINES); glColor3f( 0.0f, 1.0f, 0.0f ); glVertex3f( 0.0f, 0.0f, 0.0f ); glColor3f( 0.0f, 1.0f, 0.0f ); glVertex3f( 0.0f, 2.5f, 0.0f ); glEnd(); glBegin(GL_LINES); glColor3f( 0.0f, 0.0f, 1.0f ); glVertex3f( 0.0f, 0.0f, 0.0f ); glColor3f( 0.0f, 0.0f, 1.0f ); glVertex3f( 0.0f, 0.0f, 2.5f ); glEnd(); } protected void OnExpose (object obj, ExposeEventArgs args) { if (glarea.MakeCurrent()) { glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glPushMatrix(); quad(); glPopMatrix(); glarea.SwapBuffers(); } } protected void OnConfigure (object obj, ConfigureEventArgs args) { if (glarea.MakeCurrent()) { float h = (float) glarea.Allocation.Height / (float) (glarea.Allocation.Width); glViewport(0, 0, glarea.Allocation.Width, glarea.Allocation.Height); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); gluPerspective( (double)45.0f, (double)h, (double)0.1f, (double)1000.0f ); glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); gluLookAt( 0.5, 0.5, 5.0, // Eye 0.0, 0.0, 0.0, // Center 0.0, 1.0, 0.0 ); // Up } } protected void OnRealized (object obj, EventArgs args) { if (glarea.MakeCurrent()) { glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); glClearDepth( 1.0f ); glEnable( GL_DEPTH_TEST ); glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); tex1 = new ByteTexture2D( "image1.png" ); uint[] i = new uint[1]; glGenTextures( 1, i ); tex1Id = i[0]; glBindTexture( GL_TEXTURE_2D, tex1Id ); glPixelStorei(GL_UNPACK_ALIGNMENT, 1); glTexImage2D(GL_TEXTURE_2D, 0, tex1.Bits, tex1.Width, tex1.Height, 0, GL_RGB, GL_UNSIGNED_BYTE, tex1.Texture); glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glEnable(GL_TEXTURE_2D); glShadeModel(GL_FLAT); } } public static void Main( string[] args) { Debug.Listeners.Add( new TextWriterTraceListener( Console.Out ) ); Debug.AutoFlush = true; GtkTest gl = new GtkTest(); } } --- NEW FILE: Makefile.gtk --- CC=mcs DEBUG=/d:DEBUG DEBUG= OPTS=$(DEBUG) LIBS=csdGL_Gtk.dll csdMath.dll csdGLtools.dll MCS=$(CC) $(OPTS) -lib:/usr/lib/mono/gtk-sharp PACKAGE=csDragons LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) all: $(LIBS) gtkTriangle.exe gtkGears.exe gtkTexture.exe csdGL_Gtk.dll: libcsdGL.so ln -sf ../generator/csdGL_Gtk.dll . csdMath.dll: ln -sf ../math/csdMath.dll csdGLtools.dll: ln -sf ../tools/csdGLtools.dll libcsdGL.so: ln -sf ../cbonding/libcsdGL.so . %.exe:%.cs $(MCS) -r:glib-sharp.dll -r gtk-sharp.dll -r:csdGL_Gtk.dll -r:csdGLtools.dll -r:csdMath.dll -r:System.Drawing $^ -o $@ clean: rm -f *.exe rm -f *.dll rm -f *.so .IGNORE: clean .EXPORT_ALL_VARIABLES: .PHONY: clean |
From: Tim R. <ti...@us...> - 2004-07-28 05:30:15
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7400/samples Modified Files: gtkGears.cs Log Message: default window sized changed to 600x480 Index: gtkGears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gtkGears.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gtkGears.cs 27 Jul 2004 12:21:52 -0000 1.2 --- gtkGears.cs 28 Jul 2004 05:30:06 -0000 1.3 *************** *** 23,29 **** Gtk.Window window = new Gtk.Window( "Gtk Gears" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); ! glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); --- 23,31 ---- Gtk.Window window = new Gtk.Window( "Gtk Gears" ); + window.Resize( 640, 480 ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); ! ! glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); *************** *** 36,40 **** table.Attach( glarea, 1, 19, 1, 9 ); window.Add( table ); ! glarea.Show (); window.ShowAll (); --- 38,43 ---- table.Attach( glarea, 1, 19, 1, 9 ); window.Add( table ); ! ! glarea.Show (); window.ShowAll (); |
From: Kai R. <kre...@us...> - 2004-07-27 13:38:57
|
Update of /cvsroot/csdopenglnet/csdOpenGL/doxygen In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28410/doxygen Modified Files: Makefile Log Message: GtkGL running on NVidia at ATI Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/doxygen/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile 20 Jul 2004 09:07:22 -0000 1.2 --- Makefile 27 Jul 2004 13:38:46 -0000 1.3 *************** *** 1,3 **** ! all: base freeglut base: xml/gl_8h.xml --- 1,3 ---- ! all: base base: xml/gl_8h.xml |
From: Kai R. <kre...@us...> - 2004-07-27 13:38:57
|
Update of /cvsroot/csdopenglnet/csdOpenGL/generator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28410/generator Modified Files: gtkArea.cs gtkContext.cs Log Message: GtkGL running on NVidia at ATI Index: gtkContext.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/gtkContext.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gtkContext.cs 27 Jul 2004 12:56:49 -0000 1.4 --- gtkContext.cs 27 Jul 2004 13:38:46 -0000 1.5 *************** *** 7,10 **** --- 7,13 ---- using System.Runtime.InteropServices; + public class NoGLContextException : Exception {} + public class NoXDisplayException : Exception {} + public class GdkGLContext : csdGLXTokens { *************** *** 51,59 **** protected static uint[] stdInitializer = { GLX_RGBA, GLX_DEPTH_SIZE, 16, GLX_DOUBLEBUFFER, 0 }; ! public GdkGLContext() : this ( stdInitializer ) { Debug.Indent(); Debug.WriteLine( "Entering GdkGLContext()" ); ! Debug.WriteLine( "Exiting GdkGLContext()" ); Debug.Unindent(); --- 54,62 ---- protected static uint[] stdInitializer = { GLX_RGBA, GLX_DEPTH_SIZE, 16, GLX_DOUBLEBUFFER, 0 }; ! public GdkGLContext() : this ( stdInitializer ) { Debug.Indent(); Debug.WriteLine( "Entering GdkGLContext()" ); ! Debug.WriteLine( "Exiting GdkGLContext()" ); Debug.Unindent(); *************** *** 68,71 **** --- 71,76 ---- Debug.WriteLine( xdisplay.ToString() ); xdisplay = gdk_x11_get_default_xdisplay(); + if (xdisplay==IntPtr.Zero) throw new NoXDisplayException(); + Debug.Write( "postX11get: " ); Debug.WriteLine( xdisplay.ToString() ); *************** *** 73,76 **** --- 78,82 ---- IntPtr visualInfo = glXChooseVisual( xdisplay, gdk_x11_get_default_screen(), attributeList ); + if (xdisplay==IntPtr.Zero) throw new NoGLContextException(); try { *************** *** 97,104 **** Debug.WriteLine( "Entering ~GdkGLContext(uint[])" ); - Debug.WriteLine( "glXDestroyContext" ); if (glxcontext==glXGetCurrentContext()) { glXMakeCurrent( xdisplay, 0, IntPtr.Zero ); } glXDestroyContext( xdisplay, glxcontext ); --- 103,112 ---- Debug.WriteLine( "Entering ~GdkGLContext(uint[])" ); if (glxcontext==glXGetCurrentContext()) { + Debug.WriteLine( "glXMakeCurrent" ); glXMakeCurrent( xdisplay, 0, IntPtr.Zero ); } + + Debug.WriteLine( "glXDestroyContext" ); glXDestroyContext( xdisplay, glxcontext ); *************** *** 133,142 **** Debug.WriteLine( "Entering GdkGLContext.SwapBuffers(Window)" ); ! if (window==null) Debug.WriteLine( "window not initialized" ); ! ! Debug.WriteLine( "gdk_x11_drawable_get_xid" ); ! int id = gdk_x11_drawable_get_xid( window.Handle ); ! Debug.WriteLine( "glXSwapBuffers" ); ! glXSwapBuffers( xdisplay, id ); Debug.WriteLine( "Exiting GdkGLContext.SwapBuffers(Window)" ); --- 141,152 ---- Debug.WriteLine( "Entering GdkGLContext.SwapBuffers(Window)" ); ! if (window==null) { ! Debug.WriteLine( "window not initialized" ); ! } else { ! Debug.WriteLine( "gdk_x11_drawable_get_xid" ); ! int id = gdk_x11_drawable_get_xid( window.Handle ); ! Debug.WriteLine( "glXSwapBuffers" ); ! glXSwapBuffers( xdisplay, id ); ! } Debug.WriteLine( "Exiting GdkGLContext.SwapBuffers(Window)" ); Index: gtkArea.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/gtkArea.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gtkArea.cs 27 Jul 2004 12:21:51 -0000 1.2 --- gtkArea.cs 27 Jul 2004 13:38:46 -0000 1.3 *************** *** 41,45 **** Debug.WriteLine( "Entering GtkGLArea.MakeCurrent()" ); ! bool result = context.MakeCurrent( GdkWindow ); Debug.WriteLine( "Entering GtkGLArea.MakeCurrent()*" ); --- 41,45 ---- Debug.WriteLine( "Entering GtkGLArea.MakeCurrent()" ); ! bool result = context.MakeCurrent( GdkWindow ); Debug.WriteLine( "Entering GtkGLArea.MakeCurrent()*" ); |
From: Kai R. <kre...@us...> - 2004-07-27 12:56:57
|
Update of /cvsroot/csdopenglnet/csdOpenGL/generator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20273/generator Modified Files: gtkContext.cs Log Message: another try Index: gtkContext.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/gtkContext.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gtkContext.cs 27 Jul 2004 12:21:51 -0000 1.3 --- gtkContext.cs 27 Jul 2004 12:56:49 -0000 1.4 *************** *** 29,32 **** --- 29,35 ---- [ DllImport( "GL" ) ] + public static extern IntPtr glXGetCurrentContext(); + + [ DllImport( "GL" ) ] public static extern void glXDestroyContext( IntPtr display, IntPtr context ); *************** *** 95,98 **** --- 98,104 ---- Debug.WriteLine( "glXDestroyContext" ); + if (glxcontext==glXGetCurrentContext()) { + glXMakeCurrent( xdisplay, 0, IntPtr.Zero ); + } glXDestroyContext( xdisplay, glxcontext ); |
From: Kai R. <kre...@us...> - 2004-07-27 12:22:08
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14527/samples Modified Files: gtkGears.cs Log Message: no idea Index: gtkGears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gtkGears.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gtkGears.cs 18 Jul 2004 20:41:53 -0000 1.1 --- gtkGears.cs 27 Jul 2004 12:21:52 -0000 1.2 *************** *** 4,7 **** --- 4,8 ---- using GtkSharp; using System; + using System.Diagnostics; public class GtkGears : csdGL { *************** *** 265,269 **** public static void Main( string[] args) { ! GtkGears gl = new GtkGears(); } --- 266,272 ---- public static void Main( string[] args) { ! Debug.Listeners.Add( new TextWriterTraceListener( Console.Out ) ); ! Debug.AutoFlush = true; ! GtkGears gl = new GtkGears(); } |
From: Kai R. <kre...@us...> - 2004-07-27 12:22:08
|
Update of /cvsroot/csdopenglnet/csdOpenGL/generator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14527/generator Modified Files: gtkArea.cs gtkContext.cs Log Message: no idea Index: gtkContext.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/gtkContext.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gtkContext.cs 27 Jul 2004 11:24:53 -0000 1.2 --- gtkContext.cs 27 Jul 2004 12:21:51 -0000 1.3 *************** *** 100,117 **** Debug.Unindent(); } ! public bool MakeCurrent( Window window ) { Debug.Indent(); Debug.WriteLine( "Entering GdkGLContext.MakeCurrent(Window)" ); ! if (window==null) Debug.WriteLine( "window not initialized" ); ! ! Debug.WriteLine( "gdk_x11_drawable_get_xid" ); ! int id = gdk_x11_drawable_get_xid( window.Handle ); ! Debug.WriteLine( "glXMakeCurrent" ); ! bool result = glXMakeCurrent( xdisplay, id, glxcontext ); ! Debug.WriteLine( "Exiting GdkGLContext.MakeCurrent(Window)*" ); ! Debug.Indent(); return result; --- 100,122 ---- Debug.Unindent(); } ! ! public bool MakeCurrent( Window window ) { Debug.Indent(); Debug.WriteLine( "Entering GdkGLContext.MakeCurrent(Window)" ); + bool result = false; ! if (window==null) { ! Debug.WriteLine( "window not initialized" ); ! result = false; ! } else { ! Debug.WriteLine( "gdk_x11_drawable_get_xid" ); ! int id = gdk_x11_drawable_get_xid( window.Handle ); ! Debug.WriteLine( "glXMakeCurrent" ); ! result = glXMakeCurrent( xdisplay, id, glxcontext ); ! Debug.WriteLine( "Exiting GdkGLContext.MakeCurrent(Window)*" ); ! Debug.Indent(); ! } return result; Index: gtkArea.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/gtkArea.cs,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** gtkArea.cs 12 Jul 2004 17:17:51 -0000 1.1.1.1 --- gtkArea.cs 27 Jul 2004 12:21:51 -0000 1.2 *************** *** 35,40 **** Debug.WriteLine( "Entering GtkGLArea(uint[])" ); Debug.Unindent(); ! } ! public bool MakeCurrent() { Debug.Indent(); --- 35,40 ---- Debug.WriteLine( "Entering GtkGLArea(uint[])" ); Debug.Unindent(); ! } ! public bool MakeCurrent() { Debug.Indent(); |
From: Kai R. <kre...@us...> - 2004-07-27 11:25:04
|
Update of /cvsroot/csdopenglnet/csdOpenGL/generator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4564/generator Modified Files: Makefile gtkContext.cs Log Message: GTK seems to run Index: gtkContext.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/gtkContext.cs,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** gtkContext.cs 12 Jul 2004 17:17:56 -0000 1.1.1.1 --- gtkContext.cs 27 Jul 2004 11:24:53 -0000 1.2 *************** *** 40,44 **** static extern void glXSwapBuffers ( IntPtr display, int drawableID ); ! protected static uint[] stdInitializer = { GLX_RGBA, GLX_RED_SIZE, 8, GLX_GREEN_SIZE, 8, --- 40,44 ---- static extern void glXSwapBuffers ( IntPtr display, int drawableID ); ! protected static uint[] stdInitializerOrig = { GLX_RGBA, GLX_RED_SIZE, 8, GLX_GREEN_SIZE, 8, *************** *** 47,50 **** --- 47,51 ---- 0 }; + protected static uint[] stdInitializer = { GLX_RGBA, GLX_DEPTH_SIZE, 16, GLX_DOUBLEBUFFER, 0 }; public GdkGLContext() : this ( stdInitializer ) { Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/Makefile,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Makefile 20 Jul 2004 09:07:22 -0000 1.6 --- Makefile 27 Jul 2004 11:24:53 -0000 1.7 *************** *** 1,4 **** FILES=generator.cs AssemblyInfo.cs define.cs typedef.cs function.cs ! GLFILES=csdGLBase.cs csdGL.cs csdGLUBase.cs csdGLUTBase.cs csdFreeGLUTBase.cs csdFreeGLUT_extBase.cs csdFreeGLUT_stdBase.cs CC=mcs DEBUG=/d:DEBUG --- 1,6 ---- FILES=generator.cs AssemblyInfo.cs define.cs typedef.cs function.cs ! GLUTFILES=csdGLBase.cs csdGL.cs csdGLUBase.cs csdGLUTBase.cs csdFreeGLUTBase.cs csdFreeGLUT_extBase.cs csdFreeGLUT_stdBase.cs ! GLFILES=csdGLBase.cs csdGL.cs csdGLUBase.cs csdGLUTBase.cs ! CC=mcs DEBUG=/d:DEBUG *************** *** 30,34 **** csdGLUTBase.cs: csdGenerator.exe gl_8h.xml glut_8h.xml ! mono ./csdGenerator.exe glut_8h.xml libcsdGL.so csdGLUTBase csdFreeGLUT_stdBase csdGLUTBase.cs gl_8h.xml csdFreeGLUTBase.cs: csdGenerator.exe gl_8h.xml freeglut_8h.xml --- 32,36 ---- csdGLUTBase.cs: csdGenerator.exe gl_8h.xml glut_8h.xml ! mono ./csdGenerator.exe glut_8h.xml libcsdGL.so csdGLUTBase csdGLUBase csdGLUTBase.cs gl_8h.xml csdFreeGLUTBase.cs: csdGenerator.exe gl_8h.xml freeglut_8h.xml |
From: Tim R. <ti...@us...> - 2004-07-20 09:07:34
|
Update of /cvsroot/csdopenglnet/csdOpenGL In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27578 Modified Files: ChangeLog Log Message: added freeglut support Index: ChangeLog =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/ChangeLog,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ChangeLog 18 Jul 2004 20:49:10 -0000 1.4 --- ChangeLog 20 Jul 2004 09:07:22 -0000 1.5 *************** *** 1,2 **** --- 1,5 ---- + since 0.1.1: + add freeglut support + since 0.1.0: modified and activated Gtk#-Widget *************** *** 4,5 **** --- 7,10 ---- added gears and gtkGears examples + + |
From: Tim R. <ti...@us...> - 2004-07-20 09:07:34
|
Update of /cvsroot/csdopenglnet/csdOpenGL/generator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27578/generator Modified Files: Makefile Log Message: added freeglut support Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/generator/Makefile,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Makefile 17 Jul 2004 17:21:20 -0000 1.5 --- Makefile 20 Jul 2004 09:07:22 -0000 1.6 *************** *** 1,4 **** FILES=generator.cs AssemblyInfo.cs define.cs typedef.cs function.cs ! GLFILES=csdGLBase.cs csdGL.cs csdGLUBase.cs csdGLUTBase.cs CC=mcs DEBUG=/d:DEBUG --- 1,4 ---- FILES=generator.cs AssemblyInfo.cs define.cs typedef.cs function.cs ! GLFILES=csdGLBase.cs csdGL.cs csdGLUBase.cs csdGLUTBase.cs csdFreeGLUTBase.cs csdFreeGLUT_extBase.cs csdFreeGLUT_stdBase.cs CC=mcs DEBUG=/d:DEBUG *************** *** 26,35 **** mono ./csdGenerator.exe gl_8h.xml libcsdGL.so csdGLBase System.Object csdGLBase.cs - csdGLUTBase.cs: csdGenerator.exe gl_8h.xml glut_8h.xml - mono ./csdGenerator.exe glut_8h.xml libcsdGL.so csdGLUTBase csdGLUBase csdGLUTBase.cs gl_8h.xml - csdGLUBase.cs: csdGenerator.exe gl_8h.xml glu_8h.xml mono ./csdGenerator.exe glu_8h.xml libcsdGL.so csdGLUBase csdGLBase csdGLUBase.cs gl_8h.xml ! gl_8h.xml: ln -sf ../doxygen/xml/gl_8h.xml . --- 26,45 ---- mono ./csdGenerator.exe gl_8h.xml libcsdGL.so csdGLBase System.Object csdGLBase.cs csdGLUBase.cs: csdGenerator.exe gl_8h.xml glu_8h.xml mono ./csdGenerator.exe glu_8h.xml libcsdGL.so csdGLUBase csdGLBase csdGLUBase.cs gl_8h.xml ! ! csdGLUTBase.cs: csdGenerator.exe gl_8h.xml glut_8h.xml ! mono ./csdGenerator.exe glut_8h.xml libcsdGL.so csdGLUTBase csdFreeGLUT_stdBase csdGLUTBase.cs gl_8h.xml ! ! csdFreeGLUTBase.cs: csdGenerator.exe gl_8h.xml freeglut_8h.xml ! mono ./csdGenerator.exe freeglut_8h.xml libcsdGL.so csdFreeGLUTBase csdGLUBase csdFreeGLUTBase.cs gl_8h.xml ! ! csdFreeGLUT_extBase.cs: csdGenerator.exe gl_8h.xml freeglut_ext_8h.xml ! mono ./csdGenerator.exe freeglut_ext_8h.xml libcsdGL.so csdFreeGLUT_extBase csdFreeGLUTBase csdFreeGLUT_extBase.cs glu_8h.xml gl_8h.xml ! ! csdFreeGLUT_stdBase.cs: csdGenerator.exe gl_8h.xml freeglut_std_8h.xml ! mono ./csdGenerator.exe freeglut_std_8h.xml libcsdGL.so csdFreeGLUT_stdBase csdFreeGLUT_extBase csdFreeGLUT_stdBase.cs glu_8h.xml gl_8h.xml ! ! gl_8h.xml: ln -sf ../doxygen/xml/gl_8h.xml . *************** *** 41,44 **** --- 51,63 ---- ln -sf ../doxygen/xml/glut_8h.xml . + freeglut_8h.xml: + ln -sf ../doxygen/xml/freeglut_8h.xml . + + freeglut_std_8h.xml: + ln -sf ../doxygen/xml/freeglut_std_8h.xml . + + freeglut_ext_8h.xml: + ln -sf ../doxygen/xml/freeglut_ext_8h.xml . + glxtokens_8h.xml: ln -sf ../doxygen/xml/glxtokens_8h.xml . |
From: Tim R. <ti...@us...> - 2004-07-20 09:07:34
|
Update of /cvsroot/csdopenglnet/csdOpenGL/doxygen In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27578/doxygen Modified Files: Makefile Added Files: freeglut.conf Log Message: added freeglut support --- NEW FILE: freeglut.conf --- # Doxyfile 1.3.5 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project # # All text after a hash (#) is considered a comment and will be ignored # The format is: # TAG = value [value, ...] # For lists items can also be appended using: # TAG += value [value, ...] # Values that contain spaces should be placed between quotes (" ") #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. [...1059 lines suppressed...] # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will # generate a legend page explaining the meaning of the various boxes and # arrows in the dot generated graphs. GENERATE_LEGEND = YES # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will # remove the intermediate dot files that are used to generate # the various graphs. DOT_CLEANUP = YES #--------------------------------------------------------------------------- # Configuration::addtions related to the search engine #--------------------------------------------------------------------------- # The SEARCHENGINE tag specifies whether or not a search engine should be # used. If set to NO the values of all tags below this one will be ignored. SEARCHENGINE = NO Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/doxygen/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Makefile 12 Jul 2004 17:17:40 -0000 1.1.1.1 --- Makefile 20 Jul 2004 09:07:22 -0000 1.2 *************** *** 1,5 **** --- 1,14 ---- + all: base freeglut + + base: xml/gl_8h.xml + + freeglut: xml/freeglut_8h.xml + xml/gl_8h.xml: /usr/include/GL/gl.h doxygen doxygen.conf + xml/freeglut_8h.xml: /usr/include/GL/freeglut.h + doxygen freeglut.conf + all: doxygen doxygen.conf *************** *** 11,14 **** --- 20,24 ---- .IGNORE: clean + freeglut .EXPORT_ALL_VARIABLES: *************** *** 16,18 **** --- 26,29 ---- .PHONY: clean + freeglut |
From: Tim R. <ti...@us...> - 2004-07-19 16:45:45
|
Update of /cvsroot/csdopenglnet/csdOpenGL In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv412 Modified Files: Makefile Log Message: samples are now not compiled with "make all" but with "make test" Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile 13 Jul 2004 19:04:33 -0000 1.2 --- Makefile 19 Jul 2004 16:45:37 -0000 1.3 *************** *** 5,13 **** $(MAKE) -C math $(MAKE) -C tools - $(MAKE) -C samples doc: $(MAKE) -C doc install: $(MAKE) -C generator install --- 5,16 ---- $(MAKE) -C math $(MAKE) -C tools doc: $(MAKE) -C doc + test: all + $(MAKE) -C samples + + install: $(MAKE) -C generator install |
From: Tim R. <ti...@us...> - 2004-07-18 20:49:21
|
Update of /cvsroot/csdopenglnet/csdOpenGL In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22557 Modified Files: ChangeLog Log Message: update Index: ChangeLog =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ChangeLog 17 Jul 2004 17:30:40 -0000 1.3 --- ChangeLog 18 Jul 2004 20:49:10 -0000 1.4 *************** *** 2,4 **** --- 2,5 ---- modified and activated Gtk#-Widget modified Makefile to use global GAC-Parameters + added gears and gtkGears examples |
From: Tim R. <ti...@us...> - 2004-07-18 20:42:02
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21347 Modified Files: Makefile Added Files: gtkGears.cs Log Message: gears example in Gtk# widget --- NEW FILE: gtkGears.cs --- using csDragons.OpenGL; using GLib; using Gtk; using GtkSharp; using System; public class GtkGears : csdGL { GtkGLArea glarea; protected double rotAng = 0.0f; protected uint gear1; protected uint gear2; protected uint gear3; protected const double view_rotx = 20.0; protected const double view_roty = 30.0; protected const double view_rotz = 0.0; protected bool stop = false; public GtkGears() { Application.Init(); Gtk.Window window = new Gtk.Window( "Gtk Gears" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); glarea.ConfigureEvent += new ConfigureEventHandler (OnConfigure); glarea.ExposeEvent += new ExposeEventHandler (OnExpose); glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); Table table = new Table( 10, 20, true ); table.Attach( glarea, 1, 19, 1, 9 ); window.Add( table ); glarea.Show (); window.ShowAll (); Application.Run (); } protected void OnDeleteEvent (object obj, DeleteEventArgs args) { Application.Quit (); } protected void OnMap (object obj, MapEventArgs args) { GLib.Idle.Add (new IdleHandler (Animate)); stop = false; } protected void OnUnmap (object obj, UnmapEventArgs args) { stop = true; } protected bool Animate () { rotAng += 0.5f; glarea.QueueDraw (); return !stop; } protected void OnExpose (object obj, ExposeEventArgs args) { if (glarea.MakeCurrent()) { glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glPushMatrix(); glRotated( view_rotx, 1.0, 0.0, 0.0 ); glRotated( view_roty + 0.1 * rotAng, 0.0, 1.0, 0.0 ); glRotated( view_rotz, 0.0, 0.0, 1.0 ); glPushMatrix(); glTranslated( -3.0, -2.0, 0.0 ); glRotated( rotAng, 0.0, 0.0, 1.0 ); glCallList( gear1 ); glPopMatrix(); glPushMatrix(); glTranslated( 3.1, -2.0, 0.0 ); glRotated( -2.0 * rotAng - 9.0, 0.0, 0.0, 1.0 ); glCallList( gear2 ); glPopMatrix(); glPushMatrix(); glTranslated( -3.1, 4.2, 0.0 ); glRotated( -2.0 * rotAng - 25.0, 0.0, 0.0, 1.0 ); glCallList( gear3 ); glPopMatrix(); glPopMatrix(); glarea.SwapBuffers(); } } protected void OnConfigure (object obj, ConfigureEventArgs args) { if (glarea.MakeCurrent()) { float h = (float) glarea.Allocation.Height / (float) (glarea.Allocation.Width); glViewport(0, 0, glarea.Allocation.Width, glarea.Allocation.Height); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); glFrustum( -1.0, 1.0, -h, h, 5.0, 60.0 ); glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); glTranslatef( 0.0f, 0.0f, -50.0f ); } } protected void initGL() { float[] pos = { 5.0f, 5.0f, 10.0f, 0.0f }; float[] red = { 0.8f, 0.1f, 0.0f, 1.0f }; float[] green = { 0.0f, 0.8f, 0.2f, 1.0f }; float[] blue = { 0.2f, 0.2f, 1.0f, 1.0f }; glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); glClearDepth( 1.0f ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); glLightfv( GL_LIGHT0, GL_POSITION, pos ); glEnable( GL_CULL_FACE ); glEnable( GL_LIGHTING ); glEnable( GL_LIGHT0 ); glEnable( GL_DEPTH_TEST ); /* gears */ gear1 = glGenLists( 1 ); glNewList( gear1, GL_COMPILE ); glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, red ); gear( 1.0, 4.0, 1.0, 20, 0.7 ); glEndList(); gear2 = glGenLists( 1 ); glNewList( gear2, GL_COMPILE ); glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, green ); gear( 0.5, 2.0, 2.0, 10, 0.7 ); glEndList(); gear3 = glGenLists( 1 ); glNewList( gear3, GL_COMPILE ); glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, blue ); gear( 1.3, 2.0, 0.5, 10, 0.7 ); glEndList(); glEnable( GL_NORMALIZE ); } protected void OnRealized (object obj, EventArgs args) { initGL(); } protected void gear( double inner_radius, double outer_radius, double width, int teeth, double tooth_depth ) { int i; double r0, r1, r2, angle, da, u, v, len; r0 = inner_radius; r1 = outer_radius - tooth_depth / 2.0; r2 = outer_radius + tooth_depth / 2.0; da = 2.0 * Math.PI / teeth / 4.0; glShadeModel( GL_FLAT ); glNormal3d( 0.0, 0.0, 1.0 ); /* front face */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<= teeth; i++ ) { angle = i * 2.0 * Math.PI / teeth; glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), width * 0.5 ); glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), width * 0.5 ); if ( i<teeth ) { glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), width * 0.5 ); glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); } } glEnd(); /* front sides of teeth */ glBegin( GL_QUADS ); da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { angle = i * 2.0 * Math.PI / teeth; glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), width * 0.5 ); glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), width * 0.5 ); glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), width * 0.5 ); glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); } glEnd(); glNormal3d( 0.0, 0.0, -1.0 ); /* back face */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { angle = i * 2.0 * Math.PI / teeth; glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), -width * 0.5 ); glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), -width * 0.5 ); if (i<teeth) { glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), -width * 0.5 ); } } glEnd(); /* back sides of teeth */ glBegin( GL_QUADS ); da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { angle = i * 2.0 * Math.PI / teeth; glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), -width * 0.5 ); glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), -width * 0.5 ); glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), -width * 0.5 ); } glEnd(); /* outward faces of teeth */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<teeth; i++ ) { angle = i * 2.0 * Math.PI / teeth; glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), width * 0.5 ); glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), -width * 0.5 ); u = r2 * Math.Cos( angle + da ) - r1 * Math.Cos( angle ); v = r2 * Math.Sin( angle + da ) - r1 * Math.Sin( angle ); len = Math.Sqrt( u * u + v * v ); u /= len; v /= len; glNormal3d( v, -u, 0.0 ); glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), width * 0.5 ); glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), -width * 0.5 ); glNormal3d( Math.Cos( angle ), Math.Sin( angle ), 0.0 ); glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), width * 0.5 ); glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), -width * 0.5 ); u = r1 * Math.Cos( angle + 3 * da ) - r2 * Math.Cos( angle + 2 * da ); v = r1 * Math.Sin( angle + 3 * da ) - r2 * Math.Sin( angle + 2 * da ); glNormal3d( v, -u, 0.0 ); glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); glNormal3d( Math.Cos( angle ), Math.Sin( angle ), 0.0 ); } glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), width * 0.5 ); glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), -width * 0.5 ); glEnd(); glShadeModel( GL_SMOOTH ); glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { angle = i * 2.0 * Math.PI / teeth; glNormal3d( -Math.Cos( angle ), -Math.Sin( angle ), 0.0 ); glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), -width * 0.5 ); glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), width * 0.5 ); } glEnd(); } public static void Main( string[] args) { GtkGears gl = new GtkGears(); } } Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile 17 Jul 2004 18:37:49 -0000 1.3 --- Makefile 18 Jul 2004 20:41:52 -0000 1.4 *************** *** 10,14 **** LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) triangle.exe texture.exe gtkWidget.exe gears.exe csdGL.dll: libcsdGL.so --- 10,14 ---- LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) triangle.exe texture.exe gtkWidget.exe gears.exe gtkGears.exe csdGL.dll: libcsdGL.so *************** *** 30,33 **** --- 30,36 ---- $(MCS) -r:glib-sharp.dll -r:gtk-sharp.dll -r:csdGL_Gtk.dll -r:System.Drawing gtkWidget.cs -o $@ + gtkGears.exe:gtkGears.cs csdGL_Gtk.dll + $(MCS) -r:glib-sharp.dll -r:gtk-sharp.dll -r:csdGL_Gtk.dll -r:System.Drawing gtkGears.cs -o $@ + %.exe:%.cs $(MCS) -r:csdGL.dll -r:csdGLtools.dll -r:csdMath.dll -r:System.Drawing $^ -o $@ |
From: Tim R. <ti...@us...> - 2004-07-18 15:03:44
|
Update of /cvsroot/csdopenglnet/tutorials/lesson01 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3812 Modified Files: Makefile Added Files: lesson01gtk.cs Log Message: Gtk base example --- NEW FILE: lesson01gtk.cs --- using csDragons.OpenGL; using GLib; using Gtk; using GtkSharp; using System; public class GtkTest : csdGL { GtkGLArea glarea; bool stop; float angle = 0.0f; public GtkTest() { Application.Init(); Gtk.Window window = new Gtk.Window( "Gtk Triangle" ); window.ReallocateRedraws = true; window.DeleteEvent += new DeleteEventHandler( OnDeleteEvent ); glarea = new GtkGLArea(); glarea.Realized += new EventHandler (OnRealized); glarea.ConfigureEvent += new ConfigureEventHandler (OnConfigure); glarea.ExposeEvent += new ExposeEventHandler (OnExpose); glarea.MapEvent += new MapEventHandler (OnMap); glarea.UnmapEvent += new UnmapEventHandler (OnUnmap); Table table = new Table( 10, 20, true ); table.Attach( glarea, 1, 19, 1, 9 ); window.Add( table ); glarea.Show (); window.ShowAll (); Application.Run (); } protected void OnDeleteEvent (object obj, DeleteEventArgs args) { Application.Quit (); } protected void OnMap (object obj, MapEventArgs args) { GLib.Idle.Add (new IdleHandler (Animate)); stop = false; } protected void OnUnmap (object obj, UnmapEventArgs args) { stop = true; } protected bool Animate () { angle += 0.2f; glarea.QueueDraw (); return !stop; } protected void OnExpose (object obj, ExposeEventArgs args) { if (glarea.MakeCurrent()) { glClearColor( 0, 0, 0, 0 ); glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glPopMatrix(); glarea.SwapBuffers(); } } protected void OnConfigure (object obj, ConfigureEventArgs args) { if (glarea.MakeCurrent()) { glViewport(0, 0, glarea.Allocation.Width, glarea.Allocation.Height); glMatrixMode( GL_PROJECTION ); glLoadIdentity(); float h = (float) glarea.Allocation.Height / (float) (glarea.Allocation.Width); glFrustum( -1.0f, 1.0f, -h, h, 5.0f, 5.0f ); glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); } } protected void OnRealized (object obj, EventArgs args) { glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.5f ); glClearDepth( 1.0f ); glEnable( GL_DEPTH_TEST ); glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); } public static void Main( string[] args) { GtkTest gl = new GtkTest(); } } Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/tutorials/lesson01/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile 13 Jul 2004 22:24:19 -0000 1.2 --- Makefile 18 Jul 2004 15:03:35 -0000 1.3 *************** *** 5,12 **** LIBS=csdGL.dll MCS=$(CC) $(OPTS) -lib:/usr/lib/mono/csDragons -lib:/usr/lib/mono/gtk-sharp ! FILES = lesson01glut.exe all: $(FILES) %.exe:%.cs $(MCS) -r:csdGL.dll $^ -o $@ --- 5,15 ---- LIBS=csdGL.dll MCS=$(CC) $(OPTS) -lib:/usr/lib/mono/csDragons -lib:/usr/lib/mono/gtk-sharp ! FILES = lesson01glut.exe lesson01gtk.exe all: $(FILES) + lesson01gtk.exe: lesson01gtk.cs + $(MCS) -r:csdGL_Gtk -r:glib-sharp.dll -r:gtk-sharp.dll $^ -o $@ + %.exe:%.cs $(MCS) -r:csdGL.dll $^ -o $@ |
From: Tim R. <ti...@us...> - 2004-07-18 13:41:42
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25814 Modified Files: gears.cs Log Message: now it's correct Index: gears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gears.cs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** gears.cs 18 Jul 2004 12:59:57 -0000 1.5 --- gears.cs 18 Jul 2004 13:41:33 -0000 1.6 *************** *** 97,101 **** glPushMatrix(); glRotated( view_rotx, 1.0, 0.0, 0.0 ); ! glRotated( view_roty, 0.0, 1.0, 0.0 ); glRotated( view_rotz, 0.0, 0.0, 1.0 ); --- 97,101 ---- glPushMatrix(); glRotated( view_rotx, 1.0, 0.0, 0.0 ); ! glRotated( view_roty + 0.1 * rotAng, 0.0, 1.0, 0.0 ); glRotated( view_rotz, 0.0, 0.0, 1.0 ); *************** *** 136,140 **** glNormal3d( 0.0, 0.0, 1.0 ); - Console.WriteLine( width ); /* front face */ glBegin( GL_QUAD_STRIP ); --- 136,139 ---- *************** *** 216,220 **** glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); glNormal3d( Math.Cos( angle ), Math.Sin( angle ), 0.0 ); --- 215,219 ---- glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); glNormal3d( Math.Cos( angle ), Math.Sin( angle ), 0.0 ); |
From: Tim R. <ti...@us...> - 2004-07-18 13:00:06
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19528 Modified Files: gears.cs Log Message: and again a bit better Index: gears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gears.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gears.cs 18 Jul 2004 09:32:17 -0000 1.4 --- gears.cs 18 Jul 2004 12:59:57 -0000 1.5 *************** *** 118,229 **** glPopMatrix(); glutSwapBuffers(); } protected void gear( double inner_radius, double outer_radius, double width, int teeth, double tooth_depth ) { - double r0 = inner_radius; - double r1 = outer_radius - tooth_depth / 2.0; - double r2 = outer_radius + tooth_depth / 2.0; - double da = 2.0 * Math.PI / teeth / 4.0; int i; ! double ang, u, v, len; glShadeModel( GL_FLAT ); glNormal3d( 0.0, 0.0, 1.0 ); /* front face */ glBegin( GL_QUAD_STRIP ); ! for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0f * Math.PI / teeth; ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), width * 0.5 ); if ( i<teeth ) { ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), width * 0.5 ); } } glEnd(); ! /* front side of teeth */ glBegin( GL_QUADS ); da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), width * 0.5 ); } glEnd(); glNormal3d( 0.0, 0.0, -1.0 ); ! ! /* back face */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), -width * 0.5 ); if (i<teeth) { ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), -width * 0.5 ); } } glEnd(); ! ! /* back side of teeth */ glBegin( GL_QUADS ); da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), -width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), -width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), -width * 0.5 ); } glEnd(); ! /* draw outward faces of teeth */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), -width * 0.5 ); ! u = r2 * Math.Cos( ang + da ) - r1 * Math.Cos( ang ); ! v = r2 * Math.Sin( ang + da ) - r1 * Math.Sin( ang ); len = Math.Sqrt( u * u + v * v ); ! u = u / len; ! v = v / len; glNormal3d( v, -u, 0.0 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), -width * 0.5 ); ! glVertex3d( Math.Cos( ang ), Math.Sin( ang ), 0.0 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), -width * 0.5 ); ! u = r1 * Math.Cos( ang + 3 * da ) - r2 * Math.Cos( ang + 2 * da ); ! v = r1 * Math.Sin( ang + 3 * da ) - r2 * Math.Sin( ang + 2 * da ); glNormal3d( v, -u, 0.0 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glNormal3d( Math.Cos( ang ), Math.Sin( ang ), 0.0 ); } glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), width * 0.5 ); glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), -width * 0.5 ); ! glEnd(); ! ! glShadeModel( GL_SMOOTH ); ! /* draw inside radius cylinder */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glNormal3d( -Math.Cos( ang ), -Math.Sin( ang ), 0.0 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), width * 0.5 ); } glEnd(); --- 118,234 ---- glPopMatrix(); + glPopMatrix(); + glutSwapBuffers(); } protected void gear( double inner_radius, double outer_radius, double width, int teeth, double tooth_depth ) { int i; ! double r0, r1, r2, angle, da, u, v, len; ! ! r0 = inner_radius; ! r1 = outer_radius - tooth_depth / 2.0; ! r2 = outer_radius + tooth_depth / 2.0; ! ! da = 2.0 * Math.PI / teeth / 4.0; glShadeModel( GL_FLAT ); glNormal3d( 0.0, 0.0, 1.0 ); + Console.WriteLine( width ); /* front face */ glBegin( GL_QUAD_STRIP ); ! for ( i=0; i<= teeth; i++ ) { ! angle = i * 2.0 * Math.PI / teeth; ! glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), width * 0.5 ); if ( i<teeth ) { ! glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); } } glEnd(); ! /* front sides of teeth */ glBegin( GL_QUADS ); da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! angle = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); } glEnd(); glNormal3d( 0.0, 0.0, -1.0 ); ! ! /* back face */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! angle = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), -width * 0.5 ); if (i<teeth) { ! glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), -width * 0.5 ); } } glEnd(); ! ! /* back sides of teeth */ glBegin( GL_QUADS ); da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! angle = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), -width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), -width * 0.5 ); ! glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), -width * 0.5 ); } glEnd(); ! /* outward faces of teeth */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<teeth; i++ ) { ! angle = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( angle ), r1 * Math.Sin( angle ), -width * 0.5 ); ! u = r2 * Math.Cos( angle + da ) - r1 * Math.Cos( angle ); ! v = r2 * Math.Sin( angle + da ) - r1 * Math.Sin( angle ); len = Math.Sqrt( u * u + v * v ); ! u /= len; ! v /= len; glNormal3d( v, -u, 0.0 ); ! glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + da ), r2 * Math.Sin( angle + da ), -width * 0.5 ); ! glNormal3d( Math.Cos( angle ), Math.Sin( angle ), 0.0 ); ! ! glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + 2 * da ), r2 * Math.Sin( angle + 2 * da ), -width * 0.5 ); ! ! u = r1 * Math.Cos( angle + 3 * da ) - r2 * Math.Cos( angle + 2 * da ); ! v = r1 * Math.Sin( angle + 3 * da ) - r2 * Math.Sin( angle + 2 * da ); glNormal3d( v, -u, 0.0 ); ! glVertex3d( r1 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( angle + 3 * da ), r1 * Math.Sin( angle + 3 * da ), -width * 0.5 ); ! glNormal3d( Math.Cos( angle ), Math.Sin( angle ), 0.0 ); } glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), width * 0.5 ); glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), -width * 0.5 ); ! glEnd(); ! glShadeModel( GL_SMOOTH ); glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! angle = i * 2.0 * Math.PI / teeth; ! glNormal3d( -Math.Cos( angle ), -Math.Sin( angle ), 0.0 ); ! glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( angle ), r0 * Math.Sin( angle ), width * 0.5 ); } glEnd(); |
From: Tim R. <ti...@us...> - 2004-07-18 09:32:36
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19957 Modified Files: gears.cs Log Message: looks better now, but even not correct Index: gears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gears.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gears.cs 17 Jul 2004 20:50:39 -0000 1.3 --- gears.cs 18 Jul 2004 09:32:17 -0000 1.4 *************** *** 14,18 **** public Gears() { glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); ! glutInitWindowSize( 640, 480 ); glutCreateWindow("Gears"); --- 14,18 ---- public Gears() { glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); ! glutInitWindowSize( 480, 480 ); glutCreateWindow("Gears"); *************** *** 125,129 **** double r1 = outer_radius - tooth_depth / 2.0; double r2 = outer_radius + tooth_depth / 2.0; ! double da = 2.0f * System.Math.PI / teeth / 4.0; int i; double ang, u, v, len; --- 125,129 ---- double r1 = outer_radius - tooth_depth / 2.0; double r2 = outer_radius + tooth_depth / 2.0; ! double da = 2.0 * Math.PI / teeth / 4.0; int i; double ang, u, v, len; *************** *** 135,144 **** glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0f * System.Math.PI / teeth; ! glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); if ( i<teeth ) { ! glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), width * 0.5 ); } } --- 135,144 ---- glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0f * Math.PI / teeth; ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), width * 0.5 ); if ( i<teeth ) { ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), width * 0.5 ); } } *************** *** 147,157 **** /* front side of teeth */ glBegin( GL_QUADS ); ! da = 2.0 * System.Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * System.Math.PI / teeth; ! glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), width * 0.5 ); ! glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), width * 0.5 ); } glEnd(); --- 147,157 ---- /* front side of teeth */ glBegin( GL_QUADS ); ! da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), width * 0.5 ); } glEnd(); *************** *** 159,184 **** glNormal3d( 0.0, 0.0, -1.0 ); ! /* draw back face */ glBegin( GL_QUAD_STRIP ); ! for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * System.Math.PI / teeth; ! glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), -width * 0.5 ); ! glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), -width * 0.5 ); if (i<teeth) { ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), -width * 0.5 ); } } glEnd(); ! /* draw back side of teeth */ glBegin( GL_QUADS ); ! da = 2.0 * System.Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * System.Math.PI / teeth; ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), -width * 0.5 ); ! glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), -width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), -width * 0.5 ); } glEnd(); --- 159,184 ---- glNormal3d( 0.0, 0.0, -1.0 ); ! /* back face */ glBegin( GL_QUAD_STRIP ); ! for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), -width * 0.5 ); if (i<teeth) { ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), -width * 0.5 ); } } glEnd(); ! /* back side of teeth */ glBegin( GL_QUADS ); ! da = 2.0 * Math.PI / teeth / 4.0; for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), -width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), -width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), -width * 0.5 ); } glEnd(); *************** *** 187,218 **** glBegin( GL_QUAD_STRIP ); for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * System.Math.PI / teeth; ! glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), -width * 0.5 ); ! u = r2 * System.Math.Cos( ang + da ) - r1 * System.Math.Cos( ang ); ! v = r2 * System.Math.Sin( ang + da ) - r1 * System.Math.Sin( ang ); ! len = System.Math.Sqrt( u * u + v * v ); u = u / len; v = v / len; glNormal3d( v, -u, 0.0 ); ! glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), width * 0.5 ); ! glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), -width * 0.5 ); ! glVertex3d( System.Math.Cos( ang ), System.Math.Sin( ang ), 0.0 ); ! glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), width * 0.5 ); ! glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), -width * 0.5 ); ! u = r1 * System.Math.Cos( ang + 3 * da ) - r2 * System.Math.Cos( ang + 2 * da ); ! v = r1 * System.Math.Sin( ang + 3 * da ) - r2 * System.Math.Sin( ang + 2 * da ); glNormal3d( v, -u, 0.0 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glNormal3d( System.Math.Cos( ang ), System.Math.Sin( ang ), 0.0 ); } ! glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), -width * 0.5 ); glEnd(); --- 187,218 ---- glBegin( GL_QUAD_STRIP ); for ( i=0; i<teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang ), r1 * Math.Sin( ang ), -width * 0.5 ); ! u = r2 * Math.Cos( ang + da ) - r1 * Math.Cos( ang ); ! v = r2 * Math.Sin( ang + da ) - r1 * Math.Sin( ang ); ! len = Math.Sqrt( u * u + v * v ); u = u / len; v = v / len; glNormal3d( v, -u, 0.0 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + da ), r2 * Math.Sin( ang + da ), -width * 0.5 ); ! glVertex3d( Math.Cos( ang ), Math.Sin( ang ), 0.0 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), width * 0.5 ); ! glVertex3d( r2 * Math.Cos( ang + 2 * da ), r2 * Math.Sin( ang + 2 * da ), -width * 0.5 ); ! u = r1 * Math.Cos( ang + 3 * da ) - r2 * Math.Cos( ang + 2 * da ); ! v = r1 * Math.Sin( ang + 3 * da ) - r2 * Math.Sin( ang + 2 * da ); glNormal3d( v, -u, 0.0 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( ang + 3 * da ), r1 * Math.Sin( ang + 3 * da ), -width * 0.5 ); ! glNormal3d( Math.Cos( ang ), Math.Sin( ang ), 0.0 ); } ! glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), width * 0.5 ); ! glVertex3d( r1 * Math.Cos( 0 ), r1 * Math.Sin( 0 ), -width * 0.5 ); glEnd(); *************** *** 222,229 **** glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0 * System.Math.PI / teeth; ! glNormal3d( -System.Math.Cos( ang ), -System.Math.Sin( ang ), 0.0 ); ! glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), -width * 0.5 ); ! glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); } glEnd(); --- 222,229 ---- glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0 * Math.PI / teeth; ! glNormal3d( -Math.Cos( ang ), -Math.Sin( ang ), 0.0 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), -width * 0.5 ); ! glVertex3d( r0 * Math.Cos( ang ), r0 * Math.Sin( ang ), width * 0.5 ); } glEnd(); |
From: Tim R. <ti...@us...> - 2004-07-17 20:50:48
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23988 Modified Files: gears.cs Log Message: cant' find error i suppose it in the "draw outward faces of teeth" section Index: gears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gears.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gears.cs 17 Jul 2004 19:34:35 -0000 1.2 --- gears.cs 17 Jul 2004 20:50:39 -0000 1.3 *************** *** 2,8 **** using System; ! public class Lesson01GLUT : csdGL { ! protected float angle = 0.0f; protected uint gear1; protected uint gear2; --- 2,8 ---- using System; ! public class Gears : csdGL { ! protected double rotAng = 0.0f; protected uint gear1; protected uint gear2; *************** *** 12,16 **** protected const double view_rotz = 0.0; ! public Lesson01GLUT() { glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); glutInitWindowSize( 640, 480 ); --- 12,16 ---- protected const double view_rotz = 0.0; ! public Gears() { glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); glutInitWindowSize( 640, 480 ); *************** *** 35,39 **** protected void redraw() { ! angle += 2.0f; glutPostRedisplay(); } --- 35,39 ---- protected void redraw() { ! rotAng += 0.5f; glutPostRedisplay(); } *************** *** 44,55 **** float[] green = { 0.0f, 0.8f, 0.2f, 1.0f }; float[] blue = { 0.2f, 0.2f, 1.0f, 1.0f }; ! /* glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); glClearDepth( 1.0f ); - glEnable( GL_DEPTH_TEST ); - glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); ! */ glLightfv( GL_LIGHT0, GL_POSITION, pos ); glEnable( GL_CULL_FACE ); --- 44,53 ---- float[] green = { 0.0f, 0.8f, 0.2f, 1.0f }; float[] blue = { 0.2f, 0.2f, 1.0f, 1.0f }; ! glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); glClearDepth( 1.0f ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); ! glLightfv( GL_LIGHT0, GL_POSITION, pos ); glEnable( GL_CULL_FACE ); *************** *** 78,83 **** glEnable( GL_NORMALIZE ); - - // glEnd(); } --- 76,79 ---- *************** *** 86,96 **** float h = ((float)height) / ((float)width); ! glViewport (0, 0, width, height); ! glMatrixMode (GL_PROJECTION); ! glLoadIdentity (); ! glFrustum (-1.0, 1.0, -h, h, 5.0, 60.0 ); ! glMatrixMode (GL_MODELVIEW); ! glLoadIdentity (); glTranslatef( 0.0f, 0.0f, -40.0f ); } --- 82,92 ---- float h = ((float)height) / ((float)width); ! glViewport( 0, 0, width, height ); ! glMatrixMode( GL_PROJECTION ); ! glLoadIdentity(); ! glFrustum( -1.0, 1.0, -h, h, 5.0, 60.0 ); ! glMatrixMode( GL_MODELVIEW ); ! glLoadIdentity(); glTranslatef( 0.0f, 0.0f, -40.0f ); } *************** *** 106,110 **** glPushMatrix(); glTranslated( -3.0, -2.0, 0.0 ); ! glRotated( angle, 0.0, 0.0, 1.0 ); glCallList( gear1 ); glPopMatrix(); --- 102,106 ---- glPushMatrix(); glTranslated( -3.0, -2.0, 0.0 ); ! glRotated( rotAng, 0.0, 0.0, 1.0 ); glCallList( gear1 ); glPopMatrix(); *************** *** 112,116 **** glPushMatrix(); glTranslated( 3.1, -2.0, 0.0 ); ! glRotated( -2.0 * angle - 9.0, 0.0, 0.0, 1.0 ); glCallList( gear2 ); glPopMatrix(); --- 108,112 ---- glPushMatrix(); glTranslated( 3.1, -2.0, 0.0 ); ! glRotated( -2.0 * rotAng - 9.0, 0.0, 0.0, 1.0 ); glCallList( gear2 ); glPopMatrix(); *************** *** 118,122 **** glPushMatrix(); glTranslated( -3.1, 4.2, 0.0 ); ! glRotated( -2.0 * angle - 25.0, 0.0, 0.0, 1.0 ); glCallList( gear3 ); glPopMatrix(); --- 114,118 ---- glPushMatrix(); glTranslated( -3.1, 4.2, 0.0 ); ! glRotated( -2.0 * rotAng - 25.0, 0.0, 0.0, 1.0 ); glCallList( gear3 ); glPopMatrix(); *************** *** 134,142 **** glShadeModel( GL_FLAT ); /* front face */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0f * System.Math.PI; glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); --- 130,139 ---- glShadeModel( GL_FLAT ); + glNormal3d( 0.0, 0.0, 1.0 ); /* front face */ glBegin( GL_QUAD_STRIP ); for ( i=0; i<=teeth; i++ ) { ! ang = i * 2.0f * System.Math.PI / teeth; glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); *************** *** 197,202 **** v = r2 * System.Math.Sin( ang + da ) - r1 * System.Math.Sin( ang ); len = System.Math.Sqrt( u * u + v * v ); ! u /= len; ! v /= len; glNormal3d( v, -u, 0.0 ); --- 194,199 ---- v = r2 * System.Math.Sin( ang + da ) - r1 * System.Math.Sin( ang ); len = System.Math.Sqrt( u * u + v * v ); ! u = u / len; ! v = v / len; glNormal3d( v, -u, 0.0 ); *************** *** 211,216 **** glNormal3d( v, -u, 0.0 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 + System.Math.Sin( ang + 3 * da ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 + System.Math.Sin( ang + 3 * da ), -width * 0.5 ); glNormal3d( System.Math.Cos( ang ), System.Math.Sin( ang ), 0.0 ); --- 208,213 ---- glNormal3d( v, -u, 0.0 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), width * 0.5 ); ! glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), -width * 0.5 ); glNormal3d( System.Math.Cos( ang ), System.Math.Sin( ang ), 0.0 ); *************** *** 218,223 **** glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), width * 0.5 ); glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), -width * 0.5 ); ! glEnd(); ! glShadeModel( GL_SMOOTH ); --- 215,220 ---- glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), width * 0.5 ); glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), -width * 0.5 ); ! glEnd(); ! glShadeModel( GL_SMOOTH ); *************** *** 238,242 **** public static void Main( string[] args) { ! new Lesson01GLUT(); } --- 235,239 ---- public static void Main( string[] args) { ! new Gears(); } |
From: Tim R. <ti...@us...> - 2004-07-17 19:34:43
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14180 Modified Files: gears.cs Log Message: gears example - the beginning not what I want, but not so bad :) Index: gears.cs =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/gears.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gears.cs 17 Jul 2004 18:37:49 -0000 1.1 --- gears.cs 17 Jul 2004 19:34:35 -0000 1.2 *************** *** 4,7 **** --- 4,15 ---- public class Lesson01GLUT : csdGL { + protected float angle = 0.0f; + protected uint gear1; + protected uint gear2; + protected uint gear3; + protected const double view_rotx = 20.0; + protected const double view_roty = 30.0; + protected const double view_rotz = 0.0; + public Lesson01GLUT() { glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); *************** *** 9,13 **** glutCreateWindow("Gears"); ! initGL(); // initialize the OpenGL context glutDisplayFunc( new cb0_glutDisplayFunc( draw ) ); --- 17,21 ---- glutCreateWindow("Gears"); ! initGL(); glutDisplayFunc( new cb0_glutDisplayFunc( draw ) ); *************** *** 27,34 **** --- 35,48 ---- protected void redraw() { + angle += 2.0f; glutPostRedisplay(); } protected void initGL() { + float[] pos = { 5.0f, 5.0f, 10.0f, 0.0f }; + float[] red = { 0.8f, 0.1f, 0.0f, 1.0f }; + float[] green = { 0.0f, 0.8f, 0.2f, 1.0f }; + float[] blue = { 0.2f, 0.2f, 1.0f, 1.0f }; + /* glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); *************** *** 37,40 **** --- 51,83 ---- glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); + */ + glLightfv( GL_LIGHT0, GL_POSITION, pos ); + glEnable( GL_CULL_FACE ); + glEnable( GL_LIGHTING ); + glEnable( GL_LIGHT0 ); + glEnable( GL_DEPTH_TEST ); + + /* gears */ + gear1 = glGenLists( 1 ); + glNewList( gear1, GL_COMPILE ); + glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, red ); + gear( 1.0, 4.0, 1.0, 20, 0.7 ); + glEndList(); + + gear2 = glGenLists( 1 ); + glNewList( gear2, GL_COMPILE ); + glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, green ); + gear( 0.5, 2.0, 2.0, 10, 0.7 ); + glEndList(); + + gear3 = glGenLists( 1 ); + glNewList( gear3, GL_COMPILE ); + glMaterialfv( GL_FRONT, GL_AMBIENT_AND_DIFFUSE, blue ); + gear( 1.3, 2.0, 0.5, 10, 0.7 ); + glEndList(); + + glEnable( GL_NORMALIZE ); + + // glEnd(); } *************** *** 47,62 **** glLoadIdentity (); ! glFrustum (-1.0, 1.0, -h, h, 5.0, 5.0); glMatrixMode (GL_MODELVIEW); glLoadIdentity (); ! } protected void draw() { glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); ! glLoadIdentity(); glutSwapBuffers(); } protected void keyboard( byte key, int x, int y ) { if (key==27) System.Environment.Exit(0); --- 90,236 ---- glLoadIdentity (); ! glFrustum (-1.0, 1.0, -h, h, 5.0, 60.0 ); glMatrixMode (GL_MODELVIEW); glLoadIdentity (); ! glTranslatef( 0.0f, 0.0f, -40.0f ); ! } protected void draw() { glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); ! ! glPushMatrix(); ! glRotated( view_rotx, 1.0, 0.0, 0.0 ); ! glRotated( view_roty, 0.0, 1.0, 0.0 ); ! glRotated( view_rotz, 0.0, 0.0, 1.0 ); ! ! glPushMatrix(); ! glTranslated( -3.0, -2.0, 0.0 ); ! glRotated( angle, 0.0, 0.0, 1.0 ); ! glCallList( gear1 ); ! glPopMatrix(); ! ! glPushMatrix(); ! glTranslated( 3.1, -2.0, 0.0 ); ! glRotated( -2.0 * angle - 9.0, 0.0, 0.0, 1.0 ); ! glCallList( gear2 ); ! glPopMatrix(); ! ! glPushMatrix(); ! glTranslated( -3.1, 4.2, 0.0 ); ! glRotated( -2.0 * angle - 25.0, 0.0, 0.0, 1.0 ); ! glCallList( gear3 ); ! glPopMatrix(); glutSwapBuffers(); } + protected void gear( double inner_radius, double outer_radius, double width, int teeth, double tooth_depth ) { + double r0 = inner_radius; + double r1 = outer_radius - tooth_depth / 2.0; + double r2 = outer_radius + tooth_depth / 2.0; + double da = 2.0f * System.Math.PI / teeth / 4.0; + int i; + double ang, u, v, len; + + glShadeModel( GL_FLAT ); + + /* front face */ + glBegin( GL_QUAD_STRIP ); + for ( i=0; i<=teeth; i++ ) { + ang = i * 2.0f * System.Math.PI; + glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); + if ( i<teeth ) { + glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), width * 0.5 ); + } + } + glEnd(); + + /* front side of teeth */ + glBegin( GL_QUADS ); + da = 2.0 * System.Math.PI / teeth / 4.0; + for ( i=0; i<teeth; i++ ) { + ang = i * 2.0 * System.Math.PI / teeth; + glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); + glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), width * 0.5 ); + glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), width * 0.5 ); + } + glEnd(); + + glNormal3d( 0.0, 0.0, -1.0 ); + + /* draw back face */ + glBegin( GL_QUAD_STRIP ); + for ( i=0; i<teeth; i++ ) { + ang = i * 2.0 * System.Math.PI / teeth; + glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), -width * 0.5 ); + glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), -width * 0.5 ); + if (i<teeth) { + glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), -width * 0.5 ); + glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), -width * 0.5 ); + } + } + glEnd(); + + /* draw back side of teeth */ + glBegin( GL_QUADS ); + da = 2.0 * System.Math.PI / teeth / 4.0; + for ( i=0; i<teeth; i++ ) { + ang = i * 2.0 * System.Math.PI / teeth; + glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 * System.Math.Sin( ang + 3 * da ), -width * 0.5 ); + glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), -width * 0.5 ); + glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), -width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), -width * 0.5 ); + } + glEnd(); + + /* draw outward faces of teeth */ + glBegin( GL_QUAD_STRIP ); + for ( i=0; i<teeth; i++ ) { + ang = i * 2.0 * System.Math.PI / teeth; + glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( ang ), r1 * System.Math.Sin( ang ), -width * 0.5 ); + + u = r2 * System.Math.Cos( ang + da ) - r1 * System.Math.Cos( ang ); + v = r2 * System.Math.Sin( ang + da ) - r1 * System.Math.Sin( ang ); + len = System.Math.Sqrt( u * u + v * v ); + u /= len; + v /= len; + glNormal3d( v, -u, 0.0 ); + + glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), width * 0.5 ); + glVertex3d( r2 * System.Math.Cos( ang + da ), r2 * System.Math.Sin( ang + da ), -width * 0.5 ); + glVertex3d( System.Math.Cos( ang ), System.Math.Sin( ang ), 0.0 ); + glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), width * 0.5 ); + glVertex3d( r2 * System.Math.Cos( ang + 2 * da ), r2 * System.Math.Sin( ang + 2 * da ), -width * 0.5 ); + + u = r1 * System.Math.Cos( ang + 3 * da ) - r2 * System.Math.Cos( ang + 2 * da ); + v = r1 * System.Math.Sin( ang + 3 * da ) - r2 * System.Math.Sin( ang + 2 * da ); + glNormal3d( v, -u, 0.0 ); + + glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 + System.Math.Sin( ang + 3 * da ), width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( ang + 3 * da ), r1 + System.Math.Sin( ang + 3 * da ), -width * 0.5 ); + + glNormal3d( System.Math.Cos( ang ), System.Math.Sin( ang ), 0.0 ); + } + glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), width * 0.5 ); + glVertex3d( r1 * System.Math.Cos( 0 ), r1 * System.Math.Sin( 0 ), -width * 0.5 ); + glEnd(); + + glShadeModel( GL_SMOOTH ); + + /* draw inside radius cylinder */ + glBegin( GL_QUAD_STRIP ); + for ( i=0; i<=teeth; i++ ) { + ang = i * 2.0 * System.Math.PI / teeth; + glNormal3d( -System.Math.Cos( ang ), -System.Math.Sin( ang ), 0.0 ); + glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), -width * 0.5 ); + glVertex3d( r0 * System.Math.Cos( ang ), r0 * System.Math.Sin( ang ), width * 0.5 ); + } + glEnd(); + } + protected void keyboard( byte key, int x, int y ) { if (key==27) System.Environment.Exit(0); |
From: Tim R. <ti...@us...> - 2004-07-17 18:37:58
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6845 Modified Files: Makefile Added Files: gears.cs Log Message: new example --- NEW FILE: gears.cs --- using csDragons.OpenGL; using System; public class Lesson01GLUT : csdGL { public Lesson01GLUT() { glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); glutInitWindowSize( 640, 480 ); glutCreateWindow("Gears"); initGL(); // initialize the OpenGL context glutDisplayFunc( new cb0_glutDisplayFunc( draw ) ); glutKeyboardFunc( new cb0_glutKeyboardFunc( keyboard ) ); glutReshapeFunc( new cb0_glutReshapeFunc( reshape ) ); glutVisibilityFunc( new cb0_glutVisibilityFunc( visible ) ); glutMainLoop(); } protected void visible( int state ) { if ( state==GLUT_VISIBLE ) { glutIdleFunc( new cb0_glutIdleFunc( redraw ) ); } else { glutIdleFunc( null ); } } protected void redraw() { glutPostRedisplay(); } protected void initGL() { glShadeModel( GL_SMOOTH ); glClearColor( 0.0f, 0.0f, 0.0f, 0.0f ); glClearDepth( 1.0f ); glEnable( GL_DEPTH_TEST ); glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); } protected void reshape( int width, int height ) { if (height==0) height = 1; // prevent division by zero float h = ((float)height) / ((float)width); glViewport (0, 0, width, height); glMatrixMode (GL_PROJECTION); glLoadIdentity (); glFrustum (-1.0, 1.0, -h, h, 5.0, 5.0); glMatrixMode (GL_MODELVIEW); glLoadIdentity (); } protected void draw() { glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); glLoadIdentity(); glutSwapBuffers(); } protected void keyboard( byte key, int x, int y ) { if (key==27) System.Environment.Exit(0); } public static void Main( string[] args) { new Lesson01GLUT(); } } Index: Makefile =================================================================== RCS file: /cvsroot/csdopenglnet/csdOpenGL/samples/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile 17 Jul 2004 11:59:31 -0000 1.2 --- Makefile 17 Jul 2004 18:37:49 -0000 1.3 *************** *** 10,14 **** LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) triangle.exe texture.exe gtkWidget.exe csdGL.dll: libcsdGL.so --- 10,14 ---- LIBOPTS=$(foreach lib,$(LIBS),-r $(lib)) ! all: $(LIBS) triangle.exe texture.exe gtkWidget.exe gears.exe csdGL.dll: libcsdGL.so |
From: Tim R. <ti...@us...> - 2004-07-17 17:48:17
|
Update of /cvsroot/csdopenglnet/csdOpenGL/samples/.xvpics In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32126 Removed Files: image3.jpg Log Message: delete gimp backup file --- image3.jpg DELETED --- |