Skip to content

vasturiano/three-geojson-geometry

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
February 6, 2023 22:48
February 6, 2023 22:44
September 9, 2019 20:01
February 6, 2023 22:44
September 10, 2019 01:47
February 8, 2023 00:53
February 6, 2023 22:44
February 6, 2023 22:44

ThreeJS GeoJSON Geometry

NPM package Build Size NPM Downloads

A ThreeJS geometry class for stroking GeoJSON objects on a sphere.

Quick start

import { GeoJsonGeometry } from 'three-geojson-geometry';

or using a script tag

<script src="//unpkg.com/three-geojson-geometry"></script>

then

const myLine = new THREE.Line(
  new THREE.GeoJsonGeometry(geoJson),
  new THREE.LineBasicMaterial({ color: 'blue' })
);

API reference

Constructor

GeoJsonGeometry(geoJson: GeoJson object, radius: Float, resolution: Float)

  • geoJson: A GeoJson geometry object. It's recommended to split the geometries at the anti-meridian.
  • radius: Radius of the sphere surface to draw the poygon on. Default is 1.
  • resolution: Resolution of the sphere, in lat/lng degrees. If the distance between two adjacent line points is larger than this value, the line segment will be interpolated in order to approximate the curvature of the sphere surface. Lower values yield more perfectly curved lines, at the cost of performance. Default is 5.

Properties

.parameters: Object

An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.

Groups

When generating Polygon or MultiPolygon geometries, two groups are provided to which different materials can be applied.

  • 0: The outer ring of the polygon.
  • 1: The polygon inner holes (if any).

Object types

Different geoJson types should be represented using different ThreeJS object types:

  • Point and MultiPoints - Use THREE.Points
  • LineString and Polygon - Use THREE.Line
  • MultiLineString and MultiPolygon - Use THREE.LineSegments