Changing mesh transforms in imported USD

@salvo.dipp i’d like to clarify the issue a bit since there were no screenshots, is it that each mesh prim has their pivot outside of the area you are working in? If that’s the issue you are experiencing, that’s often how Revit/Rhino files are set up because the dataset was probably set to align with a site model or such. in short, it’s not uncommon that they are way off from the world origin.

i don’t think you’ll find my responses below are aimed directly to address your question as these are just some thoughts i have; so here goes. one of the options of what you could do is bring the USD in as a payload/reference into another stage and bind it to an xform prim programmatically or through GUI. this xform prim is going to store any offset you input/desire so they align to your stage’s placement. the upside: one, you don’t actually need to move individual pieces again should they decided to make design modifications; secondly, you only need to enter the offset value on one prim instead of however many pieces found in the Revit dataset.

another option, is to use the Pivot Tool to temporarily add a pivot translation attribute:


in the clip, i used two different methods of adding pivot translation. the default “add pivot” would move the custom pivot to prim’s center, but you can move the pivot wherever in relationship to the prim itself. at this point, you should be able to move each prim using custom pivot location rather how they came in/exported (in your case, at 0,0,0). don’t forget about the offset tool is at your disposal as well to move multiple prims at specific increments (if you know how far off in relationship to your scene they came in at).

unfortunately, i am not familiar with pivot tool’s code. if the devs/mods knows of another way to go about this programmatically besides copying the code from the command panel, i will be keen to know as well!