ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET:...

69
Tim Hodson Ken Galliher ArcGIS Pro SDK for .NET Introduction to the Parcel Fabric API

Transcript of ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET:...

Page 1: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

• Tim Hodson• Ken Galliher

ArcGIS Pro SDK for .NET Introduction to the Parcel Fabric API

Page 2: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Session Overview

• How to access and use the Pre-release

• Conceptual overview

• Parcel Editing API for Pro

• Coordinate Geometry (COGO)- Direction Formats and Units- Ground to Grid Corrections- Circular arc geometries

Parcel Fabric API

Page 3: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Tim Hodson

How to Access and Use the Pre-Release

Page 4: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Pre-release Namespaces

• Use Internal Namespaces for Mapping and Editing assemblies

• Try it out now• Recompile and re-deploy when Final SDK is released

Internal Namespaces

Page 5: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

Page 6: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

Parcel Fabric Information Model

Page 7: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

General User Workflow – Order of Operations

• General workflow

• Order of Operations

Page 8: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

General User Workflow – Order of Operations

• Land records document – subdivision plan- 1. Create a Record object - 2. Create COGO lines- 3. Create parcel seeds- 4. Attribute parcel seeds- 5. BUILD Active Record to Complete Parcels

Page 9: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

1. Create New Record

• Create a New Record object in the Fabric

Page 10: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

1. Create New Record

• Create a New Record object in the Fabric

Page 11: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

2. Create COGO Lines

• Create COGO lines

Page 12: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

3. Create Parcel Seeds

• Create Parcel Seeds

Page 13: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

3. Create Parcel Seeds

• Create Parcel Seeds

Page 14: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

4. Attribute Parcel Seeds

• Attribute Parcel Seeds

Page 15: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

4. Attribute Parcel Seeds

• Attribute Parcel Seeds

Page 16: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

4. Attribute Parcel Seeds

• Attribute Parcel Seeds

Page 17: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

5. BUILD Active Record to Complete Parcels

• BUILD Active Record to Complete Parcels

Page 18: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Conceptual Overview

RECORD polygon footprint

• Record geometry updated - polygon footprint

Page 19: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Editing API for Pro

Page 20: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Editing in Pro

Continued…

• Provides course-grained API

• Uses and Extends standard Edit Operations framework

• Leverages pre-defined information model

Page 21: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Editing in Pro

• Multi-user environment - fabric accessed via services

• Single use model - works directly on a file geodatabase

• API is designed based on a services architecture

Page 22: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Edit Operations - Workflow

• Instantiate a new EditOperation• Specify the edit to be performed• Execute the operation

Page 23: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Edit Operations - Workflow

• Instantiate a new EditOperation• Specify the parcel edit to be performed• Execute the operation

Page 24: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Edit Operations - Workflow

• Instantiate a new EditOperation• Specify the parcel edit to be performed• Execute the operation

Page 25: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Layer

• Access the Parcel Fabric via the Parcel Layer

• Extension methods- Set Active Record- Get Active Record

Page 26: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Layer

• One parcel layer per map enforced by the system:

• Access parcel layer as follows:

Page 27: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric - Records

• Parcel features contained by the Record

Page 28: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric - Records

• Parcel features contained by Record

Page 29: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric - Points

Page 30: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric - Points

• Creating a fabric point

Page 31: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric – Connection Lines

Page 32: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric - Lines

Page 33: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric - Lines

• Schema – COGO Enabled lines

COGO Enabled Lines

Page 34: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Ken GalliherParcel Types

Page 35: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric Information Model

Page 36: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric Information Model

Parcel Types

• Parcel Type

• The Parcel Fabric is a DML-only API- Data creation, schema modification, attribute rules etc. via Python- Geoprocessing tools can be executed from Pro SDK

Page 37: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric Information Model

Parcel Lineage

• Parcel Lineage

Merge

Page 38: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric Information Model

Parcel Lineage

• Parcel Lineage

Merge

Page 39: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Ken Galliher

Demo: Creating Parcel TypeCreating a Record & Fabric PointCopy Lines To A Parcel TypeMerge Parcels

Page 40: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Tim Hodson

What’s Next for Parcel Fabric API

Page 41: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Enhancements to Parcel Fabric API for Final Release

• Simplify Creating and Setting ParcelRecord object

• Get Parcel feature sub-layers from Parcel Layer- Points, Connections & Records feature layers- Parcel type feature layers (return list of feature layers)

• Query feature layer to check if it belongs to the active map’s fabric

• Other enhancements…

A few key enhancements planned for Final

Page 42: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Tim Hodson

API for Coordinate Geometry (COGO)

Page 43: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• COGO Enabled lines

• Converting Direction formats and Units

• Ground to Grid corrections

• Circular arc constructors

Page 44: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Schema – COGO Enabled lines

COGO Enabled Lines

Page 45: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Testing for COGO – Enabled lines

COGO Enabled Lines

Page 46: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Schema – COGO Enabled lines

COGO Enabled Lines

Page 47: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Direction Number Format Converts to Quadrant Bearing in display

COGO Enabled Lines

• Directions are always stored as - North Azimuth- Decimal Degrees

Page 48: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Direction Units

COGO Enabled Lines

Doubles ?

Page 49: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Schema – COGO Enabled lines

COGO Enabled Lines

Page 50: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Converting Direction formats and Units

Traverse Text File example

Page 51: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Traverse Text File example

• Converting Direction formats and Units

Page 52: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Traverse Text File example

• Converting Direction formats and Units

Page 53: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Using the DirectionUnitFormatConversion class

String Quadrant Bearing to Polar Cartesian

Page 54: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

• Using the DirectionUnitFormatConversion class

Polar cartesian radians to North Azimuth decimal degrees

Page 55: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Traverse Text File example

• Converting Direction formats and Units

Page 56: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Ground to Grid Corrections Tray

• Ground to Grid Corrections

Page 57: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Setting Ground to Grid Corrections properties on the CIM

• Ground to Grid Corrections - Setting

Page 58: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Use extension methods to read Ground to Grid Corrections from the Active Map View

• Ground to Grid Corrections - Reading

Page 59: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Circular arc parameters

• Circular Arc Parameters• Shape and Size

- Radius- Chord Length- Arc Length- Delta / Central angle

• Orientation- Chord Direction- Tangent Direction- Radial Direction

Page 60: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Traverse Text File example

• Circular Arc Constructors

Page 61: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Circular arc parameters

• Circular Arc Parameters• Shape and Size

- Radius- Chord Length- Arc Length- Delta / Central angle

• Orientation- Chord Direction- Tangent Direction- Radial Direction

Page 62: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

Use EllipticArcBuilder to create a Circular Arc

• Circular Arc Constructors

Page 63: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

All parameter combinations can be achieved

• Circular Arc Constructors

Page 64: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Coordinate Geometry (COGO)

All parameter combinations can be achieved

• Circular Arc Constructors

Page 65: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Tim Hodson

• Demo – Create A Circular Arc- using ground to grid correction - converting direction and linear units

Page 66: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric Resources

Page 67: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric SDK .Net Resources

• Pro Concepts page- https://github.com/esri/arcgis-pro-sdk/wiki/ProConcepts-Parcel-Fabric

• Pro Snippets- https://github.com/esri/arcgis-pro-sdk/wiki/ProSnippets-ParcelFabric

• ArcGISPro-ParcelFabric-PreRelease-APIReference.chm- https://github.com/esri/arcgis-pro-sdk/releases

Page 68: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

Parcel Fabric SDK .Net Resources

• Add-in Sample Code from this presentation

Page 69: ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API · ArcGIS Pro SDK for .NET: Introduction to the Parcel Fabric API Author: Esri Subject: 2020 Esri Developer Summit --

ArcGIS Pro SDK for .NET Introduction to the Parcel Fabric API

• Questions?

- https://github.com/esri/arcgis-pro-sdk/wiki/tech-sessions#2020-palm-springs