Surface DGGS Package

The surface_dggs package consists of all of the scripts and django web application components necessary to build and query Surface DGGS Instances

The Subpackages contain the python modules and scripts that perform the core backend DGGS related tasks.

The Submodules contain the django web application resources to expose the Surface DGGS Resources to the user.

Surface DGGS Subpackages

The following Subpackages are defined by this package.

Surface DGGS Submodules

The following submodules are defined by this package.

surface_dggs.apps module

Note

Module Details

Surface DGGS Application Registration module

This Class module is required to register each Django package under the main web application.

Created: 7 September 2017

@author: Dr. Matthew B.J. Purss

class src.surface_dggs.apps.SurfaceDggsConfig(app_name, app_module)

Bases: AppConfig

name = 'surface_dggs'

surface_dggs.consumers module

Note

Module Details

Surface DGGS Asynchronous “Consumers” Module

This Class module defines the consumers for asynchronous requests to the SurfaceDGGS application resources through TerraNexus.

This is the asynchronous equivalent to the “views” module.

Created: 30 June 2020

@author: Dr. Matthew B.J. Purss

class src.surface_dggs.consumers.BuildSurfaceDGGSConsumer(*args, **kwargs)

Bases: AsyncJsonWebsocketConsumer

Note

Class Details Asynchronous JSON WebSocket Consumer Class for the Build Surface DGGS Consumer

This consumer handles the backend construction and initialisation of Surface DGGS instances without blocking the functionality of the front-end TerraNexus Client.

buildSurfaceDGGS_consumer_task = <@task: src.surface_dggs.consumers.buildSurfaceDGGS_consumer_task of TerraNexus>
async connect()

Note

Function Details

Called by the front-end web application to establish a connection with this WebSocket Consumer

async disconnect(close_code)

Called when a WebSocket connection is closed.

async receive_json(content)

Called with decoded JSON content.

async response_message(event)

Note

Function Details

Called by back-end processes to send/publish a message to this WebSocket Connection.

Parameters:

event (JSON, required) – The event JSON object which contains the message information to send/publish to this WebSocket Connection.

class src.surface_dggs.consumers.DGGSGenerateCellsConsumer(*args, **kwargs)

Bases: AsyncJsonWebsocketConsumer

Note

Class Details Asynchronous JSON WebSocket Consumer Class for the Surface DGGS - Generate Cells Consumer

This consumer handles the backend construction and registration of Surface DGGS zones without blocking the functionality of the front-end TerraNexus Client.

async connect()

Note

Function Details

Called by the front-end web application to establish a connection with this WebSocket Consumer

async disconnect(close_code)

Called when a WebSocket connection is closed.

generate_cells_task = <@task: src.surface_dggs.consumers.generate_cells_task of TerraNexus>
get_registered_cells_task = <@task: src.surface_dggs.consumers.get_registered_cells_task of TerraNexus>
async receive_json(content)

Called with decoded JSON content.

async response_message(event)

Note

Function Details

Called by back-end processes to send/publish a message to this WebSocket Connection.

Parameters:

event (JSON, required) – The event JSON object which contains the message information to send/publish to this WebSocket Connection.

class src.surface_dggs.consumers.DGGSGetRegisteredCellsConsumer(*args, **kwargs)

Bases: AsyncJsonWebsocketConsumer

Note

Class Details Asynchronous JSON WebSocket Consumer Class for the Surface DGGS - Get Registered Cells Consumer

This consumer handles the backend search for Registered Surface DGGS zones without blocking the functionality of the front-end TerraNexus Client.

async connect()

Note

Function Details

Called by the front-end web application to establish a connection with this WebSocket Consumer

async disconnect(close_code)

Called when a WebSocket connection is closed.

get_registered_cells_consumer_task = <@task: src.surface_dggs.consumers.get_registered_cells_consumer_task of TerraNexus>
async receive_json(content)

Called with decoded JSON content.

async response_message(event)

Note

Function Details

Called by back-end processes to send/publish a message to this WebSocket Connection.

Parameters:

event (JSON, required) – The event JSON object which contains the message information to send/publish to this WebSocket Connection.

surface_dggs.forms module

Note

Module Details

surface_dggs “Django Forms” Definition Module

This module contains the “Form” definitions for the surface_dggs web application resources.

Created: 21 May 2017

@author: Dr. Matthew B.J. Purss

class src.surface_dggs.forms.BuildSurfaceDGGSForm(*args, **kwargs)

Bases: Form

base_fields = {'earth_model_comboBox': <django.forms.fields.ChoiceField object>, 'surface_dggs_selection_comboBox': <django.forms.fields.ChoiceField object>}
declared_fields = {'earth_model_comboBox': <django.forms.fields.ChoiceField object>, 'surface_dggs_selection_comboBox': <django.forms.fields.ChoiceField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.BuildSurfaceTerraNexusForm(*args, **kwargs)

Bases: Form

base_fields = {'cell_type_comboBox': <django.forms.fields.ChoiceField object>, 'earth_model_comboBox': <django.forms.fields.ChoiceField object>, 'equal_area_threshold': <django.forms.fields.DecimalField object>, 'polyhedron_comboBox': <django.forms.fields.ChoiceField object>, 'ref_lat': <django.forms.fields.DecimalField object>, 'ref_lon': <django.forms.fields.DecimalField object>, 'refinement_ratio_comboBox': <django.forms.fields.ChoiceField object>, 'rotate_checkbox': <django.forms.fields.BooleanField object>}
declared_fields = {'cell_type_comboBox': <django.forms.fields.ChoiceField object>, 'earth_model_comboBox': <django.forms.fields.ChoiceField object>, 'equal_area_threshold': <django.forms.fields.DecimalField object>, 'polyhedron_comboBox': <django.forms.fields.ChoiceField object>, 'ref_lat': <django.forms.fields.DecimalField object>, 'ref_lon': <django.forms.fields.DecimalField object>, 'refinement_ratio_comboBox': <django.forms.fields.ChoiceField object>, 'rotate_checkbox': <django.forms.fields.BooleanField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.BuildSurface_rHealPIXForm(*args, **kwargs)

Bases: Form

base_fields = {'earth_model_comboBox': <django.forms.fields.ChoiceField object>, 'ref_lat': <django.forms.fields.DecimalField object>, 'ref_lon': <django.forms.fields.DecimalField object>, 'refinement_ratio_comboBox': <django.forms.fields.ChoiceField object>, 'rotate_checkbox': <django.forms.fields.BooleanField object>}
declared_fields = {'earth_model_comboBox': <django.forms.fields.ChoiceField object>, 'ref_lat': <django.forms.fields.DecimalField object>, 'ref_lon': <django.forms.fields.DecimalField object>, 'refinement_ratio_comboBox': <django.forms.fields.ChoiceField object>, 'rotate_checkbox': <django.forms.fields.BooleanField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.Client_upload_fileForm(*args, **kwargs)

Bases: Form

base_fields = {'uploaded_file': <django.forms.fields.FileField object>}
declared_fields = {'uploaded_file': <django.forms.fields.FileField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_FindCellsQueryForm(*args, **kwargs)

Bases: Form

base_fields = {'find_cells_constructCells_checkbox': <django.forms.fields.BooleanField object>, 'find_cells_equaliseCell_Area_checkbox': <django.forms.fields.BooleanField object>, 'find_cells_ref_lat': <django.forms.fields.DecimalField object>, 'find_cells_ref_lon': <django.forms.fields.DecimalField object>, 'find_cells_res_max': <django.forms.fields.IntegerField object>, 'find_cells_res_min': <django.forms.fields.IntegerField object>, 'find_cells_search_radius': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_polygon_file': <django.forms.fields.FileField object>, 'find_cells_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'find_cells_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'generate_cell_mesh_checkbox': <django.forms.fields.BooleanField object>}
declared_fields = {'find_cells_constructCells_checkbox': <django.forms.fields.BooleanField object>, 'find_cells_equaliseCell_Area_checkbox': <django.forms.fields.BooleanField object>, 'find_cells_ref_lat': <django.forms.fields.DecimalField object>, 'find_cells_ref_lon': <django.forms.fields.DecimalField object>, 'find_cells_res_max': <django.forms.fields.IntegerField object>, 'find_cells_res_min': <django.forms.fields.IntegerField object>, 'find_cells_search_radius': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_polygon_file': <django.forms.fields.FileField object>, 'find_cells_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'find_cells_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'find_cells_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'generate_cell_mesh_checkbox': <django.forms.fields.BooleanField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetCellCentroidsForm(*args, **kwargs)

Bases: Form

base_fields = {'get_cell_centroids_ID': <django.forms.fields.CharField object>, 'get_cell_centroids_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_cell_centroids_ref_lat': <django.forms.fields.DecimalField object>, 'get_cell_centroids_ref_lon': <django.forms.fields.DecimalField object>, 'get_cell_centroids_res_max': <django.forms.fields.IntegerField object>, 'get_cell_centroids_res_min': <django.forms.fields.IntegerField object>, 'get_cell_centroids_search_radius': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_cell_centroids_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
declared_fields = {'get_cell_centroids_ID': <django.forms.fields.CharField object>, 'get_cell_centroids_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_cell_centroids_ref_lat': <django.forms.fields.DecimalField object>, 'get_cell_centroids_ref_lon': <django.forms.fields.DecimalField object>, 'get_cell_centroids_res_max': <django.forms.fields.IntegerField object>, 'get_cell_centroids_res_min': <django.forms.fields.IntegerField object>, 'get_cell_centroids_search_radius': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_cell_centroids_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_cell_centroids_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetCellMeshForm(*args, **kwargs)

Bases: Form

base_fields = {'get_cell_mesh_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_cell_mesh_params_surface_base_radial_step': <django.forms.fields.IntegerField object>, 'get_cell_mesh_params_surface_base_theta_step': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_surface_resolution_scale_factor': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_tetgen_max_radius_edge_ratio': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_tetgen_min_dihedral_angle': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_tetgen_optimization_level': <django.forms.fields.IntegerField object>, 'get_cell_mesh_params_tetgen_verbosity': <django.forms.fields.IntegerField object>, 'get_cell_mesh_ref_lat': <django.forms.fields.DecimalField object>, 'get_cell_mesh_ref_lon': <django.forms.fields.DecimalField object>, 'get_cell_mesh_res_max': <django.forms.fields.IntegerField object>, 'get_cell_mesh_res_min': <django.forms.fields.IntegerField object>, 'get_cell_mesh_search_radius': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_cell_mesh_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
declared_fields = {'get_cell_mesh_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_cell_mesh_params_surface_base_radial_step': <django.forms.fields.IntegerField object>, 'get_cell_mesh_params_surface_base_theta_step': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_surface_resolution_scale_factor': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_tetgen_max_radius_edge_ratio': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_tetgen_min_dihedral_angle': <django.forms.fields.DecimalField object>, 'get_cell_mesh_params_tetgen_optimization_level': <django.forms.fields.IntegerField object>, 'get_cell_mesh_params_tetgen_verbosity': <django.forms.fields.IntegerField object>, 'get_cell_mesh_ref_lat': <django.forms.fields.DecimalField object>, 'get_cell_mesh_ref_lon': <django.forms.fields.DecimalField object>, 'get_cell_mesh_res_max': <django.forms.fields.IntegerField object>, 'get_cell_mesh_res_min': <django.forms.fields.IntegerField object>, 'get_cell_mesh_search_radius': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_cell_mesh_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_cell_mesh_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetCellVertsForm(*args, **kwargs)

Bases: Form

base_fields = {'get_cell_verts_ID': <django.forms.fields.CharField object>, 'get_cell_verts_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_cell_verts_ref_lat': <django.forms.fields.DecimalField object>, 'get_cell_verts_ref_lon': <django.forms.fields.DecimalField object>, 'get_cell_verts_res_max': <django.forms.fields.IntegerField object>, 'get_cell_verts_res_min': <django.forms.fields.IntegerField object>, 'get_cell_verts_search_radius': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_cell_verts_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
declared_fields = {'get_cell_verts_ID': <django.forms.fields.CharField object>, 'get_cell_verts_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_cell_verts_ref_lat': <django.forms.fields.DecimalField object>, 'get_cell_verts_ref_lon': <django.forms.fields.DecimalField object>, 'get_cell_verts_res_max': <django.forms.fields.IntegerField object>, 'get_cell_verts_res_min': <django.forms.fields.IntegerField object>, 'get_cell_verts_search_radius': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_cell_verts_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_cell_verts_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetChildCellsQueryForm(*args, **kwargs)

Bases: Form

base_fields = {'get_child_cells_id': <django.forms.fields.CharField object>, 'get_child_cells_res_steps': <django.forms.fields.IntegerField object>}
declared_fields = {'get_child_cells_id': <django.forms.fields.CharField object>, 'get_child_cells_res_steps': <django.forms.fields.IntegerField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetDataMeshForm(*args, **kwargs)

Bases: Form

base_fields = {'get_data_mesh_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_data_mesh_params_surface_base_radial_step': <django.forms.fields.IntegerField object>, 'get_data_mesh_params_surface_base_theta_step': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_surface_resolution_scale_factor': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_tetgen_max_radius_edge_ratio': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_tetgen_min_dihedral_angle': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_tetgen_optimization_level': <django.forms.fields.IntegerField object>, 'get_data_mesh_params_tetgen_verbosity': <django.forms.fields.IntegerField object>, 'get_data_mesh_ref_lat': <django.forms.fields.DecimalField object>, 'get_data_mesh_ref_lon': <django.forms.fields.DecimalField object>, 'get_data_mesh_res_max': <django.forms.fields.IntegerField object>, 'get_data_mesh_res_min': <django.forms.fields.IntegerField object>, 'get_data_mesh_search_radius': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_data_mesh_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'selected_mapped_data': <django.forms.fields.CharField object>}
declared_fields = {'get_data_mesh_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_data_mesh_params_surface_base_radial_step': <django.forms.fields.IntegerField object>, 'get_data_mesh_params_surface_base_theta_step': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_surface_resolution_scale_factor': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_tetgen_max_radius_edge_ratio': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_tetgen_min_dihedral_angle': <django.forms.fields.DecimalField object>, 'get_data_mesh_params_tetgen_optimization_level': <django.forms.fields.IntegerField object>, 'get_data_mesh_params_tetgen_verbosity': <django.forms.fields.IntegerField object>, 'get_data_mesh_ref_lat': <django.forms.fields.DecimalField object>, 'get_data_mesh_ref_lon': <django.forms.fields.DecimalField object>, 'get_data_mesh_res_max': <django.forms.fields.IntegerField object>, 'get_data_mesh_res_min': <django.forms.fields.IntegerField object>, 'get_data_mesh_search_radius': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_data_mesh_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_data_mesh_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'selected_mapped_data': <django.forms.fields.CharField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetMappedDataForm(*args, **kwargs)

Bases: Form

base_fields = {'get_mapped_data_chunk_size': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_alpha_radius': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_surface_base_radial_step': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_surface_base_theta_step': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_surface_resolution_scale_factor': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_tetgen_max_radius_edge_ratio': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_tetgen_min_dihedral_angle': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_tetgen_optimization_level': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_tetgen_verbosity': <django.forms.fields.IntegerField object>, 'get_mapped_data_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_mapped_data_output_type_comboBox': <django.forms.fields.ChoiceField object>, 'get_mapped_data_ref_lat': <django.forms.fields.DecimalField object>, 'get_mapped_data_ref_lon': <django.forms.fields.DecimalField object>, 'get_mapped_data_res_max': <django.forms.fields.IntegerField object>, 'get_mapped_data_res_min': <django.forms.fields.IntegerField object>, 'get_mapped_data_search_radius': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_mapped_data_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
clean()

Hook for doing any extra form-wide cleaning after Field.clean() has been called on every field. Any ValidationError raised by this method will not be associated with a particular field; it will have a special-case association with the field named ‘__all__’.

declared_fields = {'get_mapped_data_chunk_size': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_alpha_radius': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_surface_base_radial_step': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_surface_base_theta_step': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_surface_resolution_scale_factor': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_tetgen_max_radius_edge_ratio': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_tetgen_min_dihedral_angle': <django.forms.fields.DecimalField object>, 'get_mapped_data_mesh_params_tetgen_optimization_level': <django.forms.fields.IntegerField object>, 'get_mapped_data_mesh_params_tetgen_verbosity': <django.forms.fields.IntegerField object>, 'get_mapped_data_output_format_comboBox': <django.forms.fields.ChoiceField object>, 'get_mapped_data_output_type_comboBox': <django.forms.fields.ChoiceField object>, 'get_mapped_data_ref_lat': <django.forms.fields.DecimalField object>, 'get_mapped_data_ref_lon': <django.forms.fields.DecimalField object>, 'get_mapped_data_res_max': <django.forms.fields.IntegerField object>, 'get_mapped_data_res_min': <django.forms.fields.IntegerField object>, 'get_mapped_data_search_radius': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_mapped_data_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_mapped_data_searchtype_comboBox': <django.forms.fields.ChoiceField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetNeighbouringCellsQueryForm(*args, **kwargs)

Bases: Form

base_fields = {'get_neighbouring_cells_edge_checkbox': <django.forms.fields.BooleanField object>, 'get_neighbouring_cells_id': <django.forms.fields.CharField object>, 'get_neighbouring_cells_radius_steps': <django.forms.fields.IntegerField object>, 'get_neighbouring_cells_vertex_checkbox': <django.forms.fields.BooleanField object>}
declared_fields = {'get_neighbouring_cells_edge_checkbox': <django.forms.fields.BooleanField object>, 'get_neighbouring_cells_id': <django.forms.fields.CharField object>, 'get_neighbouring_cells_radius_steps': <django.forms.fields.IntegerField object>, 'get_neighbouring_cells_vertex_checkbox': <django.forms.fields.BooleanField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_GetParentCellQueryForm(*args, **kwargs)

Bases: Form

base_fields = {'get_parent_cells_id': <django.forms.fields.CharField object>, 'get_parent_cells_res_steps': <django.forms.fields.IntegerField object>}
declared_fields = {'get_parent_cells_id': <django.forms.fields.CharField object>, 'get_parent_cells_res_steps': <django.forms.fields.IntegerField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_MapDataForm(*args, **kwargs)

Bases: Form

base_fields = {'map_data_chunk_size': <django.forms.fields.IntegerField object>, 'map_data_datatype_comboBox': <django.forms.fields.ChoiceField object>, 'map_data_horizontal_scale_factor': <django.forms.fields.DecimalField object>, 'map_data_input_data_file': <django.forms.fields.FileField object>, 'map_data_ref_lat': <django.forms.fields.DecimalField object>, 'map_data_ref_lon': <django.forms.fields.DecimalField object>, 'map_data_res_max': <django.forms.fields.IntegerField object>, 'map_data_res_min': <django.forms.fields.IntegerField object>, 'map_data_search_radius': <django.forms.fields.DecimalField object>, 'map_data_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'map_data_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'map_data_searchbox_polygon_file': <django.forms.fields.FileField object>, 'map_data_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'map_data_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'map_data_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'map_data_vertical_scale_factor': <django.forms.fields.DecimalField object>}
declared_fields = {'map_data_chunk_size': <django.forms.fields.IntegerField object>, 'map_data_datatype_comboBox': <django.forms.fields.ChoiceField object>, 'map_data_horizontal_scale_factor': <django.forms.fields.DecimalField object>, 'map_data_input_data_file': <django.forms.fields.FileField object>, 'map_data_ref_lat': <django.forms.fields.DecimalField object>, 'map_data_ref_lon': <django.forms.fields.DecimalField object>, 'map_data_res_max': <django.forms.fields.IntegerField object>, 'map_data_res_min': <django.forms.fields.IntegerField object>, 'map_data_search_radius': <django.forms.fields.DecimalField object>, 'map_data_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'map_data_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'map_data_searchbox_polygon_file': <django.forms.fields.FileField object>, 'map_data_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'map_data_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'map_data_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'map_data_vertical_scale_factor': <django.forms.fields.DecimalField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_RegisteredCellsQueryForm(*args, **kwargs)

Bases: Form

base_fields = {'get_cell_mesh_checkbox': <django.forms.fields.BooleanField object>, 'get_centroids_checkbox': <django.forms.fields.BooleanField object>, 'get_edges_checkbox': <django.forms.fields.BooleanField object>, 'get_registered_cells_ref_lat': <django.forms.fields.DecimalField object>, 'get_registered_cells_ref_lon': <django.forms.fields.DecimalField object>, 'get_registered_cells_res_max': <django.forms.fields.IntegerField object>, 'get_registered_cells_res_min': <django.forms.fields.IntegerField object>, 'get_registered_cells_search_radius': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_registered_cells_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'get_vertices_checkbox': <django.forms.fields.BooleanField object>, 'visualise_response_checkbox': <django.forms.fields.BooleanField object>}
declared_fields = {'get_cell_mesh_checkbox': <django.forms.fields.BooleanField object>, 'get_centroids_checkbox': <django.forms.fields.BooleanField object>, 'get_edges_checkbox': <django.forms.fields.BooleanField object>, 'get_registered_cells_ref_lat': <django.forms.fields.DecimalField object>, 'get_registered_cells_ref_lon': <django.forms.fields.DecimalField object>, 'get_registered_cells_res_max': <django.forms.fields.IntegerField object>, 'get_registered_cells_res_min': <django.forms.fields.IntegerField object>, 'get_registered_cells_search_radius': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_br_lat': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_br_lon': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_polygon_file': <django.forms.fields.FileField object>, 'get_registered_cells_searchbox_tl_lat': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchbox_tl_lon': <django.forms.fields.DecimalField object>, 'get_registered_cells_searchtype_comboBox': <django.forms.fields.ChoiceField object>, 'get_vertices_checkbox': <django.forms.fields.BooleanField object>, 'visualise_response_checkbox': <django.forms.fields.BooleanField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'
class src.surface_dggs.forms.SurfaceTerraNexus_ToolsSelectionForm(*args, **kwargs)

Bases: Form

base_fields = {'mappingTool_comboBox': <django.forms.fields.ChoiceField object>, 'queryTool_comboBox': <django.forms.fields.ChoiceField object>, 'visualisationTool_comboBox': <django.forms.fields.ChoiceField object>}
declared_fields = {'mappingTool_comboBox': <django.forms.fields.ChoiceField object>, 'queryTool_comboBox': <django.forms.fields.ChoiceField object>, 'visualisationTool_comboBox': <django.forms.fields.ChoiceField object>}
error_css_class = 'error'
property media

Return all media required to render the widgets on this form.

required_css_class = 'required'

surface_dggs.routing module

Note

Module Details

surface_dggs Routing Module

This Module handles routing of asynchronous tasks to their corresponding resource. This is similar to the WSGI urls.py file but targeting web services.

Created: 30 June 2020

@author: Dr. Matthew B.J. Purss

surface_dggs.tests module

surface_dggs.urls module

Note

Module Details

Surface DGGS URL Configuration

The urlpatterns list routes URLs to views for the surface_dggs package. For more information please see: Django Documentation - urls

Created: 7 September 2017

@author: Dr. Matthew B.J. Purss

surface_dggs.views module

Note

Module Details

Surface DGGS “Views” Module

This module prepares the django views necessary to perform all tasks relevant to Surface DGGS interactions with TerraNexus.

Created: 7 September 2017

@author: Dr. Matthew B.J. Purss

src.surface_dggs.views.SurfaceDGGS(request)

Note

Function Details TerraNexus Web Application Surface DGGS Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.SurfaceDGGS_build(request)

Note

Function Details TerraNexus Web Application Surface DGGS Build Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs/build

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.SurfaceDGGS_build_TerraNexus(request)

Note

Function Details TerraNexus Web Application TerraNexus Surface DGGS Build Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs/build_TerraNexus

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.SurfaceDGGS_build_rHealPIX(request)

Note

Function Details

TerraNexus Web Application rHealPIX Surface DGGS Build Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs/build_rHealPIX

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.SurfaceDGGS_open(request)

Note

Function Details

TerraNexus Web Application Surface DGGS Open Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs/open

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.SurfaceDGGS_repair(request)

Note

Function Details

TerraNexus Web Application Surface DGGS Repair Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs/repair

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.SurfaceDGGS_tools(request)

Note

Function Details

TerraNexus Web Application Surface DGGS Tools Home page delivered to the url: {TerraNexus_HomePage}/surface_dggs/tools

Parameters:

request (request-object, required) – The html request object.

src.surface_dggs.views.file_upload(request)

Note

Function Details

TerraNexus Web Application function to handle files uploaded to the platform

Parameters:

request (request-object, required) – The html request object.

Returns:

file_upload_response – Status information regarding the success or failure of the file upload.

Return type:

JSON

surface_dggs.views tasks

src.surface_dggs.views.get_registered_cells_task(dggs_store, search_type='All_cells', search_box_label='', search_box=[], search_radius=1.0, ref_location=[], res_min=0, res_max=1, task_key='')

Note

Function Details

Celery Task to Retrieve Surface DGGS Registered Zones from the Database in parallel.

Parameters:
  • dggs_store (str, required) – MongoDB database to store the dggs structure in. This is automatically generated to ensure the dggrsID is unique.

  • search_type (str, optional, default="All_cells") – The Search Type to apply.

  • search_box_label (str, optional, default="") – The Label to use for the Search Box.

  • search_box (array-like, optional, default=[]) – The search box to use to conduct the search for DGGS zones.

  • search_radius (float, optional, default=1.0) – The minimum Search Radius to from a Reference Location to search for zones using the “Range_Search” method.

  • ref_location (array-like, optional, default=[]) – The Reference Location to search for zones using the “Range_Search” method.

  • res_min (int, optional, default=0) – The minimum DGGS resolution to search for zones that are within the search_box.

  • res_max (int, optional, default=1) – The maximum DGGS resolution to search for zones that are within the search_box.

  • task_key (str, optional, default="task_key") – Unique identifier for the task.

Returns:

task_output – JSON compatible dictionary object is returned via the consumers “response_message” function.

Return type:

JSON

src.surface_dggs.views.get_mapped_data_task(dggs_store, mapped_data_files, search_type='All_data', ref_location=[], search_box=[], search_radius=1.0, res_min=0, res_max=1, mesh_params={}, output_type='data_points', output_format='json', chunk_size=10000)

Note

Function Details

Celery Task to Get DGGS Mapped Data from the Database in parallel.

Parameters:
  • dggs_store (str, required) – MongoDB database to store the dggs structure in. This is automatically generated to ensure the dggrsID is unique.

  • mapped_data_files (str, required) – Path to the data files being mapped.

  • search_type (str, optional, default="All_cells") – The Search Type to apply.

  • ref_location (array-like, optional, default=[]) – The Reference Location to search for zones using the “Range_Search” method.

  • search_box (array-like, optional, default=[]) – The search box to use to conduct the search for DGGS zones.

  • search_radius (float, optional, default=1.0) – The minimum Search Radius to from a Reference Location to search for zones using the “Range_Search” method.

  • res_min (int, optional, default=0) – The minimum DGGS resolution to search for zones that are within the search_box.

  • res_max (int, optional, default=1) – The maximum DGGS resolution to search for zones that are within the search_box.

  • mesh_params (JSON, optional, default="{}") – JSON/Dictionary object with 3D Mesh parameters to generate a mesh using PyMesh

  • output_type (str, optional, default="data_points") – Output data type.

  • output_format (str, optional, default="json") – Output data format.

  • chunk_size (int, optional, default=10000) – Chunk size to use to throttle the process to ensure it does not exceed the hardware memory resource capacity.

Returns:

task_output – JSON compatible dictionary object is returned via the consumers “response_message” function.

Return type:

JSON

src.surface_dggs.views.find_cells_task(mongodbname, search_box, res_min=0, res_max=1, search_type='search_box', construct_cells=True, equalise_cells=False, generate_cell_mesh_flag=False)

Note

Function Details

Celery Task to Find Surface DGGS Zones in parallel.

Parameters:
  • mongodbname (str, required) – MongoDB database to store the dggs structure in. This is automatically generated to ensure the dggrsID is unique.

  • search_box (array-like, required) – The search box to use to conduct the search for DGGS zones.

  • res_min (int, optional, default=0) – The minimum DGGS resolution to search for zones that are within the search_box.

  • res_max (int, optional, default=1) – The maximum DGGS resolution to search for zones that are within the search_box.

  • search_type (str, optional, default="search_box") – The Search Type to apply.

  • construct_cells (boolean, optional, default=True) – A Flag to select whether or not to construct DGGS zones once they have been found.

  • equalise_cells (boolean, optional, default=False) –

    A Flag to select whether or not to equalise the surface area of the Surface DGGS zones once they have been found.

    Note

    • if this flag is set to False, then the Surface DGGS will have a varying zone area uncertainty of between ~1% and ~15% across the whole earth surface.

    • Choosing to not “equalise” DGGS zone areas will provide a performance boost for the Surface DGGS instance during zone construction operations, but at the cost of increased analysis uncertainty in terms of the surface area a given DGGS zone occupies.

    • For some applications and use case scenarios this is not important. For others it is.

  • generate_cell_mesh_flag (boolean, optional, default=False) – A Flag to select whether or not to construct a 3D mesh of the DGGS zones once they have been found.

Returns:

task_output – JSON compatible dictionary object is returned via the consumers “response_message” function.

Return type:

JSON

src.surface_dggs.views.map_data_task(mongodbname, input_dataset_path, data_type='model', search_type='All_cells', ref_location=[], res_min=0, res_max=1, horizontal_scale_factor=10000, vertical_scale_factor=10000, chunk_size=100)

Note

Function Details

Celery Task to Map Feature Data in parallel.

Parameters:
  • mongodbname (str, required) – MongoDB database to store the dggs structure in. This is automatically generated to ensure the dggrsID is unique.

  • input_dataset_path (str, required) – Path to the data files being mapped.

  • data_type (str, optional, default="model") – Data type of the data to be mapped to the Surface DGGS.

  • search_type (str, optional, default="All_cells") – The Search Type to apply.

  • ref_location (array-like, optional, default=[]) – The Reference Location to search for zones using the “Range_Search” method.

  • res_min (int, optional, default=0) – The minimum DGGS resolution to search for zones that are within the search_box.

  • res_max (int, optional, default=1) – The maximum DGGS resolution to search for zones that are within the search_box.

  • horizontal_scale_factor (int, optional, default=10000) – Horizontal Scale Factor to apply to a Mesh object to bring it into real-world context.

  • vertical_scale_factor (int, optional, default=10000) – Vertical Scale Factor to apply to a Mesh object to bring it into real-world context.

  • chunk_size (int, optional, default=10000) – Chunk size to use to throttle the process to ensure it does not exceed the hardware memory resource capacity.

Returns:

task_output – JSON compatible dictionary object is returned via the consumers “response_message” function.

Return type:

JSON