Mirror facet given normal of mirroring plane.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(facet_object), | intent(inout) | :: | self | Facet. |
||
| type(vector_R8P), | intent(in) | :: | normal | Normal of mirroring plane. |
||
| logical, | intent(in), | optional | :: | recompute_metrix | Sentinel to activate metrix recomputation. |
pure subroutine mirror_by_normal(self, normal, recompute_metrix)
!< Mirror facet given normal of mirroring plane.
class(facet_object), intent(inout) :: self !< Facet.
type(vector_R8P), intent(in) :: normal !< Normal of mirroring plane.
logical, intent(in), optional :: recompute_metrix !< Sentinel to activate metrix recomputation.
call self%mirror_by_matrix(matrix=mirror_matrix_R8P(normal=normal))
if (present(recompute_metrix)) then
if (recompute_metrix) call self%compute_metrix
endif
endsubroutine mirror_by_normal