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

Community Tip - Want the oppurtunity to discuss enhancements to PTC products? Join a working group! X

MBD states not changed as per new picture in Vuforia

krthk86g
12-Amethyst

MBD states not changed as per new picture in Vuforia

1. I created a simple creo 6 part with two different states are Front, Top + Default

2. Saved as a PVZ file

3. Imported in creo 6 where all the states were listed 

4. crated one picture with respect to view along with dimensions

krthk86g_0-1595438594764.png

krthk86g_1-1595438665507.png

 

5. Published as PVZ

6. Created new project in VUFORIA

7. got the sequence and added list button to show

8. when I activate the dimensions are displayed but the model was not positioned as expected. the deviation continues when I use camera to capture the change position of a model during animation capture.

krthk86g_2-1595438847504.png

 

1 ACCEPTED SOLUTION

Accepted Solutions

Hi @krthk86g ,

 

Unfortunately, I saw first now that there was a further question to this topic.

The main idea here (what was suggested) for the workaround is to use 3d components in the sequences /the steps instead of 2d symbols. This means that for each 2d symbol you can  create and to add to the top assembly a 3D component. For (arrows, tools, symbols  but sometimes also for  texts and additional info)

 

2020-08-07_15-17-44.jpg

 

So, the installation tools  info could be provided by adding some additional  3d components which are not part of the assembly

We can use also for some 2d symbols e.g. arrow  a 3d flat components:

2020-08-07_15-25-31.jpg

 

Ok, for long texts is this not so good idea – so in this case the models widget could be combined with some text Area widget where the text could be displayed but in generally texts  could be implemented also in 3d components

 

2020-08-07_16-08-08.jpg

 

When you try to combine a sequence with a 3d Widget or 2d Widget display (e.g. the display of text  in text Area widget will change when for example you will start the step 3) - for this you can use JavaScript code  with listeners
e.g.  stepstarted or stepcompleted – the example below is not related to the topic but demonstrates the general usage of the mentioned listeners:

 

 

//=============================================
$scope.$on('stepcompleted', function(evt, arg1, arg2, arg3) { 
 var parsedArg3 = JSON.parse(arg3);
  //console.warn(arg3)
console.log("stepcompleted stepNumber="+parsedArg3.stepNumber + "  nextStep="+parsedArg3.nextStep);
  $scope.$applyAsync(()=>{ 
                         // $scope.setWidgetProp(modelWdgName, 'disabled',false) 
                           $scope.app.params['disabled']="false";
                         })
 
}); 
//============================================= $scope.$applyAsync(()=>{ $scope.setWidgetProp(modelWdgName, 'disabled',false) })
$scope.$on('stepstarted', function(evt, arg1, arg2, arg3) { 
 var parsedArg3 = JSON.parse(arg3);
  //console.warn(arg3)
console.log("stepstarted stepNumber="+parsedArg3.stepNumber + "  nextStep="+parsedArg3.nextStep);
 $scope.$applyAsync(()=>{ $scope.app.params['disabled']="true";
                        })
 
}); 
//================================================================

 

 

The display of info outside the 3d model in text widgets (labels 2d or 2d or text area)could be used only for the display of general step information  but it will be difficulty to display e.g. information related to small  components inside large assembly models when you want to relate very detailed information for small parts

Unfortunately I do not have an example for this application case.

View solution in original post

9 REPLIES 9

Hi @krthk86g ,

 

in Vuforia studio, so far I know we do not have support for MTB states, all this functionality what we know if open the view manager of Creo Parametric - here in 6.0.1 e.g. 

 

2020-07-23_11-08-59.jpg

 

for example if you have a status of simplified representation which blanks some parts or you have annotations /dims etc.  in this case this will be saved to the pvz file. Also, the views are also saved.

But in Vuforia Studio we do not support view because this is AR. Means the geometry has a position and you viewpoint is changing based on the device. Please, pay attention that the preview mode is only rudimentary simulation of a view in a device because you do not have really a camera position and camera coordinate system - this will be simulated. Also a mouse and zoom pan operation are only helpful tool to investigate you project but has not correspondence to  the functionality on end device

What you need to know is that the position of you model and its orientation depends only on:

1.)model (for assembly top assembly) default coordinate system. This is the system when you go in Creo Parametric in the top model and call Model>Datum> Default Coordinate System

This coordinate system will be aligned to model widget coordinate system:

 

2020-07-23_11-21-42.jpg

 

Therefore when you review the experience in the view app you will see the orientation depending on the position and orientation of you device - also the zoom is based on the distance and scale.

2.) position and scale of the target (model target, thingmark, image target etc.) in respect of the  model widget coordinate system. So means when you scan e.g. a Thingmark it will fix the position of the model thingmark to the scaned thinkmark and will calculate the scale which is based on the size of the scanned thingmark and the size of the Project thingmark. Then it determines the position of the Model widget coordinate system in respect to the target and will aligned the top model default coordinate system to the widgets csys. No any view orientation will be taken in account.

But in preview mode in the chrome we do not have a real target and we do not have only a fake mobile orientation and location - so far it the zoom factor and orientation no really relevant.

Hi RolandRaytchev, 

 

 

I understand the functionality and awareness of MBD states now. 

 

1. created 4 different pictures of PVZ and sequence in Creo Illustrate

2. loaded them into Vuforia and made a sequence player with list and button

3. when it is activated to play it does play the sequence of animation.

 

what is missing here. 

1. I added symbol like arrow etc whis is not visible in the vufroia 

currently the sequences are working only if they are with steps. Means animation from Creo Illustrate will not work directly . So in this case you can use it inside a sequence step.

- the first think is to check if the sequence list and to set the sequence property:

 

2020-07-23_14-52-34.jpg

 

Then you can try to play it via linking the play service to e.g. a button:

 

2020-07-23_14-55-18.jpg

 

Hi RolandRaytchev, 

 

it is correct, for me sequence works fine but the symbol which i added on top is missing. 

Hi @krthk86g ,

OK, understand - this is current limitation. If you tried to use 2d symbol added in illustrate this will not work. (only 3d Views from Illustrate could be used) Only 3d geometry  is currently working. If you want to have some symbols in the sequence you can use 3d models instead - in this case it  will work. -E.g. some tools etc. You can use also a 3d flat part with texture which display your symbol. Or you can use 3Dimage widget where you display some pictures etc.  but this will work only outside the sequence . You can synchronize displaying such Image widgets or blanking them with the  event step finished or step started but this requires some programming work

could you please add links of the example if you have

Hi @krthk86g ,

I am not sure what should do the example, what functionality you want to see (because I mentioned some things as possible options where we select one of them).

What you want to see? Could you, please, specify your requirements more detailed, so I could check if I have such example. If I do not have example what you need- is also np,  I could create some basic example but this but will take some time. The next week I am not available but the week after next week I will check it more deeper.

I need a sample which can show the 2D and 3D symbols are being displayed in preview/mobile view

Hi @krthk86g ,

 

Unfortunately, I saw first now that there was a further question to this topic.

The main idea here (what was suggested) for the workaround is to use 3d components in the sequences /the steps instead of 2d symbols. This means that for each 2d symbol you can  create and to add to the top assembly a 3D component. For (arrows, tools, symbols  but sometimes also for  texts and additional info)

 

2020-08-07_15-17-44.jpg

 

So, the installation tools  info could be provided by adding some additional  3d components which are not part of the assembly

We can use also for some 2d symbols e.g. arrow  a 3d flat components:

2020-08-07_15-25-31.jpg

 

Ok, for long texts is this not so good idea – so in this case the models widget could be combined with some text Area widget where the text could be displayed but in generally texts  could be implemented also in 3d components

 

2020-08-07_16-08-08.jpg

 

When you try to combine a sequence with a 3d Widget or 2d Widget display (e.g. the display of text  in text Area widget will change when for example you will start the step 3) - for this you can use JavaScript code  with listeners
e.g.  stepstarted or stepcompleted – the example below is not related to the topic but demonstrates the general usage of the mentioned listeners:

 

 

//=============================================
$scope.$on('stepcompleted', function(evt, arg1, arg2, arg3) { 
 var parsedArg3 = JSON.parse(arg3);
  //console.warn(arg3)
console.log("stepcompleted stepNumber="+parsedArg3.stepNumber + "  nextStep="+parsedArg3.nextStep);
  $scope.$applyAsync(()=>{ 
                         // $scope.setWidgetProp(modelWdgName, 'disabled',false) 
                           $scope.app.params['disabled']="false";
                         })
 
}); 
//============================================= $scope.$applyAsync(()=>{ $scope.setWidgetProp(modelWdgName, 'disabled',false) })
$scope.$on('stepstarted', function(evt, arg1, arg2, arg3) { 
 var parsedArg3 = JSON.parse(arg3);
  //console.warn(arg3)
console.log("stepstarted stepNumber="+parsedArg3.stepNumber + "  nextStep="+parsedArg3.nextStep);
 $scope.$applyAsync(()=>{ $scope.app.params['disabled']="true";
                        })
 
}); 
//================================================================

 

 

The display of info outside the 3d model in text widgets (labels 2d or 2d or text area)could be used only for the display of general step information  but it will be difficulty to display e.g. information related to small  components inside large assembly models when you want to relate very detailed information for small parts

Unfortunately I do not have an example for this application case.

Top Tags