Ich habe eine N Anzahl von zufälligen Punkten (in diesem Fall 20), mit einem X, Y und Z Einschränkungen.Three.js Shape von zufälligen Punkten
Wie kann ich ANY (vorzugsweise geschlossen) Form (mit Three.js-Bibliothek), gegeben und nur von N zufälligen Punkten beginnen.
Es gibt wahrscheinlich viele Varianten, bitte teilen Sie Ihre.
var program = new Program(reset,step)
program.add('g',false)
function reset() {
scene.clear()
scene.add(new THREE.GridHelper(100,1))
}
function step() {
}
program.startup()
var numpoints = 20;
var dots = []; //If you want to use for other task
for (var i = 0 ; i < numpoints ; i++){
var x = Math.random() * (80 - 1) + 1 //Math.random() * (max - min) + min
var y = Math.random() * (80 - 1) + 1
var z = Math.random() * (80 - 1) + 1
var dotGeometry = new THREE.Geometry();
dots.push(dotGeometry);
dotGeometry.vertices.push(new THREE.Vector3(x, y, z));
var dotMaterial = new THREE.PointsMaterial({ size: 3, sizeAttenuation: false, color: 0xFF0000 });
var dot = new THREE.Points(dotGeometry, dotMaterial);
scene.add(dot);
}
Triangulation, Voronoi, ist mir egal, zeig mir nur irgendwelche Ideen haben Sie, wird mir sehr helfen, lernen!
Ich weiß nicht, ob es einen eingebauten Weg gibt, aber wenn Sie an Mathe-Algorithmus interessiert sind http://StackOverflow.com/Questions/828905/Polygon-Closeding-As-Set-of-Points –
Ich ne Ed, um etwas Form zu machen und verschiedene "Volumes" darin zu verschieben. Ich bin ein ziemlich Anfänger, aber ich habe jetzt nicht viel Zeit JS und Three.js zu lernen. Das Erstellen von Algorithmen ist für mich ziemlich schwierig, aber wenn ich einen Code sehe, habe ich genug Fähigkeiten, um ihn zu debuggen/zu bearbeiten/zu verstehen. Ich schaue auf den Link, den Sie zur Verfügung gestellt haben, danke für Informationen! – alex747
Sie haben Recht.Sie könnten javascriptbasierter 'konvexer Rumpf3d' Algorithmus finden, der bereits von jemandem geschrieben wurde. Aber ich fand gerade ein Beispiel mit three.js hier https://www.packtpub.com/packtlib/book/Web-Development/9781784392215 /6/ch06lvl1sec32/THREE.ConvexGeometry.also diese http://www.initcode.info/3d_convex_hull_algorithm_similar_to_matlab39_s_convhulln.Sie können weitere Beispiele finden, die Sie nicht brauchen, um algorithem zu schreiben –