1255597Sdes/* 2255597Sdes * Copyright 2006-2008, Haiku. 3255597Sdes * Distributed under the terms of the MIT License. 4255597Sdes * 5255597Sdes * Authors: 6255597Sdes * Artur Wyszynski <harakash@gmail.com> 7255597Sdes */ 8291767Sdes 9255597Sdes#include <Point.h> 10255597Sdes#include <Gradient.h> 11255597Sdes#include <GradientLinear.h> 12255597Sdes 13285206Sdes 14255597Sdes// constructor 15295691SdesBGradientLinear::BGradientLinear() 16285206Sdes{ 17255597Sdes fData.linear.x1 = 0.0f; 18269257Sdes fData.linear.y1 = 0.0f; 19269257Sdes fData.linear.x2 = 0.0f; 20269257Sdes fData.linear.y2 = 0.0f; 21269257Sdes fType = TYPE_LINEAR; 22269257Sdes} 23291767Sdes 24291767Sdes 25291767Sdes// constructor 26291767SdesBGradientLinear::BGradientLinear(const BPoint& start, const BPoint& end) 27269257Sdes{ 28255597Sdes fData.linear.x1 = start.x; 29255597Sdes fData.linear.y1 = start.y; 30255597Sdes fData.linear.x2 = end.x; 31255597Sdes fData.linear.y2 = end.y; 32255597Sdes fType = TYPE_LINEAR; 33255597Sdes} 34269257Sdes 35269257Sdes 36269257Sdes// constructor 37269257SdesBGradientLinear::BGradientLinear(float x1, float y1, float x2, float y2) 38269257Sdes{ 39269257Sdes fData.linear.x1 = x1; 40269257Sdes fData.linear.y1 = y1; 41269257Sdes fData.linear.x2 = x2; 42269257Sdes fData.linear.y2 = y2; 43255597Sdes fType = TYPE_LINEAR; 44} 45 46 47// Start 48BPoint 49BGradientLinear::Start() const 50{ 51 return BPoint(fData.linear.x1, fData.linear.y1); 52} 53 54 55// SetStart 56void 57BGradientLinear::SetStart(const BPoint& start) 58{ 59 fData.linear.x1 = start.x; 60 fData.linear.y1 = start.y; 61} 62 63 64// SetStart 65void 66BGradientLinear::SetStart(float x, float y) 67{ 68 fData.linear.x1 = x; 69 fData.linear.y1 = y; 70} 71 72 73// End 74BPoint 75BGradientLinear::End() const 76{ 77 return BPoint(fData.linear.x2, fData.linear.y2); 78} 79 80 81// SetEnd 82void 83BGradientLinear::SetEnd(const BPoint& end) 84{ 85 fData.linear.x2 = end.x; 86 fData.linear.y2 = end.y; 87} 88 89 90// SetEnd 91void 92BGradientLinear::SetEnd(float x, float y) 93{ 94 fData.linear.x2 = x; 95 fData.linear.y2 = y; 96} 97