arcobjects: extending gis functionality for the … development ... extending gis functionality for...

24
Arc Arc - - Objects Objects : extending GIS functionality for the Petroleum Upstream Power Tools to automate Data Transfer, Gridding & Contouring, Risk Analysis, and lots more Cool Stuff by: Rich Priem [email protected] 281-451-8818 ESRI Petroleum Users Group Conference (PUG) 26-February 2008 (Tuesday) 11:00 – 11:30 am

Upload: vudung

Post on 23-May-2018

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

ArcArc--ObjectsObjects: extending GIS functionality for the

Petroleum Upstream

Power Tools to automate Data Transfer,Gridding & Contouring, Risk Analysis,

and lots more Cool Stuff

by: Rich [email protected]

281-451-8818

ESRI Petroleum Users Group Conference (PUG)26-February 2008 (Tuesday) 11:00 – 11:30 am

Page 2: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

2 /20OutlineWhy: What is the Motivation

Where: are the Opportunities

How: Arc Objects & Visual Basic

What: Power Tools for ArcGIS

Who: Consortium of Clients

Q&A: Questions & DiscussionDISCLAIMER: presentation solicited just 3 days agoDISCLAIMER: presentation solicited just 3 days agoApologize: short on visual examplesApologize: short on visual examples

Page 3: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

3 /20Why: what is the motivation?

ArcGIS is a large & diverse productDepth & breadth of robust functionality to leverage

Petroleum is a minor vertical niche to ESRIBut rapidly growing, as evidence by this conference!and represented by some of the largest & most profitable companies in the world!

With some specific needs in the Upstream SectorNot well understood, appreciated, or adressed by ESRI

Already serviced by a few mature Vendorsthat might be too large & lethargic to respond to the emerging GIS market

Creating an Opportunity for new InnovationsBy experienced, but agile Business Partners

Page 4: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

4 /20Untapped GIS Potential

1. Access GIS DataExchange with the many other E&P applications

2. Process GIS DataRisk Analysis, Gridding & Contouring, Fluid Flow

3. Modify GIS DataAttributes, Metadata, Projections

4. View GIS DataMap panels, 3D, Cross-sections

5. Present GIS DataHardcopy, Slides, Interactive

6. Manage GIS DataOrganize, Publish, Inventory, Repair

Page 5: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

5 /201. Access GIS Data

Exchange with the other E&P applicationsSeisWorks, OpenWorks, Zmap, GeoProbeGeoQuest, CPS3, EarthVision, RMS, GoCadUkooa, Excel, Generic ascii columns, etc.

EfficiencyBatch capabilities: multi-select, drag & dropAuto-detect formats

Dumbing Down (export)Complex Polygons (donuts)Annotations from Labels

Page 6: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

6 /202. Process GIS Data

Risk AnalysisEvaluate the spatial component (map optimization)

Convolve risk elements from any number of input GIS layersExploration play fairwaysProspect drill site selectionReservoir development (infill drilling)

Gridding & ContouringBatch processing, clipping, faults/barriersTopo Maps: fine & bold contours, labels, outlineThickness (TST), reconstructionsTrends, residuals, smoothing, blanking

Fluid Flow AnalysisTrap & source locations (fill & spill)Area, volume, column heights

Page 7: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

7 /203. Modify GIS Data

Attributes added to FeaturesGenerate from any number of other GIS layers

Metadata enhancementsSimplify viewing or editing any Map layerView complete data Lineage

Every processing step back to raw input!

Projection issuesCorrect or modify spatial reference (batch)

Page 8: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

8 /204. View GIS Data

Map panelsSystematically pan/zoom/scroll data extentOr features, sorted by attribute

3DDrape features & attributes on DEM

Cross-sectionUnlimited number of layers: raster or featureDynamically update: drag transect on mapMouse-over information

Page 9: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

9 /205. Present GIS Data

PowerPoint SlidesBatch export options, concistent matrix layout

Preserve metadata in notes

Dynamically update map surroundsDate, name, labels, spatial reference, paths, etc.

Interactive SessionsSymbology modified in batch

Consistent rendering for a group of layers

Bookmarks: import, modify, rename, reorder

Page 10: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

10 /206. Manage GIS Data

InventoryScan document(s) or catalog tree

RepairBroken links: relative, UNC, MND, dos8.3Spatial Reference: wrong or missing

PublishBundle of layers sent to a new location

OrganizeBatch renaming

Page 11: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

11 /20Vision of Efficiency

Import Interpretationa stack of a dozen horizons from a 2d/3d SeisWorks project

Mixed ProjectionsRepeat for a corresponding stack from another project in a different projection

Grid and MergeMosaic across mixed projectionsCreate a set of Isochore (true stratigraphic thickness) grids for each interval

Make contour maps of all these surfaces

Create a montage of Depth and Thickness and send to the plotter

Identify leads as traps on target horizons

Similarly, identify sourcemigration points from Kitchen horizon

Evaluate the Exploration RiskAdequate trap column from stacked pay zonesFilled by significantly mature source volume near the crest of a reconstructed carrier bed

Dump everything to Powerpoint for presentation to Management

Convince them we pulled all-nighters over the Weekend to get all this work done

But, we do this stuff repeatedlyWant it to be faster & easier!

Page 12: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

12 /20How: Arc Objects

“Dev Kit” for ArcGISOops: Object Oriented ProgrammingRobust library of Interfaces, Methods, and PropertiesAccess to data structures, tools, functions, models, etc.

Development ResourcesESRI Developers Network & Web Forums

Architecture: Microsoft “COM” compliantBroad base of Software DevelopersCompilers: C++, VB, .Net, Python, etc.

Visual BasicVBA (prototype): visual basic for applicationsVB6 (package): compile into DLL extensions

Page 13: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

13 /20Pros & Cons

Advantages of Arc ObjectsTruly “Open” development environment

Integrate across applications (ie, Office)Comes free with the ArcGIS softwareClearly documented on the Web

Many sources of code samples

Disadvantages of Arc ObjectsComplex object model, with some quirksLearning Curve is steep, hard to get HelpWeb Resources: usually get what you pay forLots of Hackers, far less Experts

Page 14: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

14 /20Necessity . . .

. . . is the Mother of Invention . . .Clients have lots of Problems to SolveMany things not working efficientlyMany of them are frequently recurring

Lazy, Lazy, Lazy, MeLow tolerance for tedious, menial, manual work

Leverage skills & resources (work smart)Rather than spending an hour of monotony . .Spend a few hours writing a script (rapid prototyping)Then refine and reuse over & over (payback)

CommercializePackage and Distribute for Customers to useWhich inevitably leads to more Business

Page 15: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

15 /20What: Priemere PowerPower Tools

A suite of tools to extend the generic functionality of ArcGIS Desktop

ArcMap, Catalog, Scene, and GlobeDesigned around the unique requirements of the Petroleum E&P environment

defined by the needs of our CustomersWith focus on Automation & Efficiency

to facilitate access, analysis, presentation, and management of large amounts of Data

Field Tested in our Client OfficesUsed to deliver our Consulting Service Projects

Page 16: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

16 /20Putting in the Power!Power!

Floating ToolbarCustom add-in extensionArcMap, Catalog, Scene, Globe

Menu of ToolsAddress requirements stated earlier

Focus on AutomationFast and efficient work processes

Batch ProcessingOperate on Groups of Data

Intelligent DefaultsMinimize key strokes for parameter selection

Priemere AlgorithmsDesigned for E&P customer requirements

Power!

Page 17: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

17 /20Example: Topo with Traps

. . . . . . CensoredCensoredCensored . .. .. .

Contours: fine & boldPerimeter outline (edge)Quantile classificationCustom map surroundsTraps w. attributes

Page 18: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

18 /20Beauty from the Beast

SeisWorks Horizons: 2d/3d merged projectsToC: unlimited culture, grids, overlays, etc.Mix coordinate systems: project-on-the-flyTrue Color (32 bit)TransparencyEasy Cut/PasteIdentify AttributesHyperlinksEtc, etc, etc…

. . . . . . CensoredCensoredCensored . .. .. .

Page 19: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

19 /20Example: Cross-Section

Well Locations

Basin Polygons

License Blocks

SeismicHorizons

Mouse-over

Turning Points

Page 20: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

20 /20Example: Attribute Maker

GUI InterfaceDefine base layer (inventory of leads)Scrolling List Attribute

Input laye, parameters, and notesProcess individually or in batchParameter file to save & reuse

Extract Values from Other GIS LayersRaster (grid) statistics: mean, min, max, etc.

Structure: Depth, Thickness, Bathymetry, DBMLMeasures: NTG, Porosity, Amplitude, Risk

Feature layers: attributes or statisticsLease Block, nearest Welldistance from Pipeline

Result: Attribute TableView in Excel, Access, etc.Metadata recording processing history

Page 21: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

21 /20Who: if, when, how?

Just throwing out Ideas . . .Many companies have dabbled in DevelopmentPUG list has many lingering requests

Consortium OpportunitiesPool support from interested customersPrioritize commercialization of ProductsShared Funding of new Innovations

Page 22: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

22 /20Conclusion

Questions AnswersCommentsFeedback

Contact InformationRich Priem: [email protected]/GIS

Page 23: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

23 /20Bio: Rich Priem

Rich is a GeoScience Consultant doing business as the Priemere Consulting Group for more than two decades. His degrees are in Engineering, Mathematics, and Computer Science.Rich has been programming & using software applications for 35 years, with 28 years in the Petroleum Industry, mostly on the Exploration side.This is his 6th PUG, and he has been heavily using ArcGIS Desktop for Mapping & Modeling - as well as ArcObjects for developing custom extensions to address specific needs of his clients.

Page 24: ArcObjects: Extending GIS Functionality For the … development ... Extending GIS Functionality For the Petroleum Upstream ... PUG, Arc-Objects: Extending GIS functionality for the

24 /20Abstract

Never Written . . .