public virtual void UpdateChainElement( int chainIndex, int elementIndex, Element billboardChainElement )
{
if ( chainIndex >= this.chainCount )
{
throw new IndexOutOfRangeException();
}
ChainSegment segment = this.chainSegmentList[ chainIndex ];
if ( segment.head == SEGMENT_EMPTY )
{
throw new Exception( "Chain segement is empty" );
}
int index = segment.head + elementIndex;
// adjust for the edge and start
index = ( index % this.maxElementsPerChain ) + segment.start;
this.chainElementList[ index ] = billboardChainElement;
this.boundsDirty = true;
// tell parent node to update bounds
if ( ParentNode != null )
{
ParentNode.NeedUpdate();
}
}