Welcome to mirror list, hosted at ThFree Co, Russian Federation.

tesselator_decl.hpp « coding - github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 2e0e5e9b47f71ff7d0a2724617a5cef64f68085b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once

#include "base/assert.hpp"

#include <cstdint>

namespace tesselator
{
// Edge of graph, built from triangles list.
struct Edge
{
  int m_p[2];        // indexes of connected triangles (0 -> 1)
  uint64_t m_delta;  // delta of 1 - triangle from 0 - triangle

  // intersected rib of 0 - triangle:
  // - -1 - uninitialized or root edge
  // -  0 - this edge intersects 1-2 rib;
  // -  1 - this edge intersects 2-0 rib;
  int8_t m_side;

  Edge(int from, int to, uint64_t delta, char side) : m_delta(delta), m_side(side)
  {
    m_p[0] = from;
    m_p[1] = to;
  }
};
}  // namespace tesselator