Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1222)

Side by Side Diff: Source/platform/graphics/filters/PointLightSource.h

Issue 181943003: Scaling and offset fix for FELighting (software and skia paths) (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Changed fix to temporary light creation Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008 Alex Mathews <possessedpenguinbob@gmail.com> 2 * Copyright (C) 2008 Alex Mathews <possessedpenguinbob@gmail.com>
3 * Copyright (C) 2004, 2005, 2006, 2007 Nikolas Zimmermann <zimmermann@kde.org> 3 * Copyright (C) 2004, 2005, 2006, 2007 Nikolas Zimmermann <zimmermann@kde.org>
4 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org> 4 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org>
5 * Copyright (C) 2005 Eric Seidel <eric@webkit.org> 5 * Copyright (C) 2005 Eric Seidel <eric@webkit.org>
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 16 matching lines...) Expand all
27 27
28 namespace WebCore { 28 namespace WebCore {
29 29
30 class PLATFORM_EXPORT PointLightSource : public LightSource { 30 class PLATFORM_EXPORT PointLightSource : public LightSource {
31 public: 31 public:
32 static PassRefPtr<PointLightSource> create(const FloatPoint3D& position) 32 static PassRefPtr<PointLightSource> create(const FloatPoint3D& position)
33 { 33 {
34 return adoptRef(new PointLightSource(position)); 34 return adoptRef(new PointLightSource(position));
35 } 35 }
36 36
37 virtual PassRefPtr<LightSource> create(const FloatPoint3D& scale, const Floa tSize& offset) const OVERRIDE
38 {
39 FloatPoint3D position(m_position.x() * scale.x() - offset.width(), m_pos ition.y() * scale.y() - offset.height(), m_position.z() * scale.z());
40 return adoptRef(new PointLightSource(position));
41 }
42
37 const FloatPoint3D& position() const { return m_position; } 43 const FloatPoint3D& position() const { return m_position; }
38 virtual bool setX(float) OVERRIDE; 44 virtual bool setX(float) OVERRIDE;
39 virtual bool setY(float) OVERRIDE; 45 virtual bool setY(float) OVERRIDE;
40 virtual bool setZ(float) OVERRIDE; 46 virtual bool setZ(float) OVERRIDE;
41 47
42 virtual void initPaintingData(PaintingData&) OVERRIDE; 48 virtual void initPaintingData(PaintingData&) const OVERRIDE;
43 virtual void updatePaintingData(PaintingData&, int x, int y, float z) OVERRI DE; 49 virtual void updatePaintingData(PaintingData&, int x, int y, float z) const OVERRIDE;
44 50
45 virtual TextStream& externalRepresentation(TextStream&) const OVERRIDE; 51 virtual TextStream& externalRepresentation(TextStream&) const OVERRIDE;
46 52
47 private: 53 private:
48 PointLightSource(const FloatPoint3D& position) 54 PointLightSource(const FloatPoint3D& position)
49 : LightSource(LS_POINT) 55 : LightSource(LS_POINT)
50 , m_position(position) 56 , m_position(position)
51 { 57 {
52 } 58 }
53 59
54 FloatPoint3D m_position; 60 FloatPoint3D m_position;
55 }; 61 };
56 62
57 } // namespace WebCore 63 } // namespace WebCore
58 64
59 #endif // PointLightSource_h 65 #endif // PointLightSource_h
OLDNEW
« no previous file with comments | « Source/platform/graphics/filters/LightSource.h ('k') | Source/platform/graphics/filters/PointLightSource.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698