59 sampler.input = inputId;
60 sampler.output = outputId;
66 channel.target.node = nodeId;
67 channel.target.path =
"translation";
78 const auto& sampler = samplers_[i];
81 <<
indent <<
"\"input\" : " << sampler.input <<
"," <<
nl
82 <<
indent <<
"\"interpolation\" : " << sampler.interpolation
84 <<
indent <<
"\"output\" : " << sampler.output <<
nl
87 if (i != samplers_.size() - 1)
os <<
"," <<
nl;
96 const auto& channel = channels_[i];
99 <<
indent <<
"\"sampler\" : " << channel.samplerId <<
"," <<
nl
101 <<
indent <<
"\"node\" : " << channel.target.node <<
"," <<
nl
102 <<
indent <<
"\"path\" : " << channel.target.path <<
nl
106 if (i != channels_.size() - 1)
os <<
"," <<
nl;
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
void write(Ostream &os) const
Write.
DynamicList< glTFChannel > channels_
Channels.
DynamicList< glTFSampler > samplers_
Samplers.
animation()
Default construct.
void addTranslation(const label inputId, const label outputId, const label nodeId, const string &interpolation)
Add translation.
Base class for glTF entities.
const word & name() const noexcept
Return const access to the name.
Abstract base class for volume field interpolation.
A class for handling words, derived from Foam::string.
OBJstream os(runTime.globalPath()/outputName)
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces).
Ostream & incrIndent(Ostream &os)
Increment the indent level.
Ostream & indent(Ostream &os)
Indent stream.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
Ostream & decrIndent(Ostream &os)
Decrement the indent level.
constexpr char nl
The newline '\n' character (0x0a).
#define forAll(list, i)
Loop across all elements in list.