SOCONCATENATE(3iv)
π SoConcatenate(3IV) β the field-gluing engine π
ok so real talk, this is the SoConcatenate(3IV) page and it's genuinely one of my faves because it does one tiny thing and does it flawlessly. It takes your separate fields and welds them into one big multiple-value field. Like a friendship bracelet but for data. π«Ά
β¨ NAME β¨
SoConcatenate β joins separate fields into a single multiple-value field π
𧬠INHERITS FROM π§¬
SoBase > SoFieldContainer > SoEngine > SoConcatenate
the whole ancestry, iconic lineage, no notes π
π SYNOPSIS π
#include <Inventor/engines/SoConcatenate.h>
Inputs from class SoConcatenate:
<inputType> input[10]
Outputs from class SoConcatenate:
(<outputType>) output
Methods from class SoConcatenate:
SoConcatenate(SoType inputType)
Methods from class SoEngine:
static SoType getClassTypeId()
virtual int getOutputs(SoEngineOutputList &list) const
SoEngineOutput * getOutput(const SbName &outputName) const
SbBool getOutputName(const SoEngineOutput *output, SbName
&outputName) const
SoEngine * copy() const
static SoEngine * getByName(const SbName &name)
static int getByName(const SbName &name, SoEngineList &list)
Methods from class SoFieldContainer:
void setToDefaults()
SbBool hasDefaultValues() const
SbBool fieldsAreEqual(const SoFieldContainer *fc) const
void copyFieldValues(const SoFieldContainer *fc, SbBool
copyConnections = FALSE)
SbBool set(const char *fieldDataString)
void get(SbString &fieldDataString)
virtual int getFields(SoFieldList &resultList) const
virtual SoField * getField(const SbName &fieldName) const
SbBool getFieldName(const SoField *field, SbName &fieldName)
const
SbBool isNotifyEnabled() const
SbBool enableNotify(SbBool flag)
Methods from class SoBase:
void ref()
void unref() const
void unrefNoDelete() const
void touch()
virtual SoType getTypeId() const
SbBool isOfType(SoType type) const
virtual void setName(const SbName &name)
virtual SbName getName() const
like yes, she inherited a LOT from her ancestors, we love a girl with range π
πΈ DESCRIPTION πΈ
okay so, the whole vibe: this engine takes up to 10 separate fields of some type and joins them into one single multiple-valued field of that same type. that's it. that's the job. and she ate. π₯
the type of the input fields can be any subclass of SoMField, and you decide which one at the exact moment you make the instance. for example:
SoConcatenate(SoMFFloat::getClassTypeId())
creates an engine that concatenates floating-point values. β¨ cute right?
so the input field? it's a 10-element array, and every single element can be connected to either single-valued or multiple-valued fields. all the values hanging out in the input get concatenated together to form one multiple-value field. example time, bestie: if input[0] holds 10 values and input[1] holds 3 values, then the output holds 13 values. math is mathing. π
β οΈ note that, unlike the output of most engines,outputis a pointer. and also, by defaultinputdoes not contain any values, and no value is output from the engine. so like, she's quiet until you give her something. valid. π
π₯ INPUTS π₯
<inputType> input[10]
π€ OUTPUTS π€
(<outputType>) output
π οΈ METHODS π οΈ
SoConcatenate(SoType inputType)β Constructor. the argument is literally you telling her the type of values to concatenate. that's the whole argument. give her the type, she gives you the concat. π
π FILE FORMAT/DEFAULTS π
Concatenate {
type <inputType>
input0 []
input1 []
input2 []
input3 []
input4 []
input5 []
input6 []
input7 []
input8 []
input9 []
}
look at all those empty brackets. ten little slots waiting to be filled. she's so ready. π
π SEE ALSO π
SoEngineOutputSoGateSoSelectOne
go read those too bestie, iykyk π¦
and that's the page!! footer's just sitting there going SoConcatenate(3IV)() β same name, no version, no date, just her name echoed back at you like a vibe check. honestly? iconic. no cap. periodt. πβ¨π
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms