Pouria Amirian
Beginning ArcGIS for Desktop Development Using .Net
Pouria Amirian
Beginning ArcGIS for Desktop Development Using .Net
- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Get the very most out of the ArcGIS family of software products ArcGIS software manipulates, processes, and presents geospatial data. With it, you can create maps, use them in a variety of applications, compile geographic data, and more. Now you can tailor this powerful tool to your own development needs using VB.NET and C sharp and the solid guidance in this practical Wrox guide. You'll get up to speed on ArcGIS tools and artifacts, explore best practices from real-world examples, and learn to program in ArcGIS. The book includes fully functional code and guides you all the way through, from…mehr
Andere Kunden interessierten sich auch für
- Vladimir O. SafonovUsing Aspect-Oriented Programming for Trustworthy Software Development158,99 €
- Samuel PhungProfessional Windows Embedded Compact 738,99 €
- Greg MiletteProfessional Android Sensor Programming42,99 €
- Richard WagnerXML All in One Desk Reference for Dummies33,99 €
- Ian LunnTreehouse CSS3 Foundations33,99 €
- John Paul MuellerLinq for Dummies26,99 €
- Julian DolceAndroid Dev with Flash VB30,99 €
-
-
-
Get the very most out of the ArcGIS family of software products
ArcGIS software manipulates, processes, and presents geospatial data. With it, you can create maps, use them in a variety of applications, compile geographic data, and more. Now you can tailor this powerful tool to your own development needs using VB.NET and C sharp and the solid guidance in this practical Wrox guide. You'll get up to speed on ArcGIS tools and artifacts, explore best practices from real-world examples, and learn to program in ArcGIS. The book includes fully functional code and guides you all the way through, from development to deployment.
Gets programmers up and running on ArcGIS, a family of software products for creating maps and handling geographic data
Shows how to customize and build commands, tools, and extensions using ArcGIS APIs and VB.NET, C sharp, and Java
Covers ArcGIS development through deployment
Topics include object orientation and UML, programming in .NET accessing maps and layers, data management, and more
Learn how to customize your data and improve your productivity with this powerful tool and Beginning ArcGIS Desktop Development Using .Net.
ArcGIS software manipulates, processes, and presents geospatial data. With it, you can create maps, use them in a variety of applications, compile geographic data, and more. Now you can tailor this powerful tool to your own development needs using VB.NET and C sharp and the solid guidance in this practical Wrox guide. You'll get up to speed on ArcGIS tools and artifacts, explore best practices from real-world examples, and learn to program in ArcGIS. The book includes fully functional code and guides you all the way through, from development to deployment.
Gets programmers up and running on ArcGIS, a family of software products for creating maps and handling geographic data
Shows how to customize and build commands, tools, and extensions using ArcGIS APIs and VB.NET, C sharp, and Java
Covers ArcGIS development through deployment
Topics include object orientation and UML, programming in .NET accessing maps and layers, data management, and more
Learn how to customize your data and improve your productivity with this powerful tool and Beginning ArcGIS Desktop Development Using .Net.
Produktdetails
- Produktdetails
- Verlag: Wiley & Sons
- 1. Auflage
- Seitenzahl: 528
- Erscheinungstermin: 18. März 2013
- Englisch
- Abmessung: 233mm x 187mm x 30mm
- Gewicht: 892g
- ISBN-13: 9781118442548
- ISBN-10: 1118442547
- Artikelnr.: 36685201
- Verlag: Wiley & Sons
- 1. Auflage
- Seitenzahl: 528
- Erscheinungstermin: 18. März 2013
- Englisch
- Abmessung: 233mm x 187mm x 30mm
- Gewicht: 892g
- ISBN-13: 9781118442548
- ISBN-10: 1118442547
- Artikelnr.: 36685201
Pouria Amirian holds a Ph.D. of Geospatial Information Systems (GIS). Dr. Amirian is a developer and GIS/IT lecturer with extensive experience developing and deploying small to large-scale Geospatial Information Systems. Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that guides you through all the techniques involved.
INTRODUCTION xxi PART I: THE BASICS CHAPTER 1: WHY GEOSPATIAL IS SPECIAL 3
A Tour of Geospatial Data 4 Why Geospatial Is Special 8 Various Kinds of
GIS Software 10 Server GIS 11 Desktop GIS 13 Developer GIS 17 Mobile GIS 18
Geospatial Data Models and Storage 19 Raster 19 Vector 20 Geospatial Data
as Text or Binary File 20 Geospatial Data in Georelational Models 21
Geospatial Data Inside Spatial DBMS 21 Geospatial Data in XML Structures 23
Esri Geodatabase 30 Personal Geodatabase 30 File Geodatabase 30 ArcSDE
Geodatabase 31 Summary 32 CHAPTER 2: INTRODUCTION TO ARCGIS FOR DESKTOP
APPLICATIONS CUSTOMIZATION 35 Four Ways to Customize ArcGIS for Desktop 36
Customizing the User Interface 37 Scripting 41 Desktop Add-Ins 48
ArcObjects SDK 55 Summary 59 PART II: .NET PROGRAMMING FUNDAMENTALS CHAPTER
3: .NET PROGRAMMING FUNDAMENTALS, PART I 63 The .NET Framework 63 The C#
Language 64 A Brief History of C# 64 Basic Concepts 65 Variables and Data
Types 66 Nullable Data Types 71 Operations on Variables 71 Arrays 75
Decision-Making 76 Iteration 78 Object Manipulation 81 Data Type Conversion
83 Enumerations 85 Methods 89 Introduction to Object-Oriented Programming
in C# 93 Object-Oriented Programming in Action 94 Defi ning Properties 96
Defi ning Methods 98 Defi ning Constructors 98 Summary 100 CHAPTER 4: .NET
PROGRAMMING FUNDAMENTALS, PART II 103 Overview of Object-Oriented
Programming Concepts 104 Abstraction 104 Encapsulation 104 Inheritance 105
Polymorphism 106 Reference Types and Value Types 108 Assignment Operations
108 Comparison Operations 109 Passing Parameters between Method Calls 109
Brief Explanation of All .NET Types 111 Namespaces and Assemblies 112
Debugging Using Visual Studio 113 Structured Exception Handling 117 Casting
Objects 120 Aggregation Using Collections 121 The ArrayList 122 Generics
123 Reading and Writing Files 123 Summary 135 PART III: ARCOBJECTS
PROGRAMMING CHAPTER 5: UNDERSTANDING ARCOBJECTS OBJECT MODEL DIAGRAMS 139
What Is ArcObjects? 140 Interface-Based Programming in Brief 140
Understanding Object Model Diagrams 144 Types of Classes in ArcObjects 145
Relationships between Classes 147 Members of Interfaces 149 Interface
Inheritance 151 Wormhole 153 Additional Tips for Using Object Model
Diagrams 153 Where to Start with ArcObjects 155 How to Find an Associated
Member 156 Summary 163 CHAPTER 6: ACCESSING MAPS AND LAYERS 165
Introduction to Maps and Layers In ArcObjects 165 General Properties of All
Layers 175 Working with FeatureLayers 179 Working with RasterLayers 183
Adding an Existing *.lyr File to a Map 184 Adding *.lyr Files Using
GxDialog 186 Saving *.lyr and *.mxd Files 191 Summary 194 CHAPTER 7:
WORKING WITH TABLES AND FEATURECLASSES 197 Accessing Tables and
FeatureClasses 197 Adding and Deleting Fields 204 Adding Existing
FeatureClasses, Tables, and Rasters to a Map 207 Deleting an Existing
FeatureDataset, FeatureClass, Table, or Raster 215 Creating Tables and Rows
215 Summary 225 CHAPTER 8: SUBSETS OF RECORDS 227 Using Object Model
Diagrams for Selecting Features and Rows 228 Working with Existing
Selections 229 Selecting Rows and Features 233 Accessing a Subset of
Records 237 Simple Statistics of Features 245 Some Important Points about
Using Cursors 251 Displaying Subsets of Geospatial Data 254 Summary 255
CHAPTER 9: CONSTRUCTING AND USING THE GEOMETRY OF FEATURES 257 Object Model
Diagram for the Geometry of Features and Graphics 258 Displaying Geometries
on the Screen 260 Creating and Drawing Points 261 Creating and Drawing
Multipoints 264 Creating and Drawing Polylines 268 Creating and Drawing
Polygons 272 Creating a New Feature and Editing an Existing Feature's
Geometry 276 Working with Spatial Operators 281 Examining Spatial
Relationships 281 Common Geoprocessing Operations 284 Determining the
Nearest Points and Distance 287 Length, Area, Centroid, and Envelope of
Geometries 292 Summary 293 CHAPTER 10: RENDERING GEOSPATIAL DATA AND USING
HYPERLINKS AND MAPTIPS 295 Geospatial Data Display 296 Color and ColorRamp
Classes 296 Symbols 298 Renderers for Vector and Raster Geospatial Data 300
Going beyond Simple Display 318 Simple and Advanced MapTips 319 Hyperlinks
321 Summary 324 CHAPTER 11: LABELING, EXPORTING ACTIVEVIEW, AND WORKING
WITH ELEMENTS 327 Labeling 328 Labeling with the Default Labeling Engine
329 Labeling with the Maplex Labeling Engine 334 Exporting the ActiveView
336 Working with Elements 346 Adding GraphicElements 348 Adding
FrameElements 352 Summary 361 CHAPTER 12: GEOPROCESSING WITH TOOLS AND
MODELS 365 ArcObjects and the Geoprocessing Framework 365 Running
Geoprocessing Tools 366 Running Custom Tools 375 Opening a Tool's Dialog
Box in Code 384 Geoprocessing in the Background 389 Bach Processing 397 Can
I Manage the Execution of Geoprocessing Tools? 399 Summary 400 CHAPTER 13:
FEATURE DATA MANAGEMENT 403 Use of GUID in ArcObjects 404 Working with the
Geodatabase Model 406 Creating Geodatabases 407 Creating FeatureDatasets
and FeatureClasses 408 Working with Features 418 Creating New Features 418
Modifying Existing Features 422 Summary 426 CHAPTER 14: ADVANCED TOPICS IN
ARCOBJECTS PROGRAMMING AND DEPLOYMENT 429 Sharing State and Functionality
between Components 430 Event Handling in ArcObjects 432 Application
Extension 435 Add-In Deployment 450 Preparing for Release 450 Add-In File
Structure 452 Distributing and Installing an Add-In 453 Custom Component
Deployment 456 Creating an Installer for Custom Component 459 Summary 465
APPENDIX: ANSWERS TO CHAPTER EXERCISES 467 INDEX 479
A Tour of Geospatial Data 4 Why Geospatial Is Special 8 Various Kinds of
GIS Software 10 Server GIS 11 Desktop GIS 13 Developer GIS 17 Mobile GIS 18
Geospatial Data Models and Storage 19 Raster 19 Vector 20 Geospatial Data
as Text or Binary File 20 Geospatial Data in Georelational Models 21
Geospatial Data Inside Spatial DBMS 21 Geospatial Data in XML Structures 23
Esri Geodatabase 30 Personal Geodatabase 30 File Geodatabase 30 ArcSDE
Geodatabase 31 Summary 32 CHAPTER 2: INTRODUCTION TO ARCGIS FOR DESKTOP
APPLICATIONS CUSTOMIZATION 35 Four Ways to Customize ArcGIS for Desktop 36
Customizing the User Interface 37 Scripting 41 Desktop Add-Ins 48
ArcObjects SDK 55 Summary 59 PART II: .NET PROGRAMMING FUNDAMENTALS CHAPTER
3: .NET PROGRAMMING FUNDAMENTALS, PART I 63 The .NET Framework 63 The C#
Language 64 A Brief History of C# 64 Basic Concepts 65 Variables and Data
Types 66 Nullable Data Types 71 Operations on Variables 71 Arrays 75
Decision-Making 76 Iteration 78 Object Manipulation 81 Data Type Conversion
83 Enumerations 85 Methods 89 Introduction to Object-Oriented Programming
in C# 93 Object-Oriented Programming in Action 94 Defi ning Properties 96
Defi ning Methods 98 Defi ning Constructors 98 Summary 100 CHAPTER 4: .NET
PROGRAMMING FUNDAMENTALS, PART II 103 Overview of Object-Oriented
Programming Concepts 104 Abstraction 104 Encapsulation 104 Inheritance 105
Polymorphism 106 Reference Types and Value Types 108 Assignment Operations
108 Comparison Operations 109 Passing Parameters between Method Calls 109
Brief Explanation of All .NET Types 111 Namespaces and Assemblies 112
Debugging Using Visual Studio 113 Structured Exception Handling 117 Casting
Objects 120 Aggregation Using Collections 121 The ArrayList 122 Generics
123 Reading and Writing Files 123 Summary 135 PART III: ARCOBJECTS
PROGRAMMING CHAPTER 5: UNDERSTANDING ARCOBJECTS OBJECT MODEL DIAGRAMS 139
What Is ArcObjects? 140 Interface-Based Programming in Brief 140
Understanding Object Model Diagrams 144 Types of Classes in ArcObjects 145
Relationships between Classes 147 Members of Interfaces 149 Interface
Inheritance 151 Wormhole 153 Additional Tips for Using Object Model
Diagrams 153 Where to Start with ArcObjects 155 How to Find an Associated
Member 156 Summary 163 CHAPTER 6: ACCESSING MAPS AND LAYERS 165
Introduction to Maps and Layers In ArcObjects 165 General Properties of All
Layers 175 Working with FeatureLayers 179 Working with RasterLayers 183
Adding an Existing *.lyr File to a Map 184 Adding *.lyr Files Using
GxDialog 186 Saving *.lyr and *.mxd Files 191 Summary 194 CHAPTER 7:
WORKING WITH TABLES AND FEATURECLASSES 197 Accessing Tables and
FeatureClasses 197 Adding and Deleting Fields 204 Adding Existing
FeatureClasses, Tables, and Rasters to a Map 207 Deleting an Existing
FeatureDataset, FeatureClass, Table, or Raster 215 Creating Tables and Rows
215 Summary 225 CHAPTER 8: SUBSETS OF RECORDS 227 Using Object Model
Diagrams for Selecting Features and Rows 228 Working with Existing
Selections 229 Selecting Rows and Features 233 Accessing a Subset of
Records 237 Simple Statistics of Features 245 Some Important Points about
Using Cursors 251 Displaying Subsets of Geospatial Data 254 Summary 255
CHAPTER 9: CONSTRUCTING AND USING THE GEOMETRY OF FEATURES 257 Object Model
Diagram for the Geometry of Features and Graphics 258 Displaying Geometries
on the Screen 260 Creating and Drawing Points 261 Creating and Drawing
Multipoints 264 Creating and Drawing Polylines 268 Creating and Drawing
Polygons 272 Creating a New Feature and Editing an Existing Feature's
Geometry 276 Working with Spatial Operators 281 Examining Spatial
Relationships 281 Common Geoprocessing Operations 284 Determining the
Nearest Points and Distance 287 Length, Area, Centroid, and Envelope of
Geometries 292 Summary 293 CHAPTER 10: RENDERING GEOSPATIAL DATA AND USING
HYPERLINKS AND MAPTIPS 295 Geospatial Data Display 296 Color and ColorRamp
Classes 296 Symbols 298 Renderers for Vector and Raster Geospatial Data 300
Going beyond Simple Display 318 Simple and Advanced MapTips 319 Hyperlinks
321 Summary 324 CHAPTER 11: LABELING, EXPORTING ACTIVEVIEW, AND WORKING
WITH ELEMENTS 327 Labeling 328 Labeling with the Default Labeling Engine
329 Labeling with the Maplex Labeling Engine 334 Exporting the ActiveView
336 Working with Elements 346 Adding GraphicElements 348 Adding
FrameElements 352 Summary 361 CHAPTER 12: GEOPROCESSING WITH TOOLS AND
MODELS 365 ArcObjects and the Geoprocessing Framework 365 Running
Geoprocessing Tools 366 Running Custom Tools 375 Opening a Tool's Dialog
Box in Code 384 Geoprocessing in the Background 389 Bach Processing 397 Can
I Manage the Execution of Geoprocessing Tools? 399 Summary 400 CHAPTER 13:
FEATURE DATA MANAGEMENT 403 Use of GUID in ArcObjects 404 Working with the
Geodatabase Model 406 Creating Geodatabases 407 Creating FeatureDatasets
and FeatureClasses 408 Working with Features 418 Creating New Features 418
Modifying Existing Features 422 Summary 426 CHAPTER 14: ADVANCED TOPICS IN
ARCOBJECTS PROGRAMMING AND DEPLOYMENT 429 Sharing State and Functionality
between Components 430 Event Handling in ArcObjects 432 Application
Extension 435 Add-In Deployment 450 Preparing for Release 450 Add-In File
Structure 452 Distributing and Installing an Add-In 453 Custom Component
Deployment 456 Creating an Installer for Custom Component 459 Summary 465
APPENDIX: ANSWERS TO CHAPTER EXERCISES 467 INDEX 479
INTRODUCTION xxi PART I: THE BASICS CHAPTER 1: WHY GEOSPATIAL IS SPECIAL 3
A Tour of Geospatial Data 4 Why Geospatial Is Special 8 Various Kinds of
GIS Software 10 Server GIS 11 Desktop GIS 13 Developer GIS 17 Mobile GIS 18
Geospatial Data Models and Storage 19 Raster 19 Vector 20 Geospatial Data
as Text or Binary File 20 Geospatial Data in Georelational Models 21
Geospatial Data Inside Spatial DBMS 21 Geospatial Data in XML Structures 23
Esri Geodatabase 30 Personal Geodatabase 30 File Geodatabase 30 ArcSDE
Geodatabase 31 Summary 32 CHAPTER 2: INTRODUCTION TO ARCGIS FOR DESKTOP
APPLICATIONS CUSTOMIZATION 35 Four Ways to Customize ArcGIS for Desktop 36
Customizing the User Interface 37 Scripting 41 Desktop Add-Ins 48
ArcObjects SDK 55 Summary 59 PART II: .NET PROGRAMMING FUNDAMENTALS CHAPTER
3: .NET PROGRAMMING FUNDAMENTALS, PART I 63 The .NET Framework 63 The C#
Language 64 A Brief History of C# 64 Basic Concepts 65 Variables and Data
Types 66 Nullable Data Types 71 Operations on Variables 71 Arrays 75
Decision-Making 76 Iteration 78 Object Manipulation 81 Data Type Conversion
83 Enumerations 85 Methods 89 Introduction to Object-Oriented Programming
in C# 93 Object-Oriented Programming in Action 94 Defi ning Properties 96
Defi ning Methods 98 Defi ning Constructors 98 Summary 100 CHAPTER 4: .NET
PROGRAMMING FUNDAMENTALS, PART II 103 Overview of Object-Oriented
Programming Concepts 104 Abstraction 104 Encapsulation 104 Inheritance 105
Polymorphism 106 Reference Types and Value Types 108 Assignment Operations
108 Comparison Operations 109 Passing Parameters between Method Calls 109
Brief Explanation of All .NET Types 111 Namespaces and Assemblies 112
Debugging Using Visual Studio 113 Structured Exception Handling 117 Casting
Objects 120 Aggregation Using Collections 121 The ArrayList 122 Generics
123 Reading and Writing Files 123 Summary 135 PART III: ARCOBJECTS
PROGRAMMING CHAPTER 5: UNDERSTANDING ARCOBJECTS OBJECT MODEL DIAGRAMS 139
What Is ArcObjects? 140 Interface-Based Programming in Brief 140
Understanding Object Model Diagrams 144 Types of Classes in ArcObjects 145
Relationships between Classes 147 Members of Interfaces 149 Interface
Inheritance 151 Wormhole 153 Additional Tips for Using Object Model
Diagrams 153 Where to Start with ArcObjects 155 How to Find an Associated
Member 156 Summary 163 CHAPTER 6: ACCESSING MAPS AND LAYERS 165
Introduction to Maps and Layers In ArcObjects 165 General Properties of All
Layers 175 Working with FeatureLayers 179 Working with RasterLayers 183
Adding an Existing *.lyr File to a Map 184 Adding *.lyr Files Using
GxDialog 186 Saving *.lyr and *.mxd Files 191 Summary 194 CHAPTER 7:
WORKING WITH TABLES AND FEATURECLASSES 197 Accessing Tables and
FeatureClasses 197 Adding and Deleting Fields 204 Adding Existing
FeatureClasses, Tables, and Rasters to a Map 207 Deleting an Existing
FeatureDataset, FeatureClass, Table, or Raster 215 Creating Tables and Rows
215 Summary 225 CHAPTER 8: SUBSETS OF RECORDS 227 Using Object Model
Diagrams for Selecting Features and Rows 228 Working with Existing
Selections 229 Selecting Rows and Features 233 Accessing a Subset of
Records 237 Simple Statistics of Features 245 Some Important Points about
Using Cursors 251 Displaying Subsets of Geospatial Data 254 Summary 255
CHAPTER 9: CONSTRUCTING AND USING THE GEOMETRY OF FEATURES 257 Object Model
Diagram for the Geometry of Features and Graphics 258 Displaying Geometries
on the Screen 260 Creating and Drawing Points 261 Creating and Drawing
Multipoints 264 Creating and Drawing Polylines 268 Creating and Drawing
Polygons 272 Creating a New Feature and Editing an Existing Feature's
Geometry 276 Working with Spatial Operators 281 Examining Spatial
Relationships 281 Common Geoprocessing Operations 284 Determining the
Nearest Points and Distance 287 Length, Area, Centroid, and Envelope of
Geometries 292 Summary 293 CHAPTER 10: RENDERING GEOSPATIAL DATA AND USING
HYPERLINKS AND MAPTIPS 295 Geospatial Data Display 296 Color and ColorRamp
Classes 296 Symbols 298 Renderers for Vector and Raster Geospatial Data 300
Going beyond Simple Display 318 Simple and Advanced MapTips 319 Hyperlinks
321 Summary 324 CHAPTER 11: LABELING, EXPORTING ACTIVEVIEW, AND WORKING
WITH ELEMENTS 327 Labeling 328 Labeling with the Default Labeling Engine
329 Labeling with the Maplex Labeling Engine 334 Exporting the ActiveView
336 Working with Elements 346 Adding GraphicElements 348 Adding
FrameElements 352 Summary 361 CHAPTER 12: GEOPROCESSING WITH TOOLS AND
MODELS 365 ArcObjects and the Geoprocessing Framework 365 Running
Geoprocessing Tools 366 Running Custom Tools 375 Opening a Tool's Dialog
Box in Code 384 Geoprocessing in the Background 389 Bach Processing 397 Can
I Manage the Execution of Geoprocessing Tools? 399 Summary 400 CHAPTER 13:
FEATURE DATA MANAGEMENT 403 Use of GUID in ArcObjects 404 Working with the
Geodatabase Model 406 Creating Geodatabases 407 Creating FeatureDatasets
and FeatureClasses 408 Working with Features 418 Creating New Features 418
Modifying Existing Features 422 Summary 426 CHAPTER 14: ADVANCED TOPICS IN
ARCOBJECTS PROGRAMMING AND DEPLOYMENT 429 Sharing State and Functionality
between Components 430 Event Handling in ArcObjects 432 Application
Extension 435 Add-In Deployment 450 Preparing for Release 450 Add-In File
Structure 452 Distributing and Installing an Add-In 453 Custom Component
Deployment 456 Creating an Installer for Custom Component 459 Summary 465
APPENDIX: ANSWERS TO CHAPTER EXERCISES 467 INDEX 479
A Tour of Geospatial Data 4 Why Geospatial Is Special 8 Various Kinds of
GIS Software 10 Server GIS 11 Desktop GIS 13 Developer GIS 17 Mobile GIS 18
Geospatial Data Models and Storage 19 Raster 19 Vector 20 Geospatial Data
as Text or Binary File 20 Geospatial Data in Georelational Models 21
Geospatial Data Inside Spatial DBMS 21 Geospatial Data in XML Structures 23
Esri Geodatabase 30 Personal Geodatabase 30 File Geodatabase 30 ArcSDE
Geodatabase 31 Summary 32 CHAPTER 2: INTRODUCTION TO ARCGIS FOR DESKTOP
APPLICATIONS CUSTOMIZATION 35 Four Ways to Customize ArcGIS for Desktop 36
Customizing the User Interface 37 Scripting 41 Desktop Add-Ins 48
ArcObjects SDK 55 Summary 59 PART II: .NET PROGRAMMING FUNDAMENTALS CHAPTER
3: .NET PROGRAMMING FUNDAMENTALS, PART I 63 The .NET Framework 63 The C#
Language 64 A Brief History of C# 64 Basic Concepts 65 Variables and Data
Types 66 Nullable Data Types 71 Operations on Variables 71 Arrays 75
Decision-Making 76 Iteration 78 Object Manipulation 81 Data Type Conversion
83 Enumerations 85 Methods 89 Introduction to Object-Oriented Programming
in C# 93 Object-Oriented Programming in Action 94 Defi ning Properties 96
Defi ning Methods 98 Defi ning Constructors 98 Summary 100 CHAPTER 4: .NET
PROGRAMMING FUNDAMENTALS, PART II 103 Overview of Object-Oriented
Programming Concepts 104 Abstraction 104 Encapsulation 104 Inheritance 105
Polymorphism 106 Reference Types and Value Types 108 Assignment Operations
108 Comparison Operations 109 Passing Parameters between Method Calls 109
Brief Explanation of All .NET Types 111 Namespaces and Assemblies 112
Debugging Using Visual Studio 113 Structured Exception Handling 117 Casting
Objects 120 Aggregation Using Collections 121 The ArrayList 122 Generics
123 Reading and Writing Files 123 Summary 135 PART III: ARCOBJECTS
PROGRAMMING CHAPTER 5: UNDERSTANDING ARCOBJECTS OBJECT MODEL DIAGRAMS 139
What Is ArcObjects? 140 Interface-Based Programming in Brief 140
Understanding Object Model Diagrams 144 Types of Classes in ArcObjects 145
Relationships between Classes 147 Members of Interfaces 149 Interface
Inheritance 151 Wormhole 153 Additional Tips for Using Object Model
Diagrams 153 Where to Start with ArcObjects 155 How to Find an Associated
Member 156 Summary 163 CHAPTER 6: ACCESSING MAPS AND LAYERS 165
Introduction to Maps and Layers In ArcObjects 165 General Properties of All
Layers 175 Working with FeatureLayers 179 Working with RasterLayers 183
Adding an Existing *.lyr File to a Map 184 Adding *.lyr Files Using
GxDialog 186 Saving *.lyr and *.mxd Files 191 Summary 194 CHAPTER 7:
WORKING WITH TABLES AND FEATURECLASSES 197 Accessing Tables and
FeatureClasses 197 Adding and Deleting Fields 204 Adding Existing
FeatureClasses, Tables, and Rasters to a Map 207 Deleting an Existing
FeatureDataset, FeatureClass, Table, or Raster 215 Creating Tables and Rows
215 Summary 225 CHAPTER 8: SUBSETS OF RECORDS 227 Using Object Model
Diagrams for Selecting Features and Rows 228 Working with Existing
Selections 229 Selecting Rows and Features 233 Accessing a Subset of
Records 237 Simple Statistics of Features 245 Some Important Points about
Using Cursors 251 Displaying Subsets of Geospatial Data 254 Summary 255
CHAPTER 9: CONSTRUCTING AND USING THE GEOMETRY OF FEATURES 257 Object Model
Diagram for the Geometry of Features and Graphics 258 Displaying Geometries
on the Screen 260 Creating and Drawing Points 261 Creating and Drawing
Multipoints 264 Creating and Drawing Polylines 268 Creating and Drawing
Polygons 272 Creating a New Feature and Editing an Existing Feature's
Geometry 276 Working with Spatial Operators 281 Examining Spatial
Relationships 281 Common Geoprocessing Operations 284 Determining the
Nearest Points and Distance 287 Length, Area, Centroid, and Envelope of
Geometries 292 Summary 293 CHAPTER 10: RENDERING GEOSPATIAL DATA AND USING
HYPERLINKS AND MAPTIPS 295 Geospatial Data Display 296 Color and ColorRamp
Classes 296 Symbols 298 Renderers for Vector and Raster Geospatial Data 300
Going beyond Simple Display 318 Simple and Advanced MapTips 319 Hyperlinks
321 Summary 324 CHAPTER 11: LABELING, EXPORTING ACTIVEVIEW, AND WORKING
WITH ELEMENTS 327 Labeling 328 Labeling with the Default Labeling Engine
329 Labeling with the Maplex Labeling Engine 334 Exporting the ActiveView
336 Working with Elements 346 Adding GraphicElements 348 Adding
FrameElements 352 Summary 361 CHAPTER 12: GEOPROCESSING WITH TOOLS AND
MODELS 365 ArcObjects and the Geoprocessing Framework 365 Running
Geoprocessing Tools 366 Running Custom Tools 375 Opening a Tool's Dialog
Box in Code 384 Geoprocessing in the Background 389 Bach Processing 397 Can
I Manage the Execution of Geoprocessing Tools? 399 Summary 400 CHAPTER 13:
FEATURE DATA MANAGEMENT 403 Use of GUID in ArcObjects 404 Working with the
Geodatabase Model 406 Creating Geodatabases 407 Creating FeatureDatasets
and FeatureClasses 408 Working with Features 418 Creating New Features 418
Modifying Existing Features 422 Summary 426 CHAPTER 14: ADVANCED TOPICS IN
ARCOBJECTS PROGRAMMING AND DEPLOYMENT 429 Sharing State and Functionality
between Components 430 Event Handling in ArcObjects 432 Application
Extension 435 Add-In Deployment 450 Preparing for Release 450 Add-In File
Structure 452 Distributing and Installing an Add-In 453 Custom Component
Deployment 456 Creating an Installer for Custom Component 459 Summary 465
APPENDIX: ANSWERS TO CHAPTER EXERCISES 467 INDEX 479