Resize (scale) facet by x or y or z or vectorial factors.
The name scale has not been used, it been a Fortran built-in.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(facet_object), | intent(inout) | :: | self | Facet |
||
| type(vector_R8P), | intent(in) | :: | factor | Vectorial factor. |
||
| logical, | intent(in), | optional | :: | recompute_metrix | Sentinel to activate metrix recomputation. |
elemental subroutine resize(self, factor, recompute_metrix)
!< Resize (scale) facet by x or y or z or vectorial factors.
!<
!< @note The name `scale` has not been used, it been a Fortran built-in.
class(facet_object), intent(inout) :: self !< Facet
type(vector_R8P), intent(in) :: factor !< Vectorial factor.
logical, intent(in), optional :: recompute_metrix !< Sentinel to activate metrix recomputation.
self%vertex_1 = self%vertex_1 * factor
self%vertex_2 = self%vertex_2 * factor
self%vertex_3 = self%vertex_3 * factor
if (present(recompute_metrix)) then
if (recompute_metrix) call self%compute_metrix
endif
endsubroutine resize