THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 19/11/2004 at 12:20, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 8.5+
Platform: Windows ; Mac ; Mac OSX ;
Language(s) : C++ ;
---------
Howdy,
I noticed that the ModelingCommandData in R9 has changed from what it was in R8.5:
struct ModelingCommandData
{
public:
BaseDocument* doc;
BaseObject* op;
BaseContainer* bc;
LONG mode;
LONG flags;
BaseObject* result1;
void* result2;
};
Now in R9 it is:
struct ModelingCommandData
{
ModelingCommandData() { doc=NULL; op=NULL; bc=NULL; mode=0; flags=0; result_ex=NULL; result=NULL; version=1; arr=NULL; }
~ModelingCommandData();
BaseDocument* doc;
BaseObject* op;
BaseContainer* bc;
LONG mode;
LONG flags;
BaseObject* result_ex; // don't use
LONG version;
AtomArray* arr;
AtomArray* result;
};
The R8.5 documentation says this:
----------------------------------
BaseObject* result1
Resulting object for commands that create a new object. Not used if MODELINGCOMMANDFLAG_CREATEUNDO is set inflags.
Note: You need to free this object yourself afterwards, or insert it into a document.
void* result2
Not used currently.
-------------------------------------
In R8.5 if using MCOMMAND_CURRENTSTATETOOBJECT the mcd.result1 is the resulting object, but the R9 struct says "BaseObject* result_ex; // don't use " and the only other result is an AtomArray.
So, I reckon my question is how do I use this in R9?
Adios,
Cactus Dan
P.S. Any idea when the R9 SDK documentation will be released?