FougTools  0.7.0dev-046fb6a
Handy tools for C++, Qt and OpenCascade
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
grid_numbering.h
Go to the documentation of this file.
1 /****************************************************************************
2 ** FougTools
3 ** Copyright Fougue (30 Mar. 2015)
4 ** contact@fougue.pro
5 **
6 ** This software is a computer program whose purpose is to provide utility
7 ** tools for the C++ language and the Qt toolkit.
8 **
9 ** This software is governed by the CeCILL-C license under French law and
10 ** abiding by the rules of distribution of free software. You can use,
11 ** modify and/ or redistribute the software under the terms of the CeCILL-C
12 ** license as circulated by CEA, CNRS and INRIA at the following URL
13 ** "http://www.cecill.info".
14 ****************************************************************************/
15 
16 #pragma once
17 
18 #include "core.h"
19 #include <QtCore/Qt>
20 #include <QtCore/QVector>
21 
22 namespace qtcore {
23 
25 {
26 public:
27  enum SweepMode
28  {
30  ZigZag
31  };
32 
33  GridNumbering();
35  Qt::Corner corner, Qt::Orientation orientation, SweepMode sweep);
36 
37  Qt::Corner startCorner() const;
38  void setStartCorner(Qt::Corner corner);
39 
40  Qt::Orientation orientation() const;
41  void setOrientation(Qt::Orientation orientation);
42 
43  SweepMode sweepMode() const;
44  void setSweepMode(SweepMode sweepMode);
45 
46  static QVector< QVector<int> > gridIndexes(
47  const GridNumbering& gridNb,
48  int rowCount,
49  int colCount,
50  int startIndex = 0);
51 private:
52  Qt::Corner m_startCorner;
53  Qt::Orientation m_orientation;
54  SweepMode m_sweepMode;
55 };
56 
57 } // namespace qtcore
Represents standard numbering of grid cells.
Definition: grid_numbering.h:24
#define QTTOOLS_CORE_EXPORT
Definition: core.h:27
SweepMode
Definition: grid_numbering.h:27
Definition: grid_numbering.cpp:19
Definition: grid_numbering.h:29