Cómo rotar y trasladar eficientemente un plano en 3D

Tengo un plano definido por un normal (n) y una distancia (d) (desde el origen). Me gustaría transformarlo en un nuevo sistema. El largo camino es el siguiente: 1) multiplicar la distancia (d) con la normal (n) dando como resultado un vector (p) 2) rotar (R) y traducir (v) el vector (p) para obtener (p ') 3) normalizar (p ') para obtener el 4 normal) use otro algoritmo para encontrar la distancia más pequeña (d') entre el nuevo plano y el origen

No he intentado esto pero supongo que debería funcionar. PREGUNTA: ¿No hay una forma más rápida de obtener n 'yd'? Si la traducción (v) es 0, puedo omitir 4). Pero si no es 0? ¿Hay una manera más fácil de obtener el nuevo d '?