Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
500_4D_Raster.cpp File Reference

[← Previous Example] [Next Example → 600_4DField.cpp ]. More...

#include <fiber/bundle/Bundle.hpp>
#include <fiber/finit/FinitAPI.h>
#include <fiber/field/ArrayRef.hpp>
#include <eagle/PhysicalSpace.hpp>
#include <memcore/Console.hpp>
#include <fiber/field/UniformCartesianArray.hpp>
#include <fiber/grid/types/RegularlyFragmentedGrid.hpp>

Functions

int main ()

Detailed Description

[← Previous Example] [Next Example → 600_4DField.cpp ].

In FiberLib Tutorial

#include <fiber/bundle/Bundle.hpp>
#include <fiber/finit/FinitAPI.h>
#include <fiber/field/ArrayRef.hpp>
#include <eagle/PhysicalSpace.hpp>
#include <memcore/Console.hpp>
#include <fiber/field/UniformCartesianArray.hpp>
#include <fiber/grid/types/RegularlyFragmentedGrid.hpp>
using namespace Fiber;
using namespace std;
using namespace Eagle::PhysicalSpace;
// ######################################################
// LOAD
//#######################################################
int main()
{
Finit();
BundlePtr BP = new Bundle();
BP->bindToNew("TestRaster4D.f5");
Grid&G = BP[0.0]["4Draster"];
MultiIndex<3> NumberOfFragments = {1,1,1};
MultiIndex<4> FragDims4 = {17,23,1,5};
MultiIndex<4> FragDims = {17,23,1};
Rep[FIBER_POSITIONS] = new RegularlyFragmentedField<3> (NumberOfFragments);
RefPtr<RegularlyFragmentedField<3> > PositionsF = Rep(FIBER_POSITIONS);
Rep["Field4D"] = new RegularlyFragmentedField<3> (*PositionsF);
RefPtr<RegularlyFragmentedField<3> > Field4DF = Rep("Field4D");
Rep["Field3D"] = new RegularlyFragmentedField<3> (*PositionsF);
RefPtr<RegularlyFragmentedField<3> > Field3DF = Rep("Field3D");
RefPtr<UniformCartesianArray> Coordinates = new UniformCartesianArray(FragDims, {0,0,0}, {1,1,0});
RefPtr<MemArray<4,double > > Data4Ptr = new MemArray<4,double >(FragDims4);
RefPtr<MemArray<3,double > > Data3Ptr = new MemArray<3,double >(FragDims);
const RefPtr<FragmentID>&FragID = PositionsF->getFragmentID( MIndex(0,0,0) );
PositionsF->setPersistentData(Coordinates,FragID);
Field4DF->setPersistentData(Data4Ptr,FragID);
Field3DF->setPersistentData(Data3Ptr,FragID);
Console() << "Done";
return 0;
}
int main()
Demonstrates minimal usage of the FiberLib Create Bundle, insert a time slice, and safe it to a file.
Definition 010-SimpleSave.cpp:13
Convenience class that implements a pointer to a Bundle object but adds some useful member funtions t...
Definition Bundle.hpp:779
The main entity holding all information.
Definition Bundle.hpp:173
A Grid is a set of Skeleton objects, each of them accessed via some unique SkeletonID object.
Definition Grid.hpp:60
Representation & makeCartesianRepresentation(int Dims, const string &name={}, uint16_t epsg_code=0)
Provide a representation in an n-dimensional skeleton of the vertices.
Definition Grid.cpp:124
Class for N-dimensional MultiArrays with MemCore memory management.
Definition MemArray.hpp:34
A multidimensional index that is automatically a lower-dimensional index via recursion.
Definition MultiIndex.hpp:449
A convenience class for optimized handling of fields that are fragmented in a regular manner (n-dimen...
Definition RegularlyFragmentedField.hpp:27
A Representation is a set of Field objects, each of them accessed via some FieldID identifier.
Definition Representation.hpp:101
Convenience class for procedural linear arrays in cartesian coordinates.
Definition UniformCartesianArray.hpp:15
Given a fragmented field of curvilinear coordinates, (3D array of coordinates), build a uniform Grid ...
Definition FAQ.dox:2
STL namespace.
static RegularlyFragmentedGrid create(Grid &myGrid, const RefPtr< RegularlyFragmentedField< VertexDims > > &VertexPositions, const SkeletonID &FragmentedSkeletonID)
Create a fragment skeleton on the given Grid.
Definition grid/types/RegularlyFragmentedGrid.hpp:169