//--------------------------------------------------------- void CVIEW_ScatterPlot::_Draw(wxDC &dc, wxRect r) { r = _Draw_Get_rDiagram(r); if( m_Trend.Get_Data_Count() > 1 ) { //------------------------------------------------- if( m_Options("DISPLAY")->asInt() == 1 ) { if( m_Options("DENSITY_LEG")->asBool() ) { r.SetRight(r.GetRight() - 40); _Draw_Legend(dc, wxRect(r.GetRight() + 10, r.GetTop(), 40 - 20, r.GetHeight())); } _Draw_Image (dc, r); } else { _Draw_Points(dc, r); } //------------------------------------------------- _Draw_Frame(dc, r); } else { Draw_Text(dc, TEXTALIGN_CENTER, r.GetLeft() + r.GetWidth() / 2, r.GetTop() + r.GetHeight() / 2, _TL("Invalid data!")); } }
//--------------------------------------------------------- void CPoints_View_Extent::Update_View(void) { if( _Draw_Image() ) { Refresh(false); } }
//--------------------------------------------------------- CPoints_View_Extent::CPoints_View_Extent(wxWindow *pParent, CSG_PointCloud *pPoints, CSG_Parameters &Settings, wxSize Size) : wxPanel(pParent, wxID_ANY, wxDefaultPosition, Size, wxTAB_TRAVERSAL|wxSUNKEN_BORDER|wxNO_FULL_REPAINT_ON_RESIZE) { m_pPoints = pPoints; m_pSettings = &Settings; m_cField = 2; m_Select = wxRect(0, 0, GetClientSize().x - 1, GetClientSize().y - 1); //----------------------------------------------------- CSG_Parameter *pNode = m_pSettings->Add_Node(NULL, "NODE_EXTENT", _TL("Zoom View"), _TL("")); m_pSettings->Add_Range( pNode , "EXT_C_RANGE" , _TL("Colors Value Range"), _TL("") ); //----------------------------------------------------- _Draw_Image(); }
//--------------------------------------------------------- void CPoints_View_Extent::On_Size(wxSizeEvent &event) { _Draw_Image(); event.Skip(); }