1#ifndef __FIBER_GL_TEXTURE_HPP
2#define __FIBER_GL_TEXTURE_HPP
6#include <eagle/GL/EagleGL.hpp>
7#include <eagle/ColorSpace.hpp>
9#include <ocean/GLvish/GLTexture.hpp>
10#include <ocean/GLvish/GLTexture2D.hpp>
11#include <ocean/GLvish/GLTexture3D.hpp>
13#include <ocean/GLvish/VGLRenderContext.hpp>
14#include <field/MemArray.hpp>
16#include <vishapiversion.h>
18#if VISH_API_VERSION_NUMBER<20130701
19#include <fiberop/SliceSelection.hpp>
20#include <memcore/Functor.hpp>
24#include <ocean/shrimp/Range.hpp>
30#include "fishGLDllApi.h"
55#if VISH_API_VERSION_NUMBER<20130701
74template <
int TextureFormat>
87#if VISH_API_VERSION_NUMBER<20130701
92template <
int TextureFormat>
114fishGL_API RefPtr<Wizt::GLTexture3D>
116 const type_info&TextureType,
118 const MultiIndex<3>&Start,
119 const MultiIndex<3>&End ,
120 const MultiIndex<3>&Step ,
123 GLenum internalformat,
132template <
int TextureFormat>
153template <
typename TextureStorageType,
int TextureFormat = GL_RGBA>
191#if VISH_API_VERSION_NUMBER<20130701
228 const Eagle::point3&Observer,
229 const Eagle::point3&BBoxMin,
230 const Eagle::point3&BBoxMax,
231 int CancellationCheck = 0xFF,
233 double CutDistance = -1,
234 bool CutInFrontOfCutDistance =
true);
251fishGL_API
void renderQuad(
const RefPtr<Wizt::GLTexture2D>&TXT,
252 const Eagle::point3&P00,
253 const Eagle::point3&P01,
254 const Eagle::point3&P10,
255 const Eagle::point3&P11);
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition CreativeIterator.hpp:34
Given a fragmented field of curvilinear coordinates, (3D array of coordinates), build a uniform Grid ...
Definition FAQ.dox:2
int renderVolume(VRenderContext &Context, int slices, const FixedArray< double, 3 > &TS, const FixedArray< double, 3 > &TOffset, const Eagle::point3 &Observer, const Eagle::point3 &BBoxMin, const Eagle::point3 &BBoxMax, int CancellationCheck, double CutDistance, bool CutInFrontOfCutDistance)
TODO: Establish caching here via view point/observer direction and VBO's.
Definition Texture.cpp:743
RefPtr< Wizt::GLTexture3D > createTexture3D(const RefPtr< MemBase > &Data, const type_info &TextureType, const Range &RemapToTarget, const MultiIndex< 3 > &Start, const MultiIndex< 3 > &End, const MultiIndex< 3 > &Step, int TextureUnit, GLenum format, GLenum internalformat, int BitsPerTexel, double Gamma)
Load data from a memory array to a 3D OpenGL texture, purely procedural version.
Definition Texture.cpp:643
RefPtr< Wizt::GLTexture2D > createTexture2D(const RefPtr< MemBase > &Data, const type_info &TextureType, const Wizt::Range &RemapToTarget, const SliceSelection &O, const index_t &SliceNumber, int TextureUnit, GLenum format, GLenum internalformat, int BitsPerTexel)
Extract 2D data slice from a 3D memory array to a 2D OpenGL texture.
Definition Texture.cpp:686
IndexTypeConfig< sizeof(void *)>::index_t index_t
Define the index type as according to the size of a pointer, i.e.
Definition Index.hpp:22
Template class to load OpenGL textures of a specified type from Memory Arrays.
Definition Texture.hpp:155
static RefPtr< Wizt::GLTexture2D > Plane(const RefPtr< MemBase > &DataCreator, const Wizt::Range &R, int TextureUnit=0, GLenum format=GL_LUMINANCE)
Load data from a 2D memory array to a 2D OpenGL texture.
Definition Texture.hpp:181
static RefPtr< Wizt::GLTexture2D > Plane(const RefPtr< MemBase > &DataCreator, const Range &R, const SliceSelection &O, const index_t &SliceNumber, int TextureUnit=0, GLenum format=GL_LUMINANCE)
Load data from a 3D memory array to a 2D OpenGL texture by slice extraction.
Definition Texture.hpp:197
static RefPtr< Wizt::GLTexture3D > Volume(const RefPtr< MemBase > &DataCreator, const Wizt::Range &R, double Gamma, GLenum format, const MultiIndex< 3 > &Start=MIndex(0, 0, 0), const MultiIndex< 3 > &End=MIndex(0, 0, 0), const MultiIndex< 3 > &Step=MIndex(1, 1, 1), int TextureUnit=0)
Load data from a 3D memory array to a 3D OpenGL texture.
Definition Texture.hpp:162
Definition CreativeIterator.hpp:84