Connect lines, same position but different result

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
result