THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 09/06/2004 at 07:58, xxxxxxxx wrote:
Cinema 4D Version: 8.100
Platform: Windows ;
Language(s) : C++ ;
im just starting with my first plugin and i have a problem i cant seem to solve on my own.
I wrote a tag plugin, which can be attached as an expression and which has a link field that accepts polygon selections.
My question now is, how do i access the polygon selection in my functions?
i tried it like this:
BaseList2D* polySelection = tag->GetData().GetLink(1001,doc);
but i still dont know how to access the polys
and besides, cinema crashes when i clear the link field..
thanks in advance,
On 09/06/2004 at 15:20, xxxxxxxx wrote:
You should cast the return object into a SelectionTag, you should then check that its non NULL, this will avoid the crashes.
Use the SelectionTag to get the selection
SelectionTag *polySelection = static_cast<SelectionTag*>(tag->GetData().GetLink(1001,doc));
if(!polySelection) return FALSE;
BaseSelect *selectedpolies = polySelection->GetBaseSelect();
// Unefficiently check for selected polies
for(LONG i=0; i < selectedpolies->GetCount();i++)
GePrint("Polygon Selected :" + LongToString(i));
Look in the docs BaseSelect::IsSelected for an efficient algorithm
On 09/06/2004 at 16:32, xxxxxxxx wrote:
alright, that does it!
thanks for your help,