public Vector3 GetVelAtPoint(Vector3 point)
{
// use the cross product, multiply by angularSpeed in radians
Vector3 diff = point-transform.position;
Vector3 result = Vector3.Cross(Vector3.forward, diff);
// extra logic to prevent returning Vector3.zero (to preserve vector direction)
return velocity + result*(Mathf.Abs(curAngularVelocity)>0.001f?curAngularVelocity:(float)1e-3)*Mathf.PI/180;
}