GetActiveTag

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 16/08/2011 at 00:40, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   12 
Platform:   Windows  ;   Mac OSX  ; 
Language(s) :   C.O.F.F.E.E  ;

---------
Hello, its me again. I am Stucked with my Smoothedge-Script. I want to restrict a Splinedeformer to the current Pointselection of the selected Object. With my code I have the Problem that it does not work if there is already a Selection-Tag on the Object.
I tried to use GetActiveObject(). But the functions does not exist aparently.
Do you know how I can get the exact Selection tag, that is created with the Set Selection-Command?

Here is what I have:

obj->GetActiveObject();
  
CallCommand(12139); // Points
CallCommand(12552); // Set Selection
  
var selectiontag = obj->GetFirstTag();
while(selectiontag->GetType()!=5674) // As long as it's not a selection tag.
{
selectiontag=selectiontag->GetNext(); // Get the next tag until it finds one that's a selection tag
}
  
selectiontag#ID_BASELIST_NAME="smoothedge-restriction";
var restag = AllocTag(5683);//restiction Tag
splineDeformer->InsertTag(restag);//Apply tag
restag#RESTRICTIONTAG_NAME_01="smoothedge-restriction";
  
  

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 16/08/2011 at 05:38, xxxxxxxx wrote:

doc->GetActiveObject();

You might also want to use a for loop as you will crash readily with that while() loop:

------------------------------------------- ends loop if tags exhausted
for (selectiontag = obj->GetFirstTag(); selectiontag; selectiontag = selectiontag->GetNext())
{
if (selectiontag->GetType == 5674) { do you stuff here; break; }
}

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 16/08/2011 at 06:15, xxxxxxxx wrote:

Thank you Robert,
nice Idea.