//--------------------------------------------------------- CInterpolation::CInterpolation(void) { CSG_Parameter *pNode = Parameters.Add_Shapes( NULL , "SHAPES" , _TL("Points"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Point ); Parameters.Add_Table_Field( pNode , "FIELD" , _TL("Attribute"), _TL("") ); //----------------------------------------------------- Parameters.Add_Choice( NULL , "TARGET" , _TL("Target Grid"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("user defined"), _TL("grid") ), 0 ); m_Grid_Target.Add_Parameters_User(Add_Parameters("USER", _TL("User Defined Grid") , _TL(""))); m_Grid_Target.Add_Parameters_Grid(Add_Parameters("GRID", _TL("Choose Grid") , _TL(""))); }
//--------------------------------------------------------- CTable_Text_Import_Fixed_Cols::CTable_Text_Import_Fixed_Cols(void) { Set_Name (_TL("Import Text Table (Fixed Column Sizes)")); Set_Author (SG_T("O. Conrad (c) 2010")); Set_Description (_TW( "" )); //----------------------------------------------------- Parameters.Add_Table( NULL , "TABLE" , _TL("Table"), _TL(""), PARAMETER_OUTPUT ); Parameters.Add_Value( NULL , "HEADLINE" , _TL("File contains headline"), _TL(""), PARAMETER_TYPE_Bool , true ); Parameters.Add_Choice( NULL , "FIELDDEF" , _TL("Field Definition"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|"), _TL("mark breaks in first line"), _TL("specify fields with type"), _TL("from list") ), 2 ); Parameters.Add_Value( NULL , "NFIELDS" , _TL("Number of Fields"), _TL(""), PARAMETER_TYPE_Int , 1, 1, true ); CSG_Table *pList = Parameters.Add_FixedTable( NULL , "LIST" , _TL("List"), _TL("") )->asTable(); pList->Add_Field(_TL("Name") , SG_DATATYPE_String); pList->Add_Field(_TL("Size") , SG_DATATYPE_Int); pList->Add_Field(_TL("Numeric") , SG_DATATYPE_Byte); Parameters.Add_FilePath( NULL , "FILENAME" , _TL("File"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s"), _TL("Text Files (*.txt)") , SG_T("*.txt"), _TL("All Files") , SG_T("*.*") ), NULL, false ); Add_Parameters("BREAKS", _TL("Breaks"), _TL("")); Add_Parameters("FIELDS", _TL("Fields"), _TL("")); }
//--------------------------------------------------------- CPolygonStatisticsFromPoints::CPolygonStatisticsFromPoints(void) { Set_Name (_TL("Point Statistics for Polygons")); Set_Author (SG_T("V. Olaya, O. Conrad (c) 2005, 2010")); Set_Description (_TW( "Calculates statistics over all points falling in a polygon." )); Parameters.Add_Shapes( NULL, "POINTS" , _TL("Points"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Point ); Parameters.Add_Shapes( NULL, "POLYGONS" , _TL("Polygons"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Polygon ); Parameters.Add_Shapes( NULL, "STATISTICS" , _TL("Statistics"), _TL(""), PARAMETER_OUTPUT_OPTIONAL, SHAPE_TYPE_Polygon ); Add_Parameters("ATTRIBUTES", _TL("Attributes"), _TL("")); }
//--------------------------------------------------------- CGridding_Spline_Base::CGridding_Spline_Base(bool bGridPoints) { m_bGridPoints = bGridPoints; //----------------------------------------------------- if( m_bGridPoints ) { Parameters.Add_Grid( NULL , "GRIDPOINTS" , _TL("Grid"), _TL(""), PARAMETER_INPUT ); } else { CSG_Parameter *pNode = Parameters.Add_Shapes( NULL , "SHAPES" , _TL("Points"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Table_Field( pNode , "FIELD" , _TL("Attribute"), _TL("") ); } //----------------------------------------------------- Parameters.Add_Choice( NULL , "TARGET" , _TL("Target Grid"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("user defined"), _TL("grid") ), 0 ); m_Grid_Target.Add_Parameters_User(Add_Parameters("USER", _TL("User Defined Grid") , _TL(""))); m_Grid_Target.Add_Parameters_Grid(Add_Parameters("GRID", _TL("Choose Grid") , _TL(""))); }
CCreateChartLayer::CCreateChartLayer(void){ CSG_Parameter *pNode; Parameters.Set_Name(_TL("Create Chart Layer (bars/sectors)")); Parameters.Set_Description(_TW( "(c) 2004 by Victor Olaya. ")); pNode = Parameters.Add_Shapes(NULL, "INPUT", _TL("Shapes"), _TL(""), PARAMETER_INPUT); Parameters.Add_Table_Field(pNode, "SIZE", _TL("Size field"), _TL("")); Parameters.Add_Value(NULL, "MAXSIZE", _TL("Maximum size"), _TL(""), PARAMETER_TYPE_Double, 100, 0, true); Parameters.Add_Value(NULL, "MINSIZE", _TL("Minimum size"), _TL(""), PARAMETER_TYPE_Double, 10, 0, true); Parameters.Add_Choice(NULL, "TYPE", _TL("Type"), _TL(""), _TW("Sectors|" "Bars|"), 0); m_pExtraParameters = Add_Parameters("EXTRA", _TL("Fields for diagram"), _TL("")); }//constructor
//--------------------------------------------------------- CShapes_Cut::CShapes_Cut(void) { Set_Name (_TL("Cut Shapes Layer")); Set_Author (SG_T("O. Conrad (c) 2006")); Set_Description (_TW( "" )); //----------------------------------------------------- Parameters.Add_Shapes_List( NULL , "SHAPES" , _TL("Shapes"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Shapes_List( NULL , "CUT" , _TL("Cut"), _TL(""), PARAMETER_OUTPUT ); Parameters.Add_Shapes( NULL , "EXTENT" , _TL("Extent"), _TL(""), PARAMETER_OUTPUT_OPTIONAL, SHAPE_TYPE_Polygon ); Parameters.Add_Choice( NULL , "METHOD" , _TL("Method"), _TL(""), Cut_Methods_Str(), 0 ); Parameters.Add_Choice( NULL , "TARGET" , _TL("Extent"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|"), _TL("user defined"), _TL("grid project"), _TL("shapes layer extent"), _TL("polygons") ), 0 ); //----------------------------------------------------- CSG_Parameters *pParameters; pParameters = Add_Parameters("CUT", _TL("Extent"), _TL("")); pParameters->Add_Value( NULL, "AX" , _TL("Left") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "BX" , _TL("Right") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "AY" , _TL("Bottom") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "BY" , _TL("Top") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "DX" , _TL("Horizontal Range") , _TL(""), PARAMETER_TYPE_Double, 1.0, 0.0, true ); pParameters->Add_Value( NULL, "DY" , _TL("Vertical Range") , _TL(""), PARAMETER_TYPE_Double, 1.0, 0.0, true ); pParameters = Add_Parameters("GRID", _TL("Extent"), _TL("")); pParameters->Add_Grid_System( NULL, "GRID", _TL("Grid Project") , _TL("") ); pParameters = Add_Parameters("SHAPES", _TL("Extent"), _TL("")); pParameters->Add_Shapes( NULL, "SHAPES", _TL("Shapes") , _TL(""), PARAMETER_INPUT ); pParameters = Add_Parameters("POLYGONS", _TL("Polygons"), _TL("")); pParameters->Add_Shapes( NULL, "POLYGONS", _TL("Polygons") , _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Polygon ); }
//--------------------------------------------------------- CShapes_Cut_Interactive::CShapes_Cut_Interactive(void) { Set_Name (_TL("Cut Shapes Layer")); Set_Author (SG_T("(c) 2006 by O.Conrad")); Set_Description (_TW( "" )); Set_Drag_Mode (MODULE_INTERACTIVE_DRAG_BOX); //----------------------------------------------------- Parameters.Add_Shapes( NULL , "SHAPES" , _TL("Shapes"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Shapes( NULL , "CUT" , _TL("Cut"), _TL(""), PARAMETER_OUTPUT ); Parameters.Add_Shapes( NULL , "EXTENT" , _TL("Extent"), _TL(""), PARAMETER_OUTPUT_OPTIONAL, SHAPE_TYPE_Polygon ); Parameters.Add_Choice( NULL , "METHOD" , _TL("Method"), _TL(""), Cut_Methods_Str(), 0 ); //----------------------------------------------------- CSG_Parameters *pParameters = Add_Parameters("CUT", _TL("Extent"), _TL("")); pParameters->Add_Value( NULL, "AX" , _TL("Left") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "BX" , _TL("Right") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "AY" , _TL("Bottom") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "BY" , _TL("Top") , _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL, "DX" , _TL("Horizontal Range") , _TL(""), PARAMETER_TYPE_Double, 1.0, 0.0, true ); pParameters->Add_Value( NULL, "DY" , _TL("Vertical Range") , _TL(""), PARAMETER_TYPE_Double, 1.0, 0.0, true ); }
//--------------------------------------------------------- CShapes2Grid::CShapes2Grid(void) { CSG_Parameter *pNode_0, *pNode_1; //----------------------------------------------------- Set_Name (_TL("Shapes to Grid")); Set_Author (SG_T("O.Conrad (c) 2003")); Set_Description (_TW( "Gridding of a shapes layer. If some shapes are selected, only these will be gridded." )); //----------------------------------------------------- pNode_0 = Parameters.Add_Shapes( NULL , "INPUT" , _TL("Shapes"), _TL(""), PARAMETER_INPUT ); pNode_1 = Parameters.Add_Table_Field( pNode_0 , "FIELD" , _TL("Attribute"), _TL("") ); pNode_0 = Parameters.Add_Choice( NULL , "LINE_TYPE" , _TL("Method for Lines"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("thin"), _TL("thick") ), 1 ); pNode_0 = Parameters.Add_Choice( NULL , "GRID_TYPE" , _TL("Preferred Target Grid Type"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|"), _TL("Integer (1 byte)"), _TL("Integer (2 byte)"), _TL("Integer (4 byte)"), _TL("Floating Point (4 byte)"), _TL("Floating Point (8 byte)") ), 3 ); //----------------------------------------------------- Parameters.Add_Choice( NULL , "TARGET" , _TL("Target Grid"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("user defined"), _TL("grid") ), 0 ); m_Grid_Target.Add_Parameters_User(Add_Parameters("USER", _TL("User Defined Grid") , _TL(""))); m_Grid_Target.Add_Parameters_Grid(Add_Parameters("GRID", _TL("Choose Grid") , _TL(""))); }
//--------------------------------------------------------- CCRS_Transform_Grid::CCRS_Transform_Grid(bool bList) { CSG_Parameter *pNode; m_bList = bList; //----------------------------------------------------- Set_Name (m_bList ? _TL("Coordinate Transformation (Grid List)") : _TL("Coordinate Transformation (Grid)") ); Set_Author (SG_T("O. Conrad (c) 2010")); Set_Description (_TW( "Coordinate transformation for grids.\n" )); Set_Description (Get_Description() + "\n" + CSG_CRSProjector::Get_Description()); //----------------------------------------------------- if( m_bList ) { pNode = Parameters.Add_Grid_List( NULL , "SOURCE" , _TL("Source"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Grid_List( NULL , "TARGET" , _TL("Target"), _TL(""), PARAMETER_OUTPUT_OPTIONAL ); m_Grid_Target.Add_Parameters_User (Add_Parameters("GET_USER" , _TL("User Defined Grid System"), _TL("")), false); m_Grid_Target.Add_Parameters_System(Add_Parameters("GET_SYSTEM", _TL("Select Grid System") , _TL(""))); } //----------------------------------------------------- else { pNode = Parameters.Add_Grid( NULL , "SOURCE" , _TL("Source"), _TL(""), PARAMETER_INPUT ); m_Grid_Target.Add_Parameters_User (Add_Parameters("GET_USER" , _TL("User Defined Grid"), _TL(""))); m_Grid_Target.Add_Parameters_Grid (Add_Parameters("GET_GRID" , _TL("Select Grid") , _TL(""))); } //----------------------------------------------------- Parameters.Add_Value( pNode , "CREATE_XY" , _TL("Create X/Y Grids"), _TL(""), PARAMETER_TYPE_Bool, false ); Parameters.Add_Grid_Output(NULL, "OUT_X", _TL("X Coordinates"), _TL("")); Parameters.Add_Grid_Output(NULL, "OUT_Y", _TL("Y Coordinates"), _TL("")); //----------------------------------------------------- Parameters.Add_Choice( pNode , "INTERPOLATION" , _TL("Interpolation"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|"), _TL("Nearest Neigbhor"), _TL("Bilinear Interpolation"), _TL("Inverse Distance Interpolation"), _TL("Bicubic Spline Interpolation"), _TL("B-Spline Interpolation") ), 4 ); //----------------------------------------------------- Parameters.Add_Choice( pNode , "TARGET_TYPE" , _TL("Target"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|"), _TL("user defined grid system"), _TL("existing grid system"), _TL("points") ), 0 ); Parameters.Add_Value( pNode , "TARGET_AREA" , _TL("Use Target Area Polygon"), _TL(""), PARAMETER_TYPE_Bool, false ); //----------------------------------------------------- CSG_Parameters *pParameters = Add_Parameters("POINTS", _TL("Points"), _TL("")); pParameters->Add_Shapes( NULL , "POINTS" , _TL("Points"), _TL(""), PARAMETER_OUTPUT, SHAPE_TYPE_Point ); }
//--------------------------------------------------------- CDirect_Georeferencing::CDirect_Georeferencing(void) { CSG_Parameter *pNode; //----------------------------------------------------- Set_Name (_TL("Direct Georeferencing of Airborne Photographs")); Set_Author (SG_T("O.Conrad (c) 2012")); Set_Description (_TW( "Direct georeferencing of aerial photographs uses extrinsic " "(position, attitude) and intrinsic (focal length, physical " "pixel size) camera parameters. Orthorectification routine supports " "additional data from a Digital Elevation Model (DEM).\n" "\nReferences:\n" "Baumker, M. / Heimes, F.J. (2001): " "New Calibration and Computing Method for Direct Georeferencing of Image and Scanner Data Using the Position and Angular Data of an Hybrid Inertial Navigation System. " "OEEPE Workshop, Integrated Sensor Orientation, Hannover 2001. " "<a target=\"_blank\" href=\"http://www.hochschule-bochum.de/fileadmin/media/fb_v/veroeffentlichungen/baeumker/baheimesoeepe.pdf\">online</a>.\n" )); //----------------------------------------------------- Parameters.Add_Grid_List( NULL , "INPUT" , _TL("Unreferenced Grids"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Grid_List( NULL , "OUTPUT" , _TL("Referenced Grids"), _TL(""), PARAMETER_OUTPUT, false ); Parameters.Add_Shapes( NULL , "EXTENT" , _TL("Extent"), _TL(""), PARAMETER_OUTPUT_OPTIONAL, SHAPE_TYPE_Polygon ); //----------------------------------------------------- pNode = Parameters.Add_Grid( NULL , "DEM" , _TL("Elevation"), _TL(""), PARAMETER_INPUT_OPTIONAL, false ); Parameters.Add_Value( pNode , "ZREF" , _TL("Default Reference Height"), _TL(""), PARAMETER_TYPE_Double , 0.0 ); //----------------------------------------------------- m_Georeferencer.Add_Parameters(Parameters); //----------------------------------------------------- Parameters.Add_Choice( NULL , "RESAMPLING" , _TL("Resampling"), _TL(""), CSG_String::Format("%s|%s|%s|%s|", _TL("Nearest Neighbour"), _TL("Bilinear Interpolation"), _TL("Bicubic Spline Interpolation"), _TL("B-Spline Interpolation") ), 3 ); Parameters.Add_Choice( NULL , "DATA_TYPE" , _TL("Data Storage Type"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|%s|%s|%s|%s|"), _TL("1 byte unsigned integer"), _TL("1 byte signed integer"), _TL("2 byte unsigned integer"), _TL("2 byte signed integer"), _TL("4 byte unsigned integer"), _TL("4 byte signed integer"), _TL("4 byte floating point"), _TL("8 byte floating point"), _TL("same as original") ), 8 ); Parameters.Add_Choice( NULL , "ROW_ORDER" , _TL("Row Order"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("top down"), _TL("bottom up") ), 0 ); //----------------------------------------------------- m_Grid_Target.Create(Add_Parameters("TARGET", _TL("Target Grid System"), _TL("")), false); }
//--------------------------------------------------------- CPoint_Trend_Surface::CPoint_Trend_Surface(void) { CSG_Parameter *pNode; //----------------------------------------------------- Set_Name (_TL("Polynomial Regression")); Set_Author (SG_T("O.Conrad (c) 2010")); Set_Description (_TW( "Reference:\n" " - Lloyd, C. (2010): Spatial Data Analysis - An Introduction for GIS Users. Oxford, 206p.\n" )); //----------------------------------------------------- pNode = Parameters.Add_Shapes( NULL , "POINTS" , _TL("Points"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Point ); Parameters.Add_Table_Field( pNode , "ATTRIBUTE" , _TL("Attribute"), _TL("") ); Parameters.Add_Shapes( NULL , "RESIDUALS" , _TL("Residuals"), _TL(""), PARAMETER_OUTPUT_OPTIONAL, SHAPE_TYPE_Point ); Parameters.Add_Choice( NULL , "POLYNOM" , _TL("Polynom"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|"), _TL("simple planar surface"), // a + bx + cy _TL("bi-linear saddle"), // a + bx + cy + dxy _TL("quadratic surface"), // a + bx + cy + dxy + ex2 + fy2 _TL("cubic surface"), // a + bx + cy + dxy + ex2 + fy2 + gx2y + hxy2 + ix3 + iy3 _TL("user defined") ), 0 ); pNode = Parameters.Add_Node( NULL , "NODE_USER" , _TL("User Defined Polynomial"), _TL("") ); Parameters.Add_Value( pNode , "XORDER" , _TL("Maximum X Order"), _TL(""), PARAMETER_TYPE_Int, 4, 1, true ); Parameters.Add_Value( pNode , "YORDER" , _TL("Maximum Y Order"), _TL(""), PARAMETER_TYPE_Int, 4, 1, true ); Parameters.Add_Value( pNode , "TORDER" , _TL("Maximum Total Order"), _TL(""), PARAMETER_TYPE_Int, 4, 0, true ); //----------------------------------------------------- Parameters.Add_Choice( NULL , "TARGET" , _TL("Trend Surface"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("user defined"), _TL("grid") ), 0 ); m_Grid_Target.Add_Parameters_User(Add_Parameters("USER", _TL("User Defined Grid") , _TL(""))); m_Grid_Target.Add_Parameters_Grid(Add_Parameters("GRID", _TL("Choose Grid") , _TL(""))); }
//--------------------------------------------------------- CPROJ4_Grid::CPROJ4_Grid(int Interface, bool bInputList) : CPROJ4_Base(Interface, bInputList) { CSG_Parameters *pParameters; //----------------------------------------------------- Set_Name (CSG_String::Format(SG_T("%s (%s, %s)"), _TL("Proj.4"), Interface == PROJ4_INTERFACE_DIALOG ? _TL("Dialog") : _TL("Command Line Arguments"), m_bInputList ? _TL("List of Grids") : _TL("Grid") )); Set_Author (SG_T("O. Conrad (c) 2004-8")); Set_Description (_TW( "Coordinate Transformation for Grids.\n" "Based on the PROJ.4 Cartographic Projections library originally written by Gerald Evenden " "and later continued by the United States Department of the Interior, Geological Survey (USGS).\n" "<a target=\"_blank\" href=\"http://trac.osgeo.org/proj/\">Proj.4 Homepage</a>\n" )); //----------------------------------------------------- if( m_bInputList ) { Parameters.Add_Grid_List( Parameters("SOURCE_NODE"), "SOURCE" , _TL("Source"), _TL(""), PARAMETER_INPUT, false ); Parameters.Add_Grid_List( NULL, "TARGET" , _TL("Target"), _TL(""), PARAMETER_OUTPUT_OPTIONAL ); m_Grid_Target.Add_Parameters_User(Add_Parameters("GET_USER", _TL("User Defined Grid") , _TL("")), false); pParameters = Add_Parameters("GET_SYSTEM" , _TL("Choose Grid Project"), _TL("")); pParameters->Add_Grid_System( NULL, "SYSTEM" , _TL("System") , _TL("") ); } else { Parameters.Add_Grid( Parameters("SOURCE_NODE"), "SOURCE" , _TL("Source"), _TL(""), PARAMETER_INPUT ); m_Grid_Target.Add_Parameters_User(Add_Parameters("GET_USER", _TL("User Defined Grid") , _TL(""))); m_Grid_Target.Add_Parameters_Grid(Add_Parameters("GET_GRID", _TL("Choose Grid") , _TL(""))); } Parameters.Add_Shapes_Output( NULL, "SHAPES" , _TL("Shapes"), _TL("") ); //----------------------------------------------------- Parameters.Add_Value( Parameters("TARGET_NODE") , "CREATE_XY" , _TL("Create X/Y Grids"), _TL(""), PARAMETER_TYPE_Bool, false ); Parameters.Add_Grid_Output( NULL , "OUT_X" , _TL("X Coordinates"), _TL("") ); Parameters.Add_Grid_Output( NULL , "OUT_Y" , _TL("Y Coordinates"), _TL("") ); //----------------------------------------------------- Parameters.Add_Choice( Parameters("TARGET_NODE") , "INTERPOLATION" , _TL("Interpolation"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|"), _TL("Nearest Neigbhor"), _TL("Bilinear Interpolation"), _TL("Inverse Distance Interpolation"), _TL("Bicubic Spline Interpolation"), _TL("B-Spline Interpolation") ), 4 ); //----------------------------------------------------- Parameters.Add_Choice( Parameters("TARGET_NODE") , "TARGET_TYPE" , _TL("Target"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|"), _TL("user defined"), _TL("grid"), _TL("shapes") ), 0 ); //----------------------------------------------------- pParameters = Add_Parameters("GET_SHAPES" , _TL("Choose Shapes") , _TL("")); pParameters->Add_Shapes( NULL, "SHAPES" , _TL("Shapes") , _TL(""), PARAMETER_OUTPUT , SHAPE_TYPE_Point ); }
//--------------------------------------------------------- CGEOTRANS_Grid::CGEOTRANS_Grid(void) { CSG_Parameters *pParameters; //----------------------------------------------------- Set_Name (_TL("GeoTrans (Grid)")); Set_Author (SG_T("O.Conrad (c) 2003")); Set_Description (_TW( "Coordinate Transformation for Grids. " "This library makes use of the Geographic Translator (GeoTrans) library. " "\n" "GeoTrans is maintained by the National Geospatial Agency (NGA).\n" " <a target=\"_blank\" href=\"http://earth-info.nga.mil/GandG/geotrans/\">" " http://earth-info.nga.mil/GandG/geotrans/</a>\n" )); //----------------------------------------------------- Parameters.Add_Grid_Output( NULL , "OUT_GRID" , _TL("Grid"), _TL("") ); Parameters.Add_Grid_Output( NULL , "OUT_X" , _TL("X Coordinates"), _TL("") ); Parameters.Add_Grid_Output( NULL , "OUT_Y" , _TL("Y Coordinates"), _TL("") ); Parameters.Add_Shapes_Output( NULL , "OUT_SHAPES" , _TL("Shapes"), _TL("") ); //----------------------------------------------------- Parameters.Add_Grid( Parameters("SOURCE_NODE"), "SOURCE" , _TL("Source"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Value( Parameters("TARGET_NODE"), "CREATE_XY" , _TL("Create X/Y Grids"), _TL(""), PARAMETER_TYPE_Bool, false ); Parameters.Add_Choice( Parameters("TARGET_NODE") , "INTERPOLATION" , _TL("Grid Interpolation"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|"), _TL("Nearest Neigbhor"), _TL("Bilinear Interpolation"), _TL("Inverse Distance Interpolation"), _TL("Bicubic Spline Interpolation"), _TL("B-Spline Interpolation") ), 4 ); //----------------------------------------------------- m_Grid_Target.Create(Add_Parameters("TARGET", _TL("Target Grid System"), _TL(""))); }
//--------------------------------------------------------- CGEOTRANS_Grid::CGEOTRANS_Grid(void) { //----------------------------------------------------- Set_Name (_TL("GeoTrans (Grid)")); Set_Author ("O.Conrad (c) 2003"); Set_Description (_TW( "Coordinate Transformation for Grids. " "This library makes use of the Geographic Translator (GeoTrans) library. " "The GeoTrans library is maintained by the National Geospatial Agency (NGA)." )); Add_Reference("http://earth-info.nga.mil/GandG/geotrans/"); //----------------------------------------------------- Parameters.Add_Grid_Output("", "OUT_GRID" , _TL("Grid"), _TL("") ); Parameters.Add_Grid_Output("", "OUT_X" , _TL("X Coordinates"), _TL("") ); Parameters.Add_Grid_Output("", "OUT_Y" , _TL("Y Coordinates"), _TL("") ); Parameters.Add_Shapes_Output("", "OUT_SHAPES", _TL("Shapes"), _TL("") ); //----------------------------------------------------- Parameters.Add_Grid("SOURCE_NODE", "SOURCE" , _TL("Source"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Bool("TARGET_NODE", "CREATE_XY" , _TL("Create X/Y Grids"), _TL(""), false ); Parameters.Add_Choice("TARGET_NODE", "RESAMPLING", _TL("Resampling"), _TL(""), CSG_String::Format("%s|%s|%s|%s|", _TL("Nearest Neighbour"), _TL("Bilinear Interpolation"), _TL("Bicubic Spline Interpolation"), _TL("B-Spline Interpolation") ), 3 ); //----------------------------------------------------- m_Grid_Target.Create(Add_Parameters("TARGET", _TL("Target Grid System"), _TL(""))); }
//--------------------------------------------------------- CCollect_Points::CCollect_Points(void) { //----------------------------------------------------- Set_Name (_TL("Create Reference Points")); Set_Author (SG_T("O.Conrad (c) 2013")); Set_Description (_TW( "Digitize reference points for georeferencing grids, images and shapes. " "Click with the mouse on known locations in the map window " "and add the reference coordinates. " "After choosing 4 or more points, stop the interactive module execution " "by unchecking it in the in the modules menu." )); //----------------------------------------------------- Parameters.Add_Shapes( NULL , "REF_SOURCE" , _TL("Reference Points (Origin)"), _TL(""), PARAMETER_OUTPUT, SHAPE_TYPE_Point ); Parameters.Add_Shapes( NULL , "REF_TARGET" , _TL("Reference Points (Projection)"), _TL(""), PARAMETER_OUTPUT_OPTIONAL, SHAPE_TYPE_Point ); Parameters.Add_Choice( NULL , "METHOD" , _TL("Method"), _TL(""), GEOREF_METHODS_CHOICE, 0 ); Parameters.Add_Value( NULL , "ORDER" ,_TL("Polynomial Order"), _TL(""), PARAMETER_TYPE_Int, 3, 1, true ); Parameters.Add_Value( NULL , "REFRESH" , _TL("Clear Reference Points"), _TL(""), PARAMETER_TYPE_Bool, false ); //----------------------------------------------------- CSG_Parameters *pParameters = Add_Parameters("REFERENCE", _TL("Point Position"), _TL("")); pParameters->Add_Value( NULL , "X" , _TL("x Position"), _TL(""), PARAMETER_TYPE_Double ); pParameters->Add_Value( NULL , "Y" , _TL("y Position"), _TL(""), PARAMETER_TYPE_Double ); }
//--------------------------------------------------------- CGeoref_Grid::CGeoref_Grid(void) { //----------------------------------------------------- Set_Name (_TL("Rectify Grid")); Set_Author ("O.Conrad (c) 2006"); Set_Description (_TW( "Georeferencing and rectification for grids. Either choose the attribute fields (x/y) " "with the projected coordinates for the reference points (origin) or supply an " "additional points layer with correspondend points in the target projection. " )); //----------------------------------------------------- Parameters.Add_Shapes("", "REF_SOURCE", _TL("Reference Points (Origin)"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Point ); Parameters.Add_Shapes("", "REF_TARGET", _TL("Reference Points (Projection)"), _TL(""), PARAMETER_INPUT_OPTIONAL, SHAPE_TYPE_Point ); Parameters.Add_Table_Field("REF_SOURCE", "XFIELD" , _TL("x Position"), _TL("") ); Parameters.Add_Table_Field("REF_SOURCE", "YFIELD" , _TL("y Position"), _TL("") ); Parameters.Add_Choice("", "METHOD" , _TL("Method"), _TL(""), GEOREF_METHODS_CHOICE, 0 ); Parameters.Add_Int("", "ORDER" , _TL("Polynomial Order"), _TL(""), 3, 1, true ); //----------------------------------------------------- Parameters.Add_Grid("", "GRID" , _TL("Grid"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Choice("", "RESAMPLING", _TL("Resampling"), _TL(""), CSG_String::Format("%s|%s|%s|%s", _TL("Nearest Neighbour"), _TL("Bilinear Interpolation"), _TL("Bicubic Spline Interpolation"), _TL("B-Spline Interpolation") ), 3 ); Parameters.Add_Bool("", "BYTEWISE" , _TL("Bytewise Interpolation"), _TL(""), false ); //----------------------------------------------------- m_Grid_Target.Create(Add_Parameters("TARGET", _TL("Target Grid System"), _TL("")), true); }
//--------------------------------------------------------- CGW_Regression::CGW_Regression(void) { CSG_Parameter *pNode; //----------------------------------------------------- Set_Name (_TL("Geographically Weighted Regression")); Set_Author (SG_T("O.Conrad (c) 2010")); Set_Description (_TW( "Reference:\n" " - Lloyd, C. (2010): Spatial Data Analysis - An Introduction for GIS Users. Oxford, 206p.\n" )); //----------------------------------------------------- pNode = Parameters.Add_Shapes( NULL , "POINTS" , _TL("Points"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Point ); Parameters.Add_Table_Field( pNode , "DEPENDENT" , _TL("Dependent Variable"), _TL("") ); Parameters.Add_Table_Field( pNode , "PREDICTOR" , _TL("Predictor"), _TL("") ); //----------------------------------------------------- Parameters.Add_Choice( NULL , "TARGET" , _TL("Target Grids"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("user defined"), _TL("grid") ), 0 ); m_Grid_Target.Add_Parameters_User(Add_Parameters("USER", _TL("User Defined Grid") , _TL(""))); m_Grid_Target.Add_Parameters_Grid(Add_Parameters("GRID", _TL("Choose Grid") , _TL("")), false); m_Grid_Target.Add_Grid_Parameter(SG_T("QUALITY") , _TL("Quality") , false); m_Grid_Target.Add_Grid_Parameter(SG_T("INTERCEPT") , _TL("Intercept"), false); m_Grid_Target.Add_Grid_Parameter(SG_T("SLOPE") , _TL("Slope") , false); //----------------------------------------------------- m_Weighting.Set_Weighting(SG_DISTWGHT_GAUSS); Parameters.Add_Parameters( NULL , "WEIGHTING" , _TL("Weighting"), _TL("") )->asParameters()->Assign(m_Weighting.Get_Parameters()); pNode = Parameters.Add_Choice( NULL , "RANGE" , _TL("Search Range"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("search radius (local)"), _TL("no search radius (global)") ) ); Parameters.Add_Value( pNode , "RADIUS" , _TL("Search Radius"), _TL(""), PARAMETER_TYPE_Double , 100.0 ); Parameters.Add_Choice( pNode , "MODE" , _TL("Search Mode"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("all directions"), _TL("quadrants") ) ); pNode = Parameters.Add_Choice( NULL , "NPOINTS" , _TL("Number of Points"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("maximum number of observations"), _TL("all points") ) ); Parameters.Add_Value( pNode , "MAXPOINTS" , _TL("Maximum Number of Observations"), _TL(""), PARAMETER_TYPE_Int , 10, 2, true ); Parameters.Add_Value( NULL , "MINPOINTS" , _TL("Minimum Number of Observations"), _TL(""), PARAMETER_TYPE_Int , 4, 2, true ); }
//--------------------------------------------------------- CSRTM30_Import::CSRTM30_Import(void) { CSG_Parameter *pNode_0; CSG_Parameters *pParameters; //----------------------------------------------------- Set_Name(_TL("Import SRTM30 DEM")); Set_Author (SG_T("(c) 2004 by O.Conrad")); Set_Description (_TW( "Extracts elevation grids from SRTM30 data.\n\n" "<i>\"SRTM30 is a near-global digital elevation model (DEM) comprising a " "combination of data from the Shuttle Radar Topography Mission, flown " "in February, 2000 and the the U.S. Geological Survey's GTOPO30 data " "set. It can be considered to be either an SRTM data set enhanced with " "GTOPO30, or as an upgrade to GTOPO30.\"</i> (NASA)\n\n" "Further information about the GTOPO30 data set:\n" "<a target=\"_blank\" href=\"http://edcdaac.usgs.gov/gtopo30/gtopo30.html\">" "http://edcdaac.usgs.gov/gtopo30/gtopo30.html</a>\n\n" "SRTM30 data can be downloaded from:\n" "<a target=\"_blank\" href=\"ftp://e0srp01u.ecs.nasa.gov/srtm/version2/SRTM30/\">" "ftp://e0srp01u.ecs.nasa.gov/srtm/version2/SRTM30/</a>\n\n" "A directory, that contains the uncompressed SRTM30 DEM files, can be located using " "the \"Path\" Parameter of this tool.") ); //----------------------------------------------------- pNode_0 = Parameters.Add_Grid_Output( NULL , "GRID" , _TL("Grid"), _TL("") ); pNode_0 = Parameters.Add_FilePath( NULL , "PATH" , _TL("Path"), _TL(""), NULL, NULL, false, true ); //----------------------------------------------------- pNode_0 = Parameters.Add_Value( NULL , "XMIN" , _TL("West []"), _TL(""), PARAMETER_TYPE_Int, 60.0 ); pNode_0 = Parameters.Add_Value( NULL , "XMAX" , _TL("East []"), _TL(""), PARAMETER_TYPE_Int, 120.0 ); pNode_0 = Parameters.Add_Value( NULL , "YMIN" , _TL("South []"), _TL(""), PARAMETER_TYPE_Int, 20.0 ); pNode_0 = Parameters.Add_Value( NULL , "YMAX" , _TL("North []"), _TL(""), PARAMETER_TYPE_Int, 50.0 ); //----------------------------------------------------- pParameters = Add_Parameters("TILE", _TL(""), _TL("")); pNode_0 = pParameters->Add_Info_String( NULL , "INFO" , _TL("File does not exist:"), _TL(""), _TL("") ); pNode_0 = pParameters->Add_FilePath( NULL , "PATH" , _TL("Select file"), _TL(""), _TL("SRTM30 DEM Tiles (*.dem)|*.dem|All Files|*.*") ); }
//--------------------------------------------------------- C_Kriging_Base::C_Kriging_Base(void) { CSG_Parameter *pNode; CSG_Parameters *pParameters; //----------------------------------------------------- Parameters.Add_Grid_Output( NULL , "GRID" , _TL("Grid"), _TL("") ); Parameters.Add_Grid_Output( NULL , "VARIANCE" , _TL("Variance"), _TL("") ); pNode = Parameters.Add_Shapes( NULL , "SHAPES" , _TL("Points"), _TL(""), PARAMETER_INPUT ); Parameters.Add_Table_Field( pNode , "FIELD" , _TL("Attribute"), _TL("") ); Parameters.Add_Value( NULL , "BVARIANCE" , _TL("Create Variance Grid"), _TL(""), PARAMETER_TYPE_Bool , true ); Parameters.Add_Choice( NULL , "TARGET" , _TL("Target Grid"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|"), _TL("user defined"), _TL("grid system"), _TL("grid") ), 0 ); Parameters.Add_Choice( NULL , "MODEL" , _TL("Variogram Model"), _TL(""), CSG_String::Format(SG_T("%s|%s|%s|%s|%s|%s|"), _TL("Spherical Model"), _TL("Exponential Model"), _TL("Gaussian Model"), _TL("Linear Regression"), _TL("Exponential Regression"), _TL("Power Function Regression") ), 3 ); Parameters.Add_Value( NULL , "BLOCK" , _TL("Block Kriging"), _TL(""), PARAMETER_TYPE_Bool , false ); Parameters.Add_Value( NULL , "DBLOCK" , _TL("Block Size"), _TL(""), PARAMETER_TYPE_Double , 100.0, 0.0, true ); Parameters.Add_Value( NULL , "BLOG" , _TL("Logarithmic Transformation"), _TL(""), PARAMETER_TYPE_Bool ); Parameters.Add_Value( NULL , "NUGGET" , _TL("Nugget"), _TL(""), PARAMETER_TYPE_Double, 0.0, 0.0, true ); Parameters.Add_Value( NULL , "SILL" , _TL("Sill"), _TL(""), PARAMETER_TYPE_Double, 10.0, 0.0, true ); Parameters.Add_Value( NULL , "RANGE" , _TL("Range"), _TL(""), PARAMETER_TYPE_Double, 100.0, 0.0, true ); pNode = Parameters.Add_Node( NULL , "PARMS" , _TL("Additional Parameters"), _TL("") ); Parameters.Add_Value( pNode , "LIN_B" , _TL("Linear Regression"), _TL("Parameter B for Linear Regression:\n y = Nugget + B * x"), PARAMETER_TYPE_Double, 1.0 ); Parameters.Add_Value( pNode , "EXP_B" , _TL("Exponential Regression"), _TL("Parameter B for Exponential Regression:\n y = Nugget * e ^ (B * x)"), PARAMETER_TYPE_Double, 0.1 ); Parameters.Add_Value( pNode , "POW_A" , _TL("Power Function - A"), _TL("Parameter A for Power Function Regression:\n y = A * x ^ B"), PARAMETER_TYPE_Double, 1.0 ); Parameters.Add_Value( pNode , "POW_B" , _TL("Power Function - B"), _TL("Parameter B for Power Function Regression:\n y = A * x ^ B"), PARAMETER_TYPE_Double, 0.5 ); //----------------------------------------------------- pParameters = Add_Parameters(SG_T("USER") , _TL("User defined grid") , _TL("")); pParameters->Add_Value( NULL , "CELL_SIZE" , _TL("Grid Size"), _TL(""), PARAMETER_TYPE_Double, 100.0, 0.0, true ); pNode = pParameters->Add_Value( NULL , "FIT_EXTENT" , _TL("Fit Extent"), _TL("Automatically fits the grid to the shapes layers extent."), PARAMETER_TYPE_Bool , true ); pParameters->Add_Range( pNode , "X_EXTENT" , _TL("X-Extent"), _TL("") ); pParameters->Add_Range( pNode , "Y_EXTENT" , _TL("Y-Extent"), _TL("") ); //----------------------------------------------------- pParameters = Add_Parameters(SG_T("SYSTEM") , _TL("Choose Grid System") , _TL("")); pParameters->Add_Grid_System( NULL , "SYSTEM" , _TL("Grid System"), _TL("") ); //----------------------------------------------------- pParameters = Add_Parameters(SG_T("GRID") , _TL("Choose Grid") , _TL("")); pNode = pParameters->Add_Grid_System( NULL , "SYSTEM" , _TL("Grid System"), _TL("") ); pParameters->Add_Grid( pNode , "GRID" , _TL("Grid"), _TL(""), PARAMETER_INPUT , false ); pParameters->Add_Grid( pNode , "VARIANCE" , _TL("Variance"), _TL(""), PARAMETER_INPUT_OPTIONAL, false ); }
//--------------------------------------------------------- CKriging_Base::CKriging_Base(void) { CSG_Parameter *pNode; CSG_Parameters *pParameters; //----------------------------------------------------- pNode = Parameters.Add_Shapes( NULL , "POINTS" , _TL("Points"), _TL(""), PARAMETER_INPUT, SHAPE_TYPE_Point ); Parameters.Add_Table_Field( pNode , "ZFIELD" , _TL("Attribute"), _TL("") ); //----------------------------------------------------- Parameters.Add_Choice( NULL , "TARGET" , _TL("Target Grid"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("user defined"), _TL("grid") ), 0 ); Parameters.Add_Choice( NULL , "TQUALITY" , _TL("Type of Quality Measure"), _TL(""), CSG_String::Format(SG_T("%s|%s|"), _TL("standard deviation"), _TL("variance") ), 0 ); //----------------------------------------------------- Parameters.Add_Value( NULL , "LOG" , _TL("Logarithmic Transformation"), _TL(""), PARAMETER_TYPE_Bool ); pNode = Parameters.Add_Value( NULL , "BLOCK" , _TL("Block Kriging"), _TL(""), PARAMETER_TYPE_Bool , false ); Parameters.Add_Value( pNode , "DBLOCK" , _TL("Block Size"), _TL(""), PARAMETER_TYPE_Double , 100.0, 0.0, true ); /////////////////////////////////////////////////////// //----------------------------------------------------- if( !SG_UI_Get_Window_Main() ) { Parameters.Add_Value( NULL , "VAR_MAXDIST" , _TL("Maximum Distance"), _TL(""), PARAMETER_TYPE_Double , -1.0 ); Parameters.Add_Value( NULL , "VAR_NCLASSES" , _TL("Lag Distance Classes"), _TL("initial number of lag distance classes"), PARAMETER_TYPE_Int , 100, 1, true ); Parameters.Add_Value( NULL , "VAR_NSKIP" , _TL("Skip"), _TL(""), PARAMETER_TYPE_Int, 1, 1, true ); Parameters.Add_String( NULL , "VAR_MODEL" , _TL("Model"), _TL(""), SG_T("a + b * x") ); } /////////////////////////////////////////////////////// //----------------------------------------------------- pParameters = Add_Parameters("USER", _TL("User Defined Grid") , _TL("")); pParameters->Add_Value( NULL , "BVARIANCE" , _TL("Create Quality Grid"), _TL(""), PARAMETER_TYPE_Bool, true ); m_Grid_Target.Add_Parameters_User(pParameters); //----------------------------------------------------- pParameters = Add_Parameters("GRID", _TL("Choose Grid") , _TL("")); m_Grid_Target.Add_Parameters_Grid(pParameters); //----------------------------------------------------- m_Grid_Target.Add_Grid_Parameter(SG_T("VARIANCE"), _TL("Quality Measure"), true); }