Threejs - offsetcontour 2

by black strings

HTML

<script src="https://cdn.jsdelivr.net/npm/[email protected]/build/three.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/examples/js/controls/OrbitControls.js"></script>

CSS

/* fix mouse click offset errors when doing drags */
body {
  margin: 0;
}

JavaScript

var scene, renderer, camera;
var controls;

init();
lightSetup();
animate();

function init() {
  renderer = new THREE.WebGLRenderer({
    antialias: true
  });
  var width = window.innerWidth;
  var height = window.innerHeight;
  renderer.setSize(width, height);
  document.body.appendChild(renderer.domElement);

  scene = new THREE.Scene();
   scene.rotation.x = -Math.PI / 2;
  
  var gridXZ = new THREE.GridHelper(1000, 100);
  scene.add(gridXZ);
  gridXZ.rotation.x = -Math.PI / 2;
 

  var axes = new THREE.AxesHelper(1000);
  scene.add(axes);

  camera = new THREE.PerspectiveCamera(45, width / height, 1, 10000);
  camera.position.y = 160;
  camera.position.z = 400;
  camera.lookAt(new THREE.Vector3(0, 0, 0));

  controls = new THREE.OrbitControls(camera, renderer.domElement);

  
  // sample code paste into console to get the vertices
  /* this.optionalMesh.geometry.vertices.forEach(p => {
     console.log('new THREE.Vector3(' + p.x + ',' + p.y + ',' + p.z + '),'); 
  }); */
  
   var points = [new THREE.Vector3(-61.875, 18.875, 0),
    new THREE.Vector3(-61.875, 18.875, 0),
    new THREE.Vector3(-59.74885177612305, 19.2186222076416, 0),
    new THREE.Vector3(-59.74885177612305, 19.2186222076416, 0),
    new THREE.Vector3(-57.61296081542969, 19.495290756225586, 0),
    new THREE.Vector3(-57.61296081542969, 19.495290756225586, 0),
    new THREE.Vector3(-55.46943283081055, 19.70473289489746, 0),
    new THREE.Vector3(-55.46943283081055, 19.70473289489746, 0),
    new THREE.Vector3(-53.32038497924805, 19.84674072265625, 0),
    new THREE.Vector3(-53.32038497924805, 19.84674072265625, 0),
    new THREE.Vector3(-51.16793441772461, 19.92117691040039, 0),
    new THREE.Vector3(-51.16793441772461, 19.92117691040039, 0),
    new THREE.Vector3(-49.01420974731445, 19.92796516418457, 0),
    new THREE.Vector3(-49.01420974731445, 19.92796516418457, 0),
    new THREE.Vector3(-46.861331939697266, 19.86709976196289, 0),
    new THREE.Vector3(-46.861331939697266,...