MCPcopy Create free account
hub / github.com/AcademySoftwareFoundation/MaterialX / write

Method write

source/MaterialXCore/Unit.cpp:60–83  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

58}
59
60void LinearUnitConverter::write(DocumentPtr doc) const
61{
62 if (!doc->getUnitTypeDef(_unitType))
63 {
64 // Add a unittypedef
65 doc->addUnitTypeDef(_unitType);
66
67 // Add a unitdef definition
68 string unitdefName = "UD_stdlib_" + _unitType;
69 if (!doc->getUnitDef(unitdefName))
70 {
71 UnitDefPtr unitDef = doc->addUnitDef(unitdefName);
72 unitDef->setUnitType(_unitType);
73
74 // Add in units to the definition
75 for (const auto& unitScale : _unitScale)
76 {
77 const string& unitName = unitScale.first;
78 UnitPtr unitPtr = unitDef->addUnit(unitName);
79 unitPtr->setAttribute(SCALE_ATTRIBUTE, std::to_string(unitScale.second));
80 }
81 }
82 }
83}
84
85float LinearUnitConverter::conversionRatio(const string& inputUnit, const string& outputUnit) const
86{

Callers 15

test_ShaderInterfaceMethod · 0.45
mainFunction · 0.45
mainFunction · 0.45
_writeHeaderFunction · 0.45
_writeValueAssignmentFunction · 0.45
_writeOneArgumentFuncFunction · 0.45
_writeOperatorFuncFunction · 0.45
_writeTwoArgumentFuncFunction · 0.45
_writeThreeArgumentFuncFunction · 0.45
_writeTransformMatrixFunction · 0.45
_writeTwoArgumentCombineFunction · 0.45

Calls 2

to_stringFunction · 0.85
setAttributeMethod · 0.80

Tested by 2

test_ShaderInterfaceMethod · 0.36
mainFunction · 0.36