Zoom/move camera when clicked on a 3d model

I want to achieve a smooth zoom when click on a 3d model just like camera.flyto works. But camera.flyto goes exactly on clicked area and sets view top down. When users clicks on a 3d model, camera should smoothly moves towards that part keeping in view of clicked part. How this can be achieved?

The flyTo function does take a set of options like orientation so you can set the view to something other than top down, see:

https://cesiumjs.org/Cesium/Build/Documentation/Camera.html?classFilter=Camera#flyTo

Have you tried that?