Loading 3d-viewer/3d_aux.cpp +211 −154 Original line number Diff line number Diff line ///////////////////////////////////////////////////////////////////////////// // Name: 3d_aux.cpp ///////////////////////////////////////////////////////////////////////////// Loading Loading @@ -54,6 +55,7 @@ int ii; } } /************************************************************/ void Set_Object_Data( const S3D_Vertex* coord, int nbcoord ) /************************************************************/ Loading @@ -62,7 +64,8 @@ int ii; GLfloat ax, ay, az, bx, by, bz, nx, ny, nz, r; /* ignore faces with less than 3 points */ if (nbcoord < 3) return; if( nbcoord < 3 ) return; /* calculate normal direction */ ax = coord[1].x - coord[0].x; Loading Loading @@ -152,7 +155,6 @@ GLuint gllist = glGenLists( 1 ); } /**********************/ /* class Info_3D_Visu */ /**********************/ Loading @@ -161,10 +163,13 @@ GLuint gllist = glGenLists( 1 ); Info_3D_Visu::Info_3D_Visu() { int ii; m_Beginx = m_Beginy = 0.0; /* position of mouse */ m_Zoom = 1.0; /* field of view in degrees */ trackball( m_Quat, 0.0, 0.0, 0.0, 0.0 ); for ( ii = 0; ii < 4; ii++ ) m_Rot[ii] = 0.0; for( ii = 0; ii < 4; ii++ ) m_Rot[ii] = 0.0; m_Layers = 1; m_BoardSettings = NULL; } Loading @@ -190,32 +195,82 @@ wxStaticText * msgtitle; m_Units = units; m_Internal_Unit = internal_unit; if ( title.IsEmpty() ) text = _("Vertex "); else text = title; if( title.IsEmpty() ) text = _( "Vertex " ); else text = title; text += ReturnUnitSymbol( units ); msgtitle = new wxStaticText(parent, -1, text, wxDefaultPosition, wxSize(-1,-1), 0 ); msgtitle = new wxStaticText( parent, -1, text, wxDefaultPosition, wxSize( -1, -1 ), 0 ); BoxSizer->Add( msgtitle, wxGROW | wxLEFT | wxRIGHT | wxTOP | wxBOTTOM | wxADJUST_MINSIZE ); wxFlexGridSizer* GridSizer = new wxFlexGridSizer( 3, 2, 0, 0 ); BoxSizer->Add( GridSizer, 0, wxGROW | wxALL, 5 ); msgtitle = new wxStaticText( parent, -1, wxT( "X:" ) ); GridSizer->Add(msgtitle, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxADJUST_MINSIZE, 5); m_XValueCtrl = new wxTextCtrl(parent, -1, wxEmptyString, wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(m_XValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5); msgtitle = new wxStaticText(parent, -1, wxT("Y:"), wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(msgtitle, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxADJUST_MINSIZE, 5); m_YValueCtrl = new wxTextCtrl(parent, -1, wxEmptyString, wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(m_YValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5); msgtitle = new wxStaticText(parent, -1, wxT("Z:"), wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(msgtitle, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxADJUST_MINSIZE, 5); m_ZValueCtrl = new wxTextCtrl(parent, -1, wxEmptyString, wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(m_ZValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5); GridSizer->Add( msgtitle, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT | wxADJUST_MINSIZE, 5 ); m_XValueCtrl = new wxTextCtrl( parent, -1, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( m_XValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 ); msgtitle = new wxStaticText( parent, -1, wxT( "Y:" ), wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( msgtitle, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT | wxADJUST_MINSIZE, 5 ); m_YValueCtrl = new wxTextCtrl( parent, -1, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( m_YValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 ); msgtitle = new wxStaticText( parent, -1, wxT( "Z:" ), wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( msgtitle, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT | wxADJUST_MINSIZE, 5 ); m_ZValueCtrl = new wxTextCtrl( parent, -1, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( m_ZValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 ); } WinEDA_VertexCtrl::~WinEDA_VertexCtrl() { } Loading @@ -224,6 +279,7 @@ WinEDA_VertexCtrl::~WinEDA_VertexCtrl() /*******************************************/ S3D_Vertex WinEDA_VertexCtrl::GetValue() /*******************************************/ /* Retourne (en unites internes) les coordonnes entrees (en unites utilisateur) */ { Loading @@ -239,6 +295,7 @@ double dtmp; return value; } /**************************************************/ void WinEDA_VertexCtrl::SetValue( S3D_Vertex vertex ) /**************************************************/ Loading @@ -258,6 +315,7 @@ wxString text; m_ZValueCtrl->AppendText( text ); } /*****************************************/ void WinEDA_VertexCtrl::Enable( bool onoff ) /*****************************************/ Loading @@ -266,4 +324,3 @@ void WinEDA_VertexCtrl::Enable(bool onoff) m_YValueCtrl->Enable( onoff ); m_ZValueCtrl->Enable( onoff ); } Loading
3d-viewer/3d_aux.cpp +211 −154 Original line number Diff line number Diff line ///////////////////////////////////////////////////////////////////////////// // Name: 3d_aux.cpp ///////////////////////////////////////////////////////////////////////////// Loading Loading @@ -54,6 +55,7 @@ int ii; } } /************************************************************/ void Set_Object_Data( const S3D_Vertex* coord, int nbcoord ) /************************************************************/ Loading @@ -62,7 +64,8 @@ int ii; GLfloat ax, ay, az, bx, by, bz, nx, ny, nz, r; /* ignore faces with less than 3 points */ if (nbcoord < 3) return; if( nbcoord < 3 ) return; /* calculate normal direction */ ax = coord[1].x - coord[0].x; Loading Loading @@ -152,7 +155,6 @@ GLuint gllist = glGenLists( 1 ); } /**********************/ /* class Info_3D_Visu */ /**********************/ Loading @@ -161,10 +163,13 @@ GLuint gllist = glGenLists( 1 ); Info_3D_Visu::Info_3D_Visu() { int ii; m_Beginx = m_Beginy = 0.0; /* position of mouse */ m_Zoom = 1.0; /* field of view in degrees */ trackball( m_Quat, 0.0, 0.0, 0.0, 0.0 ); for ( ii = 0; ii < 4; ii++ ) m_Rot[ii] = 0.0; for( ii = 0; ii < 4; ii++ ) m_Rot[ii] = 0.0; m_Layers = 1; m_BoardSettings = NULL; } Loading @@ -190,32 +195,82 @@ wxStaticText * msgtitle; m_Units = units; m_Internal_Unit = internal_unit; if ( title.IsEmpty() ) text = _("Vertex "); else text = title; if( title.IsEmpty() ) text = _( "Vertex " ); else text = title; text += ReturnUnitSymbol( units ); msgtitle = new wxStaticText(parent, -1, text, wxDefaultPosition, wxSize(-1,-1), 0 ); msgtitle = new wxStaticText( parent, -1, text, wxDefaultPosition, wxSize( -1, -1 ), 0 ); BoxSizer->Add( msgtitle, wxGROW | wxLEFT | wxRIGHT | wxTOP | wxBOTTOM | wxADJUST_MINSIZE ); wxFlexGridSizer* GridSizer = new wxFlexGridSizer( 3, 2, 0, 0 ); BoxSizer->Add( GridSizer, 0, wxGROW | wxALL, 5 ); msgtitle = new wxStaticText( parent, -1, wxT( "X:" ) ); GridSizer->Add(msgtitle, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxADJUST_MINSIZE, 5); m_XValueCtrl = new wxTextCtrl(parent, -1, wxEmptyString, wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(m_XValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5); msgtitle = new wxStaticText(parent, -1, wxT("Y:"), wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(msgtitle, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxADJUST_MINSIZE, 5); m_YValueCtrl = new wxTextCtrl(parent, -1, wxEmptyString, wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(m_YValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5); msgtitle = new wxStaticText(parent, -1, wxT("Z:"), wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(msgtitle, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxADJUST_MINSIZE, 5); m_ZValueCtrl = new wxTextCtrl(parent, -1, wxEmptyString, wxDefaultPosition, wxSize(-1,-1), 0 ); GridSizer->Add(m_ZValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5); GridSizer->Add( msgtitle, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT | wxADJUST_MINSIZE, 5 ); m_XValueCtrl = new wxTextCtrl( parent, -1, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( m_XValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 ); msgtitle = new wxStaticText( parent, -1, wxT( "Y:" ), wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( msgtitle, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT | wxADJUST_MINSIZE, 5 ); m_YValueCtrl = new wxTextCtrl( parent, -1, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( m_YValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 ); msgtitle = new wxStaticText( parent, -1, wxT( "Z:" ), wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( msgtitle, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT | wxADJUST_MINSIZE, 5 ); m_ZValueCtrl = new wxTextCtrl( parent, -1, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 ); GridSizer->Add( m_ZValueCtrl, 0, wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 ); } WinEDA_VertexCtrl::~WinEDA_VertexCtrl() { } Loading @@ -224,6 +279,7 @@ WinEDA_VertexCtrl::~WinEDA_VertexCtrl() /*******************************************/ S3D_Vertex WinEDA_VertexCtrl::GetValue() /*******************************************/ /* Retourne (en unites internes) les coordonnes entrees (en unites utilisateur) */ { Loading @@ -239,6 +295,7 @@ double dtmp; return value; } /**************************************************/ void WinEDA_VertexCtrl::SetValue( S3D_Vertex vertex ) /**************************************************/ Loading @@ -258,6 +315,7 @@ wxString text; m_ZValueCtrl->AppendText( text ); } /*****************************************/ void WinEDA_VertexCtrl::Enable( bool onoff ) /*****************************************/ Loading @@ -266,4 +324,3 @@ void WinEDA_VertexCtrl::Enable(bool onoff) m_YValueCtrl->Enable( onoff ); m_ZValueCtrl->Enable( onoff ); }