r481: no message
[ctsim.git] / src / graph3dview.cpp
index c9b28f70e0bf6e4fd4ac571d682a94fce2c38f30..74f51dea6f81dfb3155c2efa038835685f8d4b4a 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (c) 1983-2001 Kevin Rosenberg
 **
-**  $Id: graph3dview.cpp,v 1.5 2001/02/02 00:46:38 kevin Exp $
+**  $Id: graph3dview.cpp,v 1.6 2001/02/02 21:50:18 kevin Exp $
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
@@ -154,10 +154,10 @@ Graph3dFileView::Graph3dFileView ()
   m_bLighting = true;
   m_bSurface = true;
   m_bLighting = true;
-  m_bColor = true;
-  m_dXRotate = 0;
+  m_bColor = false;
+  m_dXRotate = -45;
   m_dYRotate = 0;
-  m_dZRotate = 0;
+  m_dZRotate = -45;
 }
 
 Graph3dFileView::~Graph3dFileView()
@@ -423,8 +423,10 @@ Graph3dFileView::InitMaterials()
 #if 1
   static float ambient[] = {0.1, 0.1, 0.1, 1.0};
   static float diffuse[] = {1.0, 1.0, 1.0, 1.0};
-  static float position0[] = {0, 0, -nx/4, 0, 0.0};
-  static float position1[] = {nx/2, ny/2, nx/4, 0.0};
+  static float position0[] = {0, 0, -nx/2, 0, 0.0};
+  static float position1[] = {0, 0, nx/2, 0.0};
+  static float ambient1[] = {0.5, 0.5, 0.5, 1.0};
+  static float diffuse1[] = {1.0, 1.0, 1.0, 1.0};
   //  static float position0[] = {0.0, 0.0, 20.0, 0.0};
   //  static float position1[] = {0.0, 0.0, -20.0, 0.0};
   static float front_mat_shininess[] = {5.0};
@@ -438,13 +440,17 @@ Graph3dFileView::InitMaterials()
   static float lmodel_ambient[] = {1.0, 1.0, 1.0, 1.0};
   static float lmodel_twoside[] = {GL_FALSE};
   
+  glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
+  glHint(GL_LINE_SMOOTH, GL_DONT_CARE);
+  glEnable(GL_NORMALIZE);
+  
   glLightfv (GL_LIGHT0, GL_AMBIENT, ambient);
   glLightfv (GL_LIGHT0, GL_DIFFUSE, diffuse);
   glLightfv (GL_LIGHT0, GL_POSITION, position0);
   glEnable (GL_LIGHT0);
   
-  glLightfv (GL_LIGHT1, GL_AMBIENT, ambient);
-  glLightfv (GL_LIGHT1, GL_DIFFUSE, diffuse);
+  glLightfv (GL_LIGHT1, GL_AMBIENT, ambient1);
+  glLightfv (GL_LIGHT1, GL_DIFFUSE, diffuse1);
   glLightfv (GL_LIGHT1, GL_POSITION, position1);
   glEnable (GL_LIGHT1);
   
@@ -596,6 +602,7 @@ Graph3dFileView::OnClose (bool deleteWindow)
   
   Activate (false);
   if (m_pCanvas) {
+//    m_pCanvas->Show(false);
     m_pCanvas->setView(NULL);
     m_pCanvas = NULL;
   }
@@ -606,10 +613,11 @@ Graph3dFileView::OnClose (bool deleteWindow)
   SetFrame(NULL);
   
   if (deleteWindow) {
-    m_pFrame->Destroy();
+//    m_pFrame->Show(false);
+    delete m_pFrame; //->Destroy();
     m_pFrame = NULL;
-    if (GetDocument() && GetDocument()->getBadFileOpen())
-      ::wxYield();  // wxWindows bug workaround
+//    if (GetDocument() && GetDocument()->getBadFileOpen())
+//      ::wxYield();  // wxWindows bug workaround
   }
   
   return true;