Преобразование может быть выполнено в чистом JavaScript с помощью библиотеки THREE.js (графический API на основе WebGL, узнайте больше для ваших целей здесь ), так что .NET выходит за рамки ваших целей.См. Пример кода ниже (полный образец здесь ):
let dbid = viewer.getSelection(); //make sure you point to the root node of target component
let tree = viewer.model.getData().instanceTree; //obtain model object tree
tree.enumNodeFragments(dbid, function (frag) {
var fragProxy = viewer.impl.getFragmentProxy(viewer.model, frag);
fragProxy.getAnimTransform();
fragProxy.quaternion = new THREE.Quaternion().setFromAxisAngle(
new THREE.Vector3(1,0,0),
-Math.PI/2); //spin the component by 90 degrees
fragProxy.updateAnimTransform(); //notify fragment proxy to perform animation
});
viewer.impl.sceneUpdated(true); //notify Viewer to update scene
См. здесь для получения подробной информации о преобразовании компонентов.
Также см. здесь для получения дополнительной информации о dbid и фрагментах.