diff options
author | crupest <crupest@outlook.com> | 2022-03-02 19:33:18 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2022-03-02 19:33:18 +0800 |
commit | 3e11b954a73d4718750b130abd6f511e624ffce7 (patch) | |
tree | 5513f49ff345ff8a33df63371e35352efa6af864 /include | |
parent | a310733b429a99aff14d840f6de663a685917d00 (diff) | |
download | cru-3e11b954a73d4718750b130abd6f511e624ffce7.tar.gz cru-3e11b954a73d4718750b130abd6f511e624ffce7.tar.bz2 cru-3e11b954a73d4718750b130abd6f511e624ffce7.zip |
...
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 { |