How to create a controls like AutoDesk controls

Hello, i want to implement a controls like AutoDesk,
it can zoom to cursor and rotate by cursor.
Can u give me some suggestions.

The camera-controls plugin supports zoom-to-cursor but I’m not sure what you mean by “rotate by cursor”. Do you mind explaining in more detail?