All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.smartcosmos.model.geo.IGeospatialEntry Maven / Gradle / Ivy

package net.smartcosmos.model.geo;

/*
 * *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
 * SMART COSMOS Platform Core SDK
 * ===============================================================================
 * Copyright (C) 2013 - 2015 SMARTRAC Technology Fletcher, Inc.
 * ===============================================================================
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
 */

import net.smartcosmos.geo.GeometricShape;
import net.smartcosmos.model.base.IAccountDomainResource;
import net.smartcosmos.model.base.INamedObject;
import net.smartcosmos.model.base.ITypedObject;

/**
 * Referential object that creates a geographic binding to a reference object. The underlying format is represented by
 * the GeoJSON 1.0 specification. GeoJSON is a format for encoding a variety of geographic data structures. A GeoJSON
 * object may represent a geometry, a feature, or a collection of features. GeoJSON supports the following geometry
 * types:
 * 
    *
  • Point
  • *
  • LineString
  • *
  • Polygon
  • *
  • MultiPoint
  • *
  • MultiLineString
  • *
  • MultiPolygon
  • *
  • GeometryCollection
  • *
  • Feature
  • *
  • FeatureCollection
  • *
* Features in GeoJSON contain a geometry object and additional properties, and a feature collection represents a list * of features. *

* To capture the a temporal geo-rectification, create an {@link IGeospatialEntry} that refers * to the object, then use the {@link IGeospatialEntry#getUrn()} and * {@link net.smartcosmos.model.base.EntityReferenceType#Georectification} to place the location on an * {@link net.smartcosmos.objects.model.context.ITimelineEntry}. *

* Possible uses of the georectification object include the definition of a complex geo-fence that marks * a job site, a multi-point set of coordinates that represents a courier route, or * perhaps an analytical view of aggregated data. Another use case is to link an * {@link net.smartcosmos.objects.model.context.IObjectAddress} with a georectification to provide * a three-dimensional representation of the building located at a specific address * identified in only general terms by the postal address defined in the * {@link net.smartcosmos.objects.model.context.IObjectAddress} record. */ public interface IGeospatialEntry extends IAccountDomainResource, INamedObject, ITypedObject { GeometricShape getGeometricShape(); void setGeometricShape(GeometricShape geometricShape); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy