- Main Page
- Classes
- Files
- Directories
- Examples

- File List
- File Members

# fbxgloballightsettings.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2012 Autodesk, Inc.
    00004    All rights reserved.
    00005
    00006    Use of this software is subject to the terms of the Autodesk license agreement
    00007    provided at the time of installation or download, or which otherwise accompanies
    00008    this software in either electronic or hard copy form.
    00009
    00010 ****************************************************************************************/
    00011
    00013 #ifndef _FBXSDK_FILEIO_GLOBAL_LIGHT_SETTINGS_H_
    00014 #define _FBXSDK_FILEIO_GLOBAL_LIGHT_SETTINGS_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/core/base/fbxarray.h>
    00019 #include <fbxsdk/core/base/fbxerror.h>
    00020 #include <fbxsdk/core/math/fbxvector4.h>
    00021 #include <fbxsdk/core/fbxpropertytypes.h>
    00022
    00023 #include <fbxsdk/fbxsdk_nsbegin.h>
    00024
    00025 class FbxGlobalLightSettingsProperties;
    00026
    00033 class FBXSDK_DLL FbxGlobalLightSettings
    00034 {
    00035
    00036 public:
    00037     FBXSDK_FRIEND_NEW();
    00042
    00047     void SetAmbientColor(FbxColor pAmbientColor);
    00048
    00052     FbxColor GetAmbientColor() const;
    00053
    00055
    00060
    00064     void SetFogEnable(bool pEnable);
    00065
    00069     bool GetFogEnable() const;
    00070
    00075     void SetFogColor(FbxColor pColor);
    00076
    00081     FbxColor GetFogColor() const;
    00082
    00085     enum EFogMode
    00086     {
    00087         eLinear,
    00088         eExponential,
    00089         eExponentialSquareRoot
    00090     };
    00091
    00095     void SetFogMode(EFogMode pMode);
    00096
    00100     EFogMode GetFogMode() const;
    00101
    00107     void SetFogDensity(double pDensity);
    00108
    00113     double GetFogDensity() const;
    00114
    00119     void SetFogStart(double pStart);
    00120
    00125     double GetFogStart() const;
    00126
    00131     void SetFogEnd(double pEnd);
    00132
    00137     double GetFogEnd() const;
    00138
    00140
    00147
    00150     struct FBXSDK_DLL ShadowPlane
    00151     {
    00153         ShadowPlane();
    00154
    00156         bool mEnable;
    00157
    00159         FbxVector4 mOrigin;
    00160
    00162         FbxVector4 mNormal;
    00163     };
    00164
    00168     void SetShadowEnable(bool pShadowEnable);
    00169
    00173     bool GetShadowEnable() const;
    00174
    00179     void SetShadowIntensity(double pShadowIntensity);
    00180
    00185     double GetShadowIntensity() const;
    00186
    00190     int GetShadowPlaneCount() const;
    00191
    00197     ShadowPlane* GetShadowPlane(int pIndex);
    00198
    00202     void AddShadowPlane(ShadowPlane pShadowPlane);
    00203
    00205     void RemoveAllShadowPlanes();
    00206
    00208
    00213
    00217     FbxError& GetError();
    00218
    00223     enum EErrorCode
    00224     {
    00225         eIndexOutOfRange,
    00226         eErrorCount
    00227     };
    00228
    00232     EErrorCode GetLastErrorID() const;
    00233
    00237     const char* GetLastErrorString() const;
    00238
    00240
    00242     void RestoreDefaultSettings();
    00243
    00247     const FbxGlobalLightSettings& operator=(const FbxGlobalLightSettings& pGlobalLightSettings);
    00248
    00249
    00251 //
    00252 //  WARNING!
    00253 //
    00254 //  Anything beyond these lines may not be documented accurately and is
    00255 //  subject to change without notice.
    00256 //
    00258
    00259 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00260
    00261 private:
    00262
    00263     FbxGlobalLightSettings();
    00264     ~FbxGlobalLightSettings();
    00265
    00266     FbxGlobalLightSettingsProperties* mPH;
    00267
    00268     friend class FbxScene;
    00269
    00270 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00271
    00272 };
    00273
    00274 #include <fbxsdk/fbxsdk_nsend.h>
    00275
    00276 #endif /* _FBXSDK_FILEIO_GLOBAL_LIGHT_SETTINGS_H_ */