0029902: Data Exchange, XCAF - provide extended Material definition for visualization...
authorkgv <kgv@opencascade.com>
Wed, 3 Jul 2019 08:28:26 +0000 (11:28 +0300)
committerapn <apn@opencascade.com>
Tue, 22 Oct 2019 12:15:53 +0000 (15:15 +0300)
commita4815d5509b863bea5204b39e9deb373d85fb63a
treea271940b732896f556606affb6d55aef9c69988c
parentba00aab7a0f30b2a77d3faa4191249b32a9e03b0
0029902: Data Exchange, XCAF - provide extended Material definition for visualization purposes

Introduced new attribute XCAFDoc_VisMaterial storing visualization material definition.

XCAFPrs_Style has been exteneded Material() property.
XCAFPrs_AISObject::DispatchStyles() maps new XCAFPrs_Style::Material() property onto graphics aspects.

RWGltf_GltfJsonParser and RWObj_CafReader now put Material definition into XCAF document instead of a color label.
RWGltf_MaterialMetallicRoughness - added missing properties AlphaMode, AlphaCutOff and IsDoubleSided;
fixed default values in constructor for Metallic and Roughness.

Added commands XGetAllVisMaterials, XGetVisMaterial, XAddVisMaterial,
XRemoveVisMaterial, XSetVisMaterial, XUnsetVisMaterial for working with
new visualization materials table in the document.
49 files changed:
src/AIS/AIS_ColoredDrawer.hxx
src/AIS/AIS_ColoredShape.cxx
src/BinMXCAFDoc/BinMXCAFDoc.cxx
src/BinMXCAFDoc/BinMXCAFDoc_VisMaterialDriver.cxx [new file with mode: 0644]
src/BinMXCAFDoc/BinMXCAFDoc_VisMaterialDriver.hxx [new file with mode: 0644]
src/BinMXCAFDoc/BinMXCAFDoc_VisMaterialToolDriver.cxx [new file with mode: 0644]
src/BinMXCAFDoc/BinMXCAFDoc_VisMaterialToolDriver.hxx [new file with mode: 0644]
src/BinMXCAFDoc/FILES
src/IGESCAFControl/IGESCAFControl_Writer.cxx
src/RWGltf/FILES
src/RWGltf/RWGltf_GltfAlphaMode.hxx [new file with mode: 0644]
src/RWGltf/RWGltf_GltfJsonParser.cxx
src/RWGltf/RWGltf_GltfJsonParser.pxx
src/RWGltf/RWGltf_MaterialMetallicRoughness.hxx
src/RWMesh/RWMesh_CafReader.cxx
src/RWObj/RWObj_CafReader.cxx
src/RWObj/RWObj_CafReader.hxx
src/STEPCAFControl/STEPCAFControl_Writer.cxx
src/TKBinXCAF/EXTERNLIB
src/TKXmlXCAF/EXTERNLIB
src/VrmlData/VrmlData_ShapeConvert.cxx
src/VrmlData/VrmlData_ShapeConvert.hxx
src/XCAFDoc/FILES
src/XCAFDoc/XCAFDoc.cxx
src/XCAFDoc/XCAFDoc.hxx
src/XCAFDoc/XCAFDoc_ColorTool.cxx
src/XCAFDoc/XCAFDoc_ColorTool.hxx
src/XCAFDoc/XCAFDoc_DocumentTool.cxx
src/XCAFDoc/XCAFDoc_DocumentTool.hxx
src/XCAFDoc/XCAFDoc_VisMaterial.cxx [new file with mode: 0644]
src/XCAFDoc/XCAFDoc_VisMaterial.hxx [new file with mode: 0644]
src/XCAFDoc/XCAFDoc_VisMaterialCommon.hxx [new file with mode: 0644]
src/XCAFDoc/XCAFDoc_VisMaterialPBR.hxx [new file with mode: 0644]
src/XCAFDoc/XCAFDoc_VisMaterialTool.cxx [new file with mode: 0644]
src/XCAFDoc/XCAFDoc_VisMaterialTool.hxx [new file with mode: 0644]
src/XCAFPrs/FILES
src/XCAFPrs/XCAFPrs.cxx
src/XCAFPrs/XCAFPrs_AISObject.cxx
src/XCAFPrs/XCAFPrs_AISObject.hxx
src/XCAFPrs/XCAFPrs_Style.hxx
src/XCAFPrs/XCAFPrs_Texture.cxx [new file with mode: 0644]
src/XCAFPrs/XCAFPrs_Texture.hxx [new file with mode: 0644]
src/XDEDRAW/XDEDRAW_Colors.cxx
src/XmlMXCAFDoc/FILES
src/XmlMXCAFDoc/XmlMXCAFDoc.cxx
src/XmlMXCAFDoc/XmlMXCAFDoc_VisMaterialDriver.cxx [new file with mode: 0644]
src/XmlMXCAFDoc/XmlMXCAFDoc_VisMaterialDriver.hxx [new file with mode: 0644]
src/XmlMXCAFDoc/XmlMXCAFDoc_VisMaterialToolDriver.cxx [new file with mode: 0644]
src/XmlMXCAFDoc/XmlMXCAFDoc_VisMaterialToolDriver.hxx [new file with mode: 0644]