Ombuoyancy
Attributes
-
ENGLISH NAME : X-ParticlesGaseousModifier
-
NAME : Ombuoyancy
-
INCLUDE : Obase
-
PATH : res/description/ombuoyancy.res
-
PLUGIN : X-Particles
-
MAXON online help (may not exist): OMBUOYANCY
Elements
Example Code
The following code does not use the correct values when setting the data. You should check directly in C4D for the correct values that you should use in place of the ones that are shown.
This code is just to show you how to access the values for getting and setting the parameters.
Python
import c4d
from c4d import gui
def main():
obj = c4d.BaseObject(c4d.Ombuoyancy)
doc.InsertObject(obj)
c4d.EventAdd(c4d.EVENT_FORCEREDRAW)
#You can set parameters two different ways.
#First way
obj[c4d.XMBY_BUOYANCY_ENABLED] = True
obj[c4d.XMBY_BUOYANCY_MODE] = c4d.XMBY_BUOYANCY_MODE_INDEP
obj[c4d.XMBY_BUOYANCY_DRAW] = True
obj[c4d.XMBY_BUOYANCY_AMBIENT] = 0.1
obj[c4d.XMBY_BUOYANCY_COOLING] = 0.1
obj[c4d.XMBY_BUOYANCY_COOLING_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_RISE] = 0.1
obj[c4d.XMBY_BUOYANCY_RISE_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_FALL] = 0.1
obj[c4d.XMBY_BUOYANCY_FALL_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_SMOKEDISSIPATION] = 0.1
obj[c4d.XMBY_BUOYANCY_SMOKEDISSIPATION_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_IGNITION] = 0.1
obj[c4d.XMBY_BUOYANCY_IGNITION_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_BURN] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_BURN_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_TEMP] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_TEMP_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_SMOKE] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_SMOKE_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_EXPANSION] = 0.1
obj[c4d.XMBY_BUOYANCY_FUEL_EXPANSION_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_TYPE] = c4d.XMBY_BUOYANCY_BURN_TYPE_LINEAR
obj[c4d.XMBY_BUOYANCY_BURN] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_PERCENT] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_PERCENT_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_TEMP] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_TEMP_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_SMOKE_BELOW] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_SMOKE_BELOW_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_SMOKE] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_SMOKE_VAR] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_EXPANSION] = 0.1
obj[c4d.XMBY_BUOYANCY_BURN_EXPANSION_VAR] = 0.1
#Second way, using the base container.
bc = obj.GetDataInstance()
bc.SetBool(c4d.XMBY_BUOYANCY_ENABLED,True)
bc.SetInt32(c4d.XMBY_BUOYANCY_MODE,c4d.XMBY_BUOYANCY_MODE_INDEP)
bc.SetBool(c4d.XMBY_BUOYANCY_DRAW,True)
bc.SetFloat(c4d.XMBY_BUOYANCY_AMBIENT,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_COOLING,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_COOLING_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_RISE,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_RISE_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FALL,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FALL_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_SMOKEDISSIPATION,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_SMOKEDISSIPATION_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_IGNITION,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_IGNITION_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_BURN,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_BURN_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_TEMP,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_TEMP_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_SMOKE,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_SMOKE_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_EXPANSION,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_FUEL_EXPANSION_VAR,0.1)
bc.SetInt32(c4d.XMBY_BUOYANCY_BURN_TYPE,c4d.XMBY_BUOYANCY_BURN_TYPE_LINEAR)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_PERCENT,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_PERCENT_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_TEMP,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_TEMP_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_SMOKE_BELOW,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_SMOKE_BELOW_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_SMOKE,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_SMOKE_VAR,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_EXPANSION,0.1)
bc.SetFloat(c4d.XMBY_BUOYANCY_BURN_EXPANSION_VAR,0.1)
if __name__=='__main__':
main()
C++
#include "c4d.h"
#include "../res/description/ombuoyancy.h"
void SampleFunction()
{
BaseDocument *pDoc = GetActiveDocument();
BaseObject *pObject = BaseObject::Alloc(Ombuoyancy);
pDoc->InsertObject(pObject);
pDoc->StartUndo();
pDoc->AddUndo(UNDO_NEW,pObject);
pDoc->EndUndo();
EventAdd(EVENT_FORCEREDRAW);
//You can set parameters two different ways.
//First way
//Some objects do not store all their data in the container. You need to use GetParameter()/SetParameter() instead.
DESCFLAGS_SET flags = DESCFLAGS_SET_PARAM_SET;
pObject->SetParameter(DescID(XMBY_BUOYANCY_ENABLED),GeData(true),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_MODE),GeData(XMBY_BUOYANCY_MODE_INDEP),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_DRAW),GeData(true),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_AMBIENT),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_COOLING),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_COOLING_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_RISE),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_RISE_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FALL),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FALL_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_SMOKEDISSIPATION),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_SMOKEDISSIPATION_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_IGNITION),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_IGNITION_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_BURN),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_BURN_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_TEMP),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_TEMP_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_SMOKE),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_SMOKE_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_EXPANSION),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_FUEL_EXPANSION_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_TYPE),GeData(XMBY_BUOYANCY_BURN_TYPE_LINEAR),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_PERCENT),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_PERCENT_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_TEMP),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_TEMP_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_SMOKE_BELOW),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_SMOKE_BELOW_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_SMOKE),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_SMOKE_VAR),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_EXPANSION),GeData(0.1),flags);
pObject->SetParameter(DescID(XMBY_BUOYANCY_BURN_EXPANSION_VAR),GeData(0.1),flags);
pObject->Message(MSG_UPDATE);
//Second way, using the base container.
BaseContainer *bc = pObject->GetDataInstance();
bc->SetBool(XMBY_BUOYANCY_ENABLED,true);
bc->SetInt32(XMBY_BUOYANCY_MODE,XMBY_BUOYANCY_MODE_INDEP);
bc->SetBool(XMBY_BUOYANCY_DRAW,true);
bc->SetFloat(XMBY_BUOYANCY_AMBIENT,0.1);
bc->SetFloat(XMBY_BUOYANCY_COOLING,0.1);
bc->SetFloat(XMBY_BUOYANCY_COOLING_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_RISE,0.1);
bc->SetFloat(XMBY_BUOYANCY_RISE_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_FALL,0.1);
bc->SetFloat(XMBY_BUOYANCY_FALL_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_SMOKEDISSIPATION,0.1);
bc->SetFloat(XMBY_BUOYANCY_SMOKEDISSIPATION_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_IGNITION,0.1);
bc->SetFloat(XMBY_BUOYANCY_IGNITION_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_BURN,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_BURN_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_TEMP,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_TEMP_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_SMOKE,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_SMOKE_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_EXPANSION,0.1);
bc->SetFloat(XMBY_BUOYANCY_FUEL_EXPANSION_VAR,0.1);
bc->SetInt32(XMBY_BUOYANCY_BURN_TYPE,XMBY_BUOYANCY_BURN_TYPE_LINEAR);
bc->SetFloat(XMBY_BUOYANCY_BURN,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_PERCENT,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_PERCENT_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_TEMP,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_TEMP_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_SMOKE_BELOW,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_SMOKE_BELOW_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_SMOKE,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_SMOKE_VAR,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_EXPANSION,0.1);
bc->SetFloat(XMBY_BUOYANCY_BURN_EXPANSION_VAR,0.1);
pObject->Message(MSG_UPDATE);
}