kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
98 lines (91 loc) • 3.02 kB
JavaScript
// Copyright (c) 2020 Uber Technologies, Inc.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
import React from 'react';
import styled from 'styled-components';
import {Table} from 'components/common/styled-components';
const StyledTitle = styled.div`
font-size: 20px;
letter-spacing: 1.25px;
margin: 18px 0 14px 0;
color: ${props => props.theme.titleColorLT};
`;
const ExampleTable = () => (
<Table className="scenegraph-example-table">
<thead>
<tr>
<th>point_lat</th>
<th>point_lng</th>
<th>alt</th>
</tr>
</thead>
<tbody>
<tr>
<td>37.769897</td>
<td>-122.41168</td>
<td>0</td>
</tr>
<tr>
<td>37.806928</td>
<td>-122.40218</td>
<td>0</td>
</tr>
<tr>
<td>37.778564</td>
<td>-122.39096</td>
<td>1000</td>
</tr>
<tr>
<td>37.745995</td>
<td>-122.30220</td>
<td>2000</td>
</tr>
<tr>
<td>37.329841</td>
<td>-122.103847</td>
<td>3000</td>
</tr>
</tbody>
</Table>
);
const ScenegraphInfoModalFactory = () => {
const ScenegraphInfoModal = () => (
<div className="scenegraph-info-modal">
<div className="scenegraph-info-modal__description">
<span>
In your csv you can specify points with optional altitude. The models will show at each
point you specify. You can use a sample model or upload one in{' '}
</span>
<code>glTF (GLB or Embedded)</code>
<span> format.</span>
</div>
<div className="scenegraph-info-modal__example">
<StyledTitle>Example:</StyledTitle>
<ExampleTable />
</div>
<div className="scenegraph-info-modal__icons">
<StyledTitle>Sample Models</StyledTitle>
<div>Duck</div>
<div>Use your own model</div>
</div>
</div>
);
return ScenegraphInfoModal;
};
export default ScenegraphInfoModalFactory;