| http://www.sim.no/ http://www.coin3d.org/

SoHeightMapToNormalMap.h
1 /**************************************************************************\
2 *
3 * This file is part of the Coin 3D visualization library.
4 * Copyright (C) by Kongsberg Oil & Gas Technologies.
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * ("GPL") version 2 as published by the Free Software Foundation.
9 * See the file LICENSE.GPL at the root directory of this source
10 * distribution for additional information about the GNU GPL.
11 *
12 * For using Coin with software that can not be combined with the GNU
13 * GPL, and for taking advantage of the additional benefits of our
14 * support services, please contact Kongsberg Oil & Gas Technologies
15 * about acquiring a Coin Professional Edition License.
16 *
17 * See http://www.coin3d.org/ for more information.
18 *
19 * Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY.
20 * http://www.sim.no/ sales@sim.no coin-support@coin3d.org
21 *
22 \**************************************************************************/
23
24 #ifndef COIN_SOHEIGHTMAPTONORMALMAP_H
25 #define COIN_SOHEIGHTMAPTONORMALMAP_H
26
27 #include <Inventor/SbVec2s.h>
28 #include <Inventor/engines/SoTexture2Convert.h>
29 #include <Inventor/fields/SoSFEnum.h>
30
31 class SbImage;
32
33 class COIN_DLL_API SoHeightMapToNormalMap : public SoTexture2Convert {
34 typedef SoTexture2Convert inherited;
35 SO_ENGINE_HEADER(SoHeightMapToNormalMap);
36
37 public:
38 static void initClass(void);
39 SoHeightMapToNormalMap(void);
40
41 enum NormalMapFormat {
42 INT8
43 };
44
45 SoSFEnum format;
46
47 static void convert(const unsigned char * srcptr, SbVec2s size, int nc, SbImage & dst_out);
48
49 protected:
50 virtual void inputChanged(SoField * which);
51 virtual void evaluate(void);
52
53 }; // SoHeightMapToNormalMap
54
55 #endif // !COIN_SOHEIGHTMAPTONORMALMAP_H
SoHeightMapToNormalMap
Engine for computing a normal map from a height map.
Definition: SoHeightMapToNormalMap.h:33
SoFieldContainer
The SoFieldContainer class is a base class for all classes that contain fields.The classes containing...
Definition: SoFieldContainer.h:34
SoField
The SoField class is the top-level abstract base class for fields.Fields is the mechanism used throug...
Definition: SoField.h:38
SoSFEnum
The SoSFEnum class is a container for an enum value.This field is used where nodes, engines or other field containers needs to store one particular value out of an enumerated set.
Definition: SoSFEnum.h:31
SoEngine::inputChanged
virtual void inputChanged(SoField *which)
Definition: SoEngine.cpp:290
SoHeightMapToNormalMap::format
SoSFEnum format
Definition: SoHeightMapToNormalMap.h:45
SoTexture2Convert
Abstract base class for texture filtering engines.
Definition: SoTexture2Convert.h:32
SoHeightMapToNormalMap::NormalMapFormat
NormalMapFormat
Definition: SoHeightMapToNormalMap.h:41
SoEngine::evaluate
virtual void evaluate(void)=0
SbImage
The SbImage class is an abstract datatype for 2D and 3D images.Be aware that this class is an extensi...
Definition: SbImage.h:37
SbVec2s
The SbVec2s class is a 2 dimensional vector with short integer coordinates.This vector class is used ...
Definition: SbVec2s.h:41

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.