1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 #ifndef _BGFX_CURVE_B2DQUADRATICBEZIER_HXX 29 #define _BGFX_CURVE_B2DQUADRATICBEZIER_HXX 30 31 #include <basegfx/point/b2dpoint.hxx> 32 33 ////////////////////////////////////////////////////////////////////////////// 34 35 namespace basegfx 36 { 37 class B2DQuadraticBezier 38 { 39 ::basegfx::B2DPoint maStartPoint; 40 ::basegfx::B2DPoint maEndPoint; 41 ::basegfx::B2DPoint maControlPoint; 42 43 public: 44 B2DQuadraticBezier(); 45 B2DQuadraticBezier(const B2DQuadraticBezier& rBezier); 46 B2DQuadraticBezier(const ::basegfx::B2DPoint& rStart, const ::basegfx::B2DPoint& rEnd); 47 B2DQuadraticBezier(const ::basegfx::B2DPoint& rStart, 48 const ::basegfx::B2DPoint& rControlPoint, const ::basegfx::B2DPoint& rEnd); 49 ~B2DQuadraticBezier(); 50 51 // assignment operator 52 B2DQuadraticBezier& operator=(const B2DQuadraticBezier& rBezier); 53 54 // compare operators 55 bool operator==(const B2DQuadraticBezier& rBezier) const; 56 bool operator!=(const B2DQuadraticBezier& rBezier) const; 57 58 // test if control point is placed on the edge 59 bool isBezier() const; 60 61 // data interface 62 ::basegfx::B2DPoint getStartPoint() const { return maStartPoint; } 63 void setStartPoint(const ::basegfx::B2DPoint& rValue) { maStartPoint = rValue; } 64 65 ::basegfx::B2DPoint getEndPoint() const { return maEndPoint; } 66 void setEndPoint(const ::basegfx::B2DPoint& rValue) { maEndPoint = rValue; } 67 68 ::basegfx::B2DPoint getControlPoint() const { return maControlPoint; } 69 void setControlPoint(const ::basegfx::B2DPoint& rValue) { maControlPoint = rValue; } 70 }; 71 } // end of namespace basegfx 72 73 #endif /* _BGFX_CURVE_B2DQUADRATICBEZIER_HXX */ 74