zoukankan      html  css  js  c++  java
  • xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

    GeoJSON feature & Mapbox segments

    custom JSON format ???

    
    {
        "rows": [],
        "props": {
            "labelPoint": {
                "x": 93.5,
                "y": 68.0291
            },
            "type": "",
            "fill": "#ffffff"
        },
        "_type": "",
        "graphType": "Polygon",
        "graph": {
            "points": [
                {
                    "x": 93.5,
                    "y": 2
                },
                {
                    "x": 182.4238,
                    "y": 52.4418
                },
                {
                    "x": 148.4579,
                    "y": 134.0582
                },
                {
                    "x": 38.5421,
                    "y": 134.0582
                },
                {
                    "x": 4.5762,
                    "y": 52.4418
                }
            ],
            "segments": [
                {
                    "p1": {
                        "x": 93.5,
                        "y": 2
                    },
                    "p2": {
                        "x": 182.4238,
                        "y": 52.4418
                    },
                    "line": {
                        "k": 0.5672474635586874,
                        "b": -51.03763784273727,
                        "x": null
                    }
                },
                {
                    "p1": {
                        "x": 182.4238,
                        "y": 52.4418
                    },
                    "p2": {
                        "x": 148.4579,
                        "y": 134.0582
                    },
                    "line": {
                        "k": -2.4028923125840915,
                        "b": 490.7865466523778,
                        "x": null
                    }
                },
                {
                    "p1": {
                        "x": 148.4579,
                        "y": 134.0582
                    },
                    "p2": {
                        "x": 38.5421,
                        "y": 134.0582
                    },
                    "line": {
                        "k": 0,
                        "b": 134.0582,
                        "x": null
                    }
                },
                {
                    "p1": {
                        "x": 38.5421,
                        "y": 134.0582
                    },
                    "p2": {
                        "x": 4.5762,
                        "y": 52.4418
                    },
                    "line": {
                        "k": 2.402892312584092,
                        "b": 41.44568419915268,
                        "x": null
                    }
                },
                {
                    "p1": {
                        "x": 4.5762,
                        "y": 52.4418
                    },
                    "p2": {
                        "x": 93.5,
                        "y": 2
                    },
                    "line": {
                        "k": -0.5672474635586874,
                        "b": 55.03763784273727,
                        "x": null
                    }
                }
            ],
            "segmentNum": 0,
            "middleLine": null,
            "fill": "#ffffff"
        },
        "fill": "#ffffff"
    }
    
    

    geojson-segment

    split a geojson file generated by togeojson into two-vertex chunks with properties

    $ npm i -S @mapbox/geojson-segment
    
    

    https://github.com/mapbox/geojson-segment

    mapbox demo

    https://docs.mapbox.com/mapbox-gl-js/example/data-driven-lines/

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8" />
    <title>Style lines with a data-driven property</title>
    <meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" />
    <script src="https://api.mapbox.com/mapbox-gl-js/v1.8.1/mapbox-gl.js"></script>
    <link href="https://api.mapbox.com/mapbox-gl-js/v1.8.1/mapbox-gl.css" rel="stylesheet" />
    <style>
    	body { margin: 0; padding: 0; }
    	#map { position: absolute; top: 0; bottom: 0;  100%; }
    </style>
    </head>
    <body>
    <div id="map"></div>
    <script>
    	mapboxgl.accessToken = 'pk.eyJ1IjoieGdxZnJtcyIsImEiOiJjaXNtbmVrNWMwMW9lMnFteHJlN2M4NWU1In0.USVUsZvLCNUF1dNVuZsO5g';
        var map = new mapboxgl.Map({
            container: 'map',
            style: 'mapbox://styles/mapbox/streets-v11',
            center: [-122.48383155304096, 37.82882682974591],
            zoom: 16
        });
    
        map.on('load', function() {
            map.addSource('lines', {
                'type': 'geojson',
                'data': {
                    'type': 'FeatureCollection',
                    'features': [
                        {
                            'type': 'Feature',
                            'properties': {
                                'color': '#F7455D' // red
                            },
                            'geometry': {
                                'type': 'LineString',
                                'coordinates': [
                                    [-122.4833858013153, 37.829607404976734],
                                    [-122.4830961227417, 37.82932776098012],
                                    [-122.4830746650696, 37.82932776098012],
                                    [-122.48218417167662, 37.82889558180985],
                                    [-122.48218417167662, 37.82890193740421],
                                    [-122.48221099376678, 37.82868372835086],
                                    [-122.4822163581848, 37.82868372835086],
                                    [-122.48205006122589, 37.82801003030873]
                                ]
                            }
                        },
                        {
                            'type': 'Feature',
                            'properties': {
                                'color': '#33C9EB' // blue
                            },
                            'geometry': {
                                'type': 'LineString',
                                'coordinates': [
                                    [-122.48393028974533, 37.829471820141016],
                                    [-122.48395174741744, 37.82940826466351],
                                    [-122.48395174741744, 37.829412501697064],
                                    [-122.48423874378203, 37.829357420242125],
                                    [-122.48422533273697, 37.829361657278575],
                                    [-122.48459815979002, 37.8293425906126],
                                    [-122.48458743095398, 37.8293447091313],
                                    [-122.4847564101219, 37.82932776098012],
                                    [-122.48474299907684, 37.829331998018276],
                                    [-122.4849334359169, 37.829298101706186],
                                    [-122.48492807149889, 37.82930022022615],
                                    [-122.48509705066681, 37.82920488676767],
                                    [-122.48509168624878, 37.82920912381288],
                                    [-122.48520433902739, 37.82905870855876],
                                    [-122.48519897460936, 37.82905870855876],
                                    [-122.4854403734207, 37.828594749716714],
                                    [-122.48543500900269, 37.82860534241688],
                                    [-122.48571664094925, 37.82808206121068],
                                    [-122.48570591211319, 37.82809689109353],
                                    [-122.4858346581459, 37.82797189627337],
                                    [-122.48582661151886, 37.82797825194729],
                                    [-122.4859634041786, 37.82788503534145],
                                    [-122.48595803976059, 37.82788927246246],
                                    [-122.48605459928514, 37.82786596829394]
                                ]
                            }
                        }
                    ]
                }
            });
            map.addLayer({
                'id': 'lines',
                'type': 'line',
                'source': 'lines',
                'paint': {
                    'line-width': 3,
                    // Use a get expression (https://docs.mapbox.com/mapbox-gl-js/style-spec/#expressions-get)
                    // to set the line-color to a feature property value.
                    'line-color': ['get', 'color']
                }
            });
        });
    </script>
    
    </body>
    </html>
    

    toFixed

    
    x = "-100";
    "-100"
    "-100"
    +x;
    -100
    
    

    
    x = -100;
    -100
    +x.toFixed(4);
    -100
    x = -100.000000001;
    -100.000000001
    +x.toFixed(4);
    -100
    x = 100.00111;
    100.00111
    +x.toFixed(4);
    100.0011
    x = -100.00111;
    -100.00111
    +x.toFixed(4);
    -100.0011
    
    

  • 相关阅读:
    java实现oracle数据库基本操作
    在Myeclipse中用Java语言操作mysql数据库
    Linux面试题
    Python fabric远程自动部署简介
    使用RobotFramework的DataBaseLibrary(Java实现)
    如何编写Robot Framework测试用例2(测试用例语法1)
    如何编写Robot Framework测试用例1(基本格式篇)
    使用远程接口库进一步扩展Robot Framework的测试能力
    TweenLite参数说明 中文翻译
    TweenFilterLite参数说明 中文翻译
  • 原文地址:https://www.cnblogs.com/xgqfrms/p/12402984.html
Copyright © 2011-2022 走看看