RayObject and polygon selections/textures [SOLVED]
-
On 06/07/2015 at 23:01, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 15+
Platform: Windows ;
Language(s) : C++ ;---------
consider a polygon object which got many different textures, each with its own selection, how to retrieve this data through RayObject "I searched and found old threads, found this thread: https://developers.maxon.net/forum/topic/3147/2527_uvw-projections&KW=rsadr "it has an example, but it is not a complete one, may be more clarification here please.
-
On 07/07/2015 at 07:38, xxxxxxxx wrote:
Hello,
the index of the restriction is stored in the TexData object (TexData::restrict). With that index you can check if there is a restriction and then you can test if a given polygon is selected or not. Something like this:
// get selection const Int32 selection = texData->restrict; // if there is a selection if(selection != 0) { // check for each polygon for (Int32 polyIndex = 0; polyIndex < rayObject->vcnt; ++polyIndex) { GePrint("Texture "+String::IntToString(textureIndex) + ", Polygon "+String::IntToString(polyIndex)); if ((rayObject->rsadr[texData->restrict][polyIndex >> 5] & (1 << (polyIndex & 31))) == 0) { GePrint("not selected"); } else { GePrint("selected"); } } }
best wishes,
Sebastian -
On 07/07/2015 at 07:42, xxxxxxxx wrote:
thanks a lot Sebastian , consider this solved.