Merge branch 'dev' into spot-removal-tool
This commit is contained in:
@@ -238,6 +238,7 @@ public:
|
||||
float innerLineWidth; // ...outerLineWidth = innerLineWidth+2
|
||||
Datum datum;
|
||||
State state; // set by the Subscriber
|
||||
float opacity; // Percentage of opacity
|
||||
|
||||
Geometry ();
|
||||
virtual ~Geometry() {}
|
||||
@@ -330,6 +331,25 @@ public:
|
||||
void drawToMOChannel (Cairo::RefPtr<Cairo::Context> &cr, unsigned short id, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
};
|
||||
|
||||
class Ellipse : public Geometry
|
||||
{
|
||||
public:
|
||||
rtengine::Coord center;
|
||||
int radYT; // Ellipse half-radius for top y-axis
|
||||
int radY; // Ellipse half-radius for bottom y-axis
|
||||
int radXL; // Ellipse half-radius for left x-axis
|
||||
int radX; // Ellipse half-radius for right x-axis
|
||||
bool filled;
|
||||
bool radiusInImageSpace; /// If true, the radius depend on the image scale; if false, it is a fixed 'screen' size
|
||||
|
||||
Ellipse ();
|
||||
Ellipse (const rtengine::Coord& center, int radYT, int radY, int radXL, int radX, bool filled = false, bool radiusInImageSpace = false);
|
||||
|
||||
void drawOuterGeometry (Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
void drawInnerGeometry (Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
void drawToMOChannel (Cairo::RefPtr<Cairo::Context> &cr, unsigned short id, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
};
|
||||
|
||||
class OPIcon : public Geometry // OP stands for "On Preview"
|
||||
{
|
||||
|
||||
@@ -494,7 +514,7 @@ inline Geometry::Geometry () :
|
||||
innerLineColor (char (255), char (255), char (255)), outerLineColor (
|
||||
char (0), char (0), char (0)), flags (
|
||||
F_VISIBLE | F_HOVERABLE | F_AUTO_COLOR), innerLineWidth (1.5f), datum (
|
||||
IMAGE), state (NORMAL) {
|
||||
IMAGE), state (NORMAL), opacity(100.) {
|
||||
}
|
||||
|
||||
inline RGBAColor::RGBAColor () :
|
||||
@@ -538,6 +558,10 @@ inline Line::Line () :
|
||||
begin (10, 10), end (100, 100) {
|
||||
}
|
||||
|
||||
inline Ellipse::Ellipse () :
|
||||
center (100, 100), radYT (5), radY (5), radXL (10), radX (10), filled (false), radiusInImageSpace (false) {
|
||||
}
|
||||
|
||||
inline Circle::Circle (rtengine::Coord& center, int radius, bool filled,
|
||||
bool radiusInImageSpace) :
|
||||
center (center), radius (radius), filled (filled), radiusInImageSpace (
|
||||
@@ -558,5 +582,10 @@ inline Line::Line (int beginX, int beginY, int endX, int endY) :
|
||||
begin (beginX, beginY), end (endX, endY) {
|
||||
}
|
||||
|
||||
#endif
|
||||
inline Ellipse::Ellipse (const rtengine::Coord& center, int radYT, int radY, int radXL, int radX,
|
||||
bool filled, bool radiusInImageSpace) :
|
||||
center (center), radYT (radYT), radY (radY), radXL (radXL), radX (radX), filled (filled),
|
||||
radiusInImageSpace (radiusInImageSpace) {
|
||||
}
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user