Generate Isogonic Lines (Topographic Production)

Summary

Generates isomagnetic lines based on the World Magnetic Model.

Usage

  • This tool appends isogonic line features to the Target Isogonic Features parameter value.

  • This tool will not overwrite features in the Target Isogonic Features parameter value. Before running this tool with an extent that has already been run, delete the features for the earlier extent.

  • This tool uses the World Magnetic Model 5-year epoch specific to the data provided. For example, if the data specified is from 2020, the model epoch released at the end of 2019 will be used.

  • The Altitude parameter value is the elevation as a linear unit of the input points and must be a numeric value above sea level. This parameter applies the same elevation value to all isogonic lines generated by the tool. Do not use decimal degrees or unknown as the unit of measurement.

  • The Date parameter value must be valid for the specified World Magnetic Model and formatted as two digits for the month, two digits for the day, and four digits for the year.

  • To specify a value smaller than 1 degree for the Interval parameter, use 0.25 for 15 minutes, 0.50 for 30 minutes, and 0.75 for 45 minutes.

Parameters

LabelExplanationData Type
Input Extent Features

The area of interest where the lines will be created.

Feature Layer
Altitude

The elevation of the Input Extent Features parameter value including the linear unit. The default is 0 meters.

Linear Unit
Date

The date for which the magnetic field values will be calculated. The default is the system's current date.

Date
Interval

The interval or distance between lines in degrees. The value can be any positive number. The default is 1.

Double
Base

The amount that isogonic lines will be generated above and below to cover the input value range.

Double
Target Isogonic Features

An existing feature class to which the isogonic lines will be appended.

Feature Layer
Magnetic Variance Field

The field from the Target Isogonic Features parameter value that will store magnetic variance values.

Field
Subtype
(Optional)

The subtype where isogonic lines will be written if the Target Isogonic Features parameter value has subtypes.

String
Include Annual Drift
(Optional)

Specifies whether annual drift will be calculated. Annual drift is used in maritime workflows.

  • Checked—The annual drift will be calculated.
  • Unchecked—The annual drift will not be calculated. This is the default.
Boolean
Annual Drift Field
(Optional)

A field in the Target Isogonic Features parameter value that will store the calculated annual drift values. The parameter accepts fields that have a Text, Double, or Float data type.

This parameter is active when the Include Annual Drift parameter is checked.

Field

Derived Output

LabelExplanationData Type
Modified Target Isogonic Features

The updated input feature dataset with the isogonic lines appended.

Feature Layer

arcpy.topographic.GenerateIsogonicLines(extent_features, altitude, date, interval, base, target_isogonic_features, magnetic_field, {subtype}, {annual_drift}, {annual_drift_field})
NameExplanationData Type
extent_features

The area of interest where the lines will be created.

Feature Layer
altitude

The elevation of the extent_features parameter value including the linear unit. The default is 0 meters.

Linear Unit
date

The date for which the magnetic field values will be calculated. The default is the system's current date.

Date
interval

The interval or distance between lines in degrees. The value can be any positive number. The default is 1.

Double
base

The amount that isogonic lines will be generated above and below to cover the input value range.

Double
target_isogonic_features

An existing feature class to which the isogonic lines will be appended.

Feature Layer
magnetic_field

The field from the target_isogonic_features parameter value that will store magnetic variance values.

Field
subtype
(Optional)

The subtype where isogonic lines will be written if the target_isogonic_features parameter value has subtypes.

String
annual_drift
(Optional)

Specifies whether annual drift will be calculated. Annual drift is used in maritime workflows.

  • ANNUAL_DRIFTThe annual drift will be calculated.
  • NO_ANNUAL_DRIFTThe annual drift will not be calculated. This is the default.
Boolean
annual_drift_field
(Optional)

A field in the target_isogonic_features parameter value that will store the calculated annual drift values. The parameter accepts fields that have a Text, Double, or Float data type.

This parameter is active when the annual_drift parameter is set to ANNUAL_DRIFT.

Field

Derived Output

NameExplanationData Type
modified_target_isogonic_features

The updated input feature dataset with the isogonic lines appended.

Feature Layer

Code sample

GenerateIsogonicLines example (stand-alone script)

The following code sample demonstrates how to run the GenerateIsogonicLines function in Python.

# Name: GenerateIsogonicLines_sample.py
# Description: Generate magnetic variation lines and annual drift for a selected area of interest
# for an Operational Navigational Chart (ONC).

# Import System Modules
import arcpy

# Check Out Extensions
arcpy.CheckOutExtension('Foundation')
arcpy.CheckOutExtension('Spatial')

# Making Feature Layer from Input Extent Features feature class
Index = r'C:\Users\Public\Documents\ArcGIS Defense Mapping\Product Files\ReferenceData\MapIndex.gdb\MapIndex\ONC_Index'
arcpy.management.MakeFeatureLayer(Index, "ONC_Index")

# Selecting a single AOI from the Input Extent Features feature class
selection_string = "NRN = 'ONCXXP12'"
arcpy.management.SelectLayerByAttribute("ONC_Index", "NEW_SELECTION", selection_string)

# Setting Local Variables
extent_features = r"ONC_Index"
altitude = "0 Meters"
date = "8/6/2024"
interval = 0.25
base = 0
target_isogonic_features = r"C:\Data\ONC.gdb\BM\IsogonicLineCrv"
out_field = "MAG"
subtype = "ISOGONIC_LINE_C"
annual_drift = "ANNUAL_DRIFT"
drift_field = "DRIFT"

# Calling the Generate Isogonic Lines tool to produce magnetic variation lines for an ONC product
arcpy.topographic.GenerateIsogonicLines(extent_features, altitude, date, interval, base, target_isogonic_features, out_field, subtype, annual_drift, drift_field)

# Check In Extensions
arcpy.CheckInExtension('Foundation')
arcpy.CheckInExtension('Spatial')

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: Requires Production Mapping and Spatial Analyst
  • Advanced: Requires Production Mapping and Spatial Analyst

Related topics