Friday, September 23, 2011

This post is an object

This post has been instantiated and so its an object now. I think.

I have been focusing on learning ArcObjects on .NET via C# the last couple weeks and the last few days I finally feel like I am starting to get it. I think the key has been grasping the Object Oriented approach. These articles are what really got be moving with that.They are pretty generic and quick to get through, which helps me.
http://www.developer.com/lang/article.php/3628381/The-Object-Oriented-Thought-Process-Index-Page.htm

As for C# in particular this series has helped me get a grasp on the basics.
http://msdn.microsoft.com/en-us/beginner/bb308730.aspx

Other than that I want to start posting something useful so...

I found that the ArcObject IQuerDef2 only allows "advanced" SQL queries on SDE databases... or at least not on file geodatabases. For example, the following works on an SDE but not File geodatabase.


 IFeatureWorkspace featureWorkspace = workspace;
            IQueryDef2 queryDef = (IQueryDef2)featureWorkspace.CreateQueryDef();
            queryDef.Tables = inTable;
            queryDef.PrefixClause = "TOP (29)"; 
            queryDef.SubFields = field + ", COUNT(*)";
            queryDef.PostfixClause = "GROUP BY " + field + " ORDER BY COUNT(*) DESC, " + field; 
            queryDef.WhereClause = field + "!= ''"; 

I never found this documented anywhere but after testing a ton of queries on both sources its clear.

Maybe someday there will be an IQuerDefX that will support it. Or maybe it will come down to the File GDB format since the SQL probably gets thrown to the database anyways.

Thursday, September 1, 2011

Map Symbology

So lets say you have a fancy map (ArcMap MXD) and you spend lots of time tweaking symobology. You can save that symbology one by one or you can get your self the Export Map Styles button and do it with two clicks.

This is sort of hidden now on Arc 10 but its still there and it can save you a ridiculous amount of time.

More details here: http://blogs.esri.com/Support/blogs/mappingcenter/archive/2010/09/28/Symbols-and-Styles-in-ArcGIS-10.0.aspx


Wednesday, August 17, 2011

Getting more of what someone paid for.

I am starting to really like Visual Studio 2010. My new favorite thing is historical clipboard.

Ctrl+Shift+V will cycle through the clipboard's history allowing you to paste things you copied a while ago. Nice when you are hacking stuff together.


Tuesday, August 16, 2011

You get what [someone] pays for.

I am starting to use Visual Studio (Professional) to write python. The first thing I had trouble with was missing the function in Pyscripter that highlights all occurrences of a selected word . A little trip to the google got me an extension that does this. I got it here.  Woot.

Data Flow Diagram... Ok

I have to do my first "official" data flow diagram. I don't really know what I am doing yet but after rummaging around for the an approach to take I found that Google Docs drawings has flow chart functionality. It looks like it will do everything I need.

Tuesday, August 9, 2011

Scratch Names

I was always wishing there was an easy way to create a unique scratch name for outputs of geoprocessing scripts. Today I found the simple solution http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/CreateScratchName/000v0000001z000000/

The Create Scratch Name code does just that so if you are making a temporary copy of  features or a temporary buffer or whatever you can slap this line in and have it make names for you. Its great for someone like me that has to run their code 70 times before finishing it.

Wednesday, July 6, 2011

Why did it take me so long to learn about this?

I just came across a little tool in Windows 7 that might come in handy. Its a recorder that records your mouse actions and takes screen shots along the way. When your done it puts it in a little html and zips it up. You can even edit the html in Word to clean it up or use it for "how to's" and what not. Seems like this could be a very useful little guy.

To run just hit the Windows key and type psr.exe.