diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/cru/osx/graphics/quartz/Geometry.h | 4 | ||||
-rw-r--r-- | include/cru/platform/graphics/Geometry.h | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/include/cru/osx/graphics/quartz/Geometry.h b/include/cru/osx/graphics/quartz/Geometry.h index a6ee7470..e0bdd5b6 100644 --- a/include/cru/osx/graphics/quartz/Geometry.h +++ b/include/cru/osx/graphics/quartz/Geometry.h @@ -19,6 +19,10 @@ class QuartzGeometry : public OsxQuartzResource, public virtual IGeometry { CGPathRef GetCGPath() const { return cg_path_; } bool FillContains(const Point &point) override; + Rect GetBounds() override; + + std::unique_ptr<IGeometry> Transform(const Matrix &matrix) override; + std::unique_ptr<IGeometry> CreateStrokeGeometry(float width) override; private: CGPathRef cg_path_; diff --git a/include/cru/platform/graphics/Geometry.h b/include/cru/platform/graphics/Geometry.h index a4146008..1c2bd1f7 100644 --- a/include/cru/platform/graphics/Geometry.h +++ b/include/cru/platform/graphics/Geometry.h @@ -4,6 +4,9 @@ namespace cru::platform::graphics { struct CRU_PLATFORM_GRAPHICS_API IGeometry : virtual IGraphicsResource { virtual bool FillContains(const Point& point) = 0; + virtual Rect GetBounds() = 0; + virtual std::unique_ptr<IGeometry> Transform(const Matrix& matrix) = 0; + virtual std::unique_ptr<IGeometry> CreateStrokeGeometry(float width) = 0; }; struct CRU_PLATFORM_GRAPHICS_API IGeometryBuilder : virtual IGraphicsResource { |