cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Learn all about the Community Ranking System, a fun gamification element of the PTC Community. X

How I can keep waypoints linked to 3D model after reloading updated 3D file to Vuforia Studio View?

IB_10645210
13-Aquamarine

How I can keep waypoints linked to 3D model after reloading updated 3D file to Vuforia Studio View?

Dear Community please advise a solution for waypoints.

I use one 3D sequence file with 10 figures-animations + I use 10 views (with 1 Wayfinder+30 waypoints on each view). When I reload the updated sequence file in my Vuforia Studio project I need to correct or reconnect all my Waypoints for all 10 Views.- and I don't want to do it.

How I can keep waypoints linked to the 3D model after reloading the updated 3D file to Vuforia Studio View?

 

 

ACCEPTED SOLUTION

Accepted Solutions

Hi @IB_10645210 ,

for me the statement "reconnect all my Waypoints for all 10 Views."  need possibly a clarification. I do not think that the point where connected to the geometry. That is only an impression what we have when we see that the arrow is pointing to some component . But the point will point only to the coordinates what you do set.  The points have specific coordinates an they are displayed on the model geometry (when they are set correctly) . When they appeared on the correct place that will possibly it will  look like as they are connected to some components etc. . But actually   they follow only the coordinate of the potion x,y,z of the points. When the geometry change and you know how it changes then you need to change also the positions of the coordinates. 

Here is one example from a  old project where I changed this points and should demonstrates how to change the points

 

$scope.Test=function(){
 
 
 
  var wdgs=$scope.app.view.Home.wdg; 
  for(wdg in wdgs)
  {   
  if(hasWdgProp(wdgs[wdg],'selectedWaypointIndex')) //only wayfinder widget has this property
   // if(wdgs[wdg]['widgetName'].indexOf("wayfinder")) 
    { let count=0;
     let arr_size= wdgs[wdg].waypointsData.length
      var a1= arr_size%4
      var a2 = (arr_size-a1)/4
      console.log("---> a1="+a1+"   a2="+a2+"  arr_size="+arr_size)
     for (i=0; i<arr_size; i++) {
       //4 grids
     a1=i % 4
     a2= (i -a1) /4
      wdgs[wdg].waypointsData[i].position.x=-0.5+0.25*a1
      wdgs[wdg].waypointsData[i].position.y=0.1+0.25*a2
      wdgs[wdg].waypointsData[i].position.z=0
      $scope.$applyAsync();}
     
    }
     $scope.$applyAsync();
  }

  $scope.$applyAsync();
};

 

So to change the points you need at least  a list of coordinates which should  be set after model change e.g. component movement etc.

 

 

View solution in original post

2 REPLIES 2

Hi @IB_10645210 ,

for me the statement "reconnect all my Waypoints for all 10 Views."  need possibly a clarification. I do not think that the point where connected to the geometry. That is only an impression what we have when we see that the arrow is pointing to some component . But the point will point only to the coordinates what you do set.  The points have specific coordinates an they are displayed on the model geometry (when they are set correctly) . When they appeared on the correct place that will possibly it will  look like as they are connected to some components etc. . But actually   they follow only the coordinate of the potion x,y,z of the points. When the geometry change and you know how it changes then you need to change also the positions of the coordinates. 

Here is one example from a  old project where I changed this points and should demonstrates how to change the points

 

$scope.Test=function(){
 
 
 
  var wdgs=$scope.app.view.Home.wdg; 
  for(wdg in wdgs)
  {   
  if(hasWdgProp(wdgs[wdg],'selectedWaypointIndex')) //only wayfinder widget has this property
   // if(wdgs[wdg]['widgetName'].indexOf("wayfinder")) 
    { let count=0;
     let arr_size= wdgs[wdg].waypointsData.length
      var a1= arr_size%4
      var a2 = (arr_size-a1)/4
      console.log("---> a1="+a1+"   a2="+a2+"  arr_size="+arr_size)
     for (i=0; i<arr_size; i++) {
       //4 grids
     a1=i % 4
     a2= (i -a1) /4
      wdgs[wdg].waypointsData[i].position.x=-0.5+0.25*a1
      wdgs[wdg].waypointsData[i].position.y=0.1+0.25*a2
      wdgs[wdg].waypointsData[i].position.z=0
      $scope.$applyAsync();}
     
    }
     $scope.$applyAsync();
  }

  $scope.$applyAsync();
};

 

So to change the points you need at least  a list of coordinates which should  be set after model change e.g. component movement etc.

 

 

@RolandRaytchev Thank you for your response,

I guess I need more practice with Wayfinder and observations on its behavior.

Announcements

Top Tags