Property enum name changes in dali-core: Core changes
[platform/core/uifw/dali-core.git] / dali / public-api / geometry / mesh-factory.h
1 #ifndef __DALI_MESH_FACTORY_H__
2 #define __DALI_MESH_FACTORY_H__
3 /*
4  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19
20 #include <dali/public-api/math/rect.h>
21 #include <dali/public-api/animation/path.h>
22
23 namespace Dali
24 {
25 class MeshData;
26
27 namespace MeshFactory
28 {
29
30 /**
31  * @brief Create an initialized plane aligned on the XY axis.
32  *
33  * @param[in] width   The width of the plane
34  * @param[in] height  The height of the plane
35  * @param[in] xSteps  The number of vertices along the X axis
36  * @param[in] ySteps  The number of vertices along the Y axis
37  * @param[in] textureCoordinates  UV coordinates.
38  * @return A mesh data structure containing the plane mesh
39  */
40 DALI_IMPORT_API Dali::MeshData NewPlane( const float width,
41                                          const float height,
42                                          const int xSteps,
43                                          const int ySteps,
44                                          const Rect<float>& textureCoordinates = Rect<float>(0.0f, 0.0f, 1.0f, 1.0f) );
45
46 /**
47  * @brief Create a mesh from a given path.
48  * The mesh generated will be a set of lines, each one connecting a point sampled from the path to the next sampled point.
49  *
50  * @param[in] path The path used to generate the mesh
51  * @param[in] resolution The number of vertices to generate
52  * @return A mesh data structure containing the path mesh
53  */
54 DALI_IMPORT_API Dali::MeshData NewPath( Dali::Path path, const unsigned int resolution );
55
56 } // MeshFactory
57 } // Dali
58
59 #endif // __DALI_MESH_FACTORY_H__