Hello,
I’d like to connect line with fbx models.
when I connect lines, tried two things.
case 1. getWorldPosition
case 2. startobject.position - endobject.position
The results of the two positions are the same.
but, the results screen are different.
Why is this happening?
Thank you.
CreateModelAndLines(AModel, BModel){
var Amesh = AModel.clone();
var ACloned = AModel.material.clone();
Amesh.material = ACloned;
var AObject = Amesh; //FBX Model
AObject.position.set(500,100,500);
three.scene.add(AObject);
var Bmesh = BModel.clone();
var BCloned = BModel.material.clone();
Bmesh.material = BCloned;
var BObject = Bmesh; //FBX Model
BObject.position.set(333, 555, 666);
three.scene.add(BObject);
var StartObject = AObject;
var EndObject = BObject;
three.scene.updateMatrixWorld();
const StartPosition = new THREE.Vector3();
StartObject.getWorldPosition(StartPosition);
const EndPosition = new THREE.Vector3();
EndObject.getWorldPosition(EndPosition);
console.log("StartPos - Endpos");
console.log(StartPosition.x - EndPosition.x);
console.log(StartPosition.y - EndPosition.y);
console.log(StartPosition.z - EndPosition.z);
(167, -455, -166)
console.log("Apos - Bpos");
console.log(AObject.position.x - BObject.position.x);
console.log(AObject.position.y - BObject.position.y);
console.log(AObject.position.z - BObject.position.z);
(167, -455, -166)
let lineGeometry = new THREE.Geometry();
let lineMaterial = new THREE.LineBasicMaterial( { color : 0x4080ff ,linewidth : 20 });
let LineObject = new THREE.Line(lineGeometry, lineMaterial);
lineGeometry.vertices.push(new THREE.Vector3( (AObject.position.x - BObject.position.x), (AObject.position.y - BObject.position.y) , (AObject.position.z - BObject.position.z) ) );
// => Line connection was successed.
// lineGeometry.vertices.push(new THREE.Vector3( ( (StartPosition.x - EndPosition.x) , (StartPosition.y - EndPosition.y) , (StartPosition.z - EndPosition.z) ) ));
// => Line connection was failed.
lineGeometry.vertices.push(new THREE.Vector3( 0, 0, 0) );
EndObject.add(LineObject);
}
//Line connection failed Result.
//Line connection Success Result.
//chrome console.log