//--------------------------------------------------------- bool CVisibility_Point::On_Execute_Position(CSG_Point ptWorld, TSG_Module_Interactive_Mode Mode) { int x_Pos, y_Pos; double z_Pos; //----------------------------------------------------- if( Mode != MODULE_INTERACTIVE_LDOWN || !m_pDTM->is_InGrid_byPos(Get_xPosition(), Get_yPosition()) ) { return( false ); } //----------------------------------------------------- x_Pos = Get_xGrid(); y_Pos = Get_yGrid();; z_Pos = m_pDTM->asDouble(x_Pos, y_Pos) + m_Height; if( !m_bMultiple ) Initialize(m_pVisibility, m_Method); Set_Visibility(m_pDTM, m_pVisibility, x_Pos, y_Pos, z_Pos, m_Height, m_Method); //----------------------------------------------------- Finalize(m_pVisibility, m_Method); return( true ); }
//--------------------------------------------------------- bool CFlow_AreaUpslope_Interactive::On_Execute_Position(CSG_Point ptWorld, TSG_Module_Interactive_Mode Mode) { if( Mode == MODULE_INTERACTIVE_LDOWN && m_Calculator.Get_Area(Get_xGrid(), Get_yGrid()) ) { DataObject_Update(Parameters("AREA")->asGrid(), 0.0, 100.0, true); return( true ); } return( false ); }