New Bevel Tool and SendModellingCommand
-
On 17/09/2013 at 19:36, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 15
Platform: Windows ; Mac OSX ;
Language(s) : C++ ;---------
Hello,I am trying to update Chamfer Maker for R15. Since Chamfer Maker uses SendModellingCommand internally to do the actual bevels I was thinking I just need to update the BaseContainer settings to work with the new equivalent symbols that correspond to the settings for the new bevel tool.
However I am finding that toolbevel.h still has the old symbols such as MDATA_BEVEL_OFFSET2 et al.
In my short Python sample script though I see that when dragging the paramaters into the script editor from the new bevel tool that for example the Radius parameter is no longer called MDATA_BEVEL_OFFSET2 but MDATA_BEVEL_RADIUS and so on.
Basically, I am looking to make the following snippet work with the new bevel tool:
(the code uses the __LEGACY_API define)
BaseContainer bc; bc.SetReal(MDATA_BEVEL_OFFSET2, data->GetReal(AMa_CHMMKR_RAD_a)); bc.SetReal(MDATA_BEVEL_VARIANCE2, data->GetReal(AMa_CHMMKR_VARIANCE)); bc.SetLong(MDATA_BEVEL_SUBDIVISION, data->GetLong(AMa_CHMMKR_SUBDIVISION)); bc.SetBool(MDATA_BEVEL_CREATENGONS, data->GetBool(AMa_CHMMKR_CREATENGONS)); bc.SetLong(MDATA_BEVEL_MODE, C4D_Bevel_Mode); bc.SetData(MDATA_BEVEL_PATH, ( data->GetData(AMa_CHMMKR_PATH))); bc.SetReal(MDATA_BEVEL_OFFSET1, data->GetReal(AMa_CHMMKR_EXTRUSION)); bc.SetReal(MDATA_BEVEL_VARIANCE1, data->GetReal(AMa_CHMMKR_EXTRU_VARI)); ModelingCommandData cd; cd.doc = op->GetDocument(); cd.bc = &bc; cd.op = obj; cd.mode = MODELINGCOMMANDMODE_EDGESELECTION; cd.arr = NULL; chk = SendModelingCommand(ID_MODELING_BEVEL_TOOL, cd); if ( !chk) { return FALSE; }
Thank you!
-
On 17/09/2013 at 22:52, xxxxxxxx wrote:
Hello you can find the new parameter definitions for new bevel in:
cinemaFolder/resource/modules/modeling/res/xbeveltool.h
pay attention also the command ID is changed you can find the correct id in command manager ID_MODELING_BEVEL_TOOL is no more valid.
other than that the new bevel is a complete new system so some parameters are no more available and some other are new so i am sure you have to redesign part of your plugin.
Franz -
On 17/09/2013 at 22:56, xxxxxxxx wrote:
You can also find them here if it helps.
http://c4dconnect.com/Description/Node?containerName=xbeveltool
-
On 18/09/2013 at 03:31, xxxxxxxx wrote:
Franz, thank you very much.
For some reason my search for "bevel" didn't turn up the xbeveltool.h header file when I searched the _api folder.
Thanks, kbar. That c4dconnect site is really cool. I shall bookmark it right away.
-
On 21/09/2013 at 06:10, xxxxxxxx wrote:
Hi
I work at AMA tools too.Seems Maxon moved to SetAction(431000015) // or new xBevelTool
Upd.
I was wrong, all work