Threejs - Points

by black strings

HTML

<script src="https://rawgit.com/mrdoob/three.js/dev/build/three.js"></script>
<script src="https://rawgit.com/mrdoob/three.js/dev/examples/js/controls/OrbitControls.js"></script>

JavaScript

var objects = []; 
var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera( 35, window.innerWidth/window.innerHeight, 0.1, 1000 );
var renderer = new THREE.WebGLRenderer();
renderer.setSize( window.innerWidth, window.innerHeight );
renderer.setClearColor( 0xcccccc, 1 ); 
document.body.appendChild( renderer.domElement );
scene.add(camera);

controls = new THREE.OrbitControls(camera);
setToFullOrbit(controls)
camera.position.copy(new THREE.Vector3(10,10,10));

var axisHelper = new THREE.AxisHelper();
scene.add(axisHelper);

var shapeCoords = [
	new THREE.Vector2(0,0),
  new THREE.Vector2(0,5),
  new THREE.Vector2(5,5),
  new THREE.Vector2(5,0),
]
var shape = new THREE.Shape(shapeCoords);
var shapeGeo = new THREE.ShapeGeometry(shape);
var shapeMesh = new THREE.Mesh(shapeGeo, new THREE.MeshBasicMaterial());
scene.add(shapeMesh);

var points = shape.createPointsGeometry();
var p = new THREE.Points(points, new THREE.PointsMaterial({color: 0xff00ff, size:1}));
//p.scale.set( 3, 3, 3 );
scene.add(p);
p.position.x += 1;
p.rotation.z += THREE.Math.degToRad(90);

scene.updateMatrixWorld();
console.log( p.geometry.vertices[1]);

// get a vertex in global
//console.log(p.matrix.multiplyVector3( p.geometry.vertices[1]));
console.log( p.geometry.vertices[2].applyMatrix4(p.matrix) );

var render = function () {
  requestAnimationFrame( render );
  camera.lookAt( scene.position );
  renderer.render( scene, camera );
};

function setToFullOrbit(orbitControl) {
  // how far you can orbit vertically
  orbitControl.minPolarAngle = 0;
  orbitControl.maxPolarAngle = Math.PI;

  // How far you can dolly in and out ( PerspectiveCamera only )
  orbitControl.minDistance = 0;
  orbitControl.maxDistance = Infinity;

  orbitControl.enableZoom = true; // Set to false to disable zooming
  orbitControl.zoomSpeed = 1.0;

  orbitControl.enableRotate = true;

  // allow keyboard arrows
  orbitControl.enableKeys = true;

  // Set to false to disable panning (ie vertical and...