1 /* 2 * Cogl 3 * 4 * A Low Level GPU Graphics and Utilities API 5 * 6 * Copyright (C) 2008,2009,2013 Intel Corporation. 7 * 8 * Permission is hereby granted, free of charge, to any person 9 * obtaining a copy of this software and associated documentation 10 * files (the "Software"), to deal in the Software without 11 * restriction, including without limitation the rights to use, copy, 12 * modify, merge, publish, distribute, sublicense, and/or sell copies 13 * of the Software, and to permit persons to whom the Software is 14 * furnished to do so, subject to the following conditions: 15 * 16 * The above copyright notice and this permission notice shall be 17 * included in all copies or substantial portions of the Software. 18 * 19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 22 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 23 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 24 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 25 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 26 * SOFTWARE. 27 * 28 * 29 */ 30 31 #ifndef __COGL_PATH_H__ 32 #define __COGL_PATH_H__ 33 34 /** 35 * SECTION:cogl-paths 36 * @short_description: Functions for constructing and drawing 2D paths. 37 * 38 * There are two levels on which drawing with cogl-paths can be used. 39 * The highest level functions construct various simple primitive 40 * shapes to be either filled or stroked. Using a lower-level set of 41 * functions more complex and arbitrary paths can be constructed by 42 * concatenating straight line, bezier curve and arc segments. 43 * 44 * When constructing arbitrary paths, the current pen location is 45 * initialized using the move_to command. The subsequent path segments 46 * implicitly use the last pen location as their first vertex and move 47 * the pen location to the last vertex they produce at the end. Also 48 * there are special versions of functions that allow specifying the 49 * vertices of the path segments relative to the last pen location 50 * rather then in the absolute coordinates. 51 */ 52 53 #include <cogl/cogl-defines.h> 54 55 #ifdef COGL_HAS_GTYPE_SUPPORT 56 #include <cogl-path/cogl-path-enum-types.h> 57 #endif 58 59 #include <cogl-path/cogl-path-types.h> 60 61 #ifdef COGL_ENABLE_EXPERIMENTAL_2_0_API 62 #include <cogl-path/cogl2-path-functions.h> 63 #else 64 #include <cogl-path/cogl1-path-functions.h> 65 #endif 66 67 #endif /* __COGL_PATH_H__ */ 68 69