fw4spl
|
This class defines a material. A material is represented by an ambient color and a diffuse color. More...
#include <Material.hpp>
Public Types | |
enum | OptionsType { STANDARD = 1, NORMALS = 2, CELLS_NORMALS = 3 } |
Options. | |
enum | ShadingType { AMBIENT = 0, FLAT = 1, GOURAUD = 2, PHONG = 4 } |
Shading models. | |
enum | RepresentationType { SURFACE = 1, POINT = 2, WIREFRAME = 4, EDGE = 5 } |
Representation models. | |
enum | FilteringType { NEAREST, LINEAR } |
Texture filtering types. | |
enum | WrappingType { CLAMP, REPEAT } |
Texture wrapping types. | |
Public Types inherited from fwData::Object | |
typedef ::fwData::factory::Key | Key |
typedef std::string | FieldNameType |
typedef std::vector< FieldNameType > | FieldNameVectorType |
typedef ::std::unordered_map< FieldNameType,::fwData::Object::sptr > | FieldMapType |
typedef ::std::unordered_map< ::fwData::Object::csptr,::fwData::Object::sptr > | DeepCopyCacheType |
typedef ::fwCom::Signal< void() > | ModifiedSignalType |
Type of signal m_sigModified. | |
typedef std::map< std::string,::fwData::Object::sptr > | FieldsContainerType |
Type of signal m_sigModified. | |
typedef ::fwCom::Signal< void(FieldsContainerType) > | AddedFieldsSignalType |
Type of signal when objects are added. | |
typedef ::fwCom::Signal< void(FieldsContainerType, FieldsContainerType) > | ChangedFieldsSignalType |
Type of signal when objects are changed (newObjects, oldObjects) | |
typedef ::fwCom::Signal< void(FieldsContainerType) > | RemovedFieldsSignalType |
Type of signal when objects are removed. | |
Public Types inherited from fwCom::HasSignals | |
typedef std::shared_ptr< HasSignals > | sptr |
typedef std::shared_ptr< const HasSignals > | csptr |
Public Member Functions | |
virtual bool | isA (const std::string &type) const override |
FWDATA_API | Material (::fwData::Object::Key key) |
Constructor. More... | |
virtual FWDATA_API | ~Material () |
Destructor. | |
FWDATA_API void | shallowCopy (const Object::csptr &_source) override |
Defines shallow copy. | |
FWDATA_API void | cachedDeepCopy (const Object::csptr &_source, DeepCopyCacheType &cache) override |
Defines deep copy. | |
FWDATA_API Color::sptr | ambient () const |
returns editable ambient color | |
FWDATA_API void | setAmbient (const Color::sptr &ambient) |
Setter for ambient color. More... | |
FWDATA_API Color::sptr | diffuse () const |
returns editable diffuse color | |
FWDATA_API void | setDiffuse (const Color::sptr &diffuse) |
Setter for diffuse color. More... | |
FWDATA_API Image::sptr | getDiffuseTexture () const |
returns editable diffuse texture | |
FWDATA_API void | setDiffuseTexture (const Image::sptr &diffuseTexture) |
Setter for diffuse texture. More... | |
ShadingType & | getShadingMode () |
get/set the shading models(flat, gouraud, phong) | |
const ShadingType & | getShadingMode () const |
get/set the shading models(flat, gouraud, phong) | |
void | setShadingMode (ShadingType _shadingMode) |
get/set the shading models(flat, gouraud, phong) | |
RepresentationType & | getRepresentationMode () |
get/set the representation models (edge, point, wireframe, surface) | |
const RepresentationType & | getRepresentationMode () const |
get/set the representation models (edge, point, wireframe, surface) | |
void | setRepresentationMode (RepresentationType _representationMode) |
get/set the representation models (edge, point, wireframe, surface) | |
OptionsType & | getOptionsMode () |
get/set the option representation (Standard, normals) | |
const OptionsType & | getOptionsMode () const |
get/set the option representation (Standard, normals) | |
void | setOptionsMode (OptionsType _optionsMode) |
get/set the option representation (Standard, normals) | |
FilteringType & | getDiffuseTextureFiltering () |
get/set the texture filtering | |
const FilteringType & | getDiffuseTextureFiltering () const |
get/set the texture filtering | |
void | setDiffuseTextureFiltering (FilteringType _diffuseTextureFiltering) |
get/set the texture filtering | |
WrappingType & | getDiffuseTextureWrapping () |
get/set the texture wrapping | |
const WrappingType & | getDiffuseTextureWrapping () const |
get/set the texture wrapping | |
void | setDiffuseTextureWrapping (WrappingType _diffuseTextureWrapping) |
get/set the texture wrapping | |
Public Member Functions inherited from fwData::Object | |
FWDATA_API::fwData::Object::sptr | getField (const FieldNameType &name,::fwData::Object::sptr defaultValue=::fwData::Object::sptr()) const |
Returns a pointer of corresponding field (null if non exist). More... | |
template<typename DATA_TYPE > | |
std::shared_ptr< DATA_TYPE > | getField (const FieldNameType &name) const |
Returns a pointer of corresponding field. More... | |
template<typename DATA_TYPE > | |
std::shared_ptr< DATA_TYPE > | getField (const FieldNameType &name, std::shared_ptr< DATA_TYPE > defaultValue) const |
Returns a pointer of corresponding field. More... | |
template<typename DATA_TYPE > | |
std::shared_ptr< DATA_TYPE > | setDefaultField (const FieldNameType &name, std::shared_ptr< DATA_TYPE > defaultValue) |
Returns a pointer of corresponding field. If field did not exist, it is set to defaultValue if defaultValue is not null. More... | |
FWDATA_API::fwData::Object::csptr | getConstField (const FieldNameType &name) const |
Returns a pointer of corresponding field (null if non exist). More... | |
FWDATA_API const FieldMapType & | getFields () const |
Returns fields map. | |
FWDATA_API FieldNameVectorType | getFieldNames () const |
Returns vector of field names. | |
FWDATA_API void | setField (const FieldNameType &name,::fwData::Object::sptr obj) |
Register field with specified name. If the name does already exist, the matching field will be replaced. More... | |
FWDATA_API void | setFields (const FieldMapType &fieldMap) |
Replace the field map content. | |
FWDATA_API void | removeField (const FieldNameType &name) |
Removes field with specified name. More... | |
virtual FWDATA_API void | shallowCopy (const ::fwData::Object::csptr &source) |
A shallow copy of fields (objects in m_children) More... | |
FWDATA_API void | deepCopy (const ::fwData::Object::csptr &source) |
Make a deep copy from the source Calling this method may invalidate any DumpLock, RescursiveLock or helper on the object. Prefer using fwData::Object::copy instead. | |
FWDATA_API void | fieldShallowCopy (const ::fwData::Object::csptr &source) |
A shallow copy of fields (objects in m_children) More... | |
FWDATA_API void | fieldDeepCopy (const ::fwData::Object::csptr &source) |
A deep copy of fields (objects in m_children) More... | |
::fwCore::mt::ReadWriteMutex & | getMutex () const |
Returns the object's mutex. | |
Public Member Functions inherited from fwTools::Object | |
Public Member Functions inherited from fwCore::BaseObject | |
Public Member Functions inherited from fwCom::HasSignals | |
std::shared_ptr< SignalBase > | signal (const Signals::SignalKeyType &key) const |
template<typename SignalType > | |
std::shared_ptr< SignalType > | signal (const Signals::SignalKeyType &key) const |
template<typename SignalType > | |
std::shared_ptr< SignalType > | newSignal (const Signals::SignalKeyType &key) |
Static Public Member Functions | |
static bool | isTypeOf (const std::string &type) |
Static Public Member Functions inherited from fwData::Object | |
static bool | isTypeOf (const std::string &type) |
static FWDATA_API::fwData::Object::sptr | copy (const ::fwData::Object::csptr &source) |
return a copy of the source. if source is a null pointer, return a null pointer. | |
template<typename DATA_TYPE > | |
static std::shared_ptr< DATA_TYPE > | copy (const std::shared_ptr< const DATA_TYPE > &source) |
return a copy of the source. if source is a null pointer, return a null pointer. | |
template<typename DATA_TYPE > | |
static std::shared_ptr< DATA_TYPE > | copy (const std::shared_ptr< DATA_TYPE > &source) |
return a copy of the source. if source is a null pointer, return a null pointer. | |
static const std::string & | classname () |
return full object's classname with its namespace, i.e. fwCore::BaseObject | |
Static Public Member Functions inherited from fwTools::Object | |
static bool | isTypeOf (const std::string &type) |
static const std::string & | classname () |
return full object's classname with its namespace, i.e. fwCore::BaseObject | |
Static Public Member Functions inherited from fwCore::BaseObject | |
static bool | isTypeOf (const std::string &type) |
static const std::string & | leafClassname () |
return object's classname without its namespace, i.e. BaseObject | |
static const std::string & | classname () |
return object's classname without its namespace, i.e. BaseObject | |
Protected Attributes | |
ShadingType | m_shadingMode |
Shading mode (flat, Gouraud, Phong) | |
RepresentationType | m_representationMode |
Fill mode (flat, wireframe, point) | |
OptionsType | m_optionsMode |
Options mode (display normals or not) | |
Color::sptr | m_ambient |
Ambient color. | |
Color::sptr | m_diffuse |
Diffuse color. | |
Image::sptr | m_diffuseTexture |
Diffuse texture. | |
FilteringType | m_diffuseTextureFiltering |
Filtering for diffuse texture. | |
WrappingType | m_diffuseTextureWrapping |
Wrapping for diffuse texture. | |
Protected Attributes inherited from fwData::Object | |
FieldMapType | m_fields |
Fields. | |
mutable::fwCore::mt::ReadWriteMutex | m_mutex |
Mutex to protect object access. | |
Protected Attributes inherited from fwTools::Object | |
std::shared_ptr< ::fwTools::UUID > | m_uuid |
UUID used to identify the object, notably for serialization. | |
Protected Attributes inherited from fwCom::HasSignals | |
Signals | m_signals |
Friends | |
template<class , class , class > | |
class | ::fwTools::ClassFactory |
class | ::fwTools::Factory |
Demangling methods | |
virtual const std::string & | getLeafClassname () const override |
return object's classname without its namespace, i.e. BaseObject | |
virtual const std::string & | getClassname () const override |
return full object's classname with its namespace, i.e. fwCore::BaseObject | |
static const std::string & | leafClassname () |
return object's classname without its namespace, i.e. BaseObject | |
static const std::string & | classname () |
return object's classname without its namespace, i.e. BaseObject | |
Signals | |
typedef ::fwCom::Signal< void(::fwData::Image::sptr) > | AddedTextureSignalType |
Type of signal when a texture is added. | |
typedef ::fwCom::Signal< void(::fwData::Image::sptr) > | RemovedTextureSignalType |
Type of signal when a texture is removed. | |
static FWDATA_APIconst::fwCom::Signals::SignalKeyType | s_ADDED_TEXTURE_SIG = "addedTexture" |
Type of signal when a texture is added. | |
static FWDATA_APIconst::fwCom::Signals::SignalKeyType | s_REMOVED_TEXTURE_SIG = "removedTexture" |
Type of signal when a texture is added. | |
Additional Inherited Members | |
Static Public Attributes inherited from fwData::Object | |
static FWDATA_APIconst::fwCom::Signals::SignalKeyType | s_MODIFIED_SIG = "modified" |
Key in m_signals map of signal m_sigModified. | |
static FWDATA_APIconst::fwCom::Signals::SignalKeyType | s_ADDED_FIELDS_SIG = "addedFields" |
Type of signal m_sigModified. | |
static FWDATA_APIconst::fwCom::Signals::SignalKeyType | s_CHANGED_FIELDS_SIG = "changedFields" |
Type of signal m_sigModified. | |
static FWDATA_APIconst::fwCom::Signals::SignalKeyType | s_REMOVED_FIELDS_SIG = "removedFields" |
Type of signal m_sigModified. | |
Protected Types inherited from fwTools::fwID | |
enum | Policy { EMPTY = 1, GENERATE, MUST_EXIST } |
typedef std::string | IDType |
Protected Member Functions inherited from fwData::Object | |
FWDATA_API void | fieldDeepCopy (const ::fwData::Object::csptr &source, DeepCopyCacheType &cache) |
Internal-use methods to implement Object's deepCopy. | |
virtual FWDATA_API void | cachedDeepCopy (const ::fwData::Object::csptr &source, DeepCopyCacheType &cache)=0 |
Internal-use methods to implement Object's deepCopy. | |
Protected Member Functions inherited from fwTools::fwID | |
FWTOOLS_API bool | hasID () const |
Return true if the object has an id set. More... | |
FWTOOLS_API IDType | getID (Policy policy=GENERATE) const |
Returns the id of the object. If it is not set and the policy value is. More... | |
virtual FWTOOLS_API void | setID (IDType newID) |
Set a newID for the object, (newID must not exist in fwID), the oldest one is released. More... | |
FWTOOLS_API void | resetID () |
Release the id for the object. More... | |
fwID () | |
Constructor : does nothing. | |
Protected Member Functions inherited from fwCom::HasSignals | |
HasSignals (const HasSignals &) | |
Copy constructor forbidden. | |
HasSignals & | operator= (const HasSignals &) |
Copy operator forbidden. | |
Static Protected Member Functions inherited from fwData::Object | |
static FWDATA_API::fwData::Object::sptr | copy (const ::fwData::Object::csptr &source, DeepCopyCacheType &cache) |
Internal-use methods to implement Object's deepCopy. | |
template<typename DATA_TYPE > | |
static std::shared_ptr< DATA_TYPE > | copy (const std::shared_ptr< const DATA_TYPE > &source, DeepCopyCacheType &cache) |
Internal-use methods to implement Object's deepCopy. | |
template<typename DATA_TYPE > | |
static std::shared_ptr< DATA_TYPE > | copy (const std::shared_ptr< DATA_TYPE > &source, DeepCopyCacheType &cache) |
Internal-use methods to implement Object's deepCopy. | |
Static Protected Member Functions inherited from fwTools::fwID | |
static bool | isTypeOf (const std::string &type) |
static FWTOOLS_API bool | exist (IDType _id) |
static FWTOOLS_API std::shared_ptr< ::fwTools::Object > | getObject (IDType requestID) |
Retrieve the object attached to the given id. Return a null sptr if no correspondence exist. More... | |
static const std::string & | leafClassname () |
return object's classname without its namespace, i.e. BaseObject | |
static const std::string & | classname () |
return object's classname without its namespace, i.e. BaseObject | |
This class defines a material. A material is represented by an ambient color and a diffuse color.
Definition at line 23 of file include/fwData/Material.hpp.
fwData::Material::Material | ( | ::fwData::Object::Key | key | ) |
Constructor.
key | Private construction key |
Definition at line 26 of file src/fwData/Material.cpp.
References s_ADDED_TEXTURE_SIG, and s_REMOVED_TEXTURE_SIG.
void fwData::Material::setAmbient | ( | const Color::sptr & | ambient | ) |
Setter for ambient color.
ambient | color |
Definition at line 110 of file src/fwData/Material.cpp.
References ambient(), and m_ambient.
void fwData::Material::setDiffuse | ( | const Color::sptr & | diffuse | ) |
Setter for diffuse color.
diffuse | color |
Definition at line 117 of file src/fwData/Material.cpp.
References diffuse(), and m_diffuse.
void fwData::Material::setDiffuseTexture | ( | const Image::sptr & | diffuseTexture | ) |
Setter for diffuse texture.
diffuseTexture | texture |
Definition at line 124 of file src/fwData/Material.cpp.
References m_diffuseTexture.
Referenced by visuVTKAdaptor::STexture::applyTexture().