ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / GridOptions Class / SetGridOrigin Method / SetGridOrigin(Coordinate2D) Method
Example

In This Topic
    SetGridOrigin(Coordinate2D) Method
    In This Topic
    Sets the origin of the grid.
    Syntax
    Public Overloads Sub SetGridOrigin( _
       ByVal origin2D As Coordinate2D _
    ) 
    public void SetGridOrigin( 
       Coordinate2D origin2D
    )

    Parameters

    origin2D
    Remarks
    The X and Y units must be in the spatial reference of the map on which the grid will be shown. Addins are responsible for performing any necessary projection of values prior to calling this method. Grid origin elevation or "Z" is assumed to be zero.
    Example
    Set Grid Origin for Grid Options for a Map
    {
        //assume
        //var map = MapView.Active.Map;
        var center_pt = MapView.Active.Extent.Center;
        var width = MapView.Active.Extent.Width;
        var height = MapView.Active.Extent.Height;
        var qtr_width = width * 0.25;
        var qtr_ht = height * 0.25;
    
        QueuedTask.Run(() =>
        {
            //If grid options have not been set for the map, then default grid options are added
            //for the map and returned otherwise the existing gridoptions are returned.
            //NOTE: Grid options are by value meaning a copy is returned. Any changes made to the
            //grid options need to be -set- back on the map using SetGridOptions for the changes to persist.
            var gridOptions = GridOptionsEnvironment.Instance.GetGridOptions(map);
    
            //Set the grid origin
            var x1 = center_pt.X + qtr_width;
            var y1 = center_pt.Y + qtr_ht;
            gridOptions.SetGridOrigin(new Coordinate2D(x1, y1));
            //or use Coordinate3D
            gridOptions.SetGridOrigin(new Coordinate3D(x1, y1, 0));
    
            //To apply changes, the gridoptions must be set back on the map
            GridOptionsEnvironment.Instance.SetGridOptions(map, gridOptions);
        });
    }
    Set Various Grid Option parameters for GridOptions for a Map
    {
        var center_pt = MapView.Active.Extent.Center;
        var width = MapView.Active.Extent.Width;
        var height = MapView.Active.Extent.Height;
        var qtr_width = width * 0.25;
        var qtr_ht = height * 0.25;
    
        QueuedTask.Run(() =>
        {
            //use defaults
            var gridOptions = GridOptionsEnvironment.Instance.DefaultGridOptions;
    
            //customize the options as needed
            gridOptions.RotateWithMap = !gridOptions.RotateWithMap;
            gridOptions.GridLineColor = ColorFactory.Instance.RedRGB;
    
            var gs_rotation = gridOptions.GetGridRotation();
            gridOptions.SetGridRotation(gs_rotation * 1.5);
    
            var gs_meters = gridOptions.GetGridSpacingMeters();
            var gs_in_spacing_units = gridOptions.GetGridSpacing();
            var gs_units = gridOptions.GridSpacingUnits;
    
            //meters assumed
            gridOptions.SetGridSpacingInMeters(gs_meters + 10);
            //specify units explicitly
            gridOptions.SetGridSpacing(1000, LinearUnit.Feet);//internally will be converted to meters
    
            gridOptions.IsGridLines = true;//use lines (default)
    
            var grid_interval = gridOptions.GridMajorInterval;
    
            gridOptions.SnapToGridEnabled = true;
    
            var x1 = center_pt.X - qtr_width;
            var y1 = center_pt.Y + qtr_ht;
            gridOptions.SetGridOrigin(new Coordinate2D(x1, y1));
            //To apply changes, the gridoptions must be set back on the map
            GridOptionsEnvironment.Instance.SetGridOptions(map, gridOptions);
        });
    }
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.7 or higher.
    See Also