/gems-tools-pro

GeMS Tools for ArcGIS Pro

Primary LanguagePythonOtherNOASSERTION

GitHub tag (latest SemVer) Wiki HTMLdoc ArcMap HTMLdoc Gitter chat gems on USGS

GeMS Tools for ArcGIS Pro

This repository contains an ArcGIS toolbox of Python 3 geoprocessing tools for creating, manipulating, and validating GeMS-style geologic map databases for use in ArcGIS Pro. Additional resources; vocabularies, symbology, links to other projects, etc.; are available at the NGMDB GeMS site.

If you are looking for tools that work in ArcMap using Python 2.7, go to gems-tools-arcmap

Installation

  • Download the latest release.
  • Unzip the file to a folder of your choice. This will extract a single folder named gems-tools-pro- followed by the version number (e.g., gems-tools-pro-2.1).
  • Open ArcGIS Pro and go to either the Contents or Catalog pane.
  • Under Project, right-click on Folders to add a folder connection. Navigate to the toolbox folder.
  • Note that this only saves the folder connection with the current project file. If you want to have the toolbox handy for any project that you open up,
    • go to the Catalog pane
    • select the Favorites tab
    • click Add Item
    • choose Add Folder, and navigate to the folder.

The documentation for these tools may not be complete or may be poorly formatted for display in either the ArcGIS Pro help popup (hover your cursor over the ? icon when looking at the tool parameter form) or metadata view (right-click on the tool from the Catalog pane and choose View Metadata), but, for the most part, the Python 3 versions produce the same results as the older Python 2.7 versions.

Getting help

  • Each tool comes with documentation inside the parameter form.
  • Check out the wiki for help on these tools and extensive advice on using these tools to create, edit, and validate GeMS-style databases.
  • Documentation for the toolbox and all tools and is also available in GeMS_Tools_Arc10.docx and GeMS_Tools_Arc10.pdf found in the Docs sub-folder — these are both somewhat out-of-date; check back for new versions.
  • If, when using a tool, it fails to run and produces an error message, first check that you have the latest release of the tool. If that is not the source of the problem, start a new issue at this repository (see the Issues tab above). Provide a screenshot of the error message if you can.
  • Explore the Jupyter Notebooks at the notebooks branch of this repo.
  • If you have a question about how to build or attribute a GeMS-compliant database or the schema in general, please visit the GeMS Gitter chat room. If you already have a GitHub account, you can sign in there with those credentials.

Collaborate

Suggestions for improvements and edited files submitted by email will be considered, but you are strongly encouraged to use GitHub to fork the project, create a new branch (e.g., "MyFixToProblemXXX"), make changes to this branch, and submit a pull request to have your changes merged with the master branch. Excellent guides for various aspects of the git workflow can be found here:

https://guides.github.com/

Known issues

  • "Project Map Data to Cross Section" does not always produce the correct apparent dip direction. The dip magnitude is correct, but it may be in the wrong direction.

  • "MapOutline" stumbles over some choices of datum.

  • "DMU to .docx" requires the python-docx third party package. Do not try to install this package into your default arcgispro-py3 python environment. Instead, install it into a clone. Remember to activate this environment before running the tool.

  • Issue 11 describes a problem found when using the Fix Strings tools but may occur elsewhere as well; trying to update rows with an update cursor may throw an error if there is an attribute rule on the field with a message similar to:

Failed to evaluate Arcade expression. [
Rule name: Calc _ID,
Triggering event: Update,
Class name: MapUnitLines,
GlobalID: ,
Arcade error: Field not found GlobalID,
Script line: 1]

even when the field, e.g., GlobalID, does exist. The workaround for now is to disable the attribute rule.

Acknowledgements

GeMS Tools was originally written by in Python 2.7 by Ralph Haugerud, Evan Thoms, and others and ported to Python 3 by Evan Thoms.

Disclaimer

This software is preliminary or provisional and is subject to revision. It is being provided to meet the need for timely best science. The software has not received final approval by the U.S. Geological Survey (USGS). No warranty, expressed or implied, is made by the USGS or the U.S. Government as to the functionality of the software and related material nor shall the fact of release constitute any such warranty. The software is provided on the condition that neither the USGS nor the U.S. Government shall be held liable for any damages resulting from the authorized or unauthorized use of the software.

Any use of trade, firm, or product names is for descriptive purposes only and does not imply endorsement by the U.S. Government.