Home | History | Annotate | Download | only in gfx
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef UI_GFX_RECT_CONVERSIONS_H_
      6 #define UI_GFX_RECT_CONVERSIONS_H_
      7 
      8 #include "ui/gfx/rect.h"
      9 #include "ui/gfx/rect_f.h"
     10 
     11 namespace gfx {
     12 
     13 // Returns the smallest Rect that encloses the given RectF.
     14 UI_EXPORT Rect ToEnclosingRect(const RectF& rect);
     15 
     16 // Returns the largest Rect that is enclosed by the given RectF.
     17 UI_EXPORT Rect ToEnclosedRect(const RectF& rect);
     18 
     19 // Returns the Rect after snapping the corners of the RectF to an integer grid.
     20 // This should only be used when the RectF you provide is expected to be an
     21 // integer rect with floating point error. If it is an arbitrary RectF, then
     22 // you should use a different method.
     23 UI_EXPORT Rect ToNearestRect(const RectF& rect);
     24 
     25 // Returns true if the Rect produced after snapping the corners of the RectF
     26 // to an integer grid is withing |distance|.
     27 UI_EXPORT bool IsNearestRectWithinDistance(
     28     const gfx::RectF& rect, float distance);
     29 
     30 // Returns a Rect obtained by flooring the values of the given RectF.
     31 // Please prefer the previous two functions in new code.
     32 UI_EXPORT Rect ToFlooredRectDeprecated(const RectF& rect);
     33 
     34 }  // namespace gfx
     35 
     36 #endif  // UI_GFX_RECT_CONVERSIONS_H_
     37