|
POST
|
I am assuming you are creating a geoprocessor object in your C# code. Do you dispose of this object using the arcobjects comreleaser or using the .net release com object method after you are done? If not I suggest you do, it may help free the memory and/or handles. Cheers
... View more
12-01-2010
06:01 AM
|
0
|
0
|
846
|
|
POST
|
Looks like you are trying to draw the page layout in draft mode (toggle draft mode command on the page layout toolbar.) The IFrameElement.DraftMode property will do this but you need to set it on all the elements of the layout http://resources.esri.com/help/9.3/ArcGISServer/apis/ArcObjects/esriCarto/IFrameElement_DraftMode_Example.htm
... View more
11-29-2010
06:46 AM
|
0
|
0
|
381
|
|
POST
|
Well based on a quick look, pFeature is nothing. Declaring a variable without setting it to anything, will result in an 'empty' or nothing variable. You cannot access any of the methods and properties on a nothing variable. Also you will get an error on this line: pLayer.Name = pFeature.Value(strLayer) Because pLayer is nothing. You need to set pLayer to something. For example the first layer of the map: pLayer = pMxDoc.FocusMap.Layer(0). Of course you are probably looking for a specific layer so you may need to loop through the layers in the map or something. Once you have the layer you are interested in, you can Query Interface to get the IFeatureLayer (if it applies.) IFeatureLayer has the FeatureClass property of type IFeatureClass. The IFeatureClass has a search method that returns a featurecursor. IFeatureCursor.NextFeature returns a feature of type IFeature. That should give you a populated feature that has values in it. another thing you should not use "Set" for a string. In VBA "Set" is only used for object (quick rule of thumb if I can write the value down no set, if I can't, use set, works 99% of the time.) Aside from that, field might not be found (findfield returns -1) or the value in that field for that feature could be null. Good luck
... View more
11-22-2010
09:10 AM
|
0
|
0
|
852
|
|
POST
|
ICommandbar.add returns an ICommandItem. When you add the commands to the toolbar, set the objects returning to an ICommandItem variable. You can then change the properties.
... View more
11-22-2010
06:12 AM
|
0
|
0
|
1229
|
|
POST
|
you might want to start with this sample http://resources.esri.com/help/9.3/ArcGISDesktop/dotnet/ce43d00c-daaf-4c38-b608-2c6f411e81c1.htm
... View more
11-19-2010
08:17 AM
|
0
|
0
|
567
|
|
POST
|
The draw method takes in the IDisplay (of the map), The ScreenDisplay has an interface IScreenDisplay with DisplayTransformation. IDisplayTransformation has scaleratio property which refers to the map scale.
... View more
11-17-2010
11:47 AM
|
0
|
0
|
373
|
|
POST
|
The code looks ok. James, the extra backslash is because c# does not use string literals, the slash is an escape character (\n is an end of line.) Double slash is correct. The shapefile could be corrupt. You could try adding it from ArcMap add data. Also, if you don't have an exception handler (try, catch) I suggest you put one in and examine the error message. You might also consider using the IWorkspace2.nameexists method because openshapefile with a featureclass that is missing raises an exception try-catch: http://msdn.microsoft.com/en-us/library/0yd65esw.aspx
... View more
11-15-2010
08:59 AM
|
0
|
0
|
455
|
|
POST
|
More info on this. Apparently ArcGIS 10 can use more memory but it is still 32 bit. http://events.esri.com/uc/QandA/index.cfm?fuseaction=answer&conferenceId=2F6DC1A1-1422-2418-883C3868A9004888&questionId=3088 Even if ArcGIS desktop was 64bit and you had 192GB RAM, sooner or later someone is bound to feed in a raster that the system can't handle (i.e. TB images.)
... View more
11-15-2010
05:14 AM
|
0
|
0
|
694
|
|
POST
|
Not sure, I have never used VS Express. To be honest I have never gotten the F1 help with ArcObjects to work consistently and if it did I found it to be very slow so I gave up on it. For the most part I just use the index, it's just what I am used to.
... View more
11-10-2010
05:59 AM
|
0
|
0
|
865
|
|
POST
|
It is not an application as such. They are a series of help files that can be viewed. For example if you have visual studio and have installed the ArcGIS .net developer kit, you will have an entry in your start menu under ArcGIS. This entry points to the microsoft dexplore with the location of the files. If you install a different developer kit you will get something different. If you install no developer kit, you will get no developer help.
... View more
11-10-2010
04:29 AM
|
0
|
0
|
865
|
|
POST
|
If you know enough C++ or you have access to a C++ developer, you can always write a little proof of concept. If you find it is 10X faster it might be a lot easier to convince the decision makers with hard proof. If you only get small gains then you don't need to bother convincing people.
... View more
11-09-2010
10:45 AM
|
0
|
0
|
815
|
|
POST
|
The biggest difference I have ever seen is removing the operation and edit session. You can try using the Ifeatureclasswrite interface but I am not confident you will get much gain. If the oracle stuff is only accounting for 6% of the operation's time, there is not much point focusing there, the best you can achieve is less than 6% gain. It is possible that the relation is not linear so testing the cursor without the oracle queries for more features might yield a different curve but again it looks like the wrong place to make gains. Chump's suggestion looks much more likely to yield the 300+% gains you need.
... View more
11-09-2010
09:02 AM
|
0
|
0
|
1923
|
|
POST
|
There a few things you can try but it is hard to tell what is the major bottle neck, the update cursor or the oracle queries. If you try the update cursor without the oracle query as a test (setting some dummy value) you may get a better idea where to focus. As far as the update cursor is concerned, you can try removing the edit operation and edit session, that is like using the field calculator outside of an edit session (no undo) and you can try setting the recycling to true. You can also create a query filter with a null where clause but where you restrict the sub fields and pass it into the update method. Querying only the fields you need might help a little. As far as oracle is concerned, perhaps querying all the rows into a ado.net table in local memory and then selecting the rows from there might be more efficient.
... View more
11-08-2010
11:23 AM
|
0
|
0
|
1923
|
|
POST
|
Hi Jill, You could potentially use the state and the state lineage to know which rows were touched. However the ArcObjects do not give you any clue as to which state was created. If you have multiple versions being edited at the same time you would need to know which version and which editing session you are dealing with to figure out which states are relevant to you. Multiple users editing on the same or different versions will be creating new states. To be honest I am not all that familiar with the changes in the geodatabase tables for arcsde 10, I know the 9.x stuff better, maybe it is simpler now. The thing is states and state_lineage and other geodatabase tables are mostly considered internal to the geodatabase. Relying on detailed knowledge of the inner workings of the database to make your application work is not something I am comfortable with. There is a risk that the application may not work in all circumstances (non-versionned editing or move to base versioning) and the application may break with changes to the internal mechanics of the geodatabase.
... View more
11-08-2010
09:47 AM
|
0
|
0
|
728
|
|
POST
|
Hi Jill, In my experience using the OID as a foreign key in a database has only led to disaster. The geodatabase manages the OID itself for geodatabase internals. Imagine you have to transfer data to another database (partial or complete transfer) all you the objectids are going to change when you reload the data and none of them will match the foreign key in the external tables. You will be stuck doing database backup/restore type operations every time you need to move data around, even if you want a small portion of it. Also if esri ever change the internal workings of the geodatabase, which I understand they have between 9.3.1 and 10, you run the risk of being unable to upgrade.
... View more
11-08-2010
04:53 AM
|
0
|
0
|
728
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 12-02-2024 10:26 AM | |
| 1 | 07-05-2024 08:45 AM | |
| 1 | 10-05-2022 02:19 PM | |
| 6 | 03-27-2017 01:16 PM | |
| 1 | 05-05-2016 05:46 AM |
| Online Status |
Offline
|
| Date Last Visited |
03-28-2025
07:37 AM
|