Quantcast
Channel: Question and Answer » arcobjects
Viewing all 66 articles
Browse latest View live

ORG_ Tables After Replication

$
0
0

I am performing a an import on replica data using ArcObjects. Everything seems perfect – I am using one way Parent to Child with archiving enabled and I am using a disconnected approach (import XML from GeoDataserver). Also: we are using 10.1 with the latest service pack/QIP.

Nothing is throwing any errors, and all the data seems to have loaded correctly.

When I go to unregister replica (no longer needed), this also seems to process successfully (no errors or oddities just yet). But when I check inside the file geodatabase in ArcCatalog, it has created a mass of “ORG_”
tables corresponding to tables that had undergone changes.

Poking around inside these tables, I see a lot of references to the data that seems to have been deleted or replaced (not the new data). Is this normal behavior? Are these just “original” records for reference? I am wondering why these were not cleaned up.


Problem with polygon to multipath creation

$
0
0

Hi i tried convert polygon to multipath in Arcobjects but after converted multipath shape type shown multipath M what is the problem could you please tell me what is the solution for this.

Unable to load DLL 'ArcGISVersion.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

$
0
0

I recently migrated my desktop from ArcGIS 10.1 to 10.3.1 and visual studio from 2010 to 2013. I am now getting a problem trying to run an Engine application. It builds fine but when I try to debug it I get the above error. The error occurs right at the start when trying to get a list of installed environments “For Each item As ESRI.ArcGIS.RuntimeInfo In irs”:

   Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) Handles Me.Startup

        Dim irs As Generic.IEnumerable(Of ESRI.ArcGIS.RuntimeInfo)

        irs = ESRI.ArcGIS.RuntimeManager.InstalledRuntimes
        For Each item As ESRI.ArcGIS.RuntimeInfo In irs
            System.Diagnostics.Debug.Print(item.Path)
            System.Diagnostics.Debug.Print(item.Version)
            System.Diagnostics.Debug.Print(item.Product.ToString())
        Next
        Dim bInit As Boolean
        bInit = ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop)

    End Sub

From what I’ve read the problem is not that the ArcGISVersion.dll cannot be found (it imports into the solution no problem) it is that this .dll seems to call another .dll that cannot be found. The stack trace from the error is:

       at ESRI.ArcGIS.NativeInterop.DllGetClassObject(Guid& rclsid, Guid& riid, Object& ppv)

   at ESRI.ArcGIS.RuntimeManager.GetArcGISVersion()

   at ESRI.ArcGIS.RuntimeManager.<get_InstalledRuntimes>d__0.MoveNext()

   at SanGIS_RoadMaintenance.My.MyApplication.MyApplication_Startup(Objectsender, StartupEventArgs e) 
in R:WorkSangisSanGISEditToolsSanGIS_RoadMaintenanceSanGIS_RoadMaintenanceUtilitiesApplicationEvents.vb:line 24

I’m not familiar with ESRI.ArcGIS.NativeInterop and I don’t know how to add a reference to it.

Also I created a new ArcEngine project from scratch and that runs fine, no errors when debugging or binding to the license manager.

Does anybody know why this app might be failing after migration?

How to select object on the map in pan mode?

$
0
0

The user moves on the map (pan mode). The he clicks right mouse button. I want to select the element and then display context menu.

What is the way to select element on the map in pan mode?

I use ArcObjects 10.1, c#

My idea is to switch in select mode, then simulate mouse click, then get selected element and then display menu. I think it is not good. Does the normal way to select element in pan mode exist?

Problem for Map Topology creation in ArcMap

$
0
0

I will create a map topology in ArcMap. My code defines the layer in my map topology but after call EditTopology Tools, a message show “No topology …. bla bla bla..” Any ideas why this would be happening?

my code :

            IFeatureLayer pFeatureLayer = null;
            IEnumLayer layersInMap = getAllGeoFeatureLayer();
            layersInMap.Reset();
            ILayer layerInMap = layersInMap.Next();
            while (layerInMap != null) {
                ILayer tempLayer = (ILayer)layerInMap;
                if (tempLayer.Name.ToUpper() == "my_layer_test") {
                    pFeatureLayer = (IFeatureLayer)tempLayer;
                }
                layerInMap = layersInMap.Next();
            }

            if (pFeatureLayer == null) {
                return;
            }


            IFeatureDataset featureDataset = pFeatureLayer.FeatureClass.FeatureDataset;
            ISchemaLock schemaLock = (ISchemaLock)featureDataset;

            schemaLock.ChangeSchemaLock(esriSchemaLock.esriExclusiveSchemaLock);
            ITopologyContainer2 topologyContainer = (ITopologyContainer2)featureDataset;
            IMapTopology2 topology = (IMapTopology2)topologyContainer.CreateTopology("F_CaPa_Topology", topologyContainer.DefaultClusterTolerance, -1, "");
            topology.AddLayer(pFeatureLayer);

            ITopologyRule topologyRule = (ITopologyRule)new TopologyRule();
            topologyRule.TopologyRuleType = esriTopologyRuleType.esriTRTAreaNoOverlap;
            topologyRule.Name = "test";
            topologyRule.OriginClassID = pFeatureLayer.FeatureClass.FeatureClassID;
            topologyRule.AllOriginSubtypes = true;

            ITopologyRuleContainer topologyRuleContainer = (ITopologyRuleContainer)topology;
            topologyRuleContainer.AddRule(topologyRule);



            IGeoDataset geoDataset = (IGeoDataset)topology;
            IEnvelope envelope = geoDataset.Extent;
            topology.Cache.Build(((IGeoDataset)topology).Extent,false);
            topologyContainer.TopologyByName["My_layer_Topology"].ValidateTopology(envelope);
            ITopologyGraph4 topoGraph = topology.Cache as ITopologyGraph4;
            topoGraph.Build(envelope, false);

How to find NetworkAnalysis extension with ArcObjects?

$
0
0

I’m using ArcGIS 10.0
My code:

IAoInitialize init = new AoInitializeClass();
var a=  init.IsExtensionCodeAvailable(esriLicenseProductCode.esriLicenseProductCodeEngine,esriLicenseExtensionCode.esriLicenseExtensionCodeNetwork);
//a==true
IExtensionManager extensionManager = m_hookHelper2.ExtensionManager;
UID networkAnalys= new UIDClass();
networkAnalys.Value = "esriEditorExt.UtilityNetworkAnalysisExt";`
UID spatial = new UIDClass();
spatial.Value = "esriSpatialAnalystUI.SAExtension";
IExtension extensionspatial = extensionManager.FindExtension(spatial);
//This Ok, extensionspatial !=NULL
IExtension extensionnetwork = extensionManager.FindExtension(networkAnalys);
//Can't get this extension, extensionnetwork ==NULL

How I can get it

Merging features into single programmatically

$
0
0

I have a shapefile with polygons.
I can merge them manually by going into edit session and, selecting a some features to be merged, and then using merge button under Editor.

How to do this programmatically (in VBA)?

I’ve found the analogous ways but it doesn’t solve the problem:

  1. Standard Dissolve tool (from ArcToolbox) doesn’t work correctly for this purpose, because it cuts off many fields and because it operates with whole FeatureClass but not with a separate features.
  2. As I know by reading some examples, using an IBasicGeoprocessor (VBA) have the same problem – it operates with whole FeatureClass, producing a new FeatureClass, but not with separate features, mearging them within the same FeatureClass.

@kenbuja, Here is my try in vba (not in vb.net) :
Using a CType causes the Compile error: Sub or Function not defined.
What do I do wrong?

Dim pMxDoc As IMxDocument
Dim pCountyLayer As IFeatureSelection
Dim pCountySelection As ISelectionSet
Dim pCountyCursor As IFeatureCursor
Dim pCountyCursor2 As IFeatureCursor
Dim pFirstFeature As IFeature
Dim pSecondFeature As IFeature
Dim pThirdFeature As IFeature

Set pMxDoc = ThisDocument
Set pCountyLayer = pMxDoc.FocusMap.Layer(1)
Set pCountySelection = pCountyLayer.SelectionSet

' Create a cursors from the selected feature in Layer (1).
pCountySelection.Search Nothing, True, pCountyCursor
pCountySelection.Search Nothing, True, pCountyCursor2
' Return the selected features from the cursor.

Set pFirstFeature = pCountyCursor.NextFeature


Set pThirdFeature = pCountyCursor2.NextFeature
Set pSecondFeature = pCountyCursor2.NextFeature


Dim pFirstGeometry As IGeometry
Set pFirstGeometry = CType(pFirstFeature.Shape, IGeometry)
Dim pTopoOperator As ITopologicalOperator
Set pTopoOperator = CType(pFirstGeometry, ITopologicalOperator)
Dim pSecondGeom As IGeometry
Set pSecondGeom = CType(pSecondFeature.Shape, IGeometry)
Dim pMergedGeom As IGeometry
Set pMergedGeom = pTopoOperator.Union(pSecondGeom)

LasDatasetToRaster does nothing to the Raster Layer

$
0
0

I have been trying to figure out how to clip and rasterize a LiDAR map file programmatically (Not through arcpy) I use C# but read many languages. So far I have been able to access and assign the LASD values but when I use ILasSurface.AsRaster or LasDatasetToRaster the RasterLayer outputs the same black square as if I did not call these functions. I can’t find any documentation on this so I hope somebody can help. Thank you!

    public void RasterDatasetToMap(IRasterDataset rDataset, IPointFilter pf, IRasterDatasetLayer pRasterLayer)
    {
        ISpatialReference sr = new UnknownCoordinateSystemClass();
        ITrackCancel2 tc = new CancelTrackerClass();
        //Define the position and dimension of the raster dataset.
        IPoint origin = new PointClass();
        origin.PutCoords(15.0, 15.0);

        int width = 100; //This is the width of the raster dataset.
        int height = 100; //This is the height of the raster dataset.
        double xCell = 30; //This is the cell size in x direction.
        double yCell = 30; //This is the cell size in y direction.
        int NumBand = 1;

        //Create new Raster Dataset
        try
        {
            rDataset = rWorkshop.CreateRasterDataset(
                "new raster layer - test 9", "TIFF", //filename and format
                origin, width, height, xCell, yCell, //Dimensions
                NumBand, rstPixelType.PT_FLOAT, sr, //Pixels, Spacial Reference
                true //Permenant?
            );
            status += "Default RasterDatabase Set! n";
        }
        catch (Exception ex)
        {
            status += "Failed to create raster dataset: " + ex.Message + " " + status + "n";
        }


        //Set Point Filter
        try
        {
            pf = (ILasFilter)new LasFilter();
            pf.AreaOfInterest = aview.Extent.Envelope;
            status += "Point Filter Set! nDimensions: " + pf.AreaOfInterest.Envelope.Height + "x" + pf.AreaOfInterest.Envelope.Width + "n";
        }
        catch (Exception ex)
        {
            status += "Failed to create point filter: " + ex.Message + " " + status + "n";
        }

        //Rasterize Raster Dataset
        try
        {
            /*
             * Possible Methods
             */

            LASSurface.AsRaster(
                tc, //Track Cancel
                pf, //Point Filter
               rDataset, //Output Raster Dataset
               //Rastering Options
               esriPointToRasterMethod.esriPointToRasterNearest,
               esriLasZSource.esriLasZSourceZ,
               esriPointToRasterVoidFillMethod.esriPointToRasterVoidFillInterpolation,
               esriSurfaceInterpolationType.esriLinearInterpolation,
               1
            );

            /*LasDatasetToRaster conversion = new LasDatasetToRaster(
                LASDatasetLayer,
                rDataset
            );*/
            status += "Rastering technique finished. Check map for validity. n";
        }
        catch (Exception ex)
        {
            status += "Failed to  raster dataset: " + ex.Message + " " + status + "n";
        }

        //Experiment
        try
        {
        }
        catch (Exception ex)
        {
            status += "Failed to  create tin: " + ex.Message + " " + status + "n";
        }

        //Create Raster Layer
        try
        {
            pRasterLayer = new RasterLayer();
            pRasterLayer.CreateFromDataset(rDataset);
            status += "Default RasterLayer Set! n";
        }
        catch (Exception ex)
        {
            status += "Failed to create raster layer: " + ex.Message + " " + status + "n";
        }

        map.AddLayer(pRasterLayer);
        status += "Check Your Map! n";
    }

Get currently open Attribute Window

$
0
0

I have an AddIn (C# VS 2010) that depends on the selected items in the Attribute Window (This is the right-click on the Layer Attributes Table Window). When the user hits Start Editing I want to get a handle on the Currently open Attribute Window (or check if it is open) and automatically select the correct Layer. I know how to get the currently selected layer as shown below.

var puid = new UID {Value = "{E156D7E5-22AF-11D3-9F99-00C04F6BC78E}"};
IEnumLayer penumlayer = _mxDocument.ActiveView.FocusMap.get_Layers(puid, true);
penumlayer.Reset();
featureLayer = penumlayer.Next() as IFeatureLayer;

But I need to check if the Attribute Window is open and then I can auto select the Layer with some other code based on the DataSet Name.

I’m hoping that someone has a code snippet that will help me.

Sr Lock on created gdb is not releasing

$
0
0

My problem is sr lock is not releasing on gdb , also please see that code can be improved?

Below is my code

public String exportGDB(String whereClause,IServerObjectHelper serverObjectHelper)  // returns the path of GDB
{
        String tempPath = System.getProperty("java.io.tmpdir");
        SOEHelper soeHelper = new SOEHelper();      
        String fileName = System.currentTimeMillis() + ".gdb";

        try 
        {
            // Create a FileGDB workspace factory           
            IWorkspaceFactory workspaceFactory = new FileGDBWorkspaceFactory();



            // Create a new File geodatabase
            IWorkspaceName workspaceName = workspaceFactory.create(tempPath,fileName , null, 0);

            IName wsName = (IName) workspaceName;

            IWorkspace workspace = new IWorkspaceProxy(wsName.open());

            IFeatureWorkspace featureWorkspace = new IFeatureWorkspaceProxy(workspace);

            IMapLayerInfos layerInfos = soeHelper.getLayerInfo(serverObjectHelper); 

            IQueryFilter qf = new QueryFilter();
            qf.setWhereClause(whereClause);



            IFeatureClass fc = null;
            IMapLayerInfo layerInfo = null;
            IFeatureClass gdbFeatureClass = null;
            IFeature newFeature = null;
            IFeature feature = null;
            IFeatureCursor  featureCursor = null;


            for (int i=0; i < layerInfos.getCount(); i++)
            {
                layerInfo = layerInfos.getElement(i);

                fc = soeHelper.getFeatureClass(layerInfo.getID(), serverObjectHelper);              
//              
//              IWorkspaceName fcwsName = (IWorkspaceName)fc.getFeatureDataset().getWorkspace();
//
                IFeatureClassDescription fcDesc = new FeatureClassDescription();
                IObjectClassDescription ocDesc = (IObjectClassDescription) fcDesc;
//              
//
                gdbFeatureClass = new FeatureClass(featureWorkspace.createFeatureClass(layerInfo.getName(), layerInfo.getFields(), 
                        ocDesc.getInstanceCLSID(), ocDesc.getClassExtensionCLSID(), esriFeatureType.esriFTSimple, "SHAPE", ""));
//              IFeatureClassName sourceFeatureClassName = new FeatureClassName();
//
//              IFeatureDataConverter2 featureDataConverter = new FeatureDataConverter();
//
//              IEnumInvalidObject enumInvalidObject = featureDataConverter.convertFeatureClass((IDatasetName)fcwsName, 
//                      qf, null,(IFeatureDatasetName)workspaceName, sourceFeatureClassName, 
//                      soeHelper.getGeomRef(fc), 
//                      layerInfo.getFields(), "", 1000, 0);
//
//                      
//              // Check for errors.
//              IInvalidObjectInfo invalidObjectInfo = null;
//              enumInvalidObject.reset();
//              while ((invalidObjectInfo = enumInvalidObject.next()) != null){
//                  // Handle the errors in a way appropriate to the application.
//                  System.out.println("Errors occurred for the following feature: " +
//                          invalidObjectInfo.getInvalidObjectID());
//              }

                    featureCursor = fc.search(qf, true);

                    feature =  featureCursor.nextFeature();             

                    while(feature != null)
                    {                                   
                        newFeature = gdbFeatureClass.createFeature();

                        for (int j = 0; j < featureCursor.getFields().getFieldCount(); j++) 
                        {

                            if(featureCursor.getFields().getField(j).getType() ==  esriFieldType.esriFieldTypeOID)
                            { // skip 
                                continue;
                            }

                            newFeature.setValue(newFeature.getFields().findField(featureCursor.getFields().getField(j).getName()), feature.getValue(j));
                        }

                        newFeature.store();
                        feature =  featureCursor.nextFeature();
                        Cleaner.release(newFeature);
                    }

                    Cleaner.release(gdbFeatureClass);
                    Cleaner.release(featureCursor);
            }

//          Cleaner.releaseAllInCurrentThread();

//          Cleaner.release(gdbFeatureClass);
//          Cleaner.release(featureCursor);     
//          
            soeHelper.releaseSilently(workspaceName);
            soeHelper.releaseSilently(wsName);
            soeHelper.releaseSilently(layerInfos);

            Cleaner.release(featureWorkspace);          
            Cleaner.release(workspace);         
            Cleaner.release(workspaceFactory);

            qf = null;
            workspace = null;
            featureWorkspace = null;
            workspaceFactory = null;
            fc = null;
            layerInfo = null;
            gdbFeatureClass = null;
            newFeature = null;
            feature = null;
            featureCursor = null;

            return fileName;

        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }


}

Capturing an event On Sketch Finish in ArcObjects

$
0
0

I am using IEditEvents_Event and IEditor. I invoked the GarciaUI_CreateNewFeatureTask and used:

pID.Value = "esriEditor.SketchTool";
pCommandItem = pCommandBars.Find(pID);
if (pCommandItem != null)
{
  pCommandItem.Execute();
}

It is working and I can create a polygon in edit mode. I want to capture an event after the Polygon Creation is completed.

I also have another button on the same form to Split Polygon. I want to capture an event after the split is completed. But I want to capture both these events separately. Can someone help me to accomplish it?

I have to do it in c# + ArcObjects ArcGIS 10.3.

Geometry Location In Respect To Another Geometry

$
0
0

I am trying to figure out where a geometry is residing in respect to another geometry. My Image explains things better, I have Square nodes A, and B. and I have circle Child nodes X, and Y. I have all the nodes available. Is there a way to find where the node is residing in respect to its parent ? -if it is on top of the node, bottom, right side, left side-

enter image description here

So for my example I am on node X, and I have it’s parent Node A. so X is ABOVE A, if X was on it is right, then it would be on the Side of A.

I tried using the shape of node X and then getting its segments, then examine each segment by extending a line from the middle of it and see if it intersects the parent node, but then I dont know where each segment is located so that failed.
I could probably use the X,Y coordinates of each node to find it’s location in respect to it’s parent but is there another way ? maybe something within the APIs that I missed ?

Getting started with ArcObjects?

$
0
0

What is the best route or place to get started with ArcObjects if one is not a developer and not aiming to become a developer?

I’ve been using gis professionally for a long time, almost two decades, arcinfo/arcgis for most of that; I’m pretty good. I’m learning software development, and even have a modestly successful small python application used in a public project; I’m not good! I don’t want to become a full fledged software developer but I keep running into things I just can’t do without programming (example). In the arcgis world this puts me pretty squarely in the python camp, which is fine by me since I like python, however python does not have straightforward access to ArcObjects. (Python and ArcObjects is possible, but it’s an unsupported route. This question is about following a beaten path.)

I need to get started, but where? Arcgis help says to get started with the ESRI Developer Network but $1500/yr is definitely not in my budget, and sounds like using a sledge hammer to swat mosquitos. And which language .NET, Visual Basic, or Visual C++?


UPDATE: Thank you everyone for the wonderful answers. In light of them I realise
I unecessarily narrowed the scope of my question be pre-supposing “ArcObjects” is the direction I need to go in. A more open ended formulation is more along the lines of:

I keep running into problems I just
can’t solve with arcgis and python
alone. What else can I learn/use to
solve problems like X? I’ve no
interest or intention of becoming a
software developer. I just need to do
a couple things which aren’t exposed
to the arcgis python modules.

Activate / Deactivate customized ITool from Form in ArcObjects?

$
0
0

I’m using ArcGIS 9.3/VB6, and I have a little issue with the activation of a custom Tool:

I have a Class, that implements both ICommand and ITool

When I click on ICommand, the form is launched
First, The CurrentTool is deactivated

Set Application.CurrentTool = Nothing

Then I need to activate the ITool, so I click on a button, I get my tool UID, and :

Dim pSelectedTool As ICommandItem
Dim pCommandBars As ICommandBars
Dim pApp As IApplication

Set pCommandBars = pApp.Document.CommandBars
Set pSelectedTool = pCommandBars.Find(pUID)
Set pApp.CurrentTool = pSelectedTool

The pApp.CurrentTool.Name contain the name of my ITool, but the problem is that the Tool is still deactivated, when I click on the Map nothing happen!

I found a question similar to mine, but with no help.

How to Use IWorkspaceFactoryLockControl in Java

$
0
0

I have tried to convert the interface but failed.

IWorkspaceFactory2 pWorkspaceFactory;
pWorkspaceFactory = new CadWorkspaceFactory();
ipWsFactoryLock = (IWorkspaceFactoryLockControl)pWorkspaceFactory; 

It’s failed when I use java.
I also tried the way to use the keyword NEW like this:

IWorkspaceFactory2 pWorkspaceFactory;
pWorkspaceFactory = new CadWorkspaceFactory();
ipWsFactoryLock = new IWorkspaceFactoryLockControlProxy(pWorkspaceFactory);

And I failed again.How can I use this method to release FeatureClass in Java


TOC layer symbol changed EVENTS in ArcMap

$
0
0

I want to do something when user changes one of TOC layer’s symbol. I am using .NET in arcMap 10.0 . How can it possible with arcobjects ?
Please , help.
Specially I want to know, Is there any events that will fired when user change symbol of a layer in TOC?
Thanks…

How to Get ArcFM Session name

$
0
0

I need some information about session name getting.
i am working on ArcMAP VBA with ArcFM database i have create some validation tools on this data. i provide error report with validation name but production user requirement is error report with ArcFM Session name also how to get ArcFM session name through code could you please solve my problem.

My Session Name is = Pipes_Connection_checking

Error report name is = Pipes_validations

Final my requirement is report name with (My Session Name + Error report name)

Is there a LINQ-provider for GeoDatabase

$
0
0

I want to query my ArcSDE geodatabase using LINQ but I don´t know if there is an ESRI-provider that may also read geometries and which is able to handle archiving as well. Thus I´d like to read data from a FeatureClass for example and apply a whereclause:

IRelationalOperator relOp = (IRelationalOperator) myFeature.Shape;
var features = featureClass
    .Where(x => relOp.Within(x.Shape) && x.MyProperty > 1)
    .OrderBy(x => x.MyProperty)

Appaerently while querying simple structures such as a numeric field might be quite easy I suppose geometric queries expect much more work.

Does this even exist or has anyone ever done something similar? Will it exist on ArcGIS Pro (of course not using arcobjects)?

Can I compile an addin developed in ArcGIS 10.3.1 for use with 10.1 and 10.2?

$
0
0

I made an update to one of my addins mainly because users requested new features. I made the changes and compiled the addin in 10.3.1. Although I specified that the addin is compatible with 10.3 and higher I am getting emails from users wondering if I could make it work for 10.2.

ESRI provides a way to save Map Documents for downward compatibility. Is there a way to compile an addin developed in ArcGIS 10.3 for use with legacy versions (10.1, 10.2)

Note: my ArcObject references are set to non specific version (Specific Version = False)

Spatial Query between polyline features and point features within specified Buffer

$
0
0

I’m new to GIS (so I’m lost on this) and looking for a C# code sample to help me do 2 types of spatial queries. I have 2 Layers only. First layer is pipelines, which are polyline shapes so I can select multiple pipeline segments to make up an entire pipeline. Second Layer is facilities, which are point shapes.

Query 1: Select Pipeline Segments in the Pipeline Layer (Polylines) and find the facilities (in the Facility Layer) that are within a certain distance of selected Pipeline Segments.

Query 2: Select a single Facility in the Facility Layer (Point) and find the Pipeline Segments (Polylines) that are within a certain distance of the Facility Point.

I can do these queries via the ArcMap interface. I select the Source Features in the Attribute Table, then Selection Menu, Select by Location, select the “other” Layer as the Target Layer and for Spatial Selection Method I select “Target layer(s) features are within a distance of the Source layer feature”. But now I need to do this in C# code for my ArcMap AddIn.

Viewing all 66 articles
Browse latest View live


Latest Images