Was ist die Three.face in dem Objekt von viewer.impl.hitTestViewport()
zurückgegeben?Was ist das Three.Face3 im viewer.impl.hitTestViewport zurückgegebenen Objekt?
Hier ist ein Beispiel:
Was repräsentieren ist das?
Was ist die Three.face in dem Objekt von viewer.impl.hitTestViewport()
zurückgegeben?Was ist das Three.Face3 im viewer.impl.hitTestViewport zurückgegebenen Objekt?
Hier ist ein Beispiel:
Was repräsentieren ist das?
Schauen Sie einfach auf den Quellcode in der three.js viewer implementation in Zeile # 8228.
// File:src/core/Face3.js
/**
* @author mrdoob/http://mrdoob.com/
* @author alteredq/http://alteredqualia.com/
*/
THREE.Face3 = function (a, b, c, normal, color, materialIndex) {
this.a = a;
this.b = b;
this.c = c;
this.normal = normal instanceof THREE.Vector3 ? normal : new THREE.Vector3();
this.vertexNormals = normal instanceof Array ? normal : [];
this.color = color instanceof THREE.Color ? color : new THREE.Color();
this.vertexColors = color instanceof Array ? color : [];
this.vertexTangents = [];
this.materialIndex = materialIndex !== undefined ? materialIndex : 0;
};
THREE.Face3.prototype = {
constructor: THREE.Face3,
clone: function() {
var face = new THREE.Face3(this.a, this.b, this.c);
face.normal.copy(this.normal);
face.color.copy(this.color);
face.materialIndex = this.materialIndex;
for (var i = 0, il = this.vertexNormals.length; i < il; i ++) {
face.vertexNormals[ i ] = this.vertexNormals[ i ].clone();
}
for (var i = 0, il = this.vertexColors.length; i < il; i ++) {
face.vertexColors[ i ] = this.vertexColors[ i ].clone();
}
for (var i = 0, il = this.vertexTangents.length; i < il; i ++) {
face.vertexTangents[ i ] = this.vertexTangents[ i ].clone();
}
return face;
}
};
Werfen Sie auch einen Blick auf die three.js Face3 Dokumentation:
Dreiecksfläche in der Geometrie verwendet. Diese werden automatisch für alle Standardgeometrietypen erstellt. Wenn Sie jedoch eine benutzerdefinierte Geometrie erstellen, müssen Sie sie manuell erstellen.
Ich kann das nicht aus der Hand beantworten. Was ich jedoch mit Gewissheit sagen kann, ist, wie Raytracing im Viewer implementiert wird, d. H. Wie ein zu schussender Strahl definiert wird und wie die Three.js-Objekte, die von ihm im Forge-Modell geschnitten werden, bestimmt werden. Dies wird durch die ForgeFader Projekt auf GitHub demonstriert:
Es wäre schön zu wissen, was dieses Gesicht ist, vielleicht könnte ich es für etwas verwenden. – shinzou
Was ist der Zweck, es von 'hitTestViewport' zurückzugeben? Wofür wird es in diesem Fall verwendet? – shinzou
Das ist nur die Face3-Einheit, die durchschnitten wird. Was willst du genau erreichen? –