public static NSDictionary <NSString, NSObject> ToOptions(this NxGeoJsonOptions nxoptions)
        {
            if (nxoptions == null)
            {
                return(null);
            }

            var options = new NSMutableDictionary <NSString, NSObject>();

            if (nxoptions.Buffer.HasValue)
            {
                options.Add(MGLShapeSourceOptions.Buffer, NSNumber.FromNInt(nxoptions.Buffer.Value));
            }
            if (nxoptions.Cluster.HasValue)
            {
                options.Add(MGLShapeSourceOptions.Clustered, NSNumber.FromBoolean(nxoptions.Cluster.Value));
            }
            if (nxoptions.ClusterMaxZoom.HasValue)
            {
                options.Add(MGLShapeSourceOptions.ClusterRadius, NSNumber.FromNInt(nxoptions.ClusterMaxZoom.Value));
            }
            if (nxoptions.ClusterRadius.HasValue)
            {
                options.Add(MGLShapeSourceOptions.ClusterRadius, NSNumber.FromNInt(nxoptions.ClusterRadius.Value));
            }
            if (nxoptions.LineMetrics.HasValue)
            {
                options.Add(MGLShapeSourceOptions.LineDistanceMetrics, NSNumber.FromBoolean(nxoptions.LineMetrics.Value));
            }
            if (nxoptions.MaxZoom.HasValue)
            {
                options.Add(MGLShapeSourceOptions.MaximumZoomLevel, NSNumber.FromNInt(nxoptions.MaxZoom.Value));
            }
            if (nxoptions.MinZoom.HasValue)
            {
                options.Add(MGLShapeSourceOptions.MinimumZoomLevel, NSNumber.FromNInt(nxoptions.MinZoom.Value));
            }
            if (nxoptions.Tolerance.HasValue)
            {
                options.Add(MGLShapeSourceOptions.SimplificationTolerance, NSNumber.FromFloat(nxoptions.Tolerance.Value));
            }
            return(new NSDictionary <NSString, NSObject>(options.Keys, options.Values));
        }
示例#2
0
        public static GeoJsonOptions ToOptions(this NxGeoJsonOptions nxoptions)
        {
            if (nxoptions == null)
            {
                return(null);
            }

            var options = new GeoJsonOptions();

            if (nxoptions.Buffer.HasValue)
            {
                options.WithBuffer(nxoptions.Buffer.Value);
            }
            if (nxoptions.Cluster.HasValue)
            {
                options.WithCluster(nxoptions.Cluster.Value);
            }
            if (nxoptions.ClusterMaxZoom.HasValue)
            {
                options.WithClusterMaxZoom(nxoptions.ClusterMaxZoom.Value);
            }
            if (nxoptions.ClusterRadius.HasValue)
            {
                options.WithClusterRadius(nxoptions.ClusterRadius.Value);
            }
            if (nxoptions.LineMetrics.HasValue)
            {
                options.WithLineMetrics(nxoptions.LineMetrics.Value);
            }
            if (nxoptions.MaxZoom.HasValue)
            {
                options.WithMaxZoom(nxoptions.MaxZoom.Value);
            }
            if (nxoptions.MinZoom.HasValue)
            {
                options.WithMinZoom(nxoptions.MinZoom.Value);
            }
            if (nxoptions.Tolerance.HasValue)
            {
                options.WithTolerance(nxoptions.Tolerance.Value);
            }
            return(options);
        }