/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file 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. */ /* * Do not modify this file. This file is generated from the location-2020-11-19.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.LocationService.Model { /// /// Contains the geofence geometry details. /// /// /// /// A geofence geometry is made up of either a polygon or a circle. Can be either a polygon /// or a circle. Including both will return a validation error. /// /// /// /// Amazon Location doesn't currently support polygons with holes, multipolygons, polygons /// that are wound clockwise, or that cross the antimeridian. /// /// /// public partial class GeofenceGeometry { private Circle _circle; private List>> _polygon = new List>>(); /// /// Gets and sets the property Circle. /// /// A circle on the earth, as defined by a center point and a radius. /// /// [AWSProperty(Sensitive=true)] public Circle Circle { get { return this._circle; } set { this._circle = value; } } // Check to see if Circle property is set internal bool IsSetCircle() { return this._circle != null; } /// /// Gets and sets the property Polygon. /// /// A polygon is a list of linear rings which are each made up of a list of vertices. /// /// /// /// Each vertex is a 2-dimensional point of the form: [longitude, latitude]. /// This is represented as an array of doubles of length 2 (so [double, double]). /// /// /// /// An array of 4 or more vertices, where the first and last vertex are the same (to form /// a closed boundary), is called a linear ring. The linear ring vertices must be listed /// in counter-clockwise order around the ring’s interior. The linear ring is represented /// as an array of vertices, or an array of arrays of doubles ([[double, double], /// ...]). /// /// /// /// A geofence consists of a single linear ring. To allow for future expansion, the Polygon /// parameter takes an array of linear rings, which is represented as an array of arrays /// of arrays of doubles ([[[double, double], ...], ...]). /// /// /// /// A linear ring for use in geofences can consist of between 4 and 1,000 vertices. /// /// [AWSProperty(Min=1)] public List>> Polygon { get { return this._polygon; } set { this._polygon = value; } } // Check to see if Polygon property is set internal bool IsSetPolygon() { return this._polygon != null && this._polygon.Count > 0; } } }