3D cone plot

Usage no npm install needed!

<script type="module">
  import glCone3d from '';



Visualization module for vector fields.


var createScene    = require('gl-plot3d')
var createConePlot = require('gl-cone3d')
var createMesh     = createConePlot.createConeMesh

var wind           = require('dataset-wind')

var scene = createScene()

var bounds = [];

var conePlot = createConePlot({
    positions: wind.positions,
    vectors: wind.vectors,
    coneSize: 4,
    colormap: 'portland'
}, bounds)

var mesh = createMesh(gl, conePlot)


Try out the example in your browser


npm i gl-cone3d

Basic interface


var conePlot = require('gl-cone3d')(params, bounds)

Creates a cone plot of a vector field.

  • params is an object that has the following properties:

    • positions (Required) An array of positions determining the location of the cones, encoded as arrays
    • vectors (Required) An array of vectors for the vector field, encoded as arrays
    • coneSize Size of the cones, scaled so that the reference cone size for the maximum vector magnitude is 1
    • absoluteConeSize Size of the cones, scaled so that the reference cone size for vector magnitude 1 is one grid unit.
    • coneOffset The position of the cone with regard to the cone location. Ranges from 0 to 1 where 0 puts the center of the cone base at the cone location, and 1 puts the tip at the cone location.
    • colormap Colormap for the cone plot.

Returns A cone plot object that can be passed to gl-mesh3d.


(c) 2013-2017 Mikola Lysenko, Ilmari Heikkinen. MIT License