Commit cf111cf6 authored by Kitware Robot's avatar Kitware Robot Committed by Ben Boeckel

clang-format: prepare data arrays for formatting

clang-format tends to either put each element on its own line or smash
them together into a few lines. There's a little bit more structure
that's important in these arrays, so preserve that through clang-format
as well.
parent 525010b7
......@@ -55,6 +55,7 @@ void MakeStatDistDataSet (vtkDataSet* dataset)
const int yCells = yVerts - 1;
const int nCells = xCells * yCells;
// clang-format off
// Poisson distribution [0:49] mean = 10
static double poisson[nVerts] = {
8, 10, 9, 8, 14, 11, 12, 9, 19, 7, 8, 11, 7, 10, 11, 11, 11, 6, 8, 8, 7, 15, 9, 7,
......@@ -238,6 +239,8 @@ void MakeStatDistDataSet (vtkDataSet* dataset)
6, 5, 33, 41, 29, 32, 49, 0, 46, 9, 48, 26, 13, 35, 29, 41, 41, 32, 36, 32, 17, 26, 33, 16,
43, 22, 45, 13, 47, 5, 20, 41, 48, 16, 26, 26, 40, 46, 33, 12
};
// clang-format on
vtkPointData* pd = dataset->GetPointData();
vtkCellData* cd = dataset->GetCellData();
......
......@@ -48,13 +48,13 @@ void populatePointAndCellArray(vtkFloatArray* pointArray,
const std::vector<float>& GetExpectedPointData()
{
static std::vector<float> expected = {
1.05f, 1.155f, 1.26f, 1.365f, 1.47f, 1.575f, 1.68f, 0.0f, 0.0f, 1.47f, 1.575f, 1.68f,
1.785f, 1.89f, 1.995f, 2.1f, 0.0f, 0.0f, 1.89f, 1.995f, 2.1f, 2.205f, 2.31f, 2.415f,
2.52f, 0.0f, 0.0f, 2.31f, 2.415f, 2.52f, 2.625f, 2.73f, 2.835f, 2.94f, 0.0f, 0.0f,
2.73f, 2.835f, 2.94f, 3.045f, 3.15f, 3.255f, 3.36f, 0.0f, 0.0f, 3.15f, 3.255f, 3.36f,
3.465f, 3.57f, 3.675f, 3.78f, 0.0f, 0.0f, 3.57f, 3.675f, 3.78f, 3.885f, 3.99f, 4.095f,
4.2f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f
1.05f, 1.155f, 1.26f, 1.365f, 1.47f, 1.575f, 1.68f, 0.0f, 0.0f, 1.47f, 1.575f, 1.68f, //
1.785f, 1.89f, 1.995f, 2.1f, 0.0f, 0.0f, 1.89f, 1.995f, 2.1f, 2.205f, 2.31f, 2.415f, //
2.52f, 0.0f, 0.0f, 2.31f, 2.415f, 2.52f, 2.625f, 2.73f, 2.835f, 2.94f, 0.0f, 0.0f, //
2.73f, 2.835f, 2.94f, 3.045f, 3.15f, 3.255f, 3.36f, 0.0f, 0.0f, 3.15f, 3.255f, 3.36f, //
3.465f, 3.57f, 3.675f, 3.78f, 0.0f, 0.0f, 3.57f, 3.675f, 3.78f, 3.885f, 3.99f, 4.095f, //
4.2f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, //
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f //
};
return expected;
}
......@@ -62,32 +62,36 @@ const std::vector<float>& GetExpectedPointData()
const std::vector<float>& GetExpectedCellData()
{
static std::vector<float> expected = {
0.0f, 0.7f, 0.7f, 0.7f, 1.4f, 1.4f, 1.4f, 0.0f, 0.0f, 2.1f, 2.8f, 2.8f, 2.8f, 3.5f,
3.5f, 3.5f, 0.0f, 0.0f, 2.1f, 2.8f, 2.8f, 2.8f, 3.5f, 3.5f, 3.5f, 0.0f, 0.0f, 2.1f,
2.8f, 2.8f, 2.8f, 3.5f, 3.5f, 3.5f, 0.0f, 0.0f, 4.2f, 4.9f, 4.9f, 4.9f, 5.6f, 5.6f,
5.6f, 0.0f, 0.0f, 4.2f, 4.9f, 4.9f, 4.9f, 5.6f, 5.6f, 5.6f, 0.0f, 0.0f, 4.2f, 4.9f,
4.9f, 4.9f, 5.6f, 5.6f, 5.6f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f
0.0f, 0.7f, 0.7f, 0.7f, 1.4f, 1.4f, 1.4f, 0.0f, 0.0f, 2.1f, 2.8f, 2.8f, 2.8f, 3.5f, //
3.5f, 3.5f, 0.0f, 0.0f, 2.1f, 2.8f, 2.8f, 2.8f, 3.5f, 3.5f, 3.5f, 0.0f, 0.0f, 2.1f, //
2.8f, 2.8f, 2.8f, 3.5f, 3.5f, 3.5f, 0.0f, 0.0f, 4.2f, 4.9f, 4.9f, 4.9f, 5.6f, 5.6f, //
5.6f, 0.0f, 0.0f, 4.2f, 4.9f, 4.9f, 4.9f, 5.6f, 5.6f, 5.6f, 0.0f, 0.0f, 4.2f, 4.9f, //
4.9f, 4.9f, 5.6f, 5.6f, 5.6f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, //
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f //
};
return expected;
}
const std::vector<size_t>& GetExpectedHiddenPoints()
{
static std::vector<size_t> expected = { 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2,
2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0,
2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0,
0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 };
static std::vector<size_t> expected = {
0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, //
2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, //
2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, //
0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, //
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 //
};
return expected;
}
const std::vector<size_t>& GetExpectedHiddenCells()
{
static std::vector<size_t>expected = { 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2,
0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2,
0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 };
static std::vector<size_t> expected = {
0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, //
0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, //
0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, //
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 //
};
return expected;
}
......
......@@ -35,19 +35,21 @@ namespace tovtkm
//------------------------------------------------------------------------------
// All scalar types in vtkType.h
struct VTKScalarTypes
: vtkm::ListTagBase<char,
signed char,
unsigned char,
short,
unsigned short,
int,
unsigned int,
long,
unsigned long,
long long,
unsigned long long,
float,
double>
: vtkm::ListTagBase< //
char, //
signed char, //
unsigned char, //
short, //
unsigned short, //
int, //
unsigned int, //
long, //
unsigned long, //
long long, //
unsigned long long, //
float, //
double //
>
{
};
......@@ -121,26 +123,29 @@ using CellSetSingleType64Bit = vtkm::cont::CellSetSingleType<Int64AsIdAOSStorage
//------------------------------------------------------------------------------
struct CellListUnstructuredInVTK
: vtkm::ListTagBase<CellSetExplicit32Bit,
CellSetExplicit64Bit,
CellSetSingleType32Bit,
CellSetSingleType64Bit>
: vtkm::ListTagBase< //
CellSetExplicit32Bit, //
CellSetExplicit64Bit, //
CellSetSingleType32Bit, //
CellSetSingleType64Bit //
>
{
};
struct CellListUnstructuredOutVTK
: vtkm::ListTagBase<
vtkm::cont::CellSetExplicit<>,
vtkm::cont::CellSetSingleType<>,
CellSetExplicit32Bit,
CellSetExplicit64Bit,
CellSetSingleType32Bit,
CellSetSingleType64Bit,
vtkm::cont::CellSetPermutation<CellSetExplicit32Bit>,
vtkm::cont::CellSetPermutation<CellSetExplicit64Bit>,
vtkm::cont::CellSetPermutation<CellSetSingleType32Bit>,
vtkm::cont::CellSetPermutation<CellSetSingleType64Bit>,
vtkm::cont::CellSetPermutation<vtkm::cont::CellSetExplicit<>>,
vtkm::cont::CellSetPermutation<vtkm::cont::CellSetSingleType<>>>
: vtkm::ListTagBase< //
vtkm::cont::CellSetExplicit<>, //
vtkm::cont::CellSetSingleType<>, //
CellSetExplicit32Bit, //
CellSetExplicit64Bit, //
CellSetSingleType32Bit, //
CellSetSingleType64Bit, //
vtkm::cont::CellSetPermutation<CellSetExplicit32Bit>, //
vtkm::cont::CellSetPermutation<CellSetExplicit64Bit>, //
vtkm::cont::CellSetPermutation<CellSetSingleType32Bit>, //
vtkm::cont::CellSetPermutation<CellSetSingleType64Bit>, //
vtkm::cont::CellSetPermutation<vtkm::cont::CellSetExplicit<> >, //
vtkm::cont::CellSetPermutation<vtkm::cont::CellSetSingleType<> > //
>
{
};
......
......@@ -38,14 +38,14 @@ vtkStandardNewMacro(vtkmGradient);
namespace
{
struct GradientTypes
: vtkm::ListTagBase<
vtkm::Float32,
vtkm::Float64,
vtkm::Vec<vtkm::Float32,3>,
vtkm::Vec<vtkm::Float64,3>,
vtkm::Vec< vtkm::Vec<vtkm::Float32,3>, 3>,
vtkm::Vec< vtkm::Vec<vtkm::Float64,3>, 3>
>
: vtkm::ListTagBase< //
vtkm::Float32, //
vtkm::Float64, //
vtkm::Vec<vtkm::Float32, 3>, //
vtkm::Vec<vtkm::Float64, 3>, //
vtkm::Vec<vtkm::Vec<vtkm::Float32, 3>, 3>, //
vtkm::Vec<vtkm::Vec<vtkm::Float64, 3>, 3> //
>
{
};
......
......@@ -24,6 +24,7 @@
#include "vtkRenderWindowInteractor.h"
#include "vtkTable.h"
// clang-format off
const double densities[] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.5e-005, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0.010065, 0.0500675, 0.07007, 0.0900725, 0.090075, 0.0900775, 0.07008, 0.0500825, 0.010085, 0, 0, 0, 0, 0,
......@@ -46,6 +47,8 @@ const double densities[] = {
0, 0, 0, 0, 0.00091, 0.0509125, 0.100915, 0.140918, 0.17092, 0.190922, 0.190925, 0.190928, 0.17093, 0.140933, 0.100935, 0.0509375, 0.00094, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0.010965, 0.0509675, 0.07097, 0.0909725, 0.090975, 0.0909775, 0.07098, 0.0509825, 0.010985, 0, 0, 0, 0, 0,
};
// clang-format on
//----------------------------------------------------------------------------
int TestBagPlot(int, char * [])
{
......
......@@ -64,29 +64,28 @@ int TestBoxPlot2(int , char* [])
// Data from the Michelson Morley experiment
inputBoxPlotTable->SetNumberOfRows(20);
double values[20][5] =
{
{850, 960, 880, 890, 890},
{740, 940, 880, 810, 840},
{900, 960, 880, 810, 780},
{1070, 940, 860, 820, 810},
{930, 880, 720, 800, 760},
{850, 800, 720, 770, 810},
{950, 850, 620, 760, 790},
{980, 880, 860, 740, 810},
{980, 900, 970, 750, 820},
{880, 840, 950, 760, 850},
{1000, 830, 880, 910, 870},
{980, 790, 910, 920, 870},
{930, 810, 850, 890, 810},
{650, 880, 870, 860, 740},
{760, 880, 840, 880, 810},
{810, 830, 840, 720, 940},
{1000, 800, 850, 840, 950},
{1000, 790, 840, 850, 800},
{960, 760, 840, 850, 810},
{960, 800, 840, 780, 870}
};
double values[20][5] = {
{ 850, 960, 880, 890, 890 },
{ 740, 940, 880, 810, 840 },
{ 900, 960, 880, 810, 780 },
{ 1070, 940, 860, 820, 810 },
{ 930, 880, 720, 800, 760 },
{ 850, 800, 720, 770, 810 },
{ 950, 850, 620, 760, 790 },
{ 980, 880, 860, 740, 810 },
{ 980, 900, 970, 750, 820 },
{ 880, 840, 950, 760, 850 },
{ 1000, 830, 880, 910, 870 },
{ 980, 790, 910, 920, 870 },
{ 930, 810, 850, 890, 810 },
{ 650, 880, 870, 860, 740 },
{ 760, 880, 840, 880, 810 },
{ 810, 830, 840, 720, 940 },
{ 1000, 800, 850, 840, 950 },
{ 1000, 790, 840, 850, 800 },
{ 960, 760, 840, 850, 810 },
{ 960, 800, 840, 780, 870 },
};
for (int j = 0; j < 20; ++j)
{
for (int i = 0; i < 5; ++i)
......
......@@ -56,8 +56,8 @@ inline vtkColor3ub vtkColor3ubFromHex3(vtkTypeUInt32 hex)
vtkColorSeries::Private::Private()
{
this->Palettes.resize(vtkColorSeries::CUSTOM);
vtkTypeUInt32 colors[] =
{
// clang-format off
vtkTypeUInt32 colors[] = {
// Original vtkColorSeries palettes, not part of the Brewer schemes
vtkColorSeries::SPECTRUM,
0x000000, 0xE41A1C, 0x377EB8, 0x4DAF4A, 0x984EA3, 0xFF7F00, 0xA65628,
......@@ -251,7 +251,8 @@ guidance on attribution and permissions:
// Set3
vtkColorSeries::BREWER_QUALITATIVE_SET3,
0x8DD3C7, 0xFFFFB3, 0xBEBADA, 0xFB8072, 0x80B1D3, 0xFDB462, 0xB3DE69, 0xFCCDE5, 0xD9D9D9, 0xBC80BD, 0xCCEBC5, 0xFFED6F,
};
};
// clang-format on
const char* names[] =
{
"Spectrum",
......@@ -276,32 +277,31 @@ guidance on attribution and permissions:
"Brewer Qualitative Pastel1",
"Brewer Qualitative Set1",
"Brewer Qualitative Paired",
"Brewer Qualitative Set3"
};
int sizes[][2] =
{
{ 7, 7 },
{ 6, 6 },
{ 7, 7 },
{ 7, 7 },
{ 7, 7 },
{ 6, 6 },
{ 11, 3 },
{ 11, 3 },
{ 11, 3 },
{ 9, 3 },
{ 9, 3 },
{ 9, 3 },
{ 8, 8 },
{ 8, 8 },
{ 8, 8 },
{ 8, 8 },
{ 9, 9 },
{ 9, 9 },
{ 11, 11 },
{ 12, 12 }
"Brewer Qualitative Set3",
};
int sizes[][2] = {
{ 7, 7 },
{ 6, 6 },
{ 7, 7 },
{ 7, 7 },
{ 7, 7 },
{ 6, 6 },
{ 11, 3 },
{ 11, 3 },
{ 11, 3 },
{ 9, 3 },
{ 9, 3 },
{ 9, 3 },
{ 8, 8 },
{ 8, 8 },
{ 8, 8 },
{ 8, 8 },
{ 9, 9 },
{ 9, 9 },
{ 11, 11 },
{ 12, 12 },
};
vtkTypeUInt32* color = colors;
vtkColorSeriesPalette* pal;
for (unsigned i = 0; i < sizeof(names) / sizeof(names[0]); ++i)
......
......@@ -27,18 +27,18 @@
#include <utility> // for std::move
namespace vtkArrayDispatch {
typedef vtkTypeList::Unique<
vtkTypeList::Create<
vtkAOSDataArrayTemplate<double>,
vtkAOSDataArrayTemplate<float>,
vtkAOSDataArrayTemplate<int>,
vtkAOSDataArrayTemplate<unsigned char>,
vtkAOSDataArrayTemplate<vtkIdType>,
vtkSOADataArrayTemplate<double>,
vtkSOADataArrayTemplate<float>,
vtkSOADataArrayTemplate<int>,
vtkSOADataArrayTemplate<unsigned char>,
vtkSOADataArrayTemplate<vtkIdType>
typedef vtkTypeList::Unique< //
vtkTypeList::Create< //
vtkAOSDataArrayTemplate<double>, //
vtkAOSDataArrayTemplate<float>, //
vtkAOSDataArrayTemplate<int>, //
vtkAOSDataArrayTemplate<unsigned char>, //
vtkAOSDataArrayTemplate<vtkIdType>, //
vtkSOADataArrayTemplate<double>, //
vtkSOADataArrayTemplate<float>, //
vtkSOADataArrayTemplate<int>, //
vtkSOADataArrayTemplate<unsigned char>, //
vtkSOADataArrayTemplate<vtkIdType> //
>
>::Result Arrays;
} // end namespace vtkArrayDispatch
......@@ -191,16 +191,20 @@ std::vector<vtkDataArray*> Arrays::allArrays;
// Miscellaneous Debris
typedef std::vector<vtkDataArray*>::iterator ArrayIter;
typedef vtkTypeList::Create<vtkAOSDataArrayTemplate<double>,
vtkAOSDataArrayTemplate<float>,
vtkAOSDataArrayTemplate<int>,
vtkAOSDataArrayTemplate<unsigned char>,
vtkAOSDataArrayTemplate<vtkIdType>> AoSArrayList;
typedef vtkTypeList::Create<vtkSOADataArrayTemplate<double>,
vtkSOADataArrayTemplate<float>,
vtkSOADataArrayTemplate<int>,
vtkSOADataArrayTemplate<unsigned char>,
vtkSOADataArrayTemplate<vtkIdType>> SoAArrayList;
typedef vtkTypeList::Create< //
vtkAOSDataArrayTemplate<double>, //
vtkAOSDataArrayTemplate<float>, //
vtkAOSDataArrayTemplate<int>, //
vtkAOSDataArrayTemplate<unsigned char>, //
vtkAOSDataArrayTemplate<vtkIdType> //
> AoSArrayList;
typedef vtkTypeList::Create< //
vtkSOADataArrayTemplate<double>, //
vtkSOADataArrayTemplate<float>, //
vtkSOADataArrayTemplate<int>, //
vtkSOADataArrayTemplate<unsigned char>, //
vtkSOADataArrayTemplate<vtkIdType> //
> SoAArrayList;
typedef vtkTypeList::Append<AoSArrayList, SoAArrayList>::Result AllArrayList;
......
......@@ -43,212 +43,212 @@
using namespace vtk;
static int expectedDOFIndices1[] = {
0, 1,
3, 2,
4, 5,
7, 6
0, 1, //
3, 2, //
4, 5, //
7, 6 //
};
static int expectedDOFIndices2[] = {
0, 8, 1,
11, 24, 9,
3, 10, 2,
0, 8, 1, //
11, 24, 9, //
3, 10, 2, //
16, 22, 17,
20, 26, 21,
18, 23, 19,
16, 22, 17, //
20, 26, 21, //
18, 23, 19, //
4, 12, 5,
15, 25, 13,
7, 14, 6
4, 12, 5, //
15, 25, 13, //
7, 14, 6 //
};
static int expectedDOFIndices3[] = {
0, 8, 9, 1,
14, 48, 49, 10,
15, 50, 51, 11,
3, 12, 13, 2,
24, 40, 41, 26,
32, 56, 57, 36,
33, 58, 59, 37,
28, 44, 45, 30,
25, 42, 43, 27,
34, 60, 61, 38,
35, 62, 63, 39,
29, 46, 47, 31,
4, 16, 17, 5,
22, 52, 53, 18,
23, 54, 55, 19,
7, 20, 21, 6
0, 8, 9, 1, //
14, 48, 49, 10, //
15, 50, 51, 11, //
3, 12, 13, 2, //
24, 40, 41, 26, //
32, 56, 57, 36, //
33, 58, 59, 37, //
28, 44, 45, 30, //
25, 42, 43, 27, //
34, 60, 61, 38, //
35, 62, 63, 39, //
29, 46, 47, 31, //
4, 16, 17, 5, //
22, 52, 53, 18, //
23, 54, 55, 19, //
7, 20, 21, 6 //
};
static const double expectedFacePoints333[96][3] = {
{ 0, 1, 0 },
{ 0, 0, 0 },
{ 0, 0, 1 },
{ 0, 1, 1 },
{ 0, 0.666667, 0 },
{ 0, 0.333333, 0 },
{ 0, 0, 0.333333 },
{ 0, 0, 0.666667 },
{ 0, 0.666667, 1 },
{ 0, 0.333333, 1 },
{ 0, 1, 0.333333 },
{ 0, 1, 0.666667 },
{ 0, 0.666667, 0.333333 },
{ 0, 0.333333, 0.333333 },
{ 0, 0.666667, 0.666667 },
{ 0, 0.333333, 0.666667 },
{ 1, 0, 0 },
{ 1, 1, 0 },
{ 1, 1, 1 },
{ 1, 0, 1 },
{ 1, 0.333333, 0 },
{ 1, 0.666667, 0 },
{ 1, 1, 0.333333 },
{ 1, 1, 0.666667 },
{ 1, 0.333333, 1 },
{ 1, 0.666667, 1 },
{ 1, 0, 0.333333 },
{ 1, 0, 0.666667 },
{ 1, 0.333333, 0.333333 },
{ 1, 0.666667, 0.333333 },
{ 1, 0.333333, 0.666667 },
{ 1, 0.666667, 0.666667 },
{ 0, 0, 0 },
{ 1, 0, 0 },
{ 1, 0, 1 },
{ 0, 0, 1 },
{ 0.333333, 0, 0 },
{ 0.666667, 0, 0 },
{ 1, 0, 0.333333 },
{ 1, 0, 0.666667 },
{ 0.333333, 0, 1 },
{ 0.666667, 0, 1 },
{ 0, 0, 0.333333 },
{ 0, 0, 0.666667 },
{ 0.333333, 0, 0.333333 },
{ 0.666667, 0, 0.333333 },
{ 0.333333, 0, 0.666667 },
{ 0.666667, 0, 0.666667 },
{ 1, 1, 0 },
{ 0, 1, 0 },
{ 0, 1, 1 },
{ 1, 1, 1 },
{ 0.666667, 1, 0 },
{ 0.333333, 1, 0 },
{ 0, 1, 0.333333 },
{ 0, 1, 0.666667 },
{ 0.666667, 1, 1 },
{ 0.333333, 1, 1 },
{ 1, 1, 0.333333 },
{ 1, 1, 0.666667 },
{ 0.666667, 1, 0.333333 },
{ 0.333333, 1, 0.333333 },
{ 0.666667, 1, 0.666667 },
{ 0.333333, 1, 0.666667 },
{ 1, 0, 0 },
{ 0, 0, 0 },
{ 0, 1, 0 },
{ 1, 1, 0 },
{ 0.666667, 0, 0 },
{ 0.333333, 0, 0 },
{ 0, 0.333333, 0 },
{ 0, 0.666667, 0 },
{ 0.666667, 1, 0 },
{ 0.333333, 1, 0 },
{ 1, 0.333333, 0 },
{ 1, 0.666667, 0 },
{ 0.666667, 0.333333, 0 },
{ 0.333333, 0.333333, 0 },
{ 0.666667, 0.666667, 0 },
{ 0.333333, 0.666667, 0 },
{ 0, 0, 1 },
{ 1, 0, 1 },
{ 1, 1, 1 },
{ 0, 1, 1 },
{ 0.333333, 0, 1 },
{ 0.666667, 0, 1 },
{ 1, 0.333333, 1 },
{ 1, 0.666667, 1 },
{ 0.333333, 1, 1 },
{ 0.666667, 1, 1 },
{ 0, 0.333333, 1 },
{ 0, 0.666667, 1 },
{ 0.333333, 0.333333, 1 },
{ 0.666667, 0.333333, 1 },