THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 07/07/2008 at 08:14, xxxxxxxx wrote:
Cinema 4D Version: 10
Platform: Windows ;
Language(s) : C++ ;
how can I set the fields of the constraint-tag (especially the parent ones)?
I know tcaconstraint.h, but the problem seem to be, that you can add more than one target. Anyone got the right IDs?
On 08/07/2008 at 04:53, xxxxxxxx wrote:
Ok, took sometime, here is how it seems to work:
10000 = target Count
10001 = 1st target (Link)
10002 = 1st target Weight
10003 = antother link, dont know which object yet
10004 = unknown vector
10005 = 1st target checkmark Position
10006 = 1st target checkmark Scale
10007 = 1st target checkmark Rot
2nd target begins at 10011 etc
for Aim etc it's pretty much similar, just begins with 20001
Now it would be interesting to know how to add more targets by code (simulating pressing the button? ).
On 08/07/2008 at 05:07, xxxxxxxx wrote:
If you look in the file you mentioned (tcaconstraint.h) you will find all the IDs you need. e.g. as you found the PSR dynamic IDs start at 10000:
> ID_CA_CONSTRAINT_TAG_PSR_TARGET_COUNT = 10000
ID_CA_CONSTRAINT_TAG_PSR_TARGET_COUNT = 10000
To add them you can send a command message (e.g. ID_CA_CONSTRAINT_TAG_PSR_ADD) to the tag (MSG_DESCRIPTION_COMMAND) or you can add the items to the BaseContainer yourself. Just increase the target count long in the container and fill in the data, the tag will then use them.
e.g. to access each target you can use something like this:
> #define CONSTRAINT_ELEMENT 10
#define CONSTRAINT_ELEMENT 10
On 08/07/2008 at 05:25, xxxxxxxx wrote: