<< Click to Display Table of Contents > 

Client Control Interface Manual > Programming Examples > Set Array

Set Array
Previous pageReturn to chapter overviewNext page

The following examples shows how to change the array parameters of an entity. It creates an array 2 x 2 with a step size of 9.0 mm in x and y direction.

There are two different array copies in SAMLight, the virtual and the hard, which have their corresponding CCI commands:

Hard array copy

Virtual array copy

 

With hard array copy (Menu > Edit > ArrayCopy), the new generated copies are added in entity list.

Hard Array Copy

 

int CCI_Return_01 = cci.ScSetLongValue( ( int )ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeEntityArrayOrderFlags, ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlEntityArrayOrderFlagNegX | ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlEntityArrayOrderFlagNegY | ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlEntityArrayOrderFlagMainDirX );

int CCI_Return_02 = cci.ScSetLongValue( ( int )ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeEntityArrayCountX, 2 );

int CCI_Return_03 = cci.ScSetLongValue( ( int )ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeEntityArrayCountY, 2 );

int CCI_Return_04 = cci.ScSetDoubleValue( ( int )ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeEntityArrayStepX, 9.0 );

int CCI_Return_05 = cci.ScSetDoubleValue( ( int )ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeEntityArrayStepY, 9.0 );

int CCI_Return_06 = cci.ScSetEntityStringData( "circle", (int) ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlStringDataIdArrayCopyHard, "circle copy" );

Table 420: Hard Array Copy

With virtual array copy (EntityInfo > Array), the generated copies are not added in entity list, but still will be marked in sequence. Please pay attention that the unit of the commands for step is [um].

Virtual Array Copy

 

int CCI_Return_01 = cci.ScSetEntityLongData( "circle", ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEntityArrayCountX, 2 );

int CCI_Return_02 = cci.ScSetEntityLongData( "circle", ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEntityArrayCountY, 2 );

int CCI_Return_03 = cci.ScSetEntityLongData( "circle", ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEntityArrayStepX, 9000 );

int CCI_Return_04 = cci.ScSetEntityLongData( "circle", ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEntityArrayStepY, 9000 );

int CCI_Return_05 = cci.ScSetEntityLongData( "circle", ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEntityArrayOrderFlags, ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlEntityArrayOrderFlagNegX | ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlEntityArrayOrderFlagNegY | ( int )ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlEntityArrayOrderFlagMainDirX );

Table 421: Virtual Array Copy