FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
MultiOperate.cpp
1#include "MultiOperate.hpp"
2#include "MultiArray.hpp"
3#include <stdio.h>
4
5namespace Fiber
6{
7
8 namespace
9 {
10
11 struct Op
12 {
13 int Cnt;
14
15 Op(int Start = 0)
16 : Cnt(Start)
17 {}
18
19 void apply(const MultiIndex<3>&I)
20 {
21 printf("%d (%u %u %u) ", Cnt++, unsigned(I[0]), unsigned(I[1]), unsigned(I[2]) );
22 }
23 };
24 }
25
26bool CheckMultiOperate()
27{
28MultiIndex<3> Size = MIndex(3,3,3);
29
30printf("\nSkip none: "); MultiOperate<3, Op > MO ( Size );
31printf("\nSkip first dim: "); MultiOperate<3, Op, 0> MO0( Size );
32printf("\nSkip second dim: "); MultiOperate<3, Op, 1> MO1( Size );
33printf("\nSkip third dim: "); MultiOperate<3, Op, 2> MO2( Size );
34printf("\nSkip none: "); MultiOperate<3, Op, 3> MO3( -100, Size );
35
36 puts("\n==============================================");
37
38 return true;
39}
40
41
42bool CheckMultiOperateOnArray()
43{
44double F[ 27 ] = { 0, 1, 2,
45 1, 2, 3,
46 2, 3, 4,
47
48 0.1, 1.1, 2.1,
49 1.1, 2.1, 3.1,
50 2.1, 3.1, 4.1,
51
52 0.3, 1.3, 2.3,
53 1.3, 2.3, 3.3,
54 2.3, 3.3, 4.3 };
55
56MultiArray<3, double>
57 ValueField( F, MIndex(3,3,3) );
58
59 return true;
60}
61
62
63
64} //
_Expr< _ValFunClos< _ValArray, _Tp >, _Tp > apply(_Tp __func(_Tp)) const
Given a fragmented field of curvilinear coordinates, (3D array of coordinates), build a uniform Grid ...
Definition FAQ.dox:2