ArcObjects Java Developer Guide
Overview
What's new for developers at 10x?
What's new for developers at 10.3.1?
What's new for developers at 10.1?
What's new for developers at 10.0?
Developing desktop applications
What is ArcGIS Engine
Why Use ArcGIS Engine
Who Can Use ArcGIS Engine
Frequently Asked Questions
Installation
Installing the Java ArcObjects SDK
Post Installation
Understanding ArcObjects
What are ArcObjects
Advantages of ArcObjects Architecture
Understanding the Java Interop
Overview of the ArcObjects Packages
Building Console Applications
How to create a console based HelloWorld application with ArcObjects
Building Visual Applications
Using Java VisualBeans
A visual Hello-World Application
Programming with ArcObjects Java API
Overview of the Java API
Getting Started with ArcObjects
Casting and Runtime Type Checking
Working with Variants
Singleton ArcObjects
ArcObjects Developer Guide
Overview
ArcGIS Engine Java VisualBeans
Building Applications with ArcGIS Engine Java VisualBeans
Adding data to ArcGIS Engine Java VisualBeans
Visual JavaBeans
Building an application with Visual JavaBeans
Working in 2D with MapBean
Using the MapBean
How to set MapBean Properties
Working in 2D with PageLayoutBean
Using the PageLayoutBean
How to set PageLayoutControl properties
How to synchronize MapControl and PageLayoutControl
How to load a password protected document
Working in 2D with PageLayoutBean
Using the ToolbarBean
How to set ToolbarControl Properties
How to create custom commands and tools
How to create custom Menus, Palettes, Multiitems and Context Menus
Built-in ESRI Commands, Tools, Menus and Palettes
Java VisualBean Commands
How to use Swipe and Transparency Tools
How to use Roam Tool
How to use Flicker and NearByPlaces command
TOCBean (Table of Contents)
Using TOCBean
How to set TOCControl Properties
SymbologyBean
Using SymbologyBean
How to set SymbologyControl properties
Working in 3D with SceneBean
Using SceneBean
How to set SceneBean properties
Working in 3D with GlobeBean
Using GlobeBean
How to set GlobeBean properties
Putting it together: An Example
Editing Framework
Overview of the Editing framework
How to create an edit session
How to work with the operation stack
How to create a sketch operation
How to listen to edit events
How to work with snap environment
Geocoding
Finding locations with geocoding
What is an address locator?
Working with locators and locator styles
How to open locator workspaces
How to create address locators
How to rebuild an address locator
How to standardize an address
How to geocode a single address
How to geocode a table of addresses
How to rematch a geocoded feature class
How to find the address closest to a point (reverse geocoding)
Geodatabase management
Core Geodatabase
Workspaces
How to create new geodatabases
How to connect to a geodatabase workspace
XML schema of the geodatabase
Datasets, tables, and feature classes
How to create an object class within a geodatabase
How to create a feature dataset
How to create a standalone feature class in a geodatabase
How to create a feature class within a feature dataset
How to create subtypes
How to create attribute domains
How to create new fields
How to work with fields
How to assign domains to fields
How to display field properties for a feature class
How to work with indexes
Rows, objects, and features
How to create features within the geodatabase
How to construct new features from cursors using IFeatureConstruction
Queries, cursors, and selection sets
How to use cursors in the geodatabase
How to query geodatabase tables and feature classes
How to execute Spatial Queries
How to join data
Editing
How to obtain changes made in the current edit session
Geometric networks
How to create geometric networks within a geodatabase
Network datasets
How to create a multimodal network dataset
How to create a network dataset
How to open a network dataset
Topologies
How to create a topology in the geodatabase
How to check for topology error features in a geodatabase topology
Data elements
How to use schema creator to generate schema in a geodatabase
Data conversion
About data conversion and transfer
How to convert simple data to a geodatabase
How to use copy and paste to transfer data
How to convert to other formats (shapefiles)
Distributed geodatabase
How to initialize a GeoDataServer object
How to create a replica in a connected environment
How to synchronize a replica in a connected environment
How to create a replica in a disconnected environment.
How to synchronize a data change message in a disconnected environment
How to synchronize an acknowledgement message in a disconnected environment
How to use copy and paste to transfer data
How to export a dataset to an XML workspace document
How to import data or schema from a resulting XML document
How to get a list of schema differences between replicas
Geometry and spatial reference
Working with geometry objects
How to work with geometry objects
Using IGeometryBridge or IGeometryBridge2
IGeometryBag vs IGeometryCollection
When do I need to simplify a geometry?
What do I need to know before calling Simplify?
How to create a multipoint object from the verticies of a polyline
How to create a multipart polyline
Building a polygon using segments and points
How to efficiently create a multipoint
How to efficiently create a polygon
How to efficiently create a polyline
How to create a multipatch using a series of triangles
How to create a union of several polygons
Working with vertex attributes
How to add Point IDs to a polyline
How to modify a specific vertex of a polyline
How to modify a specific segment of a polyline
Working with coordinate systems and spatial references
What is a coordinate system?
Understanding projection horizons
Understanding coordinate management in ArcGIS
How to use the spatialReferenceEnvironment
How to create a predefined spatial reference
How to create a predefined vertical coordinate system
How to snap a point to a coordinate grid
How to construct a high or low precision spatial reference
How to convert between high and low precision spatial references
How to import and export a spatial reference
How to create a custom projected coordinate system
How to create a custom vertical coordinate system
How to create a custom geographic coordinate system
Transformations and geotransformations
Understanding geotransformations
How to perform an affine transformation
How to create a predefined geotransformation
Geoprocessing
Getting Started
Accessing tools within a Java program
How to run a Geoprocessing tool
How to run a Geoprocessing tool in the background
How to work with tool names and avoid name conflicts
How to work with tool return values
How to list tools and environments
How to use ArcObjects as tool input
How to use environment settings
How to access licensing and extensions
Batch Processing with Geoprocessing
About Batch Processing
How to List Data
How to Use Multiple Inputs
How to Use Value Tables
How to Map Fields
Geoprocessing Messages
About Geoprocessing Messages
How to Get Returned Messages
How to Set Output Messages
About Script Tools
How to use Script Tool Parameters
Data Properties and Access
Describing Data
How to check for the existence of data
Working with geodatabases
How to validate table and field names
Qualifying table and field names
Parsing table and field names
Custom Geoprocessing Tool
Licensing for Geoprocessing Tools
Mapping and visualization
Creating custom elements
Creating different kinds of custom elements
Dynamic Display
About dynamic display
How dynamic display works
Limitations of dynamic display
Rendering dynamic content
Rendering dynamic content using IDynamicLayer
Rendering dynamic content WalkThrough
Dynamic map events
Selecting on a custom dynamic Layer
Dynamic drawing
Dynamic drawing API
How to create a dynamic glyph from a marker symbol
How to draw a bitmap element using OpenGL
Managing Static Content
Rendering non-dynamic layers
Persisiting cache information for non-dynamic layers
Controlling drawing characteristics of non-dynamic layers
Best Practices
Best Practices for Dynamic Display
Working with map documents
Working with map documents
How to access maps and layers via MapDocument
Working with the map
Working with the map
How to perform map selection
How to interact with map elements
Working with the page layout
Working with the page layout
How to work with page layout elements
About Map Surrounds
How to interact with map surrounds
About Map Grids
How to Create Map Grids
How to Create Map Grid Labels
How to load a password protected document into the Java VisualBeans
Working with the map display
Working with the map display
How to draw a point to the screen
How to draw a polyline to the screen
How to draw a rectangle to the screen
How to draw a polygon to the screen
How to redraw the display
Display events
How to enable display caching
How to get screen coordinates from map coordinates
How to get map coordinates from screen coordinates
Selection trackers
Working with symbols and colors
Working with symbols and colors
How to make different types of color
How to make a cartographic line symbol
How to make a line fill symbol
How to make a line callout
How to make a gradient fill symbol
How to make a character marker symbol
How to make a picture marker symbol
How to create a Dynamic Glyph from a marker symbol
Working with layers and renderers
Working with layers and renderers
How to add a layer to a map from a layer file
How to add different types of layers to a map
How to access a layer's underlying data
How to define a renderer for your layer
How to save to a layer file
About custom Layers
Custom feature renderers
Managing custom feature renderers
Cartographic representations
Working with labels and annotation
Working with labels and annotation
How to convert labels to geodatabase annotation for a single layer
How to convert labels to map annotation for a single layer
Exporting maps
How to set output image quality
How to set the picture symbol vectorization settings for vector exports
How to initialize a world file with rotation
Network analysis
Transportation network roadmap
Utility and natural resource network roadmap
Network datasets and geometric networks
Programming with Network Analyst
Programming with Network Analyst
How to load data into a network analysis problem
How to setup, solve, and save a network analysis problem
Raster data
Data access
How to access a raster dataset or raster catalog
How to access a raster dataset in a raster catalog
How to access raster workspaces
How to access pixel blocks using raster cursor
How to access HDF subdatasets
How to access JPEG's EXIF tag
Data creation and loading
How to create a raster dataset
How to load a raster dataset to a raster attribute column in a featureclass
How to export a raster dataset to a geodatabase and specify options
How to create tiles from a raster dataset
Processing rasters
How to SaveAs raster data
How to set raster properties during SaveAs a raster
How to find the top left extent of the rasters in a folder and its subfolders
How to convert a raster dataset to a JPEG2000 raster dataset
How to mosaic raster datasets to a raster dataset in geodatabase
How to erase a portion of a geodatabase raster dataset
How to create a pixel filter and apply on a raster
How to pan-sharpen an image
How to create a custom convolution filter
Transformation
How to orthorectify an image
How to project a raster with a datum transformation
How to georeference a raster using polynomial transformation
How to perform geodata transformation on a raster
How to persist a geodata transformation on a raster dataset
How to create an AdjustXform for georeferencing images
How to create an ApproximationXform
Layers and renderers
How to add a raster layer to map
How to create a raster catalog layer
How to create a raster classify renderer
How to create a raster stretch renderer
How to create a raster unique value renderer
Tables and colormaps
How to add or remove a colormap from a raster dataset
How to build a raster attribute table
How to update footprints of a raster catalog
How to identify pixel values on a raster
How to upgrade an 8.x embedded raster catalog to a 9.x raster catalog in ArcSDE geodatabase
Spatial Analyst
Working with Spatial Analyst
ArcObjects package overviews
3D Analyst
Animation
Visual JavaBeans
Cartography
File Data Sources
Geodatabase Data Sources
NetCDF Data Sources
Object Linking and Embedding DB Data Sources
Raster Data Sources
Display
GIS Client
Geostatistical Analyst
Geodatabase
Distributed Geodatabase
Geodatabase Extensions
Geometry
Geoprocessing
Globe Core
Location
Maplex
Network Analyst
Output
Schematic
Server
Spatial Analyst
System
System User Interface
Tracking Analyst
Using ESRI Eclipse Plug-ins
Installing ESRI Plug-ins
Building a visual application
Building a visual application using ESRI templates
Generating wrappers for geoprocessing tools
Debugging ArcObjects using Eclipse
How to access ArcObjects Javadoc in Eclipse
How to access ArcGIS Help Content in Eclipse
Uninstalling ESRI Plug-ins
Licensing and Deploying desktop Applications
License Options
Application Development and License Initialization
A Guide to ArcGIS Engine Runtme Installation
Installing ArcGIS Engine Runtime Silently on Windows
Using an ArcGIS Desktop License Server with an Engine Runtime
Deployment Guide
Developing extensions
Developing extensions
ArcGIS Desktop customizations using addins
ArcGIS Desktop customizations using add-ins
How to create an add-in project in Eclipse
How to create an add-in project in Eclipse
How to create a button
How to create a tool
How to create a combo box
How to create a toolbar
How to create a tool palette
How to create a menu
How to create a dockable window
How to create an application extension
Understanding the config.xml
Object model diagrams for add-ins
How to deploy your add-in
How to deploy your add-in
How to deploy from Eclipse
How to use double-click deployment
How to deploy using the Add-In Manager
How to version your add-in
How to localize your add-in
Digitally signed add-ins
Custom Geoprocessing Tools
Explore
Geoprocessing in ArcGIS
Automating GIS workflows
Develop and Deploy
How to build custom geoprocessing tools
Function Tool Class
Function Factory Class
Building in Eclipse IDE
Debugging custom tool published as service to ArcGIS Server
Understanding Tool Parameters
Data types
Parameter Domains
Customizing a Tool Dialog
Using in ModelBuilder
Best Practices
List of Geoprocessing DataType ArcObjects
Sample: Create Buffer
Sample: Delete Features
Consume
Consuming in Java Applications
Consuming in ArcGIS Desktop
Consuming in ArcGIS Server
Custom Feature Renderer
Explore
Develop and Deploy
Get started with a custom feature renderer
How to implement Custom Feature Renderer
Building Custom Feature Renderer in Eclipse IDE
How to implement Custom Property Page
Building Custom Property Page in Eclipse IDE
How to implemen Custom TOC Legends
How to implement Persistence and Version Compatibility
Sample: PointDispersal
Sample: First Custom Renderer
Consume
Class Extensions
Develop, deploy, and consume
Get started with class extensions
How to implement Class Extensions
Scenario: Customize Object Events Behavior
Scenario: Customize Attribute Validation
Scenario: Customize Relationships
Sample: Feature Validator
Sample: Timestamper
Sample: Related Object Event Handler
PlugIn Data Sources
Develop and deploy
Get started
How to implement
Sample: PointPluginDataSource
Consume
Utility Objects
Utility Objects
Sample: AreaCalculator
Extending ArcGIS Server
About extending services
Server Object Extensions (SOEs)
Migrating SOEs From 10.0 to 10.1
Developing SOEs
Overview Of Developing SOEs
Developing SOAP SOEs
Developing REST SOEs
Debugging SOEs
SOE Properties
Adding Properties to SOEs
Creating Custom Property Pages For ArcMap
Creating Custom Property Pages For ArcGIS Server Manager
Adding Capabilities to SOEs
Logging messages
Exporting SOEs
Exporting SOAP and REST SOEs
Exporting SOEs with dependencies
Exporting SOEs on the command line
Server Object Interceptors (SOIs)
Developing SOIs
Overview Of Developing SOIs
Sample: Apply watermark
Sample: Apply watermark image service
Sample: Layer access
Sample: Server operation access
Sample: Simple logger
Deploying server extensions
Enabling server extensions
Debugging a server extension
ArcGIS Java configuration tool
Debugging Extensions
Deploying extensions
Creating and Consuming Custom C++/COM Components
Samples
Overview
3D
Convert 2D points to 3D
Convert TIN to point
Create and play animation in a globe
Create new TIN
Digitize points using OpenGL
Animation in the Globe control
Hillshade command
Camera and layer animation in the Globe control
Globe sun position
Add-In
Simple Add-In
Cartography
Custom Renderer
First custom renderer
MZ renderer
Optimzed renderer
Point dispersal
Scale renderer
Simple property page for custom renderer
Valence renderer
Renderers
Bivariate renderers
Display renderers
Feature class draw
Rotation renderer
Trim unique values
Symbols
Symbols
Copy and paste a symbol
Create a line symbol
Create marker symbol
Draw symbol
Spline text
Text Background
Circle callout
Filled leader callout
Display
Custom Layer
Dynamic Display
Graphics Tracker
Display feedback
RubberBand zoom
Editing
Buffer snap agent
Events lifecycle
Manage snap agents
Reshape Polyline edit task
Custom vertex editing tools
Geodatabase
Feature Class Extension
Feature Validator
Related Object Event Handler
Time Stamper
Data Management
Access file geodatabase
Add feature
Browse for data using name objects
Create a shapefile from a text file with XY values
Display field properties for a feature class
Query a shapefile
Select features using spatial relationships
Simplify feature geometry for a shapefile
Update features using an update cursor
Plug-in Data Source
Geometry
Clip a shapefile by envelope
Convert shape to string
Create a custom geographic transformation
Create valid polylines
Project a point with ProjectEx
Retrieve polygon centroid
Geoprocessing
Custom Tools
Create buffer
Delete Features
Calculate Line of sight
Convert SDE feature class to layer file
Copy features tool
Create feature class
Create and mosaic a raster dataset in a file geodatabase
Event listeners
Field mapper
Select using intersection tool
Network Analyst
Solve closest facility
Solve route
Solve service area
Raster
Build pyramids
Create a raster catalog in a file geodatabase
Create world file
Mosaic rasters
Scenarios
Engine viewer
GIS Client
Build an ArcGIS controls map viewer application
Compute the slope of a raster dataset
Utility object
Server Object Extensions
Simple REST SOE
Simple REST SOE for Image Service
Simple REST SOE With Properties
Simple REST SOE With Capabilities
Find Nearby Features REST SOE
Simple SOAP SOE
Find Nearby Features SOAP SOE
Server Object Interceptors
Apply watermark
Apply watermark image service
Layer access
Server operation access
Simple logger
Spatial Analyst
Calculate cell statistics using RasterLocalOp
Calculate slope
Create countour list
Tracking Analyst
Display tracking server layer
VisualBeans
GlobeBean
MapBean
Add layer file to map
Buffer features
CAD viewer
Draw text
Pan map using arrow keys
Rotate display
Select features using query
Show MapTips
Swipe and change transparency
Track GPS
Use map, TOC, and toolbar beans
PageLayoutBean
Copy focus map
Save map document
Use overview control
Use PageLayout bean
SceneBean
Create scene bookmark
Use scene bean
SymbologyBean
Add map surrounds
Add text elements to map
Assign symbol to graphic elements
Modify feature layer symbols
Modify frame properties
Modify legend format
Render using color ramp
TOCBean
Drag and drop layers
Edit TOC labels
ToolbarBean
Create bookmark
Create toolbar menu
Customize toolbar
Draw graphic elements on map
Map as toolbar buddy
Modify toolbar appearance
Select features in map
Use context menu
Tools
Overview
Proxygen Tool
ArcGIS Java Configuration Tool
Reference
Overview
ArcObjects Javadoc
Built-in ESRI standard Commands, Tools, Menus and Palettes
ArcObjects Error Codes
Object Model Diagrams