Client Control Interface Manual
© 2024 SCAPS GmbH
31.10.2024
Client Control Interface Manual - Contents 2
Table of Contents
1 .........................................................................................................................
Introduction 7
2 .........................................................................................................................
Base Functions 8
3.........................................................................................................................
Application 15
3.1 Async Mode
.............................................................................................................. 22
4.........................................................................................................................
Global Settings 26
4.1 View
.............................................................................................................. 27
4.2 Optic
.............................................................................................................. 30
4.2.1 Min
.......................................................................................................
/ Max ... 39
4.2.2 Advanced
....................................................................................................... 41
[Link] ................................................................................................
Head Optic Settings 43
[Link] ................................................................................................
MOTF hardware settings 46
4.3 General
.............................................................................................................. 49
4.4 Remote
.............................................................................................................. 50
4.5 I/O
.............................................................................................................. 51
4.6 Extras
.............................................................................................................. 52
4.7 Splitting
.............................................................................................................. 54
4.8 User level
.............................................................................................................. 55
4.9 sc_setup
.............................................................................................................. 57
5.........................................................................................................................
Pen Settings 60
5.1 Advanced Settings
.............................................................................................................. 67
5.2 Main
.............................................................................................................. 71
5.3 Laser-Specials
.............................................................................................................. 73
5.3.1 IPG
....................................................................................................... 73
5.3.2 SPI
....................................................................................................... 74
5.4 Scanner
.............................................................................................................. 76
5.5 Misc
.............................................................................................................. 77
5.6 Drill
.............................................................................................................. 80
5.7 Ramping
.............................................................................................................. 82
5.8 Path
.............................................................................................................. 84
5.9 Bitmap
.............................................................................................................. 86
© 2024 SCAPS GmbH
Client Control Interface Manual - Contents 3
6.........................................................................................................................
Job 87
6.1 ..............................................................................................................
Entity Objects 100
6.1.1.......................................................................................................
Geometry Objects 103
[Link]................................................................................................
Spiral 103
[Link]................................................................................................
Ellipse 105
[Link]................................................................................................
PolyLine 107
[Link]................................................................................................
Rectangle 107
6.1.2.......................................................................................................
Barcode 108
[Link]................................................................................................
DataMatrixEx 114
[Link]................................................................................................
QR Code Ex 119
6.1.3.......................................................................................................
Bitmap 121
6.1.4.......................................................................................................
Serial Number 125
6.1.5.......................................................................................................
Date Time 129
6.1.6.......................................................................................................
Text2D 130
6.1.7.......................................................................................................
Control Objects 137
6.2 ..............................................................................................................
Entities Properties 145
6.2.1.......................................................................................................
Entity Naming 148
6.2.2.......................................................................................................
Entity Hierarchy 150
6.2.3.......................................................................................................
Transformations 152
6.2.4.......................................................................................................
Hatch 160
6.2.5.......................................................................................................
Entity Info 173
6.2.6.......................................................................................................
Array Copy 179
6.3 ..............................................................................................................
Data Wizard 183
6.4 ..............................................................................................................
Styles 186
7 Direct Motion Control
......................................................................................................................... 188
7.1 ..............................................................................................................
Direct Motion Home/Shift 188
7.2 ..............................................................................................................
Direct Motion Move 189
7.3 ..............................................................................................................
Direct Motion RS-232 193
7.4 ..............................................................................................................
Direct Motion Status 194
7.5 ..............................................................................................................
Direct Motion Stop 195
8 Inputs and Outputs
......................................................................................................................... 195
9 Mark
......................................................................................................................... 202
9.1 ..............................................................................................................
Mark Dialog 205
9.1.1.......................................................................................................
Red Pointer 207
© 2024 SCAPS GmbH
Client Control Interface Manual - Contents 4
9.2 ..............................................................................................................
Trigger Dialog 208
9.3 ..............................................................................................................
Mark Preview 209
9.4 ..............................................................................................................
Mark Sequence 209
9.5 ..............................................................................................................
Mark Time 210
9.6 ..............................................................................................................
Mark Counter 210
10 Splitting
......................................................................................................................... 212
10.1 Angular Splitting
.............................................................................................................. 218
10.2 1D Planar Splitting
.............................................................................................................. 222
10.3 2D Planar Splitting
.............................................................................................................. 223
10.4 Ring Splitting
.............................................................................................................. 226
10.5 1D MOTF Splitting
.............................................................................................................. 228
10.6 Bitmap Rotary Splitting
.............................................................................................................. 231
10.7 Step and Repeat
.............................................................................................................. 232
11 Option Optic3D
......................................................................................................................... 234
11.1 3D Surfaces
.............................................................................................................. 235
12 Option SAM3D
......................................................................................................................... 241
12.1 Specific Commands
.............................................................................................................. 242
13 Other
......................................................................................................................... 255
13.1 Background Camera Image
.............................................................................................................. 255
13.2 Disable Message Beep
.............................................................................................................. 265
13.3 External Stop
.............................................................................................................. 265
13.4 Hardware Status
.............................................................................................................. 266
13.5 Parameter Constants
.............................................................................................................. 269
13.6 Print
.............................................................................................................. 271
13.7 RS-232
.............................................................................................................. 272
13.8 RTC only commands
.............................................................................................................. 274
13.9 Screenshot
.............................................................................................................. 278
13.9.1
.......................................................................................................
Screenshot of current View2D 278
13.9.2
.......................................................................................................
Screenshot of entities 279
13.10 Scan Head
.............................................................................................................. 282
13.11 sc_corr_table
.............................................................................................................. 287
13.12 View2D
.............................................................................................................. 290
14 List of Commands
......................................................................................................................... 292
© 2024 SCAPS GmbH
Client Control Interface Manual - Contents 5
14.1 ASCII Commands
.............................................................................................................. 292
14.2 DLL Commands
.............................................................................................................. 294
15 List of Constants
......................................................................................................................... 295
15.1 Double Value Types
.............................................................................................................. 295
15.2 Long Value Types
.............................................................................................................. 301
15.3 String Value Types
.............................................................................................................. 306
15.4 Double Data ID
.............................................................................................................. 308
15.5 Long Data ID
.............................................................................................................. 310
15.6 String Data ID
.............................................................................................................. 315
15.7 Cmd ID
.............................................................................................................. 316
16 Implementation
......................................................................................................................... 319
16.1 OCX (ActiveX)
.............................................................................................................. 320
16.2 COM (CCI Ex)
.............................................................................................................. 323
16.3 ASCII (plain text)
.............................................................................................................. 325
16.4 cci.
.............................................................................................................. 326
17 Programming Examples
......................................................................................................................... 327
17.1 Create beam-compensated Copy of Entity
.............................................................................................................. 327
17.2 Create screenshot of SAMLight View2D
.............................................................................................................. 328
17.3 Create Entity
.............................................................................................................. 329
17.3.1
.......................................................................................................
Text2D 329
17.3.2
.......................................................................................................
BarCode 329
17.3.3
.......................................................................................................
SerialNumber 330
17.3.4
.......................................................................................................
Ellipse 330
17.3.5
.......................................................................................................
Rectangle 331
17.3.6
.......................................................................................................
PolyLine 331
17.4 Correct UCF
.............................................................................................................. 332
17.5 Fit to entity
.............................................................................................................. 332
17.6 Get / Set Inputs and Outputs
.............................................................................................................. 333
17.7 Get / Set text properties
.............................................................................................................. 333
17.8 Get Server Status with Mask
.............................................................................................................. 334
17.9 Handle texts
.............................................................................................................. 335
17.10 How to work with Flags
.............................................................................................................. 336
17.11 Mirror Entity on Y Axis
.............................................................................................................. 337
17.12 Motion Control
.............................................................................................................. 337
© 2024 SCAPS GmbH
Client Control Interface Manual - Contents 6
17.13 Precalculating Marking Time
.............................................................................................................. 339
17.14 Retrieve Entities
.............................................................................................................. 339
17.15 Rotate Output Matrix
.............................................................................................................. 340
17.16 Save Splitted Job as Tiles
.............................................................................................................. 341
17.17 Set Array
.............................................................................................................. 342
17.18 Optimize Performance
.............................................................................................................. 343
17.18.1
.......................................................................................................
Example 1 345
17.18.2
.......................................................................................................
Example 2 346
18 Optimization and Error Prevention
......................................................................................................................... 348
18.1 Error Codes
.............................................................................................................. 348
18.2 5min Timeout
.............................................................................................................. 349
19 Deprecated commands
......................................................................................................................... 349
© 2024 SCAPS GmbH
Client Control Interface Manual - Introduction 7
1 Introduction
Welcome to our new client control documentation.
This manual will teach and show you how to remote control SAMLight from another software via a CCI
application. The following chapters specify the main base functions used in combination with their constants
as well as some programming examples and give tips to optimize the performance.
The basic structure of this manual follows the structure in the SAMLight manual. Each chapter of the
SAMLight manual can be found in a similar way here if any relevant commands do exist. The amount of
functions in SAMLight is huge, not all functions are also available in CCI.
Client Control can be done via one of the following ways:
· OCX (ActiveX) function calls via [Link]
· COM (CCI Ex) function calls via [Link]
· ASCII (plain text) commands
Regarding the function calls, the OCX (ActiveX) control [Link] and the COM (CCI Ex)
control [Link] are providing function commands to remote control SAMLight from
another software. This allows fast development of automation with different Windows development
environments. OCX and COM can be used in a 32-bit or a 64-bit custom program. In addition CCI can be
used without the OCX or COM encapsulation. In this case, plain ASCII commands are sent via TCP from a
different system which does not need to be a Windows PC.
In total, there are three different options:
1. Remote control SAMLight at the same Windows PC: CCI Function commands (OCX or COM) via
Function Calls.
2. Remote control SAMLight from another Windows PCs: CCI Function commands (OCX or COM) via
TCP.
3. Remote control SAMLight from any system supporting telnet-like network connections: CCI ASCII
commands via TCP.
These three different ways to realize CCI are illustrated and described in further detail in the following
(images always show the connection to a USC card, but CCI of course can also be used together with an
RTC card.):
1. CCI Function Commands (OCX or COM) via Function Calls
· SAMLight can be controlled by a CCI application running on the same PC:
· SAMLight Settings System Remote Function Calls must be enabled.
· The client application can use all Function commands, see DLL Commands.
[Link] Function commands (OCX or COM) via TCP
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 8
2 Base Functions
This chapter explains some of the major functions needed to realize a CCI application. These basic
commands can then be used in combination with the CCI constants. For each function, a small example in
C# is given.
The commands given in this chapter are:
· DoubleValue
· EntityDoubleData
· EntityLongData
· EntityStringData
· ExecCommand
· IDStringData
· LongValue
· StringValue
DoubleValue Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description This is the definition of the base function to use Double Value Types. The function
needs two arguments: Value_Type and Parameter. The available Value_Types are
listed at List of Constants Double Value Types.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
See available Double Value Types.
Parameter Type: double Unit: depends on constant
Further details are given in Double Value Types.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use DoubleValue Types:
// Set maximum mark speed to 200.0 mm/s
int CCI_Return = [Link]( ( int )
[Link], 200.0 );
// Get maximum mark speed
double Max_Mark_Speed = [Link]( ( int )
[Link] );
Table 1: DoubleValue
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 9
EntityDoubleData Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description This is the definition of the base function to use Entity Double Data IDs. The function
needs two/three arguments: Entity_Name, Data_ID and Parameter. Sometimes the
function returns the parameter or the parameter has to be initialized before. The
available Data_IDs are listed at List of Constants Double Data IDs.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
See available Double Data IDs.
Data_ID can be combined with:
· scComSAMLightClientCtrlDoubleDataIdFlagDontUpdateView 0x10000 (set only)
The view will not be updated to increase the performance.
· scComSAMLightClientCtrlDoubleDataIdFlagDontUpdateEntity 0x20000 (set only)
The vectors will not be updated to increase the performance.
· scComSAMLightClientCtrlDoubleDataIdFlagToplevelOnly 0x40000
Only entities in the top level of the job will be considered to increase the
performance.
Parameter Type: double Unit: none
Set or get the required data. Further details are given in the Double Data IDs.
CCI_Return Type: int
CCI return number, see error list.
Notes · Set function also available for SAM3D. No get function.
C# Example: How to use EntityDoubleDataIDs:
// Set line spacing value to 200%
int CCI_Return_01 = [Link]( "Text_Entity", ( int )
[Link], 200.0 );
// Get line spacing value
double Text_Line_Spacing = 0.0;
int CCI_Return_02 = [Link]( "Text_Entity", ( int )
[Link], ref Text_Line_Spacing );
Table 2: EntityDoubleData
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 10
EntityLongData Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description This is the definition of the base function to use Entity Long Data IDs. The function
needs two/three arguments: Entity_Name, Data_ID and Parameter. Sometimes the
function returns the parameter or the parameter has to be initialized before. The
available Data_IDs are listed at List of Constants Long Data IDs.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
See available Long Data IDs.
Data_ID can be combined with following ScComSAMLightClientCtrlFlags:
· scComSAMLightClientCtrlLongDataIdFlagDontUpdateView 0x10000 (set only)
The view will not be updated to increase the performance.
· scComSAMLightClientCtrlLongDataIdFlagDontUpdateEntity 0x20000 (set only)
The vectors will not be updated to increase the performance.
Parameter Type: int Unit: none
See available Long Data IDs.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use EntityLongDataIDs:
// Set current setting for text alignment line center
int CCI_Return = [Link]( "Text_Entity", ( int )
[Link], 1024 );
// Get current setting for text alignment line center
int Text_Alignment = [Link]( "Text_Entity", ( int )
[Link] );
Table 3: EntityLongData
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 11
EntityStringData Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Parameter)
int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Parameter)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Parameter)
string Parameter = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description Set or get specific string data of an entity Entity_Name depending on the Data_ID.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
See available Entity String Data IDs.
Data_ID can be combined with following ScComSAMLightClientCtrlFlags:
· scComSAMLightClientCtrlStringDataIdFlagDontUpdateView 0x10000 (set only)
The view will not be updated to increase the performance.
· scComSAMLightClientCtrlStringDataIdFlagDontUpdateEntity 0x20000 (set only)
The vectors will not be updated to increase the performance.
· scComSAMLightClientCtrlStringDataIdFlagToplevelOnly 0x200000
Only entities in the top level of the job will be considered to increase the
performance.
Parameter Type: string Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use Entity String Data IDs
// Set content of text entity
int CCI_Return_01 = [Link]( "Text_Entity", ( int )
[Link], "Test" );
// Get content of text entity
string Entity_Text = "";
int CCI_Return_02 = [Link]( "Text_Entity", ( int )
[Link], ref Entity_Text );
Table 4: EntityStringData
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 12
Exec Command Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description This is the definition of the base function to use Exec Commands. Only the Cmd_ID
has to be given. The available Cmd_IDs are listed at List of Constants Cmd ID.
Cmd_ID Type: int
Location: ScComSAMLightClientCtrlExecCommandConstants
See available Cmd IDs.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use Exec Commands:
// Create new job
int CCI_Return = [Link]( ( int )
[Link] );
Table 5: ExecCommand
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 13
IDStringData Set
Get
DLL Function int CCI_Return = ScSetIDStringData(int Data_ID, int Index, string Parameter)
int CCI_Return = ScGetIDStringData(int Data_ID, int Index, ref string Parameter)
ASCII Function int CCI_Return = ScCciSetIDStringData(int Data_ID, int Index, string Parameter)
string Parameter = ScCciGetIDStringData(int Data_ID, int Index)
Description Set or get specific string data of an entity by Index depending on the Data_ID.
Data_ID Type: int
Location: ScComSAMLightClientCtrlValueTypes
See available ID String Data IDs.
Index Type: int Unit: none
0 based entity index of current job.
Index can be combined with following ScComSAMLightClientCtrlFlags:
· scComSAMLightClientCtrlStringDataIdFlagDontUpdateView 0x10000 (set only)
The view will not be updated to increase the performance.
· scComSAMLightClientCtrlStringDataIdFlagDontUpdateEntity 0x20000 (set only)
The vectors will not be updated to increase the performance.
· scComSAMLightClientCtrlStringDataIdFlagToplevelOnly 0x200000
Only entities in the top level of the job will be considered to increase the
performance.
Parameter Type: string Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use ID String Data IDs
int Top_Level_Entity_Num = [Link]( ( int )
[Link] );
for( int i = 0; i < Top_Level_Entity_Num; i++ )
{
// Set entity name by index
int CCI_Return_01 = [Link]( ( int )
[Link], i | ( int )
[Link], "Entity_" +
[Link](i) );
// Get entity name by index
string Entity_Name = "";
int CCI_Return_02 = [Link]( ( int )
[Link], i | ( int )
[Link], ref Entity_Name );
}
Table 6: IDStringData
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 14
LongValue Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description This is the definition of the base function to use Long Value Types. The function
needs two arguments: Value_Type and Parameter. The available Value_Types are
listed at List of Constants Long Value Types.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
See available Long Value Types.
Parameter Type: int Unit: depends on constant
Further details are given in Long Value Types.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use Long Value Types
// Set job execution delay to 100 ms
int CCI_Return = [Link]( ( int )
[Link], 100 );
// Get job execution delay
double Job_Execution_Delay = [Link]( ( int )
[Link] );
Table 7: LongValue
© 2024 SCAPS GmbH
Client Control Interface Manual - Base Functions 15
StringValue Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Parameter)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Parameter)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Parameter)
string Parameter = ScCciGetStringValue(int Value_Type)
Description This is the definition of the base function to use String Value Types. The function
needs two arguments: Value_Type and Parameter. The available Value_Types are
listed at List of Constants String Value Types.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
See available String Value Type.
Parameter Type: string Unit: none
See available String Value Types.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use String Value Types
// Set name of current pen
int CCI_Return = [Link]( ( int )
[Link], "Test Pen" );
// Get current pen name
string pen_name = "";
int CCI_Return = [Link]( ( int )
[Link], ref pen_name );
Table 8: StringValue
3 Application
The following commands can be used to check the global state of the system. There is a subchapter for:
· Async Mode
The following commands are described in this chapter:
· Change View2D
· Check Communication
· Connection Status
· Entity List/Property Sheet
· Extended Error Mode
· Generate Backup-Zip
· Mode
· SAMLight Shutdown
· SAMLight Status
· SAMLight Window
· Simulation Mode
· Update View2D
· Write Trail
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 16
Change View2D Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Change the position and zoom level of the View2D.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandFitViewToWorkingArea 4
Fit the view to the working area.
scComSAMLightClientCtrlExecCommandFitViewToAllEntities 5
Fit the view to all entities.
scComSAMLightClientCtrlExecCommandFitViewToSelectedEntities 6
Fit the view only to selected entities.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Fit the view to the working area:
int CCI_Return = [Link]( ( int )
[Link] );
Table 9: Change View2D
Check Communication Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description SAMLight pops up a test message box to check the communication between the CCI
application and SAMLight.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandTest 1
CCI_Return Type: int
CCI return number, see error list.
Notes · The message box that has to be closed manually.
· The command returns after the message box is closed.
C# Example: Check communication:
int CCI_Return = [Link]( ( int )
[Link] );
Table 10: Check Communication
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 17
Connection Status Set
Get
DLL Function -
ASCII Function int CCI_Return = ScCciTest(string Message)
Description SAMLight pops up a cci test message box to check the communication between the
CCI application and SAMLight.
Message Type: string Unit: none
This string will be part of the message in the message box.
CCI_Return Type: int
CCI return number, see error list.
Notes · The command returns immediately.
· The message box that has to be closed manually.
ASCII Example: Send a test message to SAMLight:
ScCciTest("Test message.")<LF>
Table 11: Connection Status
Entity List / Property Sheet Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Value)
int Value = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Value)
int Value = ScCciGetLongValue(int Value_Type)
Description Set or get the status of the entity list or property sheet in SAMLight.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeShowEntityList 99
Hide or show the Entity List.
scComSAMLightClientCtrlLongValueTypeShowPropSheet 100
Hide or show the Property Sheet.
Value Type: int Unit: none
· 0: hide
· 1: show
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Show entity list:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Check if entity list is shown:
int Entity_List_Status = [Link]( ( int )
[Link] );
Table 12: Entity List / Property Sheet
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 18
Extended Error Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Mode)
int Mode = ScGetLongValue(int Value_Type)
ASCII Function -
Description Activates the extended error mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeNewCciErrorReturn 105
Mode Type: int Unit: none
· 0: Disable extended error mode.
· 1: Enable extended error mode.
CCI_Return Type: int
CCI return number, see error list.
Notes · This only works for OCX and not for ASCII or COM.
C# Example: Enable the extended error mode:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Check the state of the extended error mode:
int Extended_Error_Mode = [Link]( ( int )
[Link] );
Table 13: Extended Error Mode
Generate Backup-Zip Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Generate a Backup-Zip and save in <scaps>\intermed.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandGenerateBackupZip 76
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Generate Backup-Zip.
int CCI_Return = [Link]( ( int )
[Link] );
Table 14: Generate Backup-Zip
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 19
Mode Set
Get
DLL Function int CCI_Return = ScSetMode(int Mode)
int CCI_Return = ScGetMode(ref int Mode)
ASCII Function int CCI_Return = ScCciSetMode(int Mode)
int Mode = ScCciGetMode()
Description Set or get global SAMLight parameters by combining following flags.
Mode Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
- 0x0
Disable the mode.
scComSAMLightClientCtrlModeFlagTopLevelOnly 0x1
The next calls only search for objects in the top level of the job. This can be helpful
to increase the performance.
scComSAMLightClientCtrlModeFlagDontUpdateView 0x2
Suppress drawing of entities in the view or in the entity list. This can be helpful to
increase the performance.
scComSAMLightClientCtrlModeFlagDisableFileCompression 0x10
Checks the check box Disable file compression in Settings System General.
scComSAMLightClientCtrlModeFlagEntityNamesSeparatedBySemicolon 0x20
The parameter Entity_Name in ScMarkEntityByName and others can include more
than one entity name. They have to be separated by a semicolon. If the client control
is used via a TCP connection then the maximum length of the parameter
Entity_Name is 512 characters (511 + an ending zero).
scComSAMLightClientCtrlModeFlagDisableUndo 0x4000
Checks the checkbox Disable Undo in Settings System General, which
disables Undo function.
scComSAMLightClientCtrlModeFlagArrayCopyAdapt 0x8000
ArrayCopy of a serial number results in an array of serial numbers where the copies
are enumerated from the number of the original one up to n. If not checked all copies
will get the same number as the original one.
scComSAMLightClientCtrlModeFlagArrayCopyAssociate 0x10000
This function is useful for creating multiple serial numbers with a complex sequence.
If checked the ArrayCopy of two and more different serial numbers results in one
serial so that no serial number gets repeated. This check button is only enabled if
Adapt is selected and association is possible. Creating one serial after an array copy
is only possible if the actual values of the current serial differ in a constant step.
scComSAMLightClientCtrlModeFlagArrayPolarCopyAdapt 0x20000
ArrayPolarCopy of a serial number results in an array of serial numbers where the
copies are enumerated from the number of the original one up to n. If not checked all
copies will get the same number as the original one.
scComSAMLightClientCtrlModeFlagArrayPolarCopyRotate 0x40000
This function is useful to align the copies aligned radially. If not checked all copies
will be aligned identically to the original entity.
CCI_Return Type: int
CCI return number, see error list.
Notes · To prevent incorrect operation please read chapter How to work with flags
· For more information about Performance optimization under usage of these flags,
please refer to Optimize Performance chapter.
C# Example: Enable Don't Update View and don't change all other flags:
int Mode = 0;
int CCI_Return_01 = [Link]( ref Mode );
Mode = Mode | ( int )[Link];
int CCI_Return_02 = [Link]( Mode ); © 2024 SCAPS GmbH
C# Example: Disable Don't Update View and don't change all other flags:
int Mode = 0;
Client Control Interface Manual - Application 20
Table 15: Mode
SAMLight Shutdown Set
Get
DLL Function int CCI_Return = ScShutDown()
ASCII Function int CCI_Return = ScCciShutDown()
Description Terminates SAMLight.
CCI_Return Type: int
CCI return number, see error list.
Notes · After that no further commands should be given.
C# Example: Shut down SAMLight:
int CCI_Return = [Link]();
Table 16: SAMLight Shutdown
SAMLight Status Set
Get
DLL Function int Is_Running = ScIsRunning()
ASCII Function -
Description Can be used for checking whether the scanner application software is running or not.
Is_Running Type: int Unit: none
· 0: SAMLight doesn't run or is not found.
· 1: SAMLight runs.
Notes · This function can be used to check whether SAMLight is ready to receive other
CCI commands.
· If this function returns 0, it makes no sense to use any other CCI commands and
an error will occur when a command is sent.
· This command will not be listed within sc_cci_debug.txt
C# Example: Check SAMLight status:
int Is_Running = [Link]();
Table 17: SAMLight Status
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 21
SAMLight Window Set
Get
DLL Function int CCI_Return = ScShowApp(int Window_Properties)
ASCII Function int CCI_Return = ScCciShowApp(int Window_Properties)
Description Set SAMLight into one of the common show states of Windows.
Window_Properties Type: int Unit: none
· 0: Hide SAMLight.
· 2: Minimize SAMLight.
· 3: Maximize SAMLight.
· 5: Show SAMLight and display it in its current size and position.
· 9: Show SAMLight and restore its original size and position, if it is minimized or
maximized.
CCI_Return Type: int
CCI return number, see error list.
Notes · You can set only one index simultaneously.
C# Example: Hide the SAMLight window:
int CCI_Return = [Link]( 0 );
Table 18: SAMLight Window
Simulation Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Mode)
int Mode = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Mode)
int Mode = ScCciGetLongValue(int Value_Type)
Description Set or get the status of the SAMLight simulation mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDisableSimulationMode 109
Mode Type: int Unit: none
· 0: Simulation mode
· 1: Normal mode
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable simulation mode:
int CCI_Return = [Link]( ( int )
[Link], 0 );
C# Example: Check state of simulation mode:
int Mode = [Link]( ( int )
[Link] );
Table 19: Simulation Mode
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 22
Update View2D Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Update the View2D now.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandUpdateViewNow 22
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Update the View2D:
int CCI_Return = [Link]( ( int )
[Link] );
Table 20: Update View2D
Write Trail Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Text)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Text)
Description Set a entry in the [Link] if activated.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeTrail 31
Text Type: string Unit: none
Write the wanted text.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Write trail entry:
int CCI_Return = [Link]( ( int )
[Link], "Test" );
Table 21: Write Trail
3.1 Async Mode
The async mode allows the CCI thread of the CCI program to continue without waiting for return values of
SAMLight. It does not allow a parallelization of CCI commands, the commands still have to be sent
sequentially. A better alternative to the async mode is if the CCI program has several threads and the CCI
part takes place in its own thread.
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 23
Async Mode Enable Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Set or get the status of async mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncMode 28
Parameter Type: int Unit: none
· 0: Async mode disabled.
· 1: Async mode enabled.
CCI_Return Type: int
CCI return number, see error list.
Notes · Async supported commands are listed in DoubleValue Async, LongValue Async
and StringValue Async.
C# Example: Enable async mode:
int CCI_Return = [Link]( ( int )
[Link], 1 );
Table 22: Async Mode Enable
Async Status Set
Get
DLL Function int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int Parameter = ScCciGetLongValue(int Value_Type)
Description Check if prior async CCI command is completed.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncModeIsRunni 29
ng
Parameter Type: int Unit: none
· 0: Async CCI command is completed.
· 1: Async CCI command is executing.
CCI_Return Type: int
CCI return number, see error list.
Notes · Async mode must be enabled.
· Async supported commands are listed in DoubleValue Async, LongValue Async
and StringValue Async.
C# Example: Check if async CCI command is executing:
int Aync_Command_Is_Running = [Link]( ( int )
[Link] );
Table 23: Async Status
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 24
DoubleValue Async Set
Get
DLL Function double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Get double value of async CCI command. Supported commands:
· ScGetEntityOutline
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeAsyncModeResult 63
Parameter Type: double Unit: depends on async cci command
Double value.
Notes · Async mode must be enabled.
C# Example: Async ScGetEntityOutline:
// With enabled async mode the CCI commmand returns immediately without returning an answer.
double dummy = [Link]( "Circle", 0 );
do
{
// Your operations while async CCI command executes.
}
// Check if cci command is completed.
while( [Link]( ( int )
[Link] ) !=
0 );
// Get the return double value of async CCI command.
double Entity_Outline = [Link]( ( int )
[Link] );
Table 24: DoubleValue Async
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 25
LongValue Async Set
Get
DLL Function int CCI_Return = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciGetLongValue(int Value_Type)
Description Get CCI return of async CCI command. Supported commands:
· ScExecCommand
· ScImport
· ScLoadJob
· ScMarkEntityByName
· ScRotateEntity
· ScScaleEntity
· ScTranslateEntity
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncModeResult 30
CCI_Return Type: int
CCI return number, see error list.
Notes · Async mode must be enabled.
C# Example: Async ScExecCommand:
// With enabled async mode the CCI commmand returns immediately without returning an answer.
int dummy = [Link]( ( int )
[Link] );
do
{
// Your operations while async CCI command executes.
}
// Check if cci command is completed.
while( [Link]( ( int )
[Link] ) !=
0 );
// Get the integer cci return of async CCI command.
int CCI_Return = [Link]( ( int )
[Link] );
Table 25: LongValue Async
© 2024 SCAPS GmbH
Client Control Interface Manual - Application 26
StringValue Async Set
Get
DLL Function int CCI_Return = ScGetStringValue(int Value_Type, ref string Parameter)
ASCII Function string Parameter = ScCciGetStringValue(int Value_Type)
Description Get string value of async CCI command. Supported commands:
· ScGetStringValue
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncModeResult 18
Parameter Type: string Unit: none
String value.
CCI_Return Type: int
CCI return number, see error list.
Notes · Async mode must be enabled.
C# Example: Async ScGetStringValue:
string dummy_01 = "";
// With enabled async mode the CCI commmand returns immediately without returning an answer.
int dummy_02 = [Link]( ( int )
[Link], ref dummy_01 );
do
{
// Your operations while async CCI command executes.
}
// Check if cci command is completed.
while( [Link]( ( int )
[Link] ) !=
0 );
// Get the return string of async CCI command.
string Corr_File = "";
int CCI_Return = [Link]( ( int )
[Link], ref Corr_File );
Table 26: StringValue Async
4 Global Settings
The following chapter will guide you through the commands used to set up the main parameters and global
settings. In SAMLight this functions can be found at Settings System. The main structure follows the
structure of SAMLight. In total there are more tabs at Settings System than subchapters. Not all options
in SAMLight are also implemented in CCI, meaning that if one tab is not listed as subchapter here, then we
do not have any commands for this tab. Even not all functions of SAMLight are also available in CCI. There
is an additional subsection sc_setup, which was located here.
· View
· Optic
· General
· Remote
· I/O
· Extras
· Splitting
· User Level
· sc_setup
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 27
4.1 View
This subchapter refers in SAMLight to Settings System View to change the Toolbar settings.
· CCI Text Toolbar
· Nudge Step
· Toolbar Settings
CCI Text Toolbar Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Text)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Text)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Text)
string Text = ScCciGetStringValue(int Value_Type)
Description Set or get the text displayed in the CCI text toolbar.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeCciToolbar 41
Text Type: string Unit: none
Text displayed in the CCI text toolbar.
CCI_Return Type: int
CCI return number, see error list.
Notes · The toolbar has to be enabled in SAMLight before and the width can be defined.
· If the text string is too long, it will not be displayed completely.
C# Example: Set the text in the CCI text toolbar to "SCAPS USC":
int CCI_Return = [Link]((int)
[Link], "SCAPS USC");
C# Example: Get the currently displayed text in the CCI text toolbar:
string Text = "";
int CCI_Return = [Link]((int)
[Link], ref Text);
Table 27: CCI Text Toolbar
Nudge Step Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get global Nudge Step.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeNudgeX 164
Nudge step size in x-direction.
scComSAMLightClientCtrlDoubleValueTypeNudgeY 165
Nudge step size in y-direction.
Parameter Type: double Unit: [mm]*
The desired value.
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 28
Nudge Step Set
Get
CCI_Return Type: int
CCI return number, see error list.
Notes The default unit is mm, but the user can select a different unit.
C# Example: Set nudge step size in x-direction to 20.0mm:
int CCI_Return = [Link]( ( int )
[Link], 20.0 );
C# Example: Get current nudge step size in x-direction:
double Nudge_X = [Link]( ( int )
[Link]);
Table 28: Nudge Step
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 29
Toolbar Settings Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Flag)
int Flag = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Flag)
int Flag = ScCciGetLongValue(int Value_Type)
Description This function can be used to set or get the current state of the SAMLight toolbars.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeShowToolBars 103
Flag Type: int Flag:
Location: None
SC_SHOW_TOOLBAR_MAIN 0x1
The main toolbar includes such functions, as Open File, Save Job, undo, redo and
so on. It corresponds to the file toolbar in the toolbar settings.
SC_SHOW_TOOLBAR_CAMERA 0x2
Background camera toolbar.
SC_SHOW_TOOLBAR_VIEW_LEVEL 0x4
View level toolbar provides two arrow buttons for increasing or decreasing the
view level of the entity list.
SC_SHOW_TOOLBAR_FUNC_OBJECTS 0x8
The functionality objects toolbar includes timer, wait for trigger and other control
objects, some entity objects such as date time or serial number and data wizard and
parameter finder.
SC_SHOW_TOOLBAR_ALIGN 0x10
Align toolbar containing object alignment settings.
SC_SHOW_TOOLBAR_GEOM_OBJECTS 0x20
Geometry objects toolbar.
SC_SHOW_TOOLBAR_EXTRAS 0x40
Extras toolbar, containing the splitting, step/repeat and bitmap splitting settings.
SC_SHOW_TOOLBAR_STEPPER 0x80
Stepper position toolbar.
SC_SHOW_TOOLBAR_SURFACE 0x100
3D surfaces toolbar. This toolbar is available only if the option Optic3D license is
present.
SC_SHOW_TOOLBAR_ANALOG_IN 0x200
Analog In toolbar. Only available if USC-2/-3 is used.
CCI_Return Type: int
CCI return number, see error list.
Notes · The flags can be combined by using logical operators. Please refer to the chapter
How to work with Flags for more information.
C# Example: Activate camera toolbars:
int CCI_Return = [Link]((int)
[Link], 0x2);
C# Example: Check camera toolbar state:
int Toolbar_State = [Link]((int)
[Link]);
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 30
Table 29: Toolbar Settings
4.2 Optic
The following parameters can be found in SAMLight at Settings System Optic. It could be that not all
parameters or options are given here. This subchapter lists all available options for this dialog. Here you can
go deeper into detail at the following buttons, which contain further options:
· Min / Max
· Advanced
The following parameters can be set in optic:
· Correction File
· Field Size
· Field Size and Working Area
· Gain
· Home Position
· Offset
· Optic Axis State
· Optic Rotation
· Red Pointer Parameters
· Save Lens Settings
Correction File Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Path)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Path)
string Path = ScCciGetStringValue(int Value_Type)
Description Set or get the path of the required correction file.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeCorrectionFile 13
Set a new correction file or get the path of the current correction file.
scComSAMLightClientCtrlStringValueTypeCorrectionFileHead2 23
Set a new correction file or get the path of the current correction file on Head 2.
scComSAMLightClientCtrlStringValueTypeCorrectionFileLcf 29
Using this constant a new correction file can be set or the current path of the
correction file can be get. If a *.lcf file exists with the same name and in the same
folder as the *.ucf file the lens parameters will be applied as well. If more than one
scanhead is to be operated, the head number has to be specified with ScSetHead
first. It is not possible to call this constant during marking.
scComSAMLightClientCtrlStringValueTypeCorrectionFileLcfLensInit 30
Using this constant a new correction file can be set or the current path of the
correction file can be get. If a *.lcf file exists with the same name and in the same
folder as the *.ucf file the lens parameters will be applied as well. If a *.sjf file exists
with the same name and in the same folder as the *.ucf file the Lens Init Job will be
executed as well. If more than one scanhead is to be operated, the head number
has to be specified with ScSetHead first. It is not possible to call this constant during
marking.
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 31
Correction File Set
Get
Path Type: string Unit: none
The directory path of the correction file.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Set correction file:
int CCI_Return = [Link]((int)
[Link], "C:\
\[Link]");
C# Example: Get path of correction file:
string Corr_File = "";
int CCI_Return = [Link]((int)
[Link], ref Corr_File);
Table 30: Correction File
Field Size Set
Get
DLL Function double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function double Parameter = ScGetDoubleValue(int Value_Type)
Description Get the field size in sc_setup.exe.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeFieldMinX 119
Set Minimum fieldsize in x direction.
scComSAMLightClientCtrlDoubleValueTypeFieldMinY 120
Set Minimum fieldsize in y direction.
scComSAMLightClientCtrlDoubleValueTypeFieldMaxX 121
Set Maximum fieldsize in x direction.
scComSAMLightClientCtrlDoubleValueTypeFieldMaxY 122
Set Maximum fieldsize in y direction.
Parameter Type: int Unit: none
Set fieldsize parameter value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The field size can be set via ScSetFieldSizeAndWorkingArea.
C# Example: Get min Y field size:
double Field_Min_Y = [Link]((int)
[Link]);
Table 31: Field Size
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 32
Field Size and Working Area Set
Get
DLL Function int CCI_Return = ScSetFieldSizeAndWorkingArea(double Field_Size, double Field_Size_Center_X,
double Field_Size_Center_Y, double Working_Area_Min_X, double Working_Area_Min_Y, double
Working_Area_Max_X, double Working_Area_Max_Y)
ASCII Function int CCI_Return = ScSetFieldSizeAndWorkingArea(double Field_Size, double Field_Size_CenterX,
double Field_Size_CenterY, double Working_Area_MinX, double Working_Area_MinY, double
Working_Area_MaxX, double Working_Area_MaxY)
Description Set the field size and working area.
Field_Size Type: double Unit: [mm]*
Set field size diameter.
Field_Size_Center_X Type: double Unit: [mm]*
Set field size center x coordinate.
Field_Size_Center_Y Type: double Unit: [mm]*
Set field size center y coordinate.
Working_Area_Min_X Type: double Unit: [mm]*
Set working area minimum x coordinate.
Working_Area_Min_Y Type: double Unit: [mm]*
Set working area minimum y coordinate.
Working_Area_Max_X Type: double Unit: [mm]*
Set working area maximum x coordinate.
Working_Area_Max_Y Type: double Unit: [mm]*
Set working area maximum y coordinate.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set field size and working area:
int CCI_Return = [Link](200, 100, 100, 0, 0, 200, 200);
Table 32: Field Size and Working Area
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 33
Gain Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Gain)
double Gain = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Gain)
double Gain = ScCciGetDoubleValue(int Value_Type)
Description Set or get the gain x/y correction factor of the optic.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeGainX 46
Set or get the gain x correction factor of the optic.
scComSAMLightClientCtrlDoubleValueTypeGainY 47
Set or get the gain y correction factor of the optic.
Gain Type: double Unit: none
Set or get the gain factor for x or y.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set gain X:
int CCI_Return = [Link]((int)
[Link], 0.95);
C# Example: Get gain Y:
double Gain = [Link]((int)
[Link]);
Table 33: Gain
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 34
Home Position Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Home_Position)
double Home_Position = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Home_Position)
double Home_Position = ScCciGetDoubleValue(int Value_Type)
Description Set or get the home position.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeHomePosX 23
Set or get the home position x.
scComSAMLightClientCtrlDoubleValueTypeHomePosY 24
Set or get the home position y.
scComSAMLightClientCtrlDoubleValueTypeHomePosZ 25
Set or get the home position z.
Home_Position Type: double Unit: [mm]*
Set or get the home position coordinate x/y/z.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set home Ppsition X:
int CCI_Return = [Link]((int)
[Link], 50.0);
C# Example: Get home position Z:
double Home_Postion = [Link]((int)
[Link]);
Table 34: Home Position
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 35
Offset Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Offset)
double Offset = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Offset)
double Offset = ScCciGetDoubleValue(int Value_Type)
Description Set or get the Offset x/y correction factor of the optic.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeOffsetX 58
Set or get the offset x correction factor of the optic.
scComSAMLightClientCtrlDoubleValueTypeOffsetY 59
Set or get the offset y correction factor of the optic.
scComSAMLightClientCtrlDoubleValueTypeOffsetZ 90
Only for RTC cards. Set or get the offset z correction factor of the optic in
sc_setup.exe. Requires Optic3D license.
Offset Type: double Unit: [mm]*
Set offset factor for x/y/z.
CCI_Return Type: int
CCI return number, see error list.
Notes · Z Offset can only be set in sc_setup.
· The default unit is mm, but the user can select a different unit.
C# Example: Set offset X:
int CCI_Return = [Link]((int)
[Link], 10.0);
C# Example: Get offset X:
double Offset_X = [Link]((int)
[Link]);
Table 35: Offset
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 36
Optic Axis State Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Axis_State)
int Axis_State = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Axis_State)
int Axis_State = ScCciGetLongValue(int Value_Type)
Description Set or get the current state of the optical axis, whether inverted or not.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeOpticAxisState 110
Axis_State Type: int Index:
Location: None
All axes are normal & XY-axis also normal 0
X-axis inverted 1
Y-axis inverted 2
X- & Y-axes inverted 3
XY-axis flipped 4
X-axis inverted & XY-axis flipped 5
Y-axis inverted & XY-axis flipped 6
X- & Y-axis inverted & XY-axis flipped 7
Z-axis inverted 8
X- & Z-axes inverted 9
Y- & Z-axes inverted 10
X-, Y- & Z-axes inverted 11
Z-axis inverted & XY-axis flipped 12
X- & Z-axes inverted & XY-axis flipped 13
Y- & Z-axes inverted & XY-axis flipped 14
X-, Y- & Z-axes inverted & XY-axis flipped 15
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Invert X axis:
int CCI_Return = [Link]((int)
[Link], 1);
C# Example: Get optic axis state:
int Axis_State = [Link]((int)
[Link]);
Table 36: Optic Axis State
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 37
Optic Rotation Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Rotation_Angle)
double Rotation_Angle = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Rotation_Angle)
double Rotation_Angle = ScCciGetDoubleValue(int Value_Type)
Description Set or get the rotation value of the optic.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeOpticRotation 111
Rotation_Angle Type: double Unit: [deg]
Set or get the rotation angle.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set optic rotation to 45 deg:
int CCI_Return = [Link]((int)
[Link], 45.0);
C# Example: Get optic rotation:
double Rotation_Angle = [Link]((int)
[Link]);
Table 37: Optic Rotation
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 38
Red Pointer Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the Red Pointer Parameters Offset and Wavelength Factor.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeRedPointerOffsetX 154
Red Pointer Offset in X direction. [mm]
scComSAMLightClientCtrlDoubleValueTypeRedPointerOffsetY 155
Red Pointer Offset in Y direction. [mm]
scComSAMLightClientCtrlDoubleValueTypeRedPointerFactorX 156
Wavelength factor in X direction.
scComSAMLightClientCtrlDoubleValueTypeRedPointerFactorY 157
Wavelength factor in Y direction.
Parameter Type: double Unit: Depends on constant
Set or get the desired parameter value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set Offset X:
int CCI_Return = [Link]((int)
[Link], 1.10);
C# Example: Get Wavelength Factor Y:
double Factor = [Link]((int)
[Link]);
Table 38: Red Pointer Parameters
Save Lens Settings Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Saves the current pens to the settings file.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSaveLcfFile 79
CCI_Return Type: int
CCI return number, see error list.
Notes Existing files are overwritten without inquiry.
C# Example: Save Lens Settings:
int CCI_Return = [Link]((int)
[Link]);
Table 39: Save Lens Settings
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 39
4.2.1 Min / Max ...
The following parameters can be found in SAMLight at Settings System Optic Min/Max.
· Field Size and Working Area Optic
· Laser Frequency, Jump and Mark Speed Limits
· Working Area
· Working Area 2D
Laser Frequency, Jump and Mark Speed Limits Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Frequency)
double Frequency = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Frequency)
double Frequency = ScCciGetDoubleValue(int Value_Type)
Description Set or get the laser frequency.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMinFrequency 124
Minimum frequency of the laser. [kHz]
scComSAMLightClientCtrlDoubleValueTypeMaxFrequency 125
Maximum frequency of the laser. [kHz]
scComSAMLightClientCtrlDoubleValueTypeMinMarkSpeed 128
Minimum mark speed. [mm/s]
scComSAMLightClientCtrlDoubleValueTypeMaxMarkSpeed 129
Maximum mark speed. [mm/s]
scComSAMLightClientCtrlDoubleValueTypeMinJumpSpeed 130
Minimum jump speed. [mm/s]
scComSAMLightClientCtrlDoubleValueTypeMaxJumpSpeed 131
Maximum jump speed. [mm/s]
Frequency Type: double Unit: depends on constant
Minimum or maximum laser frequency.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set minimum laser frequency:
int CCI_Return = [Link]((int)
[Link], 5.0);
C# Example: Get maximum laser frequency:
double Max_Frequency = [Link]((int)
[Link]);
Table 40: Laser Frequency
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 40
Working Area Set
Get
DLL Function double Working_Area = ScGetWorkingArea(int Index)
ASCII Function double Working_Area = ScCciGetWorkingArea(int Index)
Description Get the working area.
Working_Area Type: int Unit: [mm]*
Get the wanted parameter for the working area.
Index Type: int Index:
Location: None
SC_SAMLIGHT_OUTLINE_INDEX_MIN_X 0
SC_SAMLIGHT_OUTLINE_INDEX_MIN_Y 1
SC_SAMLIGHT_OUTLINE_INDEX_MIN_Z 2
SC_SAMLIGHT_OUTLINE_INDEX_MAX_X 3
SC_SAMLIGHT_OUTLINE_INDEX_MAX_Y 4
SC_SAMLIGHT_OUTLINE_INDEX_MAX_Z 5
Notes · The default unit is mm, but the user can select a different unit.
· 2D system: Z parameters return the x dimension.
C# Example: Get working area z_min:
double Z_Min = [Link](3);
Table 41: Working Area
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 41
Working Area 2D Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Working_Area)
double Working_Area = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = (int Value_Type, double Working_Area)
double Working_Area = ScCciGetDoubleValue(int Value_Type)
Description Set or get the working area.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMinX 68
Minimum x coordinate of the working area.
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMinY 69
Maximum x coordinate of the working area.
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMaxX 70
Minimum y coordinate of the working area.
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMaxY 71
Maximum y coordinate of the working area.
Working_Area Type: double Unit: [mm]*
Set home position coordinate x/y/z.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set working area xmin:
int CCI_Return = [Link]((int)
[Link], 500.0);
C# Example: Get working area ymax:
double Max_Y = [Link]((int)
[Link]);
Table 42: Working Area 2D
4.2.2 Advanced
The following parameters can be found in SAMLight at Settings System Optic Advanced.
The CCI commands for inputs, outputs and output inversions are described here.
· Is Card Allowed
· Load from USC3
· Restore Transformation
· Store Flash Settings
Is Card Allowed Set
Get
DLL Function int Allowed = ScGetLongValue(int Value_Type)
ASCII Function int Allowed = ScCciGetLongValue(int Value_Type)
Description Check if the card can be accessed.
Allowed Type: int Unit: none
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 42
Is Card Allowed Set
Get
· 0: JobIO Select or running flash job.
· 1: OK.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeIsCardAccesAllowed 112
Notes -
C# Example: Is Card Allowed:
int Allowed = [Link]((int)
[Link]);
Table 43: Is Card Allowed
Load from USC3 Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Load the current stored settings from the USC3 in SAMLight.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandLoadHeadFromUSC3 64
CCI_Return Type: int
CCI return number, see error list.
Notes · Only for USC3
· Only head specific settings are loaded.
C# Example: Load current settings from USC3:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlExecCommandConstants.scComSAMLightClientCtrlExecCommandLoadHeadFromUSC3);
Table 44: Load from USC3
Restore Transformation Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Index)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Index)
Description Store the matrix of each entity, recover them and update if needed. Mark, then shift
and get later original positions back.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeStoreRestoreTransformation 32
Index Type: int Index:
Location: None
RESTORE_TRANSFORMATION_STORE 0
RESTORE_TRANSFORMATION_RESTORE 1
RESTORE_TRANSFORMATION_RESTORE_WITH_UPDATE 2
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 43
Restore Transformation Set
Get
Notes -
C# Example: Store transformation:
int CCI_Return = [Link]((int)
[Link], 0);
Table 45: Restore Transformation
Store Flash Settings Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Stores the settings to the USC-card EPCS (this is necessary for stand-alone
operation). Make sure that the settings fit to the laser and other machinery. The
settings will be loaded during powering on the card.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandStoreFlashSettings 58
CCI_Return Type: int
CCI return number, see error list.
Notes · Do not use for USC-1 since it has no Flash memory.
C# Example: Store flash settings:
int CCI_Return = [Link]((int)
[Link]);
Table 46: Store Flash Settings
[Link] Head Optic Settings
· Primary Head Parameter
· Secondary Head Entity Parameter
· Secondary Head Parameter
Primary Head Parameter Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get different primary head parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadOffsetX 65546
The offset X correction factor of the primary head can be set or get. [mm]*
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadOffsetY 65547
The offset Y correction factor of the primary head can be set or get. [mm]*
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadGainX 65548
The gain X correction factor of the primary head can be edited. [mm]*
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 44
Primary Head Parameter Set
Get
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadGainY 65549
The gain Y correction factor of the primary head can be edited. [mm]*
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadRotate 65550
Using this constant the rotational angle of the primary head can be set or get. [deg]
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadEnable 65551
Using this constant the primary head can be activated or deactivated.
Parameter Type: int Unit: depends on constant
Set or get the required parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
· If the command is sent during marking, it will be applied to the next one - not the
current.
C# Example: Set gain X for primary head:
int CCI_Return = [Link]((int)
[Link], 0.8);
C# Example: Head offset X for primary head:
double Parameter = [Link]((int)
[Link]);
Table 47: Primary Head Parameters
Secondary Head Entity Parameter Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get different secondary head entity parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationOffsetX 88
The offset X correction factor for secondary head entities can be set or get. [mm]*
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationOffsetY 89
The offset Y correction factor for secondary head entities can be set or get. [mm]*
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationScaleX 90
The scale X correction factor for secondary head entities can be edited. [mm]*
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationScaleY 91
The scale Y correction factor for secondary head entities can be edited. [mm]*
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationRotation 92
The rotational angle of the secondary head can be set or get. [deg]
Parameter Type: int Unit: depends on constant
Set or get the required parameter.
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 45
Secondary Head Entity Parameter Set
Get
Notes · These secondary head transformation commands are only available for USC-2/3
with license for Head2 and activated Head2.
· The default unit is mm, but the user can select a different unit.
C# Example: Set offset X for secondary head:
int CCI_Return = [Link]("Entity_1", (int)
[Link], 2.55);
C# Example: Get head offset X for secondary head:
double Offset_X = 0.0;
int CCI_Return = [Link]("Entity_1", (int)
[Link], ref
Offset_X);
Table 48: Secondary Head Entity Parameters
Secondary Head Parameter Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get different secondary head parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadOffsetX 65552
The offset X correction factor of the secondary head can be set or get. [mm]*
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadOffsetY 65553
The offset Y correction factor of the secondary head can be set or get. [mm]*
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadGainX 65556
The gain X correction factor of the secondary head can be edited. [mm]*
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadGainY 65557
The gain Y correction factor of the secondary head can be edited. [mm]*
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadRotate 65558
The rotational angle of the secondary head can be set or get. [deg]
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadEnable 65559
Using this constant the secondary head can be activated or deactivated.
Parameter Type: int Unit: depends on constant
Set or get the required parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes · These secondary head transformation commands are only available for USC-2/3
with license for Head2 and activated Head2.
· The default unit is mm, but the user can select a different unit.
C# Example: Set gain X for secondary head:
int CCI_Return = [Link]((int)
[Link], 0.8);
C# Example: Head offset X for secondary head:
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 46
Secondary Head Parameter Set
Get
double Parameter = [Link]((int)
[Link]);
Table 49: Secondary Head Parameters
[Link] MOTF hardware settings
· Enable MOTF
· MOTF Start Delay
· USC-1 MOTF
· USC-2/3 MOTF
Enable MOTF Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Enable)
int Enable = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Enable)
int Enable = ScCciGetLongValue(int Value_Type)
Description Allows you to enable or disable the checkbox for marking on the fly settings in
Settings/Optic/Advanced.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableMotf 91
Enable Type: int Unit: none
· 0: Disable
· 1: Enable
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable MOTF:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Check state of the flag:
int Enable = [Link]( ( int )
[Link]);
Table 50: Enable MOTF
MOTF Start Delay Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Start_Delay)
double Start_Delay = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Start_Delay)
double Start_Delay = ScCciGetDoubleValue(int Value_Type)
Description Set or get the MOTF trigger delay for RTC cards.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMOFExtStartDelay 65
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 47
MOTF Start Delay Set
Get
Start_Delay Type: int Unit: [µs]
Set or get the trigger delay for RTC cards.
CCI_Return Type: int
CCI return number, see error list.
Notes · Only useable for RTC cards.
C# Example: Set delay to 200µs:
int CCI_Return = [Link]( (int)
[Link], 200.0 );
C# Example: Get delay:
double Start_Delay = [Link]( (int)
[Link] );
Table 51: MOTF Start Delay
USC-1 MOTF Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get different primary head parameters.
ValueType Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfCh0Multiplier 65539
This constant is used to set or get the multiplier value for channel 0. [mm]*
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfCh1Multiplier 65540
This constant is used to set or get the multiplier value for channel 1. [mm]*
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfSimulate 65638
Set or get the flag simulation. 0 - Disable, 1 - Enable
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfUseYChannel 65640
Set or get the flag Use Y Channel. 0 - Disable, 1 - Enable
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfInvertOffset 65661
Set or get the flag invert offset. 0 - Disable, 1 - Enable
Parameter Type: int Unit: depends on constant
Set or get the required parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Enable channel 0 simulation mode:
int CCI_Return = [Link]( (int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Simulate, 1 );
C# Example: Get channel 0 simulation state:
double Parameter = [Link]( (int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Simulate );
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 48
Table 52: USC-1 MOTF
USC-2/3 MOTF Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get different primary head parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Enable 65662
Enable channel 0 MOTF.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Enable 65663
Enable channel 1 MOTF.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Simulate 65664
Enable simulation mode for channel 0.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Simulate 65665
Enable simulation mode for channel 1.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0SwapAB 65666
This constant is used to set or get SwapAB for channel 0.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1SwapAB 65667
This constant is used to set or get SwapAB for channel 1.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Mode 65668
This constant is used to set or get the Mode for channel 0.
· 0: X.
· 1: Y.
· 2: Rotation.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Mode 65669
This constant is used to set or get the Mode for channel 1.
· 0: X.
· 1: Y.
· 2: Rotation.
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Multiplier 65670
This constant is used to set or get the multiplier value for channel 0. [mm]*
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Multiplier 65671
This constant is used to set or get the multiplier value for channel 1. [mm]*
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Counter 65718
Get the MOTF channel 0 counter. (get-only)
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Counter 65719
Get the MOTF channel 1 counter. (get-only)
Parameter Type: int Unit: depends on Constant
Set or get the required parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes The default unit is mm, but the user can select a different unit.
C# Example: Enable simulation mode:
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 49
USC-2/3 MOTF Set
Get
int CCI_Return = [Link]( (int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Enable, 1 );
C# Example: Get flag simulation:
double Parameter = [Link]( (int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Enable );
Table 53: USC-2/3 MOTF
4.3 General
The following parameters can be found in SAMLight at Settings System General.
· Mode Application
o Don't Update View
o DisableUndo
· Save Pens Now
· Save Settings Now
Save Pens Now Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Saves the current pens to the settings file.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSaveSettingsNow 77
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Save Pens now:
int CCI_Return = [Link]((int)
[Link]);
Table 54: Save Pens Now
Save Settings Now Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Saves the current settings to the settings file.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSaveSettingsNow 51
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 50
Save Settings Now Set
Get
Notes -
C# Example: Save settings now:
int CCI_Return = [Link]((int)
[Link]);
Table 55: Save Settings Now
4.4 Remote
The following parameters can be found in SAMLight at Settings System Remote.
· Connection Status
· Open TCP Connection
Connection Status Set
Get
DLL Function int Status = ScGetConnectionStatus()
ASCII Function -
Description Get the connection state for CCI via TCP.
Status Type: int Index:
Location: ScComConnectionToolCtrlResultValues
scComConnectionToolCtrlResultOK 0
If connected, the return value is 0.
scComConnectionToolCtrlResultOpenFailed 1
The connection could not be opened.
scComConnectionToolCtrlResultConnectRecipientFailed 2
The recipient could not connect.
scComConnectionToolCtrlResultSendFailed 3
Sending failed.
scComConnectionToolCtrlResultTimeOut 4
In case of a timeout.
Notes -
C# Example: Get connection status:
int Status = [Link]();
Table 56: Connection Status
Open TCP Connection Set
Get
DLL Function int CCI_Return = ScOpenTCPConnection(string Recipient_Address, int Recipient_Port)
ASCII Function -
Description Opens an TCP connection to the scanner application through the network and
returns 1 if the connection could be established successfully. The RecipientAddr is
the IP and the RecipientPort is the Port of the application that has to be accessed
using the client control interface as described above. For the recipient IP in every
case the real IP of the host systems network interface card has to be entered where
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 51
Open TCP Connection Set
Get
the application that has to be remote controlled is running. If that application was
configured using [Link] it is not allowed to enter that value here.
Recipient_Address Type: string Unit: none
Set an IP-Address.
Recipient_Port Type: int Unit: none
Set the recipient port.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Open a TCP connection:
int CCI_Return = [Link]("[Link]", 111);
Table 57: Open TCP Connection
4.5 I/O
The following parameters can be found in SAMLight at Settings System I/O.
· Job Toolbar
· Job Execution Delay
· Last Message Input Hardware Status
Job Execution Delay Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Execution_Delay)
int Execution_Delay = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Execution_Delay)
int Execution_Delay = ScCciGetLongValue(int Value_Type)
Description Set or get the global parameter job execution delay.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeJobExecutionDelay 12
Execution_Delay Type: int Unit: [ms]
Enter the required value for the Job Execution Delay.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set job execution delay to 200ms:
int CCI_Return = [Link]((int)
[Link], 200);
C# Example: Get job execution delay:
int Execution_Delay = [Link]((int)
[Link]);
Table 58: Job Execution Delay
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 52
Job Toolbar Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Set or get the status of the Jobs Toolbar.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableJobToolbar 88
Parameter Type: int Unit: none
· 0: Enable Job toolbar.
· 1: Disable Job toolbar.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable job toolbar:
int CCI_Return = [Link]((int)
[Link], 1);
C# Example: Get job toolbar state:
int CCI_Return = [Link]((int)
[Link]);
Table 59: Job Toolbar
4.6 Extras
The following parameters for Improved Beam Compensation can be found and only be set in SAMLight at
Settings System Extras.
· Grayscale PixelMap Mode
· Improved Beam Compensation
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 53
Grayscale PixelMap Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int PixelMap_Mode)
int PixelMap_Mode = ScGetLongValue(int Value_Type)
ASCII Function -
Description Set or get the status of the SAMLight Improved Beam Compensation.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypePixelMapType 150
PixelMap_Mode Type: int Unit: none
· 0: Dynamic Grayscale Map disabled
· 1: Dynamic Grayscale Map enabled, linear interpolation
· 2: Dynamic Grayscale Map enabled, cubic interpolation
· 3: Dynamic Grayscale Map enabled, hermite interpolation
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable Dynamic Grayscale Map and set interpolation to linear:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Check Grayscale PixelMap Mode
int PixelMap_Mode = [Link]( ( int )
[Link] );
Table 60: Grayscale PixelMap Mode
Improved Beam Compensation Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Improved_Beam_Compensation)
int Improved_Beam_Compensation = ScGetLongValue(int Value_Type)
ASCII Function -
Description Set or get the status of the SAMLight Improved Beam Compensation.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableImprovedBeamCompensation 137
Improved_Beam_ Type: int Unit: none
Compensation · 0: Disable Improved Beam Compensation
· 1: Enable Improved Beam Compensation
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable Improved Beam Compensation:
int CCI_Return = [Link]( ( int )
[Link], 0 );
C# Example: Check if Improved Beam Compensation is enabled:
int Mode = [Link]( ( int )
[Link] );
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 54
Table 61: Improved Beam Compensation
4.7 Splitting
The following parameters for Ring Splitting can be found and only be set in SAMLight at Settings System
Splitting. In addition there is a Ring Splitting dialog, see Splitting Ring Splitting.
· Ring Splitting Enable Z Tilt Compensation see Splitting Ring Splitting
· Tilt Compensation Parameters
· Z Motion Axis
Tilt Compensation Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get parameters for the Ring splitting tilt compensation.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeRingSplittingZTiltAngle 115
Set or get the Z tilt angle for ring splitting. [deg]
scComSAMLightClientCtrlDoubleValueTypeRingSplittingZSpindleCenterHeight 116
Set the Z spindle center height. [mm]*
scComSAMLightClientCtrlDoubleValueTypeRingSplittingSpindleRadius 117
Set the spindle radius. [mm]*
scComSAMLightClientCtrlDoubleValueTypeRingSplittingZRingCenterHeight 118
Set the Z ring center height at 90°. [mm]*
Parameter Type: int Unit: depends on constant
Set the required value.
CCI_Return Type: int
CCI return number, see error list.
Notes · Further commands can be found in the ring splitting chapter.
· The default unit is mm, but the user can select a different unit.
C# Example: Set the ring splitting spindle radius:
int CCI_Return = [Link]((int)
[Link], 5);
C# Example: Get the ring splitting spindle radius:
double Parameter = [Link]((int)
[Link]);
Table 62: Tilt Compensation Parameters
Z Motion Axis Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Z_Motion_Axis)
int Z_Motion_Axis = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Z_Motion_Axis)
int Z_Motion_Axis = ScCciGetLongValue(int Value_Type)
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 55
Z Motion Axis Set
Get
Description Set or get the wanted axis for the z motion.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeRingSplittingZMotionAxis 97
Z_Motion_Axis Type: int Unit: none
Select the wanted axis for z motion. The numbering of the possible motion axis
begins with 0 for the first axis with Position mode, followed by other Position mode
axes. Axes with Angle mode are ignored, as shown in the Z motion axis combo box.
CCI_Return Type: int
CCI return number, see error list.
Notes · Further commands can be found in the ring splitting chapter.
C# Example: Set the Z Motion Axis:
int CCI_Return = [Link]((int)
[Link], 1);
C# Example: Get the Z Motion Axis:
int Z_Motion_Axis = [Link]((int)
[Link]);
Table 63: Z Motion Axis
4.8 User level
The following parameters can be found in SAMLight at Settings System User Level.
· User Account
· User Logout
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 56
User Account Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Parameter)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Parameter)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Parameter)
string Parameter = ScCciGetStringValue(int Value_Type)
Description Get current user and login an other user.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeCurrentUserName 33
Get the current logged in user name.
scComSAMLightClientCtrlStringValueTypeLoginUserAndPassword 38
Login an other user with user name and password.
Parameter Type: string Unit: none
· Get CurrentUserName: user name
· Set LoginUserAndPassword: user name and password separated by a horizontal
tab ("\t", ASCII 0x08).
CCI_Return Type: int
CCI return number, see error list.
Notes · User level has to activated before, otherwise the returned string is empty.
C# Example: Login as Supervisor with password abc123:
int CCI_Return = [Link]( ( int )
[Link], "Supervisor"
+ "\t" + "abc123" );
C# Example: Get the name of the current user:
string User_Name = "";
int CCI_Return = [Link]( ( int )
[Link], ref User_Name );
Table 64: User Account
User Logout Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Log out the current user in SAMLight.
Cmd_ID Type: int
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandLogout 47
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Log out the current user:
int CCI_Return = [Link]( ( int )
[Link] );
Table 65: User Logout
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 57
4.9 sc_setup
The following commands can not be set in the global settings of SAMLight. Here it is required to open the
sc_setup. Since this are global parameters, these commands are also listed in the global settings.
· DA1/DA2
· Language
· Laser Type
· Z Offset Optic
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 58
DAC A/B Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int DAC)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int DAC)
Description Set the analog output 1 or 2 of the scanner controller card (DAC_A/DA1 or
DAC_B/DA2).
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDA1 6
Set the analog output 1 of the scanner controller card (DAC_A).
scComSAMLightClientCtrlLongValueTypeDA2 7
Set the analog output 2 of the scanner controller card (DAC_B).
DAC Type: int Unit: none
The values that can be set in principle range from 0 to 65535 (2^16-1). But
depending on USC card and preselected DAC_A/DAC_B voltage signal range of 2.5,
5 and 10V only the 8 to 12 most significant of 16 bits can be actual used to set the
DAC_A/DAC_B value, see Notes below.
CCI_Return Type: int
CCI return number, see error list.
Notes · The commands will just set the output and will not change the pen power.
· For USC-2/-3 card values 2^6-1 correspond to a voltage of 0V of the preselected
DAC_A/DAC_B voltage signal range of 0 to 2.5V, values 2^5-1 correspond to a
voltage of 0V of the preselected DAC_A/DAC_B voltage signal range of 0 to 5V
and values 2^4-1 correspond to a voltage of 0V of the preselected
DAC_A/DAC_B voltage signal range of 0 to 10V. So for USC-2/-3 only the 10,11
or 12 most significant of 16 bits from 2^4-1=15, 2^5-1=31 and 2^6-1=63 to 2^16-
1=65535 can be actual used to set the DAC_A/DAC_B value, which corresponds
to a resolution range between 0 to 1023, 2047 and 4095. For USC-2/-3 the set
value can checked at InfoView of sc_usc_server.exe for Member AnalogOutA and
AnalogOutB.
· For USC-1 card values 2^8-1 = 255 correspond to a voltage of 0V, independent
of the preselected DAC_A/DAC_B voltage signal range of 0 to 2.5, 5 or 10V. So
for USC-1 only the 8 most significant of 16 bits from 2^8-1=255 to 2^16-1=65535
can be actual used to set the DAC_A/DAC_B value, which corresponds to a
resolution range between 0 and 255.
C# Example: Set DAC_A to maximum value value of USC-3 of 2^16-1=65535:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeDA1, (int)[Link](2, 16)-1);
C# Example:Set DAC_B to minimum value of 2^4-1=15 for USC-3 for the preselected DAC_A/DAC_B
voltage signal range between 0 and 10V:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeDA2, (int)[Link](2, 4)-1);
Table 66: DAC A/DAC B
© 2024 SCAPS GmbH
Client Control Interface Manual - Global Settings 59
Language Set
Get
DLL Function int CCI_Return = ScGetStringValue(int Value_Type, ref string Language)
ASCII Function string Language = ScCciGetStringValue(int Value_Type)
Description Get the current SAMLight language.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeLanguage 34
Language Type: string Unit: none
The language set in sc_setup.exe.
CCI_Return Type: int
CCI return number, see error list.
Notes · If Unicode is chosen "_uc" will be added at the end of the return string.
C# Example: Get the current SAMLight language:
string Language = "";
int CCI_Return = [Link]( ( int )
[Link], ref Language );
Table 67: Language
Laser Type Set
Get
DLL Function double Laser = ScGetDoubleValue(int Value_Type)
ASCII Function double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Get the required Laser Type and Version.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeLaserType 65597
Get Laser type.
scComSAMLightClientCtrlDoubleValueTypeLaserTypeVersion 65598
Get Laser type version.
Laser Type: int Unit: none
Get laser type and version.
Notes -
C# Example: Get laser type version:
int Laser_Version = [Link]((int)
[Link]);
Table 68: Laser Type
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 60
5 Pen Settings
The following chapter explains all commands, which can be used to edit the Pen Settings. There are
subchapters for each tab in the SAMLight Pen Settings:
· Advanced Settings
· Main
· Laser-Specials
· Scanner
· Misc
· Drill
· Ramping
· Path
· Bitmap
The following commands are described in this chapter:
· Copy Pen
· Entity Pen Assignment
· Group Flags
· Override Parameter
· Override Pen
· Pen Enable Flags
· Pen Name
· Pen Number
· Protected Pen
· Special Pen parameters
Copy selected Pen Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Index)
int Index = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Index)
int Index = ScCciGetLongValue(int Value_Type)
Description Copy previously selected pen to new pen.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeCopyCurrentPenToOtherPen 156
Parameter Type: int Index:
Pen number to copy to.
CCI_Return Type: int
CCI return number, see error list.
Notes
C# Example: Copy pen 1 to pen 2:
int CCI_Pen = [Link]( 1 );
int Copy = [Link]( ( int )
[Link],
2 );
Table 69: Copy Pen
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 61
Entity Pen Assignment Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Pen_Number)
int Pen_Number = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Pen_Number)
int Pen_Number = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the corresponding pen assigned to the entity.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySetPen 60
Set pen number.
scComSAMLightClientCtrlLongDataIdEntityGetPen 74
Get pen number.
Pen_Number Type: int Unit: none
Pen number [1, 255]
CCI_Return Type: int
CCI return number, see error list.
Notes · Entity_Name together with the flag
scComSAMLightClientCtrlModeFlagEntity_NamesSeparatedBySemicolon can
include more than one entity name. Therefore the names of the entities have to be
separated by a semicolon. If more than one entity with a given name exists, all of
them are marked.
C# Example: Set pen number 3 to "Entity1":
int CCI_Return = [Link]( "Entity1", ( int )
[Link], 3 );
C# Example: Get the pen number of "Entity1":
int Pen_Number = [Link]( "Entity1", ( int )
[Link] );
Table 70: Entity Pen Assignment
Group Flags Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Index)
int Index = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Index)
int Index = ScCciGetLongValue(int Value_Type)
Description Related flag for the currently selected pen.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDeviceEnableFlagsSet 8
Index Type: int Index:
Location: ScComSAMLightClientCtrlValueTypes
scComStandardDeviceEnableFlagGroupStyle 0
Set the flags values manually.
scComStandardDeviceEnableFlagGroupOptoOut 1
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 62
Group Flags Set
Get
The flag values correspond to the OptoOut bits of the scanner control card.
CCI_Return Type: int
CCI return number, see error list.
Notes · This function is used to choose the input regime for the DeviceEnableFlagsValue.
· Default Value: 0
C# Example: Set flags manually:
int CCI_Return = [Link]((int)
[Link],0);
Table 71: Group Flags
Override Parameter Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get global (for all pens) SAMLight override parameter.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeOverrideSpeed 1
Global SAMLight override speed.
scComSAMLightClientCtrlDoubleValueTypeOverridePower 2
Global SAMLight override power.
scComSAMLightClientCtrlDoubleValueTypeOverrideFrequency 3
Global SAMLight override frequency.
scComSAMLightClientCtrlDoubleValueTypeOverridePower2 22
Global SAMLight override power2.
Parameter Type: double Unit: [%]
The corresponding override value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set override power to 95.0%:
int CCI_Return = [Link]( (int)
[Link], 95.0 );
C# Example: Get current override power:
double Override_Frequency = [Link]( ( int )
[Link] );
Table 72: Override Parameter
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 63
Override Pen Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Override_Pen)
int Override_Pen = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Pen_Number)
int Override_Pen = ScCciGetLongValue(int Value_Type)
Description Set or get the pen number used to mark all entities in the job. The pen numbers that
are assigned to these entities in SAMLight will be ignored.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeOverridePen 16
Override_Pen Type: int Unit: none
· 0: Disable pen override feature
· 1-255: Pen number
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Use pen number 3 for all entities:
int CCI_Return = [Link]( ( int )
[Link], 3 );
C# Example: Get override pen number:
int Override_Pen = [Link]( ( int )
[Link] );
Table 73: Override Pen
Pen Enable Flags Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Pen_Enable_Flags)
int Pen_Enable_Flags = ScGetLongValue(int Flag_Value)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Pen_Enable_Flags)
int Pen_Enable_Flags = ScCciGetLongValue(int Flag)
Description Set or get various pen enable flags of the current selected pen.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDeviceEnableFlagsValue 9
Pen_Enable_Flags Type: int Flag:
Location: None
Pen Main LongDelay Enable 0x1
Pen Main Power Control Enable 0x2
Pen Scanner Wobble Enable 0x8
Pen Main Pen Standby Enable (RTC YAG only) 0x20
Pen Bitmap Pixel Hardware Mode Enable 0x40
Pen Misc SkyWriting Enable 0x2000
Pen Drill Drill Enable 0x4000
Pen Misc Defocus Enable 0x10000
Pen Drill CO2Power Enable 0x20000
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 64
Pen Enable Flags Set
Get
Pen Bitmap Pen PixelMap Enable 0x80000
Pen Drill Use Geometry Enable 0x100000
Pen Misc Apply power changes after jump Enable 0x200000
Pen Drill Point Power Map Enable 0x400000
Pen Bitmap Pen Power as Max Power Enable 0x800000
Pen Bitmap Use Vector Delays Enable 0x1000000
Pen Misc RTC5/6 SkyWriting Enable and Mode 1 0x2000000
Pen Misc RTC5/6 SkyWriting Mode 2 0x4000000
Pen Misc RTC5/6 SkyWriting Mode 3 0x8000000
Pen Drill Power Ramp for Points Enable 0x10000000
Pen Main Power2 Control Enable 0x20000000
CCI_Return Type: int
CCI return number, see error list.
Notes · DeviceEnableFlagsSet must be set to 0.
· The pen number has to be set by ScSetPen.
· To prevent incorrect operation please read chapter How to work with flags.
· This list is incomplete. There are further flags for internal use.
· To set RTC5/6 SkyWriting Mode 2 or 3, the RTC5/6 SkyWriting Enable Flag needs
to be set as well.
C# Example: Enable long delay and don't change all other flags:
int Pen_Enable_Flags = [Link]( ( int )
[Link] );
Pen_Enable_Flags = Pen_Enable_Flags | 0x1;
int CCI_Return = [Link]( ( int )
[Link],
Pen_Enable_Flags );
C# Example: Disable long delay and don't change all other flags:
int Pen_Enable_Flags = [Link]( ( int )
[Link] );
Pen_Enable_Flags = Pen_Enable_Flags & ~0x1;
int CCI_Return = [Link]( ( int )
[Link],
Pen_Enable_Flags );
Table 74: Pen Enable Flags
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 65
Pen Name Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Pen_Name)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Pen_Name)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Pen_Name)
string Pen_Name = ScCciGetStringValue(int ValueType)
Description Set or get the name of the current pen.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeCurrentPenName 22
Pen_Name Type: string Unit: none
Name of the pen.
CCI_Return Type: int
· CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Change the name of the pen:
int CCI_Return = [Link]( ( int )
[Link], "Welding" );
C# Example: Get the name of the current pen:
string Pen_Name = "";
int CCI_Return2 = [Link]( ( int )
[Link], ref Pen_Name );
Table 75: CCI Pen Name
Pen Number Set
Get
DLL Function int CCI_Return = ScSetPen(int Pen_Number)
int CCI_Return = ScGetPen(ref int Pen_Number)
ASCII Function int CCI_Return = ScCciSetPen(int Pen_Number)
int Pen_Number = ScCciGetPen()
Description Set or get the pen number.
Pen_Number Type: int Unit: none
The pen number.
CCI_Return Type: int
CCI return number, see error list.
Notes · Pen counting starts with 1.
C# Example: Set the current pen to the pen #3:
int CCI_Return = [Link]( 3 );
C# Example: Get the current applied pen:
int PenNumber = 0;
int CCI_Return = [Link]( ref PenNumber );
Table 76: Pen Number
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 66
Protected Pen Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Protected)
int Protected = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Protected)
int Protected = ScCciGetLongValue(int Value_Type)
Description Set or get the protected pen option.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeProtectedPen 102
Protected Type: int Unit: none
· 0: Disable pen protection.
· 1: Enable pen protection.
CCI_Return Type: int
· CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Protect current selected pen:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Check if current selected pen is protected:
int Protected = [Link]( ( int )
[Link] );
Table 77: Protected Pen
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 67
Special Pen parameters Set
Get
DLL Function int CCI_Return = ScGetEntityStringData(string Pen_Number, int Data_ID, ref string Parameter)
ASCII Function string Parameter = ScCciGetEntityStringData(string Pen_Number, int Data_ID)
Description Returns a set of 7 pen parameters for the defined entity. The return parameters are
described below. It is possible to get the values for multiple entities.
Pen_Number Type: string Unit: none
This string can contain multiple pen numbers separated by semicolon.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdSpecialPenAndMore 34
Pen_Special Type: string Unit: depends on parameter
The separator for multiple pens is a vertical tab (\v). For each requested pen the
following seven double values with 6 decimal places separated by semicolon are
returned:
· Mark Speed [mm/s*]
· Power [Watt]
· Frequency [Hz]
· CO2_Power1 [%]
· CO2_Power2 [%]
· Pulse_Length [µs]
· First_Pulse [µs]
CCI_Return Type: int
CCI return number, see error list.
Notes · If the return string is send via Ethernet, it's maximum length is 512 characters.
· If you enter multiple pen numbers, this function will return sets of values for each
pen. Each set is separated by a vertical tab '\v'.
C# Example: Get the parameters for pen 1:
string Pen_Special = "";
int CCI_Return = [Link]( "1", ( int )
[Link], ref Pen_Special );
Example for Pen_Special string:
"5000.000000;8.500000;100000.000000;50.000000;50.000000;5.000000;0.000000"
Table 78: Special Pen Parameters
5.1 Advanced Settings
The following functions can be used when pressing the Advanced ... button on the Mark property page.
· PowerMap Settings
· PixelMap Dynamic
· PixelMap Static (1)
· PixelMap Static (2)
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 68
PowerMap Settings Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the relevant power map values.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSizePowerMap 18
Length of the power map. The value should be 16. (get only)
scComSAMLightClientCtrlDoubleValueTypePowerMapStartId 19
Returns the start value of the power map. The value should be 10000. (get only)
scComSAMLightClientCtrlDoubleValueTypeMaxPower 20
Maximum Power [Watt]. This is not used for CO2.
Parameter Type: double Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · Power Map lookup table ranges and units:
o for DAC_A, DAC_B and 8-bit LP: [0.0, 255.0] bit
o for CO2 duty cycle: [0.0, 100.0] %
C# Example: Set up linear PowerMap for a 10W YAG laser:
int CCI_Return_01 = [Link]( ( int )
[Link], 10.0 );
double Length = [Link]( ( int )
[Link] );
double Start_ID = [Link]( ( int )
[Link] );
for( int i = 0; i < (int)Length; i++ )
{
int CCI_Return_02 = [Link]( ( int )Start_ID + i, 255.0 / ( Length - 1.0 ) * i );
}
Table 79: PowerMap Settings
PixelMap Dynamic Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the control points of dynamic PixelMaps for grayscale bitmap marking.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypePixelCtrlPointsSize 29999
Number of control points of the PixelMap. Range of size values: [2.0, 256.0]
scComSAMLightClientCtrlDoubleValueTypePixelCtrlPointsIn 30000
Input grayscale value [bit] of the PixelMap. Range of bit values: [0.0, 255.0]. Up to
256 control points can be used. Range of PixelCtrlPointsIn IDs: [30000, 30255].
First input grayscale value must be 0.0 bit.
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 69
PixelMap Dynamic Set
Get
Last input grayscale value must be 255.0 bit.
scComSAMLightClientCtrlDoubleValueTypePixelCtrlPointsOut 30256
Output grayscale value [bit] of the PixelMap. Range of bit values: [0.0, 255.0]. Up to
256 control points can be used. Range of PixelCtrlPointsOut IDs: [30256, 30511].
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · Settings > System > Extras > Dynamic Grayscale Map must be disabled.
· Up to 256 lookup control points can be used.
· The pen number has to be set by ScSetPen. System Pixel Map is set up by
special pen number 1111.
C# Example: Set up the System PixelMap with 7 nodes with linear interpolation between the nodes:
int CCI_Return_00 = [Link]( ( int )
[Link], 1 );
int CCI_Return_01 = [Link]( 1111 );
double[] PixelMap_In = { 0.0, 42.0, 85.0, 128.0, 170.0, 212.0, 255.0 };
double[] PixelMap_Out = {0.0, 44.9, 86.3, 124.0, 158.1, 188.6, 215.5 };
int CCI_Return_02 = [Link]( ( int )
[Link], ( double )
PixelMap_In.Length );
for( int i = 0; i < PixelMap_In.Length; i++ )
{
int CCI_Return_03 = [Link]( ( int )
[Link] + i,
PixelMap_In[ i ] );
int CCI_Return_04 = [Link]( ( int )
[Link] + i,
PixelMap_Out[ i ] );
}
Table 80: PixelMap Dynamic
PixelMap Static (1) Set
Get
DLL Function int CCI_Return = ScSetPixelMapForPen(int Pen, int Grayscale_0, int Grayscale_1, int Grayscale_2,
int Grayscale_3, int Grayscale_4, int Grayscale_5)
ASCII Function int CCI_Return = ScCciSetPixelMapForPen(int Pen, int Grayscale_0, int Grayscale_1, int
Grayscale_2, int Grayscale_3, int Grayscale_4, int Grayscale_5)
Description Set the % of grayscale values for legacy PixelMaps for grayscale bitmap marking.
Pen Type: int Unit: none
· [0, 255]: Pen Pixel Map of 0-based pen number
· 1111: System Pixel Map
Grayscale_0 Type: int Unit: [%]
Grayscale value of the first slider
Grayscale_1 Type: int Unit: [%]
Grayscale value of the second slider
Grayscale_2 Type: int Unit: [%]
Grayscale value of the third slider
Grayscale_3 Type: int Unit: [%]
Grayscale value of the fourth slider
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 70
PixelMap Static (1) Set
Get
Grayscale_4 Type: int Unit: [%]
Grayscale value of the fifth slider
Grayscale_5 Type: int Unit: [%]
Grayscale value of the sixth slider
CCI_Return Type: int
CCI return number, see error list.
Notes · Settings > System > Extras > Dynamic Grayscale Map must be disabled.
· 6 lookup control points are used.
· Range of % of grayscale values: [0.0, 100.0].
· PixelMaps can be set or get with PixelMap Static (2) as well.
C# Example: Set up a linear system pixel map:
int CCI_Return = [Link]( 1111, 0, 20, 40, 60, 80, 100 );
Table 81: PixelMap Static (1)
PixelMap Static (2) Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Grayscale)
double Grayscale = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Grayscale)
double Grayscale = ScCciGetDoubleValue(int Value_Type)
Description Set or get the grayscale values for legacy PixelMaps for grayscale bitmap marking.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeStyleIDPixelMapZone 4096
Range of StyleIDPixelMapZone IDs: [4096, 4101].
Grayscale Type: double Unit: [%]
Grayscale value in the range [0.0, 100.0].
CCI_Return Type: int
CCI return number, see error list.
Notes · Settings > System > Extras > Dynamic Grayscale Map must be disabled.
· 6 lookup control points are used.
· The pen number has to be set by ScSetPen. System Pixel Map is set up by special
pen number 1111.
· PixelMaps can be set with PixelMap Static (1) as well.
C# Example: Set up a linear pen pixel map:
double[] Pen_Pixel_Map = { 0.0, 20.0, 40.0, 60.0, 80.0, 100.0 };
for( int i = 0; i < 6; i++ )
{
int CCI_Return = [Link]( ( int )
[Link] + i,
Pen_Pixel_Map[ i ] );
}
Table 82: PixelMap Static (2)
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 71
5.2 Main
The following settings can be made under Mark Edit... Main.
· Pen Main Parameters
· Pen Enable Flags, see Pen Settings
o Long Delay Enable
o Pen Standby Enable (RTC YAG only)
o Power Control Enable
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 72
Pen Main Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various pen main parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMarkSpeed 4
Mark speed. [mm/s]
scComSAMLightClientCtrlDoubleValueTypeFrequency 6
Frequency. [Hz]
scComSAMLightClientCtrlDoubleValueTypePulseLength 15
Pulse length. [µs]
scComSAMLightClientCtrlDoubleValueTypeFirstPulseLength 16
First pulse length. [µs]
scComSAMLightClientCtrlDoubleValueTypeLaserPower 17
Power [Watt]. This is not used for CO2.
scComSAMLightClientCtrlDoubleValueTypeHalfPeriod 43
Half period for standby mode. Only available for RTC and YAG. [µs]
scComSAMLightClientCtrlDoubleValueTypeLaserCo2Power1 48
CO2 Power1. [%]
scComSAMLightClientCtrlDoubleValueTypeLaserCo2Power2 49
CO2 Power2. [%]
scComSAMLightClientCtrlDoubleValueTypeLongDelay 89
Long delay. [µs]
scComSAMLightClientCtrlDoubleValueTypeLaserPower2 168
Power2 [Watt]. This is not used for CO2.
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
· The frequency is given in Hz here, the frequency in SAMLight is given in kHz. If the
value to be set by CCI is smaller than the given frequency limit in the Min/Max
dialog in SAMLight, the minimum will be set.
C# Example: Set the frequency to 45.0 Hz:
int CCI_Return = [Link]( ( int )
[Link], 45.0 );
C# Example: Get the current frequency
double Frequency = [Link]( ( int )
[Link] );
Table 83: Pen Main Parameters
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 73
5.3 Laser-Specials
The existence of this tab depends on the set laser type. It is named after the laser type like given in the
subchapters. There may be not a command for all laser types, but all available commands are given in the
following subchapters for the following types:
· IPG
· SPI
5.3.1 IPG
The following tab is available, if an IPG laser is configured. It can be found via Mark Edit... IPG. The
following commands can be set via CCI:
· IPG Pulse Length
· IPG EMON State
IPG Pulse Length Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Pulse_Length)
double Pulse_Length = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Pulse_Length)
double Pulse_Length = ScCciGetDoubleValue(int Value_Type)
Description Set or get the optical pulse length.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeIPGPulseLength 123
Pulse_Length Type: double Unit: [ns]
IPG pulse length value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Set the optical pulse length to 8.0 ns:
int CCI_Return = [Link]( ( int )
[Link], 8.0 );
C# Example: Get the current optical pulse length:
double IPG_Pulse_Length = [Link]( ( int )
[Link] );
Table 84: IPG Pulse Length
IPG EMON State Set
Get
DLL Function int EMON_State = ScGetLongValue(int Value_Type)
ASCII Function int EMON_State = ScCciGetLongValue(int Value_Type)
Description Get last known state of the RS-232 command EMON which SAMLight received from
the laser.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEmonState 153
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 74
IPG EMON State Set
Get
EMON_State Type: int Unit:
Last known state of EMON:
· 0 = EMON is off.
· 1 = EMON is on.
CCI_Return Type: int
CCI return number, see error list.
Notes · This command is only available for specific laser types.
C# Example: Get
int EMON_State = [Link]( ( int )
[Link] );
Table 85: IPG EMON State
5.3.2 SPI
The following tab is available, if an SPI laser is configured. It can be found via Mark Edit... SPI. The
following commands can be set via CCI:
· SPI CW Mode
· SPI Waveform
· SPI Simmer Value
SPI CW Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int CW_Mode)
int CW_Mode = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int CW_Mode)
int CW_Mode = ScCciGetLongValue(int Value_Type)
Description Set or get the status of the CW mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSpiCw 21
CW_Mode Type: int Unit: none
· 0: Disable
· 1: Enable
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Switch on the CW mode:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get the current state of the CW mode:
int CW_Mode = [Link]( ( int )
[Link] );
Table 86: SPI G3 CW mode
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 75
SPI Waveform Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Waveform)
int Waveform = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Waveform)
int Waveform = ScCciGetLongValue(int Value_Type)
Description Set or get the waveform.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSpiWaveform 20
Waveform Type: int Unit: none
Waveform value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Set the waveform value to 57:
int CCI_Return = [Link]( ( int )
[Link], 57 );
C# Example: Get the current waveform value:
int Wave_Form = [Link]( ( int )
[Link] );
Table 87: SPI Waveform
SPI Simmer Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Simmer)
double Simmer = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Simmer)
double Simmer = ScCciGetDoubleValue(int Value_Type)
Description Set or get the simmer value for Spi Laser.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSpiLaserSimmer 45
Simmer Type: int Unit: [%]
Simmer value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Set the simmer value to 100%:
int CCI_Return = [Link]( ( int )
[Link], 100.0 );
C# Example: Get the current simmer value:
double Simmer = [Link]( ( int )
[Link] );
Table 88: SPI Simmer
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 76
5.4 Scanner
The following functions can be found under Mark Edit... Scanner:
· Pen Enable Flags, see Pen Settings
o Wobble
· Pen Scanner Parameters
· Wobble Parameters: Frequency and Amplitude
Pen Scanner Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various pen scanner parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeJumpSpeed 5
Jump speed. [mm/s*]
scComSAMLightClientCtrlDoubleValueTypeJumpDelay 7
Jump Delay. [µs]
scComSAMLightClientCtrlDoubleValueTypeMarkDelay 8
Mark Delay. [µs]
scComSAMLightClientCtrlDoubleValueTypePolyDelay 9
Poly Delay. [µs]
scComSAMLightClientCtrlDoubleValueTypeLaserOnDelay 10
Laser On Delay. [µs]
scComSAMLightClientCtrlDoubleValueTypeLaserOffDelay 11
Laser Off Delay. [µs]
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Set the jump speed to 5000.0 mm/s:
int CCI_Return = [Link]( ( int )
[Link], 5000.0 );
C# Example: Get the current jump speed:
double Jump_Speed = [Link]( ( int )
[Link] );
Table 89: Pen Scanner Parameters
Wobble Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 77
Wobble Parameters Set
Get
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the wobble parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeWobbleFrequency 54
Wobble Frequency. [Hz]
scComSAMLightClientCtrlDoubleValueTypeWobbleAmplitude 55
Wobble Amplitude. [mm]
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · For wobble to work, you need to enable it first.
· The pen number has to be set by ScSetPen.
C# Example: Set the wobble amplitude to 0.5 mm:
int CCI_Return = [Link]( ( int )
[Link], 0.5 );
C# Example: Get the current wobble amplitude:
double Wobble_Amplitude = [Link]( ( int )
[Link] );
Table 90: Wobble Parameters
5.5 Misc
The following functions can be found under Mark Edit... Misc:
· Defocus
· Pen Enable Flags, see Pen Settings
o SkyWriting
o Defocus
o Apply power changes after jump
o RTC5/6 SkyWriting Enable
o RTC5/6 SkyWriting Modes
· SkyWriting parameters
· Pen MarkFlags
Defocus Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Defocus)
double Defocus = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Defocus)
double Defocus = ScCciGetDoubleValue(int Value_Type)
Description Set or get the Defocus Value.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 78
Defocus Set
Get
scComSAMLightClientCtrlDoubleValueTypeDefocus 62
Defocus Type: double Unit: [mm]*
Defocus value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
· The default unit is mm, but the user can select a different unit.
C# Example: Set the defocus to 1.0 mm:
int CCI_Return = [Link]( ( int )
[Link], 1.0 );
C# Example: Get the current defocus:
double Defocus = [Link]( ( int )
[Link] );
Table 91: Defocus
SkyWriting Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the Skywriting parameters: Start Length, End Length and Break Angle.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSkyWritingStartLength 5
Skywriting start length. [µs]
scComSAMLightClientCtrlDoubleValueTypeSkyWritingEndLength 7
Skywriting end length. [µs]
scComSAMLightClientCtrlDoubleValueTypeSkyWritingBreakAngle 8
Skywriting break angle. [deg]
scComSAMLightClientCtrlDoubleValueTypeSkyRtcLaserShiftOn 166
For RTC5/6 only: LaserOnShift for RTC Skywriting. [µs]
scComSAMLightClientCtrlDoubleValueTypeSkyRtcTimeLag 167
For RTC5/6 only: TimeLag for RTC Skywriting. [µs]
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Set the SkyWriting start length to 200.0 µs:
int CCI_Return = [Link]( ( int )
[Link], 200.0 );
C# Example: Get the current SkyWriting start length:
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 79
SkyWriting Parameters Set
Get
double SkyWriting_Start_Length = [Link]( ( int )
[Link] );
Table 92: SkyWriting Parameters
Pen Mark Flags Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Pen_Mark_Flags)
int Pen_Mark_Flags = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Pen_Mark_Flags)
int Pen_Mark_Flags = ScCciGetLongValue(int Value_Type)
Description Set or get the pen mark flags.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeMarkMode 107
Pen_Mark_Flags Type: int Flag:
Location: None
scComStandardDeviceMiscPenPathsAndMarkModeFlagSkipContour 0x10000
Contour Disable.
scComStandardDeviceMiscPenPathsAndMarkModeFlagSkipHatch1 0x20000
Hatch1 Disable.
scComStandardDeviceMiscPenPathsAndMarkModeFlagSkipHatch2 0x30000
Hatch2 Disable.
CCI_Return Type: int
CCI return number, see error list.
Notes · The flags are skip flags and inverse to the checkboxes in SAMLight.
· The pen number has to be set by ScSetPen.
· To prevent incorrect operation please read chapter How to work with flags.
C# Example: Enable contour and don't change all other flags:
int Pen_Mark_Flags = [Link]( ( int )
[Link] );
Pen_Mark_Flags = Pen_Mark_Flags & ~0x10000;
int CCI_Return = [Link]( ( int )
[Link], Pen_Mark_Flags );
C# Example: Disable contour and don't change all other flags:
int Pen_Mark_Flags = [Link]( ( int )
[Link] );
Pen_Mark_Flags = Pen_Mark_Flags | 0x10000;
int CCI_Return = [Link]( ( int )
[Link], Pen_Mark_Flags );
Table 93: Pen Mark Flags
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 80
5.6 Drill
The following commands can be found under Mark Edit... Drill:
In CCI commands that work with entity names, add the prefix "drill_geom_" to the entity name to access
entities inside of the Drill Geometry entity list, for example: "drill_geom_Rectange".
· Drill Double Values
· Drill Long Values
· Pen Enable Flags, see Pen Settings
o CO2Power
o Drill
o Point Power Map
o Use Geometry
· Point Power Map Path
Drill Double Values Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the various pen drill parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeDrillPeriod 72
Drill Period (1/Frequency). For CO2 Laser: Laser1. [µs]
scComSAMLightClientCtrlDoubleValueTypeDrillDuration 73
Drill Duration in [µs]. The unit displayed in SAMLight is different: [ms].
scComSAMLightClientCtrlDoubleValueTypeDrillLength 74
Pulse width. For CO2 laser: Laser2. [µs]
scComSAMLightClientCtrlDoubleValueTypeDrillJumpSpeed 75
Jump speed. [mm/s]
scComSAMLightClientCtrlDoubleValueTypeDrillJumpDelay 76
Jump delay. [µs]
scComSAMLightClientCtrlDoubleValueTypeDrillCo2HalfPeriod 79
For CO2 laser: HalfPeriod in [µs] to manipulate the Frequency.
Frequency = 1 / ( 2 * HalfPeriod )
scComSAMLightClientCtrlDoubleValueTypeDrillMarkLineAsDotsGridX 126
X grid size of Mark Lines as Dots. [mm]*
scComSAMLightClientCtrlDoubleValueTypeDrillMarkLineAsDotsGridY 127
Y grid size of Mark Lines as Dots. [mm]*
Parameter Type: int Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
· The function drill must be enabled first
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 81
Drill Double Values Set
Get
C# Example: Set drill duration to 250.0 µs:
int CCI_Return = [Link]( ( int )
[Link], 250.0 );
C# Example: Get drill duration:
double Drill_Duration = [Link]( ( int )
[Link] );
Table 94: Drill Double Values
Drill Long Values Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Set or get the various pen drill parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDrillEnableCo2Power 56
CO2 Power Enable.
scComSAMLightClientCtrlLongValueTypeDrillMarkLineAsDotsActive 101
Mark line as dots enable.
Parameter Type: int Unit: none
· 0: Disable.
· 1: Enable.
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Enable the mark line as dots:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get the mark line as dots enable state:
int Mark_Line_As_Dots_Enable = [Link]( ( int )
[Link] );
Table 95: Drill Long Values
Point Power Map Path Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string PPM_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string PPM_Path)
Description Set the path of Pen > Drill > Point Power Map raster graphic.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypePenPixelMap 28
PPM_Path Type: string Unit: none
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 82
Point Power Map Path Set
Get
Path of Point Power Map raster graphic.
CCI_Return Type: int
CCI error number, see error list.
Notes · The pen number has to be set by ScSetPen.
· The Point Power Map can be enabled with Pen Enable Flags.
· This is not related to the Pen PixelMap for grayscale bitmap marking, as the name
of the constant may suggest.
C# Example: Set Point Power Map Path to "F:\bg_img.bmp":
int CCI_Return = [Link]( ( int )
[Link], @"F:\bg_img.bmp" );
Table 96: Point Power Map Path
5.7 Ramping
The following commands can be found under Mark Edit... Ramping:
· Ramping Checkboxes
· Ramping Double Parameters
Ramping Checkboxes Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Ramp_Active)
int Ramp_Active = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Ramp_Active)
int Ramp_Active = ScCciGetLongValue(int Value_Type)
Description Enable/disable the ramping regimes.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeLineRampingPowerStartRampActive 22
Power ramping start enable.
scComSAMLightClientCtrlLongValueTypeLineRampingPowerEndRampActive 23
Power ramping end enable.
scComSAMLightClientCtrlLongValueTypeLineRampingSpeedStartRampActive 24
Speed ramping start enable.
scComSAMLightClientCtrlLongValueTypeLineRampingSpeedEndRampActive 25
Speed ramping end enable.
scComSAMLightClientCtrlLongValueTypeLineRampingLengthenStartActive 26
Enable length start active.
scComSAMLightClientCtrlLongValueTypeLineRampingLengthenEndActive 27
Enable length end active.
Ramp_Active Type: int Unit: none
· 0: Disable Ramping.
· 1: Enable Ramping.
CCI_Return Type: int
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 83
Ramping Checkboxes Set
Get
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
C# Example: Enable power ramping start:
int CCI_Return = [Link]( ( int )
[Link],
1 );
C# Example: Check power ramping start enable state:
int Power_Ramping_Start_Enable = [Link]( ( int )
[Link] );
Table 97: Ramping Checkboxes
Ramping Double Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Power_Ramp)
double Power_Ramp = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Power_Ramp)
double Power_Ramp = ScCciGetDoubleValue(int Value_Type)
Description Set or get the Power Ramping parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerStartRampValue 26
Power Ramping Start Power. [%]
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerStartRampLength 27
Power Ramping Start Length. [mm]*
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerEndRampValue 28
Power Ramping End Power. [%]
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerEndRampLength 29
Power Ramping End Length. [mm]*
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedStartRampValue 30
Speed Ramping Start Power. [%]
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedStartRampLength 31
Speed Ramping Start Speed. [mm]*
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedEndRampValue 32
Speed Ramping End Power. [%]
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedEndRampLength 33
Speed Ramping End Speed. [mm]*
scComSAMLightClientCtrlDoubleValueTypeLineRampingLengthenStart 60
Auto Lengthen Start Ramp. [mm]*
scComSAMLightClientCtrlDoubleValueTypeLineRampingLengthenEnd 61
Auto Lengthen End Ramp. [mm]*
Power_Ramp Type: double Unit: depends on constant
Insert the corresponding value.
CCI_Return Type: int
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 84
Ramping Double Parameters Set
Get
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
· Ramping must be enabled before.
C# Example: Set the power ramping start power start to 60.0%:
int CCI_Return = [Link]( ( int )
[Link],
60.0 );
C# Example: Get the power ramping start power:
double Power_Ramping_Start_Power = [Link]( ( int )
[Link] );
Table 98: Ramping Double Parameters
5.8 Path
The following command can be found under Mark Edit... Path
· Pen Path
Pen Path Set
Get
Function int CCI_Return = ScSetPenPathForPen(ref short Master_Pen, ref short Enable, ref short Pen_1, ref
int Loop_Pen_1, ref short Pen_2, ref int Loop_Pen_2, ref short Pen_3, ref int Loop_Pen_4, ref
short Pen_4, ref int Loop_Pen_1, ref short Pen_5, ref int Loop_Pen_5)
int CCI_Return = ScGetPenPathForPen(ref short Master_Pen, ref short Enable, ref short Pen_1,
ref int Loop_Pen_1, ref short Pen_2, ref int Loop_Pen_2, ref short Pen_3, ref int Loop_Pen_4, ref
short Pen_4, ref int Loop_Pen_1, ref short Pen_5, int Loop_Pen_5)
ASCII -
Description Get or set the pen path settings.
Master_Pen Type: short Unit: none
Pen number for which the pen path settings are set or get.
Enable Type: short Unit: none
· 0: Enable
· 1: Disable
Pen_1 Type: short Unit: none
Pen number for the first pen path loops.
Loop_Pen_1 Type: int Unit: none
Number of loops with Pen_1.
Pen_2 Type: short Unit: none
Pen number for the second pen path loops.
Loop_Pen_2 Type: int Unit: none
Number of loops with Pen_2.
Pen_3 Type: short Unit: none
Pen number for the third pen path loops.
Loop_Pen_3 Type: int Unit: none
Number of loops with Pen_3.
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 85
Pen Path Set
Get
Pen_4 Type: short Unit: none
Pen number for the fourth pen path loops.
Loop_Pen_4 Type: int Unit: none
Number of loops with Pen_4.
Pen_5 Type: short Unit: none
Pen number for the fifth pen path loops.
Loop_Pen_5 Type: int Unit: none
Number of loops with Pen_5.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the following pen path parameters for master pen 1: enable pen path, 15 loops with pen 9,
11 loops with pen 11, 15 loops with pen 9, 11 loops with pen 11, 15 loops with pen 9:
sc_com_pen_path Pen_Path = new sc_com_pen_path();
Pen_Path.penToUse = new short[ 5 ];
Pen_Path.loopOfPenToUse = new int[ 5 ];
Pen_Path.pen = 1;
Pen_Path.enable = 1;
Pen_Path.penToUse[ 0 ] = 9;
Pen_Path.loopOfPenToUse[ 0 ] = 15;
Pen_Path.penToUse[ 1 ] = 11;
Pen_Path.loopOfPenToUse[ 1 ] = 11;
Pen_Path.penToUse[ 2 ] = 9;
Pen_Path.loopOfPenToUse[ 2 ] = 15;
Pen_Path.penToUse[ 3 ] = 11;
Pen_Path.loopOfPenToUse[ 3 ] = 11;
Pen_Path.penToUse[ 4 ] = 9;
Pen_Path.loopOfPenToUse[ 4 ] = 15;
int CCI_Return = [Link]( ref Pen_Path.pen, ref Pen_Path.enable, ref
Pen_Path.penToUse[ 0 ], ref Pen_Path.loopOfPenToUse[ 0 ], ref Pen_Path.penToUse[ 1 ], ref
Pen_Path.loopOfPenToUse[ 1 ], ref Pen_Path.penToUse[ 2 ], ref Pen_Path.loopOfPenToUse[ 2 ], ref
Pen_Path.penToUse[ 3 ], ref Pen_Path.loopOfPenToUse[ 3 ], ref Pen_Path.penToUse[ 4 ], ref
Pen_Path.loopOfPenToUse[ 4 ] );
C# Example: Get pen path parameters for master pen 1:
sc_com_pen_path penPath = new sc_com_pen_path();
[Link] = new short[ 5 ];
[Link] = new int[ 5 ];
[Link] = 1;
int CCI_Return = [Link]( ref [Link], ref [Link], ref [Link][ 0 ],
ref [Link][ 0 ], ref [Link][ 1 ], ref [Link][ 1 ], ref
[Link][ 2 ], ref [Link][ 2 ], ref [Link][ 3 ], ref
[Link][ 3 ], ref [Link][ 4 ], ref [Link][ 4 ] );
Table 99: Pen Path
© 2024 SCAPS GmbH
Client Control Interface Manual - Pen Settings 86
5.9 Bitmap
The following command can be found under Mark Edit... Bitmap:
· Bitmap Settings
· Pen Enable Flags, see Pen Settings
o Pixel Hardware Mode
o Pen PixelMap
o Pen Power as Max Power
o Use Vector Delays
· Pen PixelMaps, see Advanced Settings
Bitmap Settings Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Set or get bitmap related checkboxes from Bitmap Properties page in pen settings.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeBitmapPixelHardwareMode 89
Pixel Hardware Mode Enable.
scComSAMLightClientCtrlLongValueTypeBitmapPenPowerAsMaxPower 90
Pen Power as Max Power Enable.
Parameter Type: int Unit: none
· 0: Disable
· 1: Enable
CCI_Return Type: int
CCI return number, see error list.
Notes · The pen number has to be set by ScSetPen.
· Both checkboxes can be set and get with Pen Enable Flags as well.
C# Example: Enable the pixel hardware mode:
int CCI_Return = [Link]( ( int )
[Link], 0 );
C# Example: Get the pixel hardware mode enable state:
int Pixel_Hardware_Mode = [Link]( ( int )
[Link] );
Table 100: Bitmap Settings
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 87
6 Job
The following chapter goes through the main functions to create and edit job files. This chapter is divided
into different subchapters:
· Entity Objects
· Entities Properties
· Data Wizard
· Styles
The following main commands are described in this sub chapter:
· Create New Job
· Execute Flash Command
· Export File
· Flash Job Access
· Import File
· Import from Memory via COM (CCI Ex)
· Import from Memory via OCX (ActiveX)
· Job Path
· Job is in field
· Job Preview
· Load Job
· Lock Dongle
· Move Entity
· Save Job
· Select Entity
· Sort Entities
· UNDO
· User Value Double
· User Value String
Create New Job Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Remove the current job and creates a new one with empty working area.
Cmd_ID Type: int ID:
Location:ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandNewJob 3
CCI_Return Type: int
CCI return number, see error list.
Notes · ScCciNewJob() is deprecated, please use this ExecCommand.
· The removed job file exists on last saving state.
C# Example: Create new job:
int CCI_Return = [Link]((int)
[Link]);
Table 101: Create New Job
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 88
Execute Flash Command Set
Get
DLL Function string CCI_Return = ScFlashCommand(string Command, int Flag, ref string FCI_Return)
ASCII Function -
Description Executes a command in the flash mode. Return is an empty string variable that you
have to declare in advance.
Command Type: string Unit: none
The string Command is the flash command as you would type it in inside the flash
dialog window and it has to be terminated by the ASCII characters 13 and 10 (Return
and LineFeed). For the flash commands see the corresponding hardware manual.
Flag Type: int Unit: none
Flags can be 0 or -2147483648. If 0, the client control waits until a carriage return
from the Flash. If -2147483648 is set the client control will wait a certain time and
then end the command.
FCI_Return Type: string Unit: none
Standard Flash error codes.
CCI_Return Type: string
The CCI_Return is a string and not an integer as usual.
CCI return number, see error list.
Notes · Some of the commands require the flash license. Further information is given in
the Flash command interface documentation.
C# Example: Start marking:
string FCI_Return = "";
string CCI_Return = [Link]("M 1\r\n", 0, ref FCI_Return);
Table 102: Execute Flash Commands
Export File Set
Get
DLL Function int CCI_Return = ScExport(string Entity_Name, string File_Name, string File_Type, double
Resolution, int Flag)
ASCII Function -
Description Exports the job file or the specified entity to File_Name.
Entity_Name Type: string Unit: none
If Entity_Name is "" then the whole job is exported.
File_Name Type: string Unit: none
The full path where the exported job should be saved to.
File_Type Type: string Unit: none
Can be "saf", "plt" or "cnc".
Resolution Type: double Unit: none
Resolution only has an impact if the File_Type is "plt".
Flag Type: int Flag:
Location: None
scComLayerFile2DStyleExportPolyLines 0x10
The poly lines will be exported.
scComLayerFile2DStyleExportLineArrays 0x20
The line arrays will be exported.
scComLayerFile2DStyleWritePens 0x100
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 89
Export File Set
Get
The pens will be exported.
scComLayerFile2DStyleExportOnlySelected 0x400
Only the entities selected in the View will be exported.
scComLayerFile2DStyleWritePreview 0x2000
The job preview will be exported.
CCI_Return Type: int
CCI return number, see error list.
Notes · This Flags value is usually a combination of multiple flags. Be sure not to
accidentally overwrite the previous flags. See the chapter How to work with flags to
learn more about combining multiple flags.
· When using this command in SAM3D, the last two arguments (Resolution and
Flags) have to be 0. Exports the layer styles table of the ScLayerSolid entity
specified with Entity_Name to the *.txt file FileName. Please use 'style' as Type.
Exports the slices with Entity type ScLayerSolid to a specified path with
[Link] and format *cli. Only one ScLayerSolid can be exported at a time.
C# Example: Export the whole job including pen settings and poly lines:
string FileName = "C:/Users/Support/Desktop/[Link]";
int flags = 0X10;
flags |= 0x100;
int CCI_Return = [Link]("", FileName, "plt", 0.001, flags);
Table 103: Export File
Flash Job Access Set
Get
DLL Function int CCI_Return = ScProcessFlashJob(string File_Name, int Job_Num, int Mode, int Flag)
ASCII Function int CCI_Return = ScCciProcessFlashJob(string File_Name, int Job_Num, int Mode, int Flag)
Description This command allows you to access the flash jobs, see Flash Jobs and Settings. Flag
must be 0.
File_Name Type: string Unit: none
Defines the complete path to the UNF file.
Job_Num Type: int Unit: none
Defines the Flash Job Number.
Mode Type: int Index:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlProcessFlashJobModeStoreCurrentToFlash 1
For standalone mode, the Flash job (UNF) is created from the SAMLight job (SJF)
together with a subset of the SAMLight settings and is saved on the USC card and in
<SCAPS>\jobfiles. This means, the creation of the identical UNF from the SJF always
requires identical SAMLight settings. Furthermore, a copy of the SJF is also stored on
the USC card. This mode of ScProcessFlashJob is only possible if the SJF already
exists.
· Job_Num defines the flash job number. File_Name and Flags are not used.
scComSAMLightClientCtrlProcessFlashJobModeLoadFromFlash 2
Loads the copy of the SJF job (which is stored on the USC) to SAMLight. Job_Num
defines the flash job number. However, the USC settings and the UNF cannot be
loaded to SAMLight.
· Please note: Different SAMLight settings in combination with the same SJF will
lead to different UNFs.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 90
Flash Job Access Set
Get
· File_Name and Flags are not used.
scComSAMLightClientCtrlProcessFlashJobModeStoreFromDiskToFlash 3
Saves a job (*.unf or *.cnc) from hard disc (PC) to the USC flash.
· Job_Num defines the flash job number.
· File_Name defines the complete path to the UNF file.
· Flags are not used.
scComSAMLightClientCtrlProcessFlashJobModeLoadFromFlashToDisk 5
Saves a job (*.unf) from the USC flash to hard disc (PC).
· Job_Num defines the flash job number.
· File_Name defines the complete path to the UNF file.
· Flags are not used.
Flag Type: int Unit: none
· 0: Flag must be 0.
CCI_Return Type: int
CCI return number, see error list.
Notes · An Index can not be combined.
C# Example: Save the job to the USC flash memory:
int CCI_Return = [Link]( @"F:\[Link]", 2, ( int )
[Link], 0 );
Table 104: Flash Job Access
Import File Set
Get
DLL Function int CCI_Return = ScImport(string Entity_Name, string File_Name, string File_Type, double
Resolution, int Flag)
ASCII Function int CCI_Return = ScCciImport(string Entity_Name, string File_Name, string File_Type, double
Resolution, int Flag)
Description Imports a file from the path File_Name.
Entity_Name Type: string Unit: none
The name of the new entity.
File_Name Type: string Unit: none
The full path to the file to import.
File_Type Type: string Unit: none
· File_Type can be "ai", "bmp", "cli" "cmx", "cnc", "dxf_scaps", "dxf_old", "emf", "gif",
"jpg", "mcl", "pcx", "plt", "png", "saf", "slc", "stl", "style", "svg_scaps", "svg_old",
"tga", "tif", "twain" or "txt".
· With "style" a layer styles table can be imported. In this case Entity_Name
specifies which ScLayerSolid entity you want to assign to this style table and
File_Name has to be a file path to a *.txt file.
Resolution Type: double Unit: mm
Resolution only has an impact if the File_Type is "plt".
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlImportFlagKeepOrder 0x8
Keep the order of the entities.
scComSAMLightClientCtrlImportFlagReadPenInfo 0x80
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 91
Import File Set
Get
Read pen information.
scComSAMLightClientCtrlImportFlagUnitlessIsMM 0x100
It is only used for the "svg_scaps" File_Type. If enabled, unitless coordinates and
coordinates in 'px' are converted to mm with 25.4 dpi ('px' equals 'mm') instead of 96
dpi.
scComSAMLightClientCtrlImportFlagGcodeLoadPenParameters 0x2000
ScSetHead before. See Import Advanced for CNC.
scComSAMLightClientCtrlImportFlagGcodeLoadOpticParameters 0x4000
scComSAMLightClientCtrlImportFlagPointCloud
· GcodeLoadOpticParameters (File_Type "cnc" only): Load optic parameters of a
CNC file to the head specified with ScSetHead before. See Import Advanced for
CNC.
· PointCloud (File_Type "plt" only): Import of points into PointClouds.
scComSAMLightClientCtrlImportFlagRememberCenterPosition 0x8000
Keep center position when importing vectors. VectorReimport flag is required.
scComSAMLightClientCtrlImportFlagNotTryToClose 0x20000
Do not try to close polygons. This option applies to HPGL type files only.
scComSAMLightClientCtrlImportFlagOptimized 0x80000
Only for HPGL files: Will do the same as the checkbox in the import dialog: Closing
Polylines which end close to each other and delete double ones or ones that are very
short.
scComSAMLightClientCtrlImportFlagBitmapReimport 0x100000
Reimports a Bitmap with Entity_Name. If the position should be kept, the Bitmap has
to be a scanner bitmap and the position has to be enabled and set in the bitmap
extended dialogue. In this case the center coordinates can be defined.
scComSAMLightClientCtrlImportFlagDontUpdateView 0x200000
Do not update view when importing. This can be used to import several files quickly
and update the view manually after the last import has been done.
scComSAMLightClientCtrlImportFlagSetParamDouble 0x400000
Sets the spline resolution: scComSAMLightClientCtrlDoubleValueTypeDoublePara1
= 1 (for dxf spline resolution) and
scComSAMLightClientCtrlDoubleValueTypeDoublePara1 (resolution in %, min. 10;
max.100) to be defined before the import.
scComSAMLightClientCtrlImportFlagVectorReimport 0x800000
Reimports Vector Graphics like DXF and PLT with Entity_Name. EntityLevel and
assigned pen are preserved, position and sizes must be reset.
scComSAMLightClientCtrlImportFlagToplevelOnly 0x100000
0
Reimports only entities in the first level of the job.
scComSAMLightClientCtrlImportFlagFillWithDefaultHatchStyle 0x200000
0
Only for SVG files. Will do the same as the checkbox in the import dialog: Hatch
filled objects with the default hatch.
scComSAMLightClientCtrlImportFlagNoErrorMsg 0x400000
0
Suppresses Error Messages.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 92
Import File Set
Get
scComSAMLightClientCtrlImportFlagCreateOneGroup 0x800000
0
Automatically do Data Wizard --> Create One Group.
scComSAMLightClientCtrlImportFlagCenterToField 0x10000000
Center the import in the View2D.
scComSAMLightClientCtrlImportFlagImportToPenGroups 0x20000000
Will do the same as the checkbox in the import dialog.
scComSAMLightClientCtrlImportFlagUsePenColors 0x40000000
Will do the same as the checkbox in the import dialog. This should be used with
command 128.
scComSAMLightClientCtrlImportFlagProtected 0x80000000
Polyline and LineArray entities imported with this flag will not be shown in the View2D
and will not be split. Vectors of entities imported with this flag will not be stored in a
*.sjf file. However, it is possible to remember the last position of the protected
entities within the *.sjf file. If you re-import an entity with the same name, the old
position will be adjusted automatically. Protected entities can be rotated and
translated but not scaled. The red pointer pre-view will only show the outline of
protected entities. Pen and hatch properties of protected entities cannot be changed.
If at least one protected entity is present within the entity list the mark preview is not
possible any more. They cannot be copied, duplicated or grouped.
CCI_Return Type: int
CCI return number, see error list.
Notes · This Flags value is usually a combination of multiple flags. Be sure not to
accidentally overwrite the previous flags. See the chapter How to work with flags to
learn more about combining multiple flags.
· When using this command in SAM3D, the last two arguments (Resolution and
Flags) have to be 0.
C# Example: Reimport a bitmap file:
int CCI_Return = [Link]( "BackgroundImage", @"F:\[Link]", "bmp", 1, ( int )
[Link] );
Table 105: Import File
Import from Memory via COM (CCI Ex) Set
Get
DLL Function void ScSetData(int Type, string Entity_Name, ref byte Data_First_Byte, uint Data_Size, string
File_Type, double Resolution, int Flags)
ASCII Function -
Description Imports a file from memory via COM (CCI Ex).
Type Type: int Unit: none
· 0: Type must be 0.
Entity_Name Type: string Unit: none
see ScImport()
Data_First_Byte Type: byte Unit: none
Reference to the first byte of the data array.
Data_Size Type: uint Unit: bytes
Number of bytes of data.
File_Name Type: string Unit: none
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 93
Import from Memory via COM (CCI Ex) Set
Get
see Import File (ScImport)
File_Type Type: string Unit: none
see Import File (ScImport)
Resolution Type: double Unit: mm
see Import File (ScImport)
Flag Type: int Flag:
see Import File (ScImport)
CCI_Return Type: int
CCI return number, see error list.
Notes · Import from Memory can only be used via Function Calls (no ASCII, no TCP).
· There is a separate function for Import from Memory via OCX (ActiveX).
· see Import File (ScImport) for further notes.
C# Example: Import a PLT file from memory via COM (CCI Ex):
string plt_path = @"F:\[Link]";
[Link]( plt_path );
[Link][] Data = [Link]( plt_path );
int Flags =
( int )[Link] |
( int )[Link];
[Link]( 0, "plt Columbia", ref Data[ 0 ], ( uint )[Link]( 0 ), "plt", 0.01, Flags );
Table 106: Import from Memory via COM (CCI Ex)
Import from Memory via OCX (ActiveX) Set
Get
DLL Function int CCI_Return = ScSetData(int Type, string Entity_Name, byte[] Data, string File_Type, double
Resolution, int Flags)
ASCII Function -
Description Imports a file from memory via OCX (ActiveX).
Type Type: int Unit: none
· 0: Type must be 0.
Entity_Name Type: string Unit: none
see Import File (ScImport)
Data Type: byte[] Unit: none
Byte array that represents the data.
File_Name Type: string Unit: none
see Import File (ScImport)
File_Type Type: string Unit: none
see Import File (ScImport)
Resolution Type: double Unit: mm
see Import File (ScImport)
Flag Type: int Flag:
see Import File (ScImport)
CCI_Return Type: int
CCI return number, see error list.
Notes · Import from Memory can only be used via Function Calls (no ASCII, no TCP).
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 94
Import from Memory via OCX (ActiveX) Set
Get
· There is a separate function for Import from Memory via COM (CCI Ex).
· see Import File (ScImport) for further notes.
C# Example: Import a PLT file from memory via OCX (ActiveX):
string plt_path = @"F:\[Link]";
[Link]( plt_path );
[Link][] Data = [Link]( plt_path );
int Flags =
( int )[Link] |
( int )[Link];
[Link](0, "plt Columbia", Data, "plt", 0.01, Flags );
Table 107: Import from Memory via OCX (ActiveX)
Job Path Set
Get
DLL Function int CCI_Return = ScGetStringValue(int Value_Type, ref string Job_Path)
ASCII Function string Job_Path = ScCciGetStringValue(int Value_Type)
Description Get the name of the current job file with its complete path.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeJobFileName 4
Job_Path Type: string
Returns the name of the current job file with its complete path.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get job file name and path:
string Job_Path = "";
int CCI_Return = [Link]((int)
[Link], ref Job_Path);
Table 108: Job Path
Job Preview Set
Get
DLL Function int CCI_Return = ScGetPreviewImage(string Job_File_Path, string Bitmap_File_Path)
ASCII Function int CCI_Return = ScCciGetPreviewImage(string Job_File_Path, string Bitmap_File_Path)
Description Get a preview bitmap image of a *.sjf job file and save it to the local hard disc. The
size of the resulting bitmap is 100 x 100 pixel.
Job_File_Path Type: string Unit: none
Enter the complete job path here
Bitmap_File_Name Type: string Unit: none
Enter the complete path, where you want to store the bitmap preview image
CCI_Return Type: int
CCI return number, see error list.
Notes · The job will not be load into SAMLight during the generation of the bmp.
C# Example: Save a preview bitmap of the job F:\[Link] to F:\[Link]:
int CCI_Return = [Link]( @"F:\[Link]", @"F:\[Link]" );
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 95
Table 109: Job Preview
Job In Field Set
Get
DLL Function int Is_In_Field = ScExecCommand(int Cmd_ID)
ASCII Function int Is_In_Field = ScCciExecCommand(int Cmd_ID)
Description Check, if the job is inside the Working Field.
Cmd_ID Type: int ID:
Location:ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandCheckIfJobIsInField 40
Is_In_Field Type: int
· 0: Job is not inside the field.
· 1: Job is inside the field.
Notes -
C# Example: Check if job in field:
int is_In_Field = [Link]( ( int )
[Link] );
Table 110: Job In Field
Load Job Set
Get
DLL Function int CCI_Return = ScLoadJob(string File_Name, int Load_Entities, int Overwrite_Entities, int
Load_Materials)
ASCII Function int CCI_Return = ScCciLoadJob(string File_Name, int Load_Entities, int Overwrite_Entities, int
Load_Materials)
Description Loads the SJF or S3D job file specified by File_Name into the controlled scanner
application. A SJF job file can contain graphical data (entities) and / or scanner and
laser parameters (materials).
File_Name Type: string Unit: none
Enter the full path of the job file
Load_Entities Type: int Unit: none
If the parameter Load_Entities is set to 1, the entities contained in the job will be
loaded.
Overwrite_Entities Type: int Unit: none
If the parameter Overwrite_Entities is set to 1, the current job will be cleared before
the new one is loaded. If Overwrite_Entities is set to 0, it is possible to merge the
graphical information of different jobs. For S3D job files only the Overwrite_Entities
parameter is valid to control if the jobs have to be merged 0 or not 1. The
parameters Load_Entities and Load_Materials are ignored.
Load_Materials Type: int Unit: none
If the parameter Load_Materials is set to 1, the scanner parameters will be loaded
with the job.
CCI_Return Type: int
CCI return number, see error list.
Notes · All three parameters have to be defined, when executing this command.
· With the additional parameters it is possible to load
o only the graphical data (Load_Entities=1, Load_Materials=0)
o only the scanner parameters (Load_Entities=0, LoadMaterials=1)
o both (Load_Entities=1, Load_Materials=1).
· If you want to load a*.s3d file set all int parameters equal to 1.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 96
Load Job Set
Get
C# Example: Load the job, overwriting existing entities and loading all the materials:
string FileName = "C:/Users/Support/Desktop/[Link]";
int CCI_Return = [Link](FileName, 1, 1, 1);
Table 111: Load Job
Lock Dongle Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Flag)
int Flag = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Flag)
int Flag = ScCciGetLongValue(int Value_Type)
Description Set or get the flags, allowing to lock a SJF job file to specific dongles.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSetLockSjfToDongleFlag 66
s
Flag Type: int Flag:
Location: None
scComSAMLightClientCtrlLockToDongleFlagLockLoadToSystemId 0x1
Locks the SJF job file to the Dongle ID (System ID, Card ID).
scComSAMLightClientCtrlLockToDongleFlagLockLoadToUserId 0x2
Locks the SJF job file to the Customer ID (User ID).
scComSAMLightClientCtrlLockToDongleFlagLockExport 0x4
Locks the export function of the SJF job file.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Lock the job file to the customer ID:
int CCI_Return = [Link]((int)
[Link], 2);
C# Example: Get set flags:
int Flag = [Link]((int)
[Link]);
Table 112: Lock Dongle
Move Entity Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, int Ref_Entity)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, int Ref_Entity)
Description Move the chosen entity before or after the chosen reference entity within the entity
list.
Entity_Name Type: string Unit: none
Specify the entity to be moved.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 97
Move Entity Set
Get
scComSAMLightClientCtrlStringDataIdMoveEntityBefore 37
Move entity before chosen reference entity.
scComSAMLightClientCtrlStringDataIdMoveEntityAfter 38
Move entity after chosen reference entity.
Ref_Entity Type: string Unit: none
Specify the reference entity.
CCI_Return Type: int
CCI return number, see error list.
Notes · Each entity must have a name.
· Do not use entity names twice.
C# Example: Move Entity "C" before Entity "A" within the entity list:
int CCI_Return = [Link]("C", (int)
[Link] , "A");
Table 113: Move Entity
Save Job Set
Get
DLL Function int CCI_Return = ScSaveJob(string File_Name, int Flag)
ASCII Function int CCI_Return = ScCciSaveJob(string File_Name, int Flag)
Description Save the current job file.
File_Name Type: string Unit: none
The full path where the job file should be stored.
Flag Type: int Flag:
Location: None
scComSAMLightSaveFlagEntities 0x1
Saves the entities to the job file.
scComSAMLightSaveFlagMaterials 0x2
Saves the pens to the job file.
scComSAMLightSaveFlagUseCurrentJobName 0x4
Uses the current job file name of the scanner application. The parameter FileName
will be ignored in this case.
CCI_Return Type: int
CCI return number, see error list.
Notes · This Flags value is usually a combination of multiple flags. Be sure not to
accidentally overwrite the previous flags. See the chapter How to work with flags to
learn more about combining multiple flags.
C# Example: Save the job with the Entities and keeping the current job name:
int flags = 0X1;
flags |= 0X4;
int CCI_Return = [Link]("",flags);
Table 114: Save Job
Select Entity Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Is_Selected)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 98
Select Entity Set
Get
int Is_Selected = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Is_Selected)
int Is_Selected = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description This function can be used to set or get the selection state of entities or to get
information whether the entity is selected.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySelected 3
Is_Selected Type: int Unit: none
· 0: Deselect.
· 1: Select.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Select the entity "square1":
int CCI_Return = [Link]("square1", (int)
[Link], 1);
C# Example: Check, if the entity "circle1" is selected:
int is_Selected = [Link]("circle1", (int)
[Link]);
Table 115: Select Entity
Sort Entities Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Sorts objects inside a group by their name if the name of the group is specified with
Top Level. If no group name is specified this sorts the top level entities of the job.
Cmd_ID Type: int ID:
Location:ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSortJobByName 52
CCI_Return Type: int
CCI return number, see error list.
Notes · A entity can be set as top level with the following command SetToTopLevelEntity.
C# Example: Sort entity by name:
int CCI_Return = [Link]((int)
[Link]);
Table 116: Sort Entities
UNDO Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 99
UNDO Set
Get
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Executes the UNDO command.
Value_Type Type: int ID:
Location:ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandUndo 54
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Execute UNDO:
int CCI_Return = [Link]((int)
[Link]);
Table 117: UNDO
User Value Double Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double User_Value)
double User_Value = ScSetGoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double User_Value)
double User_Value = ScCciGetDoubleValue(int Value_Type)
Description Set or get a double value into an unused and hidden entity in the job. This entity will
be generated automatically unless it is already existing.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeUserValue 20000-20015
User_Value Type: double Unit: none
The value you want to set or get.
CCI_Return Type: int
CCI return number, see error list.
Notes · The values from 20001 to 20015 can be used with the same functionality.
C# Example: Set the 20002'nd double user value to 100.0:
int CCI_Return = [Link](20002, 100.0)
C# Example: Read the content of the 20002'nd double user value:
double User_20002 = [Link](20002);
Table 118: Double User Value
User Value String Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string User_Value)
int CCI_Return = ScGetStringValue(int Value_Type, ref string User_Value)
ASCII Function int CCI_Return = ScCciSetEntityStringValue(int Value_Type, string User_Value)
string User_Value = ScCciGetEntityStringValue(int Value_Type)
Description Set or get a string value into an unused and hidden entity in the job. This entity will
be generated automatically unless it is already existing. The values from 20001 to
20009 can be used with the same functionality.
Value_Type Type: int ID:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 100
User Value String Set
Get
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeUserValue 20000-20009
User_Value Type: int Unit: none
The value you want to set or get.
CCI_Return Type: int
CCI return number, see error list.
Notes · The values from 20001 to 20009 can be used with the same functionality.
C# Example: Save some random string to the 20003'rd user value:
string random_Information = "Some random string";
int CCI_Return = [Link](20003, random_Information);
C# Example: Read the content of the 20003'rd user value:
string user_20003_string = "";
int CCI_Return = [Link](20003, ref user_20003_string);
Table 119: String User Value
6.1 Entity Objects
· Connect Serial Numbers
· Create Entity
· Delete Entity
· Duplicate Entity
· Entity Type
Connect Serial Numbers Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
Description This command is developed for "connected" serial number/ barcode and Text2D
(share the same name in EntityInfo) -- when the text is changed, the barcode would
be changed in the same way. This command has the same functionality as the
button apply in the barcode page after changing the text in SAMLight.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityGenerate 125
Flag Type: int Unit: none
Flag = 1 is required for this command.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Connect serial numbers:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 101
Connect Serial Numbers Set
Get
int CCI_Return = [Link]("Entity1",(int)
[Link], 1);
Table 120: Connect Serial Numbers
Create Entity Set
Get
DLL Function int CCI_Return = ScCreateEntity(string Entity_Name, string Father_Entity, int Pen, double
Center_X, double Center_Y, double Center_Z, double Dim_X, double Dim_Y, int Flag, string
Option)
ASCII Function int CCI Return = ScCciCreateEntity(string Entity_Name, string Father_Entity, int Pen, double
Center_X, double Center_Y, double Center_Z, double Dim_X, double Dim_Y, int Flag, string
Option)
Description Entities of the type ScBarCode12Chars2D, ScWinTextChars2D, ScSerialNumber,
ScEllipse2D, ScRectangle2D, ScPolyLine2D and ScSpiral2D can be created by
using this CCI command.
Entity_Name Type: string Unit: none
Specify the name of the entity as it should appear in the entity list with Entity_Name.
Father_Entity Type: string Unit: none
Specify the Group name.
· If father is the empty string "", the new entity will be put at the end of the entity list.
· If father is not empty, but the name of any "ScEntities2D" entity in the entity list
(created by grouping of an entity), the new entity will be created inside this
ScEntities2D father entity at the end of all existing entities.
· If there are several entities with identical name, the first one will be taken as father
entity.
· If the father string does not exist in the entity list, no entity will be created and the
function returns 0.
Pen Type: int Unit: none
The pen number, which should be applied to the new entity.
Center_X Type: double Unit: [mm]*
The desired center coordinates (X).
Center_Y Type: double Unit: [mm]*
The desired center coordinates (Y).
Center_Z Type: double Unit: [mm]*
The desired center coordinates (Z).
Dim_X Type: double Unit: none
The desired X dimensions.
Dim_Y Type: double Unit: none
The desired Y dimensions.
Flag Type: int Unit: none
Has to be 0.
Option Type: string Unit: none
Has to be empty: "".
CCI_Return Type: int
CCI return number, see error list.
Notes · The type of entity has to be specified before with Set Entity Type.
· As first the type of the desired entity have to be defined with CreateEntity
command.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 102
Create Entity Set
Get
· Then set the content of the entity and finally create the entity with ScCreateEntity.
· The default unit is mm, but the user can select a different unit.
· In case of ScPolyLine2D use [Link] Infinity as parameter for one of
Center_X/Y/Z to disable centering.
C# Example: There are several ScCreateEntity examples.
Table 121: Create Entity
Delete Entity Set
Get
DLL Function int CCI_Return = ScDeleteEntity(string Entity_Name)
ASCII Function int CCI_Return = ScCciDeleteEntity(string Entity_Name)
Description Deletes the entity with the name Entity_Name.
Entity_Name Type: string Unit: none
The name of the entity to be deleted.
CCI _Return Type: int
CCI return number, see error list.
Notes -
C# Example: Delete entity1:
string Entity_Name = "Entity1";
int CCI_Return = [Link](Entity_Name);
Table 122: Delete Entity
Duplicate Entity Set
Get
DLL Function int CCI_Return = ScDuplicateEntity(string Entity_Name, string Duplicated_Name)
ASCII Function int CCI_Return = ScCciDuplicateEntity(string Entity_Name)
Description Duplicates the entity with the name Entity_Name.
Entity_Name Type: string Unit: none
The name of the entity to be duplicated.
Duplicated_name Type: string Unit: none
The name of the duplicated entity.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Duplicate entity1:
string Entity_Name = "Entity1";
string Duplicated_Name = "Entity2";
int CCI_Return = [Link](Entity_Name, Duplicated_Name);
Table 123: Duplicate Entity
Entity Type Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Entity_Type)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Entity_Type)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 103
Entity Type Set
Get
Description Specify the type of the entity to be created. For further information on the creation of
an entity, see ScCreateEntity.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeCreateEntity 36
Entity_Type Type: string Unit: none
Can take following values:
· ScBarCode12Chars2D
· ScWinTextChars2D
· ScSerialNumber
· ScEllipse2D
· ScRectangle2D
· ScPolyline2D
· ScSpiral2D
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: for usage examples, please refer to Programming Examples: Create Entity chapter.
Table 124: Entity Type
6.1.1 Geometry Objects
This chapter deals with two special objects, where further commands are implemented.
· Spiral
· Ellipse
· PolyLine
· Rectangle
[Link] Spiral
· Spiral Entity Properties
· Spiral Radius Value
· Spiral Rotation and Segment Settings
Spiral Entity Properties Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Enable/disable the checkboxes in the Spiral Entity Settings.
Entity_Name Type: string Unit: none
Enter the name of the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdSpiralFlags 116
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 104
Spiral Entity Properties Set
Get
Flag Type: int Flag:
Location: None
Clockwise 0x1
Start from outer 0x2
Set return path 0x4
Use NumSeg for every rotation 0x8
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Check the checkbox Clockwise and Set Return Path:
string Entity_Name = "SpiralEntity";
int Flags = 0X1 |= 0X4;
int CCI_Return = [Link](Entity_Name, (int)
[Link], Flags);
Table 125: Spiral Entity Properties
Spiral Radius Value Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get the inner and outer Radius as well a the Rise Parameter of the Spiral.
Entity_Name Type: string Unit: none
Enter the name of the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdSpiral2DInnerRadius 74
The inner radius of the spiral.
scComSAMLightClientCtrlDoubleDataIdSpiral2DOuterRadius 75
The outer radius of the spiral.
scComSAMLightClientCtrlDoubleDataIdSpiral2DRise 76
The Rise Radius value of the spiral.
Parameter Type: double Unit: [mm]*
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set the outer radius value to 15.5:
string Entity_Name = "SpiralEntity";
int CCI_Return = [Link](Entity_Name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdSpiral2DInnerRadius, 15.5);
C# Example: Get the outer radius value:
string Entity_Name = "";
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 105
Spiral Radius Value Set
Get
int CCI_Return = [Link](Entity_Name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdSpiral2DInnerRadius, ref Entity_Name);
Table 126: Spiral Rise Radius
Spiral Rotation and Segment Settings Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Spiral_Num)
int Spiral_Num = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Spiral_Num)
int Spiral_Num = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get inner, outer rotations and segments of the spiral object.
Entity_Name Type: string Unit: none
Enter the name of the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdSpiralNumInnerRotations 113
The number of inner rotations.
scComSAMLightClientCtrlLongDataIdSpiralNumOuterRotations 114
The number of outer rotations.
scComSAMLightClientCtrlLongDataIdSpiralNumOuterSegments 115
The number of outer segments.
Spiral_Num Type: int Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Change the number of inner and outer rotations:
string Entity_Name = "SpiralEntity";
int CCI_Return_01 = [Link](Entity_Name,(int)
[Link], 10);
int CCI_Return_02 = [Link](Entity_Name, (int)
[Link], 20);
Table 127: Spiral Rotation and Segment settings
[Link] Ellipse
· Ellipse Parameters
Ellipse Parameters Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Adjust inner and outer radius as well a the rise parameter of the spiral.
Entity_Name Type: string Unit: none
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 106
Ellipse Parameters Set
Get
Enter the name of the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdEllipse2DRadiusX 77
The ellipse radius value in x direction. [mm]*
scComSAMLightClientCtrlDoubleDataIdEllipse2DRadiusY 78
The ellipse radius value in y direction. [mm]*
scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterX 79
The ellipse center on the x axis. [mm]*
scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterY 80
The ellipse center on the y axis. [mm]*
ScComSAMLightClientCtrlDoubleDataIdEllipse2DSegmentCount 98
Adjust the amount of segments of the ellipse.
scComSAMLightClientCtrlDoubleDataIdEllipse2DStartAngle 108
Adjust the Ellipse Start Angle.[deg]
scComSAMLightClientCtrlDoubleDataIdEllipse2DDeltaAngle 109
Adjust the Ellipse Delta Angle. [deg]
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set the center point to (0,0):
string Entity_Name = "Ellipse";
double center_X = 0;
double center_Y = 0;
[Link](Entity_Name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterX, center_X);
[Link](Entity_Name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterY, center_Y);
C# Example: Get the value of the center point:
string Entity_Name = "Ellipse";
double center_X = 0;
double center_Y = 0;
[Link](Entity_Name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterX, ref center_X);
[Link](Entity_Name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterX, ref center_Y);
Table 128: Ellipse Parameters
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 107
[Link] PolyLine
· Add point to PolyLine
· Add PolyLine
Add point to PolyLine Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Add point to the current PolyLine Array.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandAddPointToCreateEntityPolyline 65
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Add point to PolyLine:
int CCI_Return = [Link]((int)
[Link]
ne);
Table 129: Add point to PolyLine
Add PolyLine Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Add additional PolyLine in the same Layer. All created points after sending this
command will be used in the new PolyLine.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandAddPolylineToCreateEntityPolyline 66
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Add PolyLine:
int CCI_Return = [Link]((int)
[Link]
yline);
Table 130: Add PolyLine
[Link] Rectangle
Edge Parameters Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Edge)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Edge)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Edge)
int Edge = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 108
Edge Parameters Set
Get
Description Adjust Edge Radius and the Edge Segment Count of a rectangle entity.
Entity_Name Type: string Unit: none
Enter the name of the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdRectangle2DEdgeRadius 106
Edge Radius.
scComSAMLightClientCtrlDoubleDataIdRectangle2DEdgeRadiusSegmentCount 107
Edge Segment Count.
Edge Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set the Edge Radius to 10:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdRectangle2DEdgeRadius, 10);
C# Example: Get the value of Edge Segments:
double SegmentCount = 0;
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdRectangle2DEdgeRadiusSegmentCount, ref
SegmentCount);
Table 131: Edge Parameters
6.1.2 Barcode
· Barcode Format
· Barcode Level and Mode
· Barcode Limits Flags
· Barcode Line Reduction
· Barcode Parameter
· Barcode Type
· Human Readable Text
· Human Readable Text Settings
Barcode Format Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Format_String)
int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Format_String)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Format_String)
string Format_String = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description Set or get the format of a Barcode (if supported).
Entity_Name Type: string Unit: none
Specify the entity name to be changed.
Data_ID Type: int ID:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 109
Barcode Format Set
Get
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdBarCodeFormatString 32
Format_String Type: string Unit: none
The barcode format.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: For the entity "Barcode1" set the barcode format to "2,2,2,2":
int CCI_Return = [Link]( "Barcode1", ( int )
[Link], "2,2,2,2" );
C# Example: Get the barcode format string of the entity "Barcode1":
string Format_String = "";
int CCI_Return = [Link]( "Barcode1", ( int )
[Link], ref Format_String );
Table 132: Barcode Format
Barcode Level and Mode Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the barcode level and the barcode mode.
Entity_Name Type: string Unit: none
Specify the entity name to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataBarcodeLevel 108
Barcode level as in the barcode extended settings.
scComSAMLightClientCtrlLongDataIdDataBarcodeMode 109
Barcode mode as in the barcode extended settings.
Parameter Type: int Unit: none
Values are 0 based, 0 is the first entry in the list.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the barcode level for a QR Code Ex named "Barcode1" to "Level L (7% error correction)":
int CCI_Return = [Link]("Barcode1", (int)
[Link], 0);
C# Example: Get the barcode level of barcode "Barcode1":
int Barcode_Level = [Link]("Barcode1", (int)
[Link]);
Table 133: Barcode Level and Mode
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 110
Barcode Limits Flags Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the state of the checkboxes int the Barcode -> Limits dialog.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHigh 138
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHighLimitLength 0x1
Force length limit checkbox.
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHighLimitHeight 0x2
Force height limit checkbox.
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHighKeepAspect 0x4
Keep aspect checkbox.
CCI_Return Type: int
CCI return number, see error list.
Notes · The values for length and height are described in Various Text Parameters.
· To prevent incorrect operation please read chapter How to work with flags.
C# Example: Enable force length limit and don't change any other flags of "bc":
int Barcode_Limits_Flags = [Link]( "bc", ( int )
[Link] );
Barcode_Limits_Flags = Barcode_Limits_Flags | 0x1;
int CCI_Return = [Link]( "bc", ( int )
[Link], Barcode_Limits_Flags );
Table 134: Barcode Limits Flags
Barcode Line Reduction Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Line_Reduction)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
Line_Reduction)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double
Line_Reduction)
double Line_Reduction = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get the line reduction of the barcode in percent for reducing the size of a
barcode line.
Entity_Name Type: string Unit: none
Specify the entity name to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdBarcodeLinereduction 69
Specify the barcode level as in the Barcode Extended settings.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 111
Barcode Line Reduction Set
Get
Line_Reduction Type: double Unit: %
Line reduction in percent value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the line reduction of barcode "Barcode1" to 10.5%:
int CCI_Return = [Link]( "Barcode1", ( int )
[Link], 10.5 );
C# Example: Get the line reduction of the barcode "Barcode1":
double Line_Reduction = -1.0;
int CCI_Return = [Link]( "Barcode1", ( int )
[Link], ref
Line_Reduction );
Table 135: Barcode Line Reduction
Barcode Parameter Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Enable, disable or get the barcode entities parameters from the barcode properties
page.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBarcodeSetFlags 101
Enable flags and get flags.
scComSAMLightClientCtrlLongDataIdBarcodeClearFlags 102
Disable flags.
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBarcodeFlagVariableLength 0x1
VariableLength checkbox.
scComSAMLightClientCtrlLongDataIdBarcodeFlagInvert 0x2
Invert checkbox from Barcode Extended.
scComSAMLightClientCtrlLongDataIdBarcodeFlagDisableAutoQuietZ 0x4
Auto Quiet Zone checkbox from Barcode Extended.
scComSAMLightClientCtrlLongDataIdBarcodeFlagQuietZoneAbsolute 0x8
QuiteZone Absolute checkbox from Barcode Extended.
scComSAMLightClientCtrlLongDataIdBarcodeFlagGenerateCheckCode 0x20
Generate Check Code checkbox from Barcode Extended.
scComSAMLightClientCtrlLongDataIdBarcodeFlagInvertCellMode 0x40
Inverted Cellmode checkbox from Barcode Extended. "Cell mode" must be enabled
and "invert" disabled.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 112
Barcode Parameter Set
Get
scComSAMLightClientCtrlLongDataIdBarcodeFlagUseUtf8 0x800
UTF-8 Checkbox.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable "variable length" and "invert" of barcode "bc":
int CCI_Return = [Link]( "bc", ( int )
[Link], ( int )
[Link] | ( int )
[Link] );
C# Example: Disable "invert" of barcode "bc":
int CCI_Return = [Link]( "bc", ( int )
[Link], ( int )
[Link] );
C# Example: Get barcode parameters of barcode "bc":
int Flag = [Link]( "bc", ( int )
[Link] );
Table 136: Barcode Parameters
Barcode Type Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Barcode_Type)
int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Barcode_Type)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Barcode_Type)
string Barcode_Type = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description Set or get the barcode type.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdSetBarcodeType 19
Set barcode type.
scComSAMLightClientCtrlStringDataIdGetBarcodeType 20
Get barcode type.
Barcode_Type Type: string Unit: none
Specify the barcode type.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set barcode type of barcode "bc" to "DataMatrixEx":
int CCI_Return = [Link]( "bc", ( int )
[Link], "DataMatrixEx" );
C# Example: Get barcode type of barcode "bc":
string Barcode_Type = "";
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 113
Barcode Type Set
Get
int CCI_Return = [Link]( "bc", ( int )
[Link], ref Barcode_Type );
Table 137: Barcode Type
Human Readable Text Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int HRT_State)
int HRT_State = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int HRT_State)
int HRT_State = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the human readable text state of a barcode entity.
Entity_Name Type: string Unit: none
Specify the entity name to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataBarcodeTextEnable 107
HRT_State Type: int Unit: none
· 0: Disable human readable text.
· 1: Enable human readable text.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable the human readable text for the barcode entity "bc":
int CCI_Return = [Link]("bc", (int)
[Link], 1);
C# Example: Get human readable text state of barcode "bc":
int HRT_State = [Link]("bc", (int)
[Link]);
Table 138: Human Readable Text
Human Readable Text Settings Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get the current applied settings for human readable text for a barcode entity.
Entity_Name Type: string Unit: none
Specify the entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdTextPointResolution 7
Change the resolution of the lines in percent. Not available for Simple Fonts. Unit:
none.
scComSAMLightClientCtrlDoubleDataIdTextBaseline 8
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 114
Human Readable Text Settings Set
Get
Change the distance between the baseline of the barcode and the baseline of the
text. Unit: mm.
Parameter Type: double Unit: depends on constant
The desired value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set text point resolution of barcode "bc" to 50%:
int CCI_Return = [Link]("bc", (int)
[Link], 0.5);
C# Example: Get text point resolution of barcode "bc":
double Text_Point_Resolution = -1.0;
int CCI_Return = [Link]("bc", (int)
[Link], ref
Text_Point_Resolution);
Table 139: Human Readable Text Settings
[Link] DataMatrixEx
· DataMatrixEx Cell Size
· DataMatrixEx Distance Between Dots
· DataMatrixEx Encoding
· DataMatrixEx Flags
· DataMatrixEx Quiet Zone
· DataMatrixEx Points per Cell
· DataMatrixEx Symbol Size
DataMatrixEx Cell Size Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Cell_Size)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Cell_Size)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Cell_Size)
double Cell_Size = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get the cell size. Available only if cellmode is enabled.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdDataMatrixCellSizeX 72
The size in x direction.
scComSAMLightClientCtrlDoubleDataIdDataMatrixCellSizeY 73
The size in y direction.
Cell_Size Type: double Unit: none
Value between 0 and 1.
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 115
DataMatrixEx Cell Size Set
Get
Notes · The size is specified in percent.
C# Example: Set the cell size in X to 80% for the entity "DataMatrix1":
int CCI_Return = [Link]("DataMatrix1", (int)
[Link], 80.0);
C# Example: Get the value of the current cell size in x direction for the entity "DataMatrix1":
double Cell_Size_X = 0.0;
int CCI_Return = [Link]("DataMatrix1", (int)
[Link], ref Cell_Size_X);
Table 140: DataMatrixEx Cell Size
DataMatrixEx Distance Between Dots Set
Get
DLL Function int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Distance)
ASCII Function double Distance = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Get the distance between two points of DataMatrixEx.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdDataMatrixDistanceBetweenDots 87
Distance Type: double Unit: [mm]
Value between 0.0 and 1.0.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get the distance between dots for the "DataMatrix1" entity:
double Distance_Between_Dots = 0.0;
int CCI_Return = [Link]("DataMatrix1", (int)
[Link], ref
Distance_Between_Dots);
Table 141: DataMatrixEx Distance Between Dots
DataMatrixEx Encoding Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the encoding type of the DataMatrixEx object.
Entity_Name Type: string Unit: none
Set or get the Encoding of the DataMatrixEx.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataMatrixEncoding 106
Flag Type: int Index:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 116
DataMatrixEx Encoding Set
Get
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationAscii 1
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationBase256 2
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationC40 3
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationText 4
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationAnsiX12 5
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationEdifact 6
CCI_Return Type: int
CCI return number, see error list.
Notes · You can set only one encodation type simultaneously.
C# Example: Change the data matrix encoding of the entity "DataMatrix1" to C40:
int encoding:Mode = (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationC40;
int CCI_Return = [Link]("DataMatrix1", (int)
[Link], encodingMode);
C# Example: Get the current value of the Data Matrix Encoding of the "DataMatrix1" entity:
int current:Encoding = [Link]("DataMatrix1", (int)
[Link]);
Table 142: DataMatrixEx Encoding
DataMatrixEx Flags Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int DM_Ex_Flags)
int DM_Ex_Flags = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int DM_Ex_Flags)
int DM_Ex_Flags = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the checkboxes state at barcode extended settings (availiable only for the
DataMatrixEx barcode type).
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataMatrixSetSymbolMode 103
Enable checkboxes.
scComSAMLightClientCtrlLongDataIdDataMatrixClearSymbolMode 104
Disable checkboxes.
DM_Ex_Flags Type: int Flags:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeRectangle 0x1
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeAutoSiz 0x10000
e
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeAutoEncodation 0x20000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeDots 0x40000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeTilde 0x80000
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 117
DataMatrixEx Flags Set
Get
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeCells 0x100000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeNoFinderCells 0x200000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeEllipse 0x400000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeTextFreelyEditabl 0x800000
e
CCI_Return Type: int
CCI return number, see error list.
Notes · The Flag value can be a combination of multiple flags.
· Unlike other flag handling in CCI, here not all flags are written at once. Only the
chosen flags are enabled with SetSymbolMode or disabled with
ClearSymbolMode.
· Not all flags are compatible with each other. Refer to SAMLight to learn more
about flag compatibility.
C# Example: Enable Rectangle and AutoSize of "DataMatrixEx1". Other flags are not changed:
int CCI_Return = [Link]( "DataMatrixEx1", ( int )
[Link], ( int )
[Link] | ( int )
[Link] );
C# Example: Disable Rectangle and AutoSize of "DataMatrixEx1". Other flags are not changed:
int CCI_Return = [Link]( "DataMatrixEx1", ( int )
[Link], ( int )
[Link] | ( int )
[Link] );
C# Example: Get the current data matrix flags of "DataMatrixEx1":
int Flags = [Link]( "DataMatrixEx1", ( int )
[Link] );
Table 143: DataMatrixEx Flags
DataMatrixEx Quiet Zone Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Quiet_Zone)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Quiet_Zone)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Quiet_Zone)
double Quiet_Zone = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get the quiet zone of a DataMatrixEx. If the checkbox Absolute is activated the
quiet zone is given in mm. If you need to set different paramters for X and Y you
have to clear the flag scComBarFlagDisableAutoQuietZone with BarcodeClearFlags.
If not, the quiet zone is given as a scale factor.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdDataMatrixQuietZoneX 81
The quiet zone in x direction.
scComSAMLightClientCtrlDoubleDataIdDataMatrixQuietZoneY 82
The quiet zone in y direction.
Quiet_Zone Type: double Unit: none
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 118
DataMatrixEx Quiet Zone Set
Get
Value between 0 and 1.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the quiet zone size in X to 20% for the entity "DataMatrix1":
int CCI_Return = [Link]( "DataMatrix1", ( int )
[Link], 20.0 );
C# Example: Get the value of the current quiet zone in X for the entity "DataMatrix1":
double Quiet_Zone_X = 0.0;
int CCI_Return = [Link]( "DataMatrix1", ( int )
[Link], ref Quiet_Zone_X );
Table 144: DataMatrixEx Quiet Zone
DataMatrixEx Points per Cell Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Points_Per_Cell)
int Points_Per_Cell = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Points_Per_Cell)
int Points_Per_Cell = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the number of points per cell for DataMatrixEx.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataMatrixNumberOfDots 124
Points_Per_Cell Type: int Unit: none
Valid values to set are 1, 4, 9, 16, otherwise returns error.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the number of dots for the entity "DataMatrix1" to 4:
int CCI_Return = [Link]("DataMatrix1", (int)
[Link], 4);
C# Example: Get the current number of dots for the entity "DataMatrix":
int points_Per_Cell = [Link]("DataMatrix1", (int)
[Link]);
Table 145: DataMatrixEx Points per Cell
DataMatrixEx Symbol Size Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Symbol_Size)
int Symbol_Size = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Symbol_Size)
int Symbol_Size = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the symbols size in the DataMatrixEx.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 119
DataMatrixEx Symbol Size Set
Get
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdDataMatrixSymbolSize 105
Symbol_Size Type: int Unit: none
Parameter corresponds to the sizes in combo box, starting with 1.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the symbol size of the "DataMatrix1" entity to 8:
int CCI_Return = [Link]("DataMatrix1", (int)
[Link], 8);
C# Example: Get the value of the symbol size of the entity "DataMatrix1":
int symbolSize = [Link]("DataMatrix1", (int)
[Link]);
Table 146: DataMatrixEx Symbols Size
[Link] QR Code Ex
· QR Code Ex Settings
· QR Code Ex Version
QR Code Ex Settings Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the state of the checkboxes from Barcode Extended settings (availiable
only for the QR Code Ex barcode type).
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdQrCodeExSetMode 127
Enable checkboxes.
scComSAMLightClientCtrlLongDataIdQrCodeExClearMode 128
Disable checkboxes.
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdQrCodeExModeDots 0x1
scComSAMLightClientCtrlLongDataIdQrCodeExModeMicro 0x40000
scComSAMLightClientCtrlLongDataIdQrCodeExModeTilde 0x80000
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 120
QR Code Ex Settings Set
Get
scComSAMLightClientCtrlLongDataIdQrCodeExModeCells 0x100000
scComSAMLightClientCtrlLongDataIdQrCodeExModeEllipse 0x400000
scComSAMLightClientCtrlLongDataIdQrCodeExModeTextFreelyEditabl 0x800000
e
CCI_Return Type: int
CCI return number, see error list.
Notes · This Flags value is usually a combination of multiple flags. See the chapter How to
work with flags to learn more about combining multiple flags
C# Example: Enable the generate dots checkbox and disable the FreelyEditable checkbox:
int checkbox_Enable = (int)[Link];
int CCI_Return_01 = [Link]("QRCode1", (int)
[Link], checkboxEnable);
int checkbox_Disable = (int)
[Link];
int CCI_Return_02 = [Link]("QRCode1", (int)
[Link], checkboxDisable);
Table 147: QR Code Settings
QR Code Ex Version Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set the Version of the QR Code Ex.
Entity_Name Type: string Unit: none
Specify the entity name to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdQrCodeExVersion 152
Version as in the QR Code Ex extended settings.
Parameter Type: int Unit: none
0 relates to Auto, other numbers correspond to their respective Version number.
CCI_Return Type: int
CCI return number, see error list.
Notes · To switch to Micro Qr Code versions, use the command QR Code Ex Settings first
by using the flag scComSAMLightClientCtrlLongDataIdQrCodeExModeMicro. Afterwards
the versions behave the same way as described under "Parameter".
C# Example: Set the version for a QR Code Ex named "Barcode1" to "Version 7 (45x45)":
int CCI_Return = [Link]("Barcode1", (int)
[Link], 7);
C# Example: Set the version of "Barcode1" to "Auto":
int Barcode_Level = [Link]("Barcode1", (int)
[Link], 0);
Table 148: Barcode Level and Mode
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 121
6.1.3 Bitmap
· Bitmap Blank Threshold
· Bitmap Line Index Step
· Bitmap Mode
· Entity Specific Bitmap Settings
· Export Scanner Bitmap
· Pixel Map Size
Bitmap Blank Threshold Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Blank_Threshold)
int Blank_Threshold = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Blank_Threshold)
int Blank_Threshold = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the state of the bitmap blank threshold flag.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBitmapBlankThreshold 122
Blank_Threshold Type: int Unit: none
· 0: Disable.
· 1: Enable.
CCI_Return Type: int
CCI return number, see error list.
Notes · Make sure the flag for mode grayscale, show bitmap and show scanner are set so
that the checkbox is to activate.
C# Example: Activate the bitmap blank threshold flag:
int CCI_Return = [Link]("bmp1",(int)
[Link], 1);
Table 149: Bitmap Blank Threshold
Bitmap Line Index Step Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Index_Step)
int Index_Step = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Index_Step)
int Index_Step = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description This feature can be used to reduce local heating of the target material at marking
gray scale bitmaps. If ‘Line Index Step' = x > 1 the bitmap will not be marked line by
line in one run but in x runs where in each run every xth line will be marked.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBitmapLineIndexStep 123
Index_Step Type: int Unit: none
For example a Line Index Step of '3' results in this marking order: 1, 4, 7, 10, .., 2, 5,
8, 11, .., 3, 6, 9, 12, ..
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 122
Bitmap Line Index Step Set
Get
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the line index step of the bitmap "logo" to 3:
int CCI_Return = [Link]( "logo", ( int )
[Link], 3 );
C# Example: Get the line index step of the bitmap "logo":
int Index_Step = [Link]( "logo", ( int )
[Link] );
Table 150: Bitmap Blank Threshold
Bitmap Mode Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description This function is used to manipulate a named bitmap.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBitmapMode 49
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdBitmapModeInvert 0x1
scComSAMLightClientCtrlLongDataIdBitmapModeGreyscale 0x2
scComSAMLightClientCtrlLongDataIdBitmapModeDrillmode 0x4
scComSAMLightClientCtrlLongDataIdBitmapModeBidirectional 0x8
scComSAMLightClientCtrlLongDataIdBitmapModeStartlastline 0x10
scComSAMLightClientCtrlLongDataIdBitmapModeNolineincr 0x20
scComSAMLightClientCtrlLongDataIdBitmapModeShowBitmap 0x100
scComSAMLightClientCtrlLongDataIdBitmapModeShowScanner 0x200
scComSAMLightClientCtrlLongDataIdBitmapModeScanXDir 0x400
scComSAMLightClientCtrlLongDataIdBitmapModePenFrequency 0x800
scComSAMLightClientCtrlLongDataIdBitmapModeJumpOverBlankPixel 0x1000
s
scComSAMLightClientCtrlLongDataIdBitmapModeDrillGreyscale 0x2000
CCI_Return Type: int
CCI return number, see error list.
Notes · The scanner bitmap is created after every call to DontUpdateEntity is not set.
C# Example: Set bitmap mode Greyscale and Show Scanner Bitmap:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 123
Bitmap Mode Set
Get
int CCI_Return = [Link]("",(int)
[Link],0x202);
C# Example: Get bitmap mode:
int Flag = [Link]("", (int)
[Link]);
Table 151: Bitmap Mode
Entity Specific Bitmap Settings Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Various entity specific parameters can be changed with the commands below.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdBitmapIntensity 33
Changes the intensity of the related bitmap. Range: [0,2]
scComSAMLightClientCtrlDoubleDataIdBitmapBrightness 34
Changes the brightness of the related bitmap. Range: [-1,1]
scComSAMLightClientCtrlDoubleDataIdBitmapDitherstep 35
Changes the rasterization size of the scanner bitmap. Units: [mm/pixel]
scComSAMLIghtClientCtrlDoubleDataIdBitmapOneToOne 110
Map the bitmap pixel 1:1. Parameter: 0
Parameter Type: int Unit: none
Enter the corresponding parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the dither step value to 0.2 for the entity "bmp1":
int CCI_Return = [Link]("bmp1", (int)
[Link], 0.2);
C# Example: Get the intensity value for the entity "bmp1":
double Intensity = 0;
int CCI_Return = [Link]("bmp1", (int)
[Link], ref Intensity);
Table 152: Entity Specific Bitmap Settings
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 124
Export Scanner Bitmap Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Path)
int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Path)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Path)
string Path = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description Export a scanner bitmap.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdExportScannerBmp 36
Path Type: string Unit: none
Specify the path.
CCI_Return Type: int
CCI return number, see error list.
Notes · A scanner bitmap must exists in SAMLight.
C# Example: Export a scanner bitmap:
int CCI_Return = [Link]("", (int)
[Link], @"C:");
Table 153: Export Scanner Bitmap
Pixel Map Size Set
Get
DLL Function int Pixel_Map_Size = ScGetLongValue(int Value_Type)
ASCII Function int Pixel_Map_Size = ScCciGetLongValue(int Value_Type)
Description Return the size of the Pixel Map, means the number of the available Grey value
partitions.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSizePixelMap 42
Pixel_Map_Size Type: int Unit: none
The size of the Pixel Map.
Notes -
C# Example: Get the size of the pixel map:
int Pixel_Map_Size = [Link]((int)
[Link]);
Table 154: Pixel Map Size
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 125
6.1.4 Serial Number
· All Serial Numbers In Job
· Change Serial Number File
· Decrement Serial Number
· Increment Serial Number
· Reset Serial Number
· Serial Number Flags
· Serial Number Global Settings
· Serial Number Specifications
All Serial Numbers In Job Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int SN_In_Job)
int SN_In_Job = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int SN_In_Job)
int SN_In_Job = ScCciGetLongValue(int Value_Type)
Description Set or get the state of the "enable" checkbox under "All Serial Numbers in Job" on
entity property page.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableAllSerialNumbersInJob 95
SN_In_Job Type: int Unit: none
· 0: Disable.
· 1: Enable.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable all serial numbers in the job:
int CCI_Return = [Link]((int)
[Link], 1);
C# Example: Check the status of the checkbox:
int checkbox = [Link]((int)
[Link]);
Table 155: All Serial Numbers In Job
Change Serial Number File Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Name)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Name)
Description This is used to change the file name of a serial number list in txt/xlsx format. This is
recommended to use with ResetSerialNumber together.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdEntitySerialASCIIFileName or 24
scComSAMLightClientCtrlStringDataIdEntitySerialExcelFileName
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 126
Change Serial Number File Set
Get
Name Type: string Unit: none
Enter the new path.
CCI_Return Type: int
CCI return number, see error list.
Notes · The "from File" checkbox has to be activated manually before.
· You can insert an existing path. No new files will be created with this command.
C# Example: Change the serial numbers file path to the file "[Link]" (for the entity "SerialEntity1"):
string new_Name = "C:/Users/Support/[Link]";
int CCI_Return = [Link]("SerialEntity1", (int)
[Link], new_Name);
Table 156: Change Serial Number File
Decrement Serial Number Set
Get
DLL Function -
ASCII Function int CCI_Return = ScCciDecSerialNumbers()
Description This call decrement all serial number entities.
CCI_Return Type: int
CCI return number, see Error list.
Notes -
C# Example: -
Table 157: Decrement Serial Numbers
Increment Serial Number Set
Get
DLL Function -
ASCII Function int CCI_Return = ScCciIncSerialNumbers()
Description This call increments all serial number entities.
CCI_Return Type: int
CCI return number, see Error list.
Notes -
C# Example: -
Table 158: Increment Serial Numbers
Reset Serial Number Set
Get
DLL Function -
ASCII Function int CCI_Return = ScCciResetSerialNumbers()
Description This call resets all serial number entities to their start values.
CCI_Return Type: int
CCI return number, see Error list.
Notes · Further command to reset via DLL function is given in Entities->Objects-
>SerialNumber
C# Example: -
Table 159: CCI Reset Serial Number
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 127
Serial Number Flags Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int SN_Flags)
int SN_Flags = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int SN_Flags)
int SN_Flags = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Change the type of the serial number input.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySerialNumModesFlags 117
SN_Flags Type: int Flag:
Location: None
Text 0x1
BarCode 0x2
ASCIIFile 0x4
DateTime 0x8
CustomFormat 0x10
CCI_Return Type: int
CCI return number, see error list.
Notes · To prevent incorrect operation please read chapter How to work with flags.
· Text or BarCode is always required.
· Text and BarCode are incompatible with each other.
· ASCIIFile and CustomFormat are incompatible with each other.
· DateTime is incompatible with ASCIIFile and CustomFormat.
C# Example: Enable CustomFormat and don't change all other flags:
int SN_Flags = [Link]( "SerialEntity1", ( int )
[Link] );
SN_Flags = SN_Flags | 0x10;
int CCI_Return = [Link]( "SerialEntity1", ( int )
[Link], SN_Flags );
C# Example: Disable CustomFormat and don't change all other flags:
int SN_Flags = [Link]( "SerialEntity1", ( int )
[Link] );
SN_Flags = SN_Flags & ~0x10;
int CCI_Return = [Link]( "SerialEntity1", ( int )
[Link], SN_Flags );
C# Example: Enable Barcode, disable Text and don't change all other flags:
int SN_Flags = [Link]( "SerialEntity1", ( int )
[Link] );
SN_Flags = (SN_Flags | 0x2) & ~0x1;
int CCI_Return = [Link]( "SerialEntity1", ( int )
[Link], SN_Flags );
Table 160: Serial Number Flags
Serial Number Global Settings Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 128
Serial Number Global Settings Set
Get
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Increment, decrement or reset all serial number entities in the job.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandResetSerialNumber 8
Reset all the serial numbers in the job.
scComSAMLightClientCtrlExecCommandIncSerialNumber 23
Increment all serial numbers.
scComSAMLightClientCtrlExecCommandDecSerialNumber 24
Decrement all serial numbers.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Reset all serial numbers:
int CCI_Return = [Link]((int)
[Link]);
C# Example: Increment all serial numbers in the job:
int CCI_Return = [Link]((int)
[Link]);
Table 161: Serial Number Global Settings
Serial Number Specifications Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Change different serial number parameters for the defined entity.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySerialStartValue 71
Get or set the start value of a serial number.
scComSAMLightClientCtrlLongDataIdEntitySerialIncrValue 72
Get or set the increment value for a serial number object.
scComSAMLightClientCtrlLongDataIdEntitySerialCurrValue 73
Get the current value of a serial number.
scComSAMLightClientCtrlLongDataIdEntitySerialNumLines 77
Set the number of lines to be read from an ASCII file. Default is 1.
scComSAMLightClientCtrlLongDataIdEntitySerialBeatCount 79
Get or set the beat count of the serial number.
scComSAMLightClientCtrlLongDataIdEntitySerialResetCount 80
Get or set the reset count of the serial number.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 129
Serial Number Specifications Set
Get
Parameter Type: int Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The new values are used, after a serial number is reset by using
ResetSerialNumber.
C# Example: Change the start value for the entity "SerialEntity1" to 10:
//first set the new Start Value
int CCI_Return_01 = [Link]("SerialEntity1", (int)
[Link], 10);
//reset all the serial numbers to update the start values
int CCI_Return_02 = [Link]((int)
[Link]);
C# Example: Get the current increment value for the entity "SerialEntity2":
int serial_2_Inc = [Link]("SerialEntity2", (int)
[Link]);
Table 162: Serial Number Specifications
6.1.5 Date Time
· Date Time Format
Date Time Format Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Format)
int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Format)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Format)
string Format = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description This allows to get or set the format string of a date time bbject.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdSerialNumberFormatString 27
Format Type: int Unit: none
The corresponding format. For the details on the DateTime format please refer to the
SAMLight manual.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set date time format for the entity "DateTime1" as %y/%m/%d:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 130
Date Time Format Set
Get
int CCI_Return = [Link]( "DateTime1", ( int )
[Link], "%y/%m/%d" );
C# Example: Get date time format for the entity "DateTime1":
string Date_Time_Format = "";
int CCI_Return2 = [Link]( "DateTime1", ( int )
[Link], ref
Date_Time_Format );
Table 163: Date Time Format
6.1.6 Text2D
· Change Text
· Change Text and Font
· Check Font Availability
· Spacing Mode
· Text2D Checkboxes
· Text Alignment
· Text Weight
· Various Text Parameters
Change Text Set
Get
DLL Function int CCI_Return = ScChangeTextByName(string Entity_Name, string Text)
ASCII Function int CCI_Return = ScCciChangeTextByName(string Entity_Name, string Text)
Description The string of the text object with the given Entity_Name can be set to the string
specified by the parameter Text. This function allows the dynamic change of text
objects. The different text objects are identified by their name.
Entity_Name Type: string Unit: none
· Specify the entity to be changed
· An empty string for a name in the parameter Text is valid too.
Text Type: string Unit: none
Enter the new text.
CCI_Return Type: int
CCI return number, see error list.
Notes · It also possible to change the text of more than one entities with one function call.
Therefore set the Flag NamesSeparatedBySemicolon. Then separate the different
Entity_Names with a semicolon ';'. If you want to give the each entity a different
new string separate these strings by a vertical tab in the parameter Text.
· In C and C++ the vertical tab equals a '\v' whereas in Visual Basic the vertical tab
is ( vbVerticalTab ). Then the number of Entity_Names must be the same as the
number of names in the parameter Text.
C# Example: Set text of "text1" entity to "Hey!":
int CCI_Return = [Link]( "text1", "Hey!" );
Table 164: Change Text
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 131
Change Text and Font Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Text)
int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Text)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Text)
string Text = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description Edit the text of the Text2D entity or change the font
Entity_Name Type: string Unit: none
Specify the entity to be changed
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdTextFontName 1
Change the text font.
scComSAMLightClientCtrlStringDataIdTextText 2
Change the text itself.
Text Type: string Unit: none
The corresponding text parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Change the content of the "text1" entity and set "Arial" as font:
int CCI_Return_01 = [Link]("text1", (int)
[Link], "Arial");
int CCI_Return_02 = [Link]("text1", (int)
[Link], "New Part");
C# Example: Get the current content of the "text1" text entity:
string current_Text = "";
int CCI_Return = [Link]("text1", (int)
[Link], ref current_Text);
Table 165: Change Text and Font
Check Font Availability Set
Get
DLL Function int Font_Available = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int Font_Available = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description This constant will examine if for the given Entity_Name the specified font is available
on the PC on which SAMLight is currently running. The return value will be 1 if the
fonts is available 0 if it is not.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdTextFontAvailable 10
Font_Available Type: int Unit: none
· 0: Not avaliable.
· 1: Avaliable.
Notes -
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 132
Check Font Availability Set
Get
C# Example:
int font_available = [Link]("text1", (int)
[Link]);
Table 166: Check Font Availability
Find Entity with Text Set
Get
DLL Function int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Parameter)
ASCII Function string Parameter = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description Sucht Entity mit übergebenem Textinhalt, gibt Name des Entities zurück.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdFindEntityWithText
Parameter Type: string Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: How to use Entity String Data IDs
// Set content of text entity
int CCI_Return_01 = [Link]( "Text_Entity", ( int )
[Link], "Test" );
// Get content of text entity
string Entity_Text = "";
int CCI_Return_02 = [Link]( "Text_Entity", ( int )
[Link], ref Entity_Text );
Table 167: Find Entity with Text
Spacing Mode Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Spacing_Mode)
int Spacing_Mode = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Spacing_Mode)
int Spacing_Mode = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Swap between spacing given in SAMLight unit or percent.
Entity_Name Type: string Unit: none
Specify the entity to be changed
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdUseMMForSpacing 144
Set character spacing mode to be set in [mm] or in %.
scComSAMLightClientCtrlLongDataIdUseMMforLineSpacing 145
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 133
Spacing Mode Set
Get
Set line spacing mode to be set in [mm] or in %.
Spacing_Mode Type: int Unit: none
· 1 = use [mm]
· 0 = use factor (]0...1000]; 1= normal text spacing)
CCI_Return Type: int
CCI return number, see error list.
Notes · You can use only one parameter simultaneously.
C# Example: Set charcater spacing mode of entity "text1" to be set in [mm]:
int CCI_Return = [Link]("text1", (int)
[Link], 1 );
C# Example: Get Spacing Mode flag of entity "text1"
int SpacingType = [Link]( "text1", ( int )
[Link]);
Table 168: Spacing Mode
Text2D Checkboxes Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Text2D_Flags)
int Text2D_Flags = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Text2D_Flags)
int Text2D_Flags = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Enable multiple checkboxes from the Text Properties dialog-window.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdTextCharFlags 9
Text2D_Flags Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdTextCharFlagMonoSpaced 0x3
Set the Mono Spaced Flag in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagItalic 0x10000
Set the Italic Flag.
scComSAMLightClientCtrlLongDataIdTextCharFlagRadial 0x20000
Set the Radial Flag in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagRadialAlignToCharOutline 0x40000
Set the Radial Align to Char Flag in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagReverseOrder 0x80000
Set the Reverse Flag in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagMirrorCharOnXAxis 0x100000
Set the Mirror X Flag in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagMirrorCharOnYAxis 0x200000
Set the Mirror Y Flag in Text Properties dialog-window.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 134
Text2D Checkboxes Set
Get
scComSAMLightClientCtrlLongDataIdTextCharFlagSwapLines 0x400000
Set the Swap Lines Flag in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagSetToLimitLength 0x800000
Set checkbox force length in Text2D Extended.
scComSAMLightClientCtrlLongDataIdTextCharFlagSetToLimitHeight 0x100000
0
Set checkbox force height in Text2D Extended.
scComSAMLightClientCtrlLongDataIdTextCharFlagSetToLimitKeepAspect 0x200000
0
Set checkbox force keep aspect in Text2D Extended.
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderXDown 0x400000
0
Set the third Marking order symbol in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderYUp 0x800000
0
Set the second Marking order symbol in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderYMainUp 0x10000000
Set the first Marking order symbol in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderBiDir 0x20000000
Set the fourth Marking order symbol in Text Properties dialog-window.
scComSAMLightClientCtrlLongDataIdTextCharFlagRadialCenterMode 0x40000000
Sets the center checkbox for text in radial mode with the corresponding
RadialCenterX or RadialCenterY.
scComSAMLightClientCtrlLongDataIdTextCharFlagMergeCharacterOutline 0x80000000
Set the Merge Character Outline Flag.
CCI_Return Type: int
CCI return number, see error list.
Notes · To prevent incorrect operation please read chapter How to work with flags.
C# Example: Enable Italic and don't change all other flags:
int Text2D_Flags = [Link]( "Text1", ( int )
[Link] );
Text2D_Flags = Text2D_Flags | ( int )
[Link];
int CCI_Return = [Link]( "Text1", ( int )
[Link], Text2D_Flags );
C# Example: Disable Italic and don't change all other flags:
int Text2D_Flags = [Link]( "Text1", ( int )
[Link] );
Text2D_Flags = Text2D_Flags & ~( int )
[Link];
int CCI_Return = [Link]( "Text1", ( int )
[Link], Text2D_Flags );
Table 169: Text2D Checkboxes
Text Alignment Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 135
Text Alignment Set
Get
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the state of the text alignment.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdTextAlignment 2
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlTextAlignmentCenter 0x1
scComSAMLightClientCtrlTextAlignmentLeft 0x2
scComSAMLightClientCtrlTextAlignmentRight 0x4
scComSAMLightClientCtrlTextAlignmentTop 0x8
scComSAMLightClientCtrlTextAlignmentBottom 0x10
scComSAMLightClientCtrlTextAlignmentMiddle 0x20
scComSAMLightClientCtrlTextAlignmentRadialCenter 0x40
scComSAMLightClientCtrlTextAlignmentRadialEnd 0x80
scComSAMLightClientCtrlTextAlignmentLineLeft 0x100
scComSAMLightClientCtrlTextAlignmentLineRight 0x200
scComSAMLightClientCtrlTextAlignmentLineCenter 0x400
CCI_Return Type: int
CCI return number, see error list.
Notes · You can combine the horizontal and the vertical alignments values
C# Example: Set the alignment of the text for the text entity "text1" to "Alignment Right" and "Alignment
Bottom":
int CCI_Return = [Link]( "text1", ( int )
[Link], ( int )
[Link] | ( int )
[Link] );
C# Example: Get text alignment:
int Text_Alignment = [Link]( "text1", ( int )
[Link] );
Table 170: Text Alignment
Text Weight Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Text_Weight)
int Text_Weight = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Text_Weight)
int Text_Weight = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Modify the text weight.
Entity_Name Type: string Unit: none
Specify the entity to be changed
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 136
Text Weight Set
Get
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdTextWeight 50
Text_Weight Type: int Unit: none
· 100: Thin
· 200: ExtraLight
· 300: Light
· 400: Normal
· 500: Medium
· 600: SemiBold
· 700: Bold
· 800: ExtraBold
· 900: Heavy
CCI_Return Type: int
CCI return number, see error list.
Notes · You can use only one parameter simultaneously.
C# Example: Set the text weight of entity "text1" to bold:
int CCI_Return = [Link]("text1", (int)
[Link], 700);
Table 171: Text Weight
Various Text Parameters Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get various Text2D parameters.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdTextSize 1
The parameter data contains the size of the text.
scComSAMLightClientCtrlDoubleDataIdTextCharSpacing 2
Change the character spacing of the string. Can be set in mm or % depending on
flag UseMMforSpacing.
scComSAMLightClientCtrlDoubleDataIdTextLengthLimit 3
Change the length limit of the text object.
scComSAMLightClientCtrlDoubleDataIdTextHeightLimit 4
Change the height limit of the text object.
scComSAMLightClientCtrlDoubleDataIdTextRadius 5
Change the radius of a radial text. Units: [mm]
scComSAMLightClientCtrlDoubleDataIdTextStartAngle 6
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 137
Various Text Parameters Set
Get
Change the start angle of a radial text. Units: [rad].
scComSAMLightClientCtrlDoubleDataIdTextRadialCenterX 9
Sets the center of a radial text on the x axis. The center checkbox can be enabled
with ScSetEntityLongData() with the flag 'RadialCenterMode'.
scComSAMLightClientCtrlDoubleDataIdTextRadialCenterY 10
Sets the center of a radial text on the y axis. The center checkbox can be enabled
with ScSetEntityLongData() with the flag 'RadialCenterMode'.
scComSAMLightClientCtrlDoubleDataIdTextLineSpacing 11
Change the line spacing value. Can be set in mm or % depending on flag
UseMMforLineSpacing.
scComSAMLightClientCtrlDoubleDataIdTextOrientation 36
Changes the orientation of a text. With a parameter of 0 for the data field of
ScSetEntityDoubleData() the text is oriented in horizontal direction. If the parameter
is pi/2 then the text is displayed vertically.
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example:Set the radius to 30 mm and change the text size of the text entity "text1" to 20 mm:
// set the radius to 30 mm
int CCI_Return_01 = [Link]("text1", (int)
[Link], 30.0);
// change the font size
int CCI_Return_02 = [Link]("text1", (int)
[Link], 20.0);
Table 172: Various Text Parameters
6.1.7 Control Objects
· Enable Control
· IO Control Object (ScWaitForInput and ScSetOutput) Properties
· Jump Entity
· MOTF Offset
· Motion Axis Add Control
· Motion Entity Parameter Get
· Motion Entity Parameter Set
· Motion Entity String
· Timer Value
Enable Control Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Checkbox)
int Checkbox = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Checkbox)
int Checkbox = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the enable checkbox state for control objects.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 138
Enable Control Set
Get
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEnableControl 126
Checkbox Type: int Unit: depends on constant
· 0: Deactivated.
· 1: Activated.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Disable the enable checkbox:
int CCI_Return = [Link]("", (int)
[Link], 0);
Table 173: Enable Control
IO Control Object (ScWaitForInput and ScSetOutput) Properties Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get properties of ScWaitForInput and ScSetOutput entities.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySetOutputPulse 64
Set the pulse length of a ScSetOutput entitiy. Unit here: [µs]. Unit in SAMLight: [ms]
· Value greater than 0 enables the output pulse functionality and sets this pulse
length.
· Value -1 disables the pulse checkbox.
scComSAMLightClientCtrlLongDataIdEntityGetOutputPulse 69
Get the pulse length of a ScSetOutput entitiy. Unit here: [µs]. Unit in SAMLight: [ms].
Value is -1 means the pulse checkbox is disabled.
scComSAMLightClientCtrlLongDataIdEntityIoControlObjectMask 146
Mask is a decimal number that is best understood binary:
The bits represent a value:
· 0: ignored (SAMLight: "X")
· 1: used (SAMLight: "0" if Staten is 0, "1" if Staten is 1)
Some bits are undefined (gray). Which bit represents which in/output depends on the
hardware and is shown below.
USC-1:
0000_0000_0000_0000_0000_0000_0010_0000
| Opto_In/Out_0
Opto_In/Out_5
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 139
IO Control Object (ScWaitForInput and ScSetOutput) Properties Set
Get
USC-2/-3:
0000_0000_0000_0000_0000_0000_0010_0000
| || Opto_In/Out_0
| | Opto_In/Out_5
| Digi_In/Out_0
Digi_In/Out_9
RTC3/4/5/6:
0000_0000_0000_0000_0000_0000_0010_0000
| Digi_In/Out_0
Digi_In/Out_15
Alternative mathematical representation of unsigned Mask:
scComSAMLightClientCtrlLongDataIdEntityIoControlObjectStates 147
States is a decimal number that is best understood binary:
The bits represent a value:
· 0: inactive (SAMLight: "X" if Maskn is 0, "0" if Maskn is 1)
· 1: active (SAMLight: "X" if Maskn is 0, "1" if Maskn is 1).
Some bits are undefined (gray). Which bit represents which in/output depends on the
hardware and is shown below.
USC-1:
0000_0000_0000_0000_0000_0000_0010_0000
| Opto_In/Out_0
Opto_In/Out_5
USC-2/-3:
0000_0000_0000_0000_0000_0000_0010_0000
| || Opto_In/Out_0
| | Opto_In/Out_5
| Digi_In/Out_0
Digi_In/Out_9
RTC3/4/5/6:
0000_0000_0000_0000_0000_0000_0010_0000
| Digi_In/Out_0
Digi_In/Out_15
Alternative mathematical representation of unsigned States:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 140
IO Control Object (ScWaitForInput and ScSetOutput) Properties Set
Get
Parameter Type: int Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set ScWaitForInput "wait for input" values to "XXXX XXXX XXXX 10XX" Wait for
Opto_Out_2 to be inactive and Opto_Out_3 to be active, ignore all other inputs:
int CCI_Return_01 = [Link]( "wait for input", ( int )
[Link], 12 );
int CCI_Return_02 = [Link]( "wait for input", ( int )
[Link], 8 );
C# Example: Set ScSetOutput "set output" values to "XXXX XXXX XXXX XX1X" Set Opto_Out_1 to
active, ignore all other outputs:
int CCI_Return_01 = [Link]( "set output", ( int )
[Link], 2 );
int CCI_Return_02 = [Link]( "set output", ( int )
[Link], 2 );
C# Example: Get ScSetOutput "set output" values and interpret ScSetOutput Mask 96 and States 32:
int Mask = [Link]( "set output", ( int )
[Link] );
int States = [Link]( "set output", ( int )
[Link] );
Mask: (96)dec = (0000 0000 0110 0000)bin
States: (32)dec = (0000 0000 0010 0000)bin
Mask an States combined: "XXXX XXXX X01X XXXX" Set Opto_Out_5 to active, Set Digi_Out_0 to
inactive, ignore all other outputs.
C# Example: Set pulse value to 20 ms of ScSetOutput entity "set output":
int CCI_Return = [Link]("set output", (int)
[Link], 20000);
C# Example: Get output pulse length of the entity "set output":
int Pulse_Length = [Link]("set output", (int)
[Link]);
Table 174: IO Control Object Properties
Jump Entity Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int State)
int State = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int State)
int State = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the state of the ScJump entity.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 141
Jump Entity Set
Get
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityJump 132
State Type: int Unit: none
· 0: Disable.
· 1: Enable.
· X coordinate: DoublePara1
· Y Coordinate: DoublePara2
· Z Coordinate: DoublePara3
· Entity Name: StringPara1
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set jump Entity to Position (10/10/10) with Entity Name "jump1":
int CCI_Return_01 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 10.0 );
int CCI_Return_02 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 10.0 );
int CCI_Return_03 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3, 10.0 );
int CCI_Return_04 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeStringPara1, "jump1" );
int CCI_Return_05 = [Link]("jump1", (int)
[Link], 1);
C# Example: Check, if the "jump1" entity is enabled:
int Enabled = [Link]("jump1", (int)
[Link]);
int X_Position = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1 );
int Y_Position = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2 );
int Z_Position = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3 );
Table 175: Jump Entity
MOTF Offset Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double MOTF_Offset)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
MOTF_Offset)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double
MOTF_Offset)
double MOTF_Offset = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get the distance of a ScMotfOffset control object.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 142
MOTF Offset Set
Get
scComSAMLightClientCtrlDoubleDataIdMotfOffset 70
MOTF_Offset Type: double Unit: [mm]
The offset value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the MOTF offset value to 10 mm for the entity "motfoff1":
int CCI_Return = [Link]( "motfoff1", ( int )
[Link], 10.0 );
C# Example: Get the MOTF offset value for the "motfoff1" entity:
double MOTF_Offset = 0.0;
int CCI_Return = [Link]( "motfoff1", ( int )
[Link], ref MOTF_Offset );
Table 176: CCI MOTF Offset
Motion Axis Add Control Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Position)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Position)
Description Insert a new motion entity and set the corresponding position value.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMotionAxisAddControl 64
Position Type: double Unit: depends on constant
The desired position coordinate.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Insert new motion entity at 60.0:
int CCI_Return = [Link]( ( int )
[Link], 60.0 );
Table 177: Motion Axis Add Control
Motion Entity Parameter Get Set
Get
DLL Function int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Get a position of a motion control object.
Entity_Name Type: string Unit: none
Enter the name of the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdGetMotionCtrlPos 97
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 143
Motion Entity Parameter Get Set
Get
Parameter Type: double Unit: [mm]* or [deg]
The position of a motion control object.
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set first.
C# Example: Get position of motion control object "Motion1":
double Motion_Position = 0.0;
int CCI_Return = [Link]( "Motion1", ( int )
[Link], ref Motion_Position );
Table 178: Motion Entity Parameter Get
Motion Entity Parameter Set Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Parameter)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Parameter)
Description Set parameter of a motion control object.
Entity_Name Type: string Unit: none
Specify the entity to be changed
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdSetMotionCtrls 26
Parameter Type: string Unit: none
The format for Parameter is:
1. For one axis, parameters are separated by semicolon:
< axis Index: 0..6 or -1 for all axes > (can not be empty)
< position as float value > (can be an empty string (""))
< speed as float value > (can be an empty string)
< relative movement 0 or 1 > (can be an empty string)
2. For all axes:
Up to 7 one axis strings, separated by space (" ").
3. For more than one motion entity - with one single function call:
As standard for this case there are multiple all axes strings separated by a
vertical tab ("\v"). To activate this mode call: ScSetMode (ScGetMode() Or
'NamesSeparatedBySemicolon') Multiple entity names must be separated by a
semicolon.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Send the motion data to the motion entity "Motion1": First axis (0),2.2 mm target position, 33.3
mm/s speed, absolute movement (0); second axis (1), 4.4 mm target position, 55.5 mm/s speed, relative
movement (1):
int CCI_Return = [Link]( "Motion1", ( int )
[Link], "0;2.2;33.3;0
1;4.4;55.5;1" );
Table 179: Motion Entity Parameter Set
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 144
Motion Entity String Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Parameter)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int DataID, string Parameter)
Description Set string of a string motion control object.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdSetMotionCtrlsString 33
Parameter Type: string Unit: none
The motion control string.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the motion string of entity "Motion1" to "MA 0":
int CCI_Return = [Link]( "Motion1", ( int )
[Link], "MA 0" );
Table 180: Motion Entity String
Timer Value Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Timer_Value)
int Timer_Value = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Timer_Value)
int Timer_Value = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the timer value.
Entity_Name Type: string Unit: none
Specify the entity to be changed
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySetTimerValue 61
By using this constant the time value of a ScTimer object can be changed.
scComSAMLightClientCtrlLongDataIdEntityGetTimerValue 66
The current delay time of the ScTimer entity is read.
Timer_Value Type: int Unit: [ms]
The timer value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the timer entity "timer1" to 10ms:
int CCI_Return =[Link]("timer1", (int)
[Link], 10);
C# Example: Get the current timer value of the timer entity "timer1"
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 145
Timer Value Set
Get
int timer_value = [Link]("timer1", (int)
[Link]);
Table 181: Timer Value
6.2 Entities Properties
· Count Entities
· Convert to Single Layer
· Entity Placement
· Entity User Data
· Point Coordinate
Count Entities Set
Get
DLL Function int Entity_Num = ScGetLongValue(int Value_Type)
ASCII Function int Entity_Num = ScCciGetLongValue(int Value_Type)
Description Get the total number of entities.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeTotalEntityNum 10
By using this type parameter it is possible to count the total number of available
entities including the ones that are nested in groups.
scComSAMLightClientCtrlLongValueTypeToplevelEntityNum 11
This parameter can be used to evaluate the top level entities. Using this value the
number of entities is returned which is visible on the highest level, excluding the
contents of groups.
Entity_Num Type: int Unit: none
Returns the number of entities
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Count all the top level entities
int Entity_Num = [Link]((int)
[Link]);
Table 182: Count Entities
Convert to Single Layer Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Converts the entity to a Single Layer Entity.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 146
Convert to Single Layer Set
Get
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdConvertToSingleLayer 151
Converts the entity to a Single Layer Entity.
Parameter Type: int Unit: none
· 0: Not used
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Convert Entity to Single Layer Entity:
int result = [Link]( "EntityName", ( int )
[Link], 0 );
Table 183: Convert to Single Layer Entity
Entity Placement Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Make an entity to hidden entity or move it to background.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySetAsBackgroundEntity 78
Set the entity specified by Entity_Name to the background or foreground. To set it to
the background use 1 as parameter. To set it into the foreground use 0 as
parameter. The entity gets also set nonmarkable and noneditable.
scComSAMLightClientCtrlLongDataIdEntitySetAsHiddenEntity 112
Hides or shows the entity in View2D specified by the Entity_Name. To hide it in
View2D use 1 as parameter. To show it in View2D use 0 as parameter.
scComSAMLightClientCtrlLongDataIdEntityRedpointer 131
Set the entity to a redpointer entity.
scComSAMLightClientCtrlLongDataIdEntityNonMarkableEntity 140
Set the entity nonmarkable.
scComSAMLightClientCtrlLongDataIdEntityNonEditableEntity 141
Set the entity noneditable.
scComSAMLightClientCtrlLongDataIdEntityNonSplittablePre 142
Set the entity nonsplittable - pre mark.
scComSAMLightClientCtrlLongDataIdEntityNonSplittablePost 143
Set the entity nonsplittable - post mark.
Parameter Type: int Unit: none
· 0: Disable.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 147
Entity Placement Set
Get
· 1: Enable.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Hide the entity "circle1" and move it to the background:
int CCI_Return_01 = [Link]("circle1", (int)
[Link], 1);
int CCI_Return_02 = [Link]("circle1", (int)
[Link], 1);
C# Example: Check, if the "circle1" entity is a hidden entity:
int Is_Not_Hidden = [Link]("circle1", (int)
[Link]);
Table 184: Entity Placement
Entity User Data Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int User_Data)
int User_Data = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int User_Data)
int User_Data = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get some arbitrary long value inside the entity.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdUserData 1
User_Data Type: int Unit: none
Your data.
CCI_Return Type: int
CCI return number, see error list.
Notes · The data you store with this command will not be visible inside the SAMLight
application and can be called using the ScGetEntityLongData command.
C# Example: Store some random numbers inside the entity "Entity1":
int CCI_Return = [Link]("Entity1", (int)
[Link], 123456);
C# Example: Read the entity specific long user data of the entity "Entity1":
int User_Data = [Link]("Entity1", (int)
[Link]);
Table 185: Entity User Data
Point Coordinate Set
Get
DLL Function double Coordinate = ScGetDoubleValue(int Value_Type)
ASCII Function double Coordinate = ScGetDoubleValue(int Value_Type)
Description Returns the x, y and z coordinate of a point which is selected in SAMLight.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 148
Point Coordinate Set
Get
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSelPointXPos 86
The X position.
scComSAMLightClientCtrlDoubleValueTypeSelPointYPos 87
The Y position.
scComSAMLightClientCtrlDoubleValueTypeSelPointZPos 88
The Z position.
Coordinate Type: double Unit: none
Get the current position.
CCI_Return Type: int
CCI return number, see error list.
Notes · If no point is selected the return value is '0'.
· If more than one point is selected, the command returns the coordinate of the first
selected point.
C# Example: Get the x coordinate:
double x_Pos = [Link]((int)
[Link]);
Table 186: Point Coordinate
6.2.1 Entity Naming
· Entity Name
· Group Name
· Top Level Entity Name
Entity Name Set
Get
DLL Function int CCI_Return = ScSetIDStringData(int Data_ID, int Index, string Name)
int CCI_Return = ScGetIDStringData(int Data_ID, int Index, ref string Name)
ASCII Function int CCI_Return = ScCciSetIDStringData(int Data_ID, int Index, string Name)
string Name = ScCciGetIDStringData(int Data_ID, int Index)
Description This is used to set/get the name of an entity by its index or the current entity name.
The index is zero based and starts from the top level going through the tree on the
base of the first object, going on with the siblings.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdGetEntityName 21
If not deactivated with a mode flag this will get the name the of a sub-entity based on
the index.
scComSAMLightClientCtrlStringDataIdSetEntityName 23
If not deactivated with a mode flag this will set the name of a sub-entity also (groups,
etc.) based on the index. To change the name based on the current name use
ScSetEntityStringData() or ScSetIDStringData().
Index Type: int Unit: none
Set or get the entity ID.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 149
Entity Name Set
Get
Name Type: string Unit: none
Set or get the entity name.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the name of the 0th entity to "newName":
int CCI_Return = [Link]((int)
[Link], 0, "newName");
C# Example: Get the name of the 10th entity:
string Name = "";
int CCI_Return = [Link]((int)
[Link], 10, ref Name);
Table 187: Entity Name
Group Name Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Group_Name)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Group_Name)
Description Gives the grouped entities a name as string.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeGroupingName 37
Group_Name Type: string Unit: none
The coresponding group name.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set a group name:
int CCI_Return = [Link]((int)
[Link], "Group_Name");
Table 188: Group Name
Top Level Entity Name Set
Get
DLL Function int CCI_Return = ScSetIDStringData(int Data_ID, int Index, string Name)
int CCI_Return = ScGetIDStringData(int Data_ID, int Index, ref string Name)
ASCII Function int CCI_Return = ScCciSetIDStringData(int Data_ID, int Index, string Name)
string Name = ScCciGetIDStringData(int Data_ID, int Index)
Description This value can be used to get the name of a top-level entity that is specified by a
zero based index number starting from 0 to 65535 (lower 16 bits). Use
GetEntityName when you want to iterate trough all levels.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdGetToplevelEntity 17
Get the name of a top level entity.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 150
Top Level Entity Name Set
Get
scComSAMLightClientCtrlStringDataIdSetToplevelEntity 25
Set the name of a top level entity.
Index Type: int Unit: none
The corresponding index of the entity.
Name Type: string Unit: none
The new name of the top-level entity.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Please refer to the Programming Examples: Retrieve Entities.
C# Example: Give the name to the very first top level entity:
int CCI_Return = [Link]((int)
[Link], 0, "NewName");
Table 189: Top Level Entity Name
6.2.2 Entity Hierarchy
· Entity Grouping
· Entity Top Level
· Find Text Entity
Entity Grouping Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Group or ungroup selected entities.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandGroupEntities 59
Groups the manually or by EntitySelected selected entities and puts them into an
entities group.
scComSAMLightClientCtrlExecCommandUngroupEntities 60
Ungroups the manually or by EntitySelected selected entities group. The view level
of all entities inside the group will be decreased by one.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Select entities "entity1","entity2" and group them:
// Enable the possibility to set define multiple entities with one command
int cur_Mode = 0;
int CCI_Return_01 = [Link](ref cur_Mode);
cur_Mode |= (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlModeFlagEntity_NamesSeparatedBySemicolon;
[Link](cur_Mode);
// select 3 entities
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 151
Entity Grouping Set
Get
int CCI_Return_02 = [Link]("Entity1;Entity2;Entity3", (int)
[Link], 1);
// group the selected entities
int CCI_Return_03 = [Link]((int)
[Link]);
Table 190: Entity Grouping
Entity Top Level Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Entity_Name)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Entity_Name)
Description Sets top level to the entity with the specified name. The top level entity affects all
further CCI commands that work with entity names or entity IDs.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeSetToTopLevelEntity 17
Entity_Name Type: string Unit: none
The entity name. There are some special cases:
· "": An empty string defines top level to the root of job entity list.
· "style_entity_": Defines top level to the root of the Edit Styles list.
· "drill_geom_": Defines top level to to the root of the Edit Drill Geometry entity list of
currently selected pen.
CCI_Return Type: int
CCI return number, see error list.
Notes · The current top level entity must not be deleted. Therefore, it is recommended to
set the top level to the root of the job entity list after the task is completed.
C# Example: Get entity type of first entity in group "B":
int CCI_Return_00 = [Link]( ( int )
[Link], "B" );
string Entity_Type = "";
int CCI_Return_01 = [Link]( ( int )
[Link], 1, ref
Entity_Type );
int CCI_Return_02 = [Link]( ( int )
[Link], "" );
Set Hatch1A Angle of style "Style 1" to 45.0°:
int CCI_Return_00 = [Link]( ( int )
[Link],
"style_entity_" );
int CCI_Return_01 = [Link]( ( int )
[Link], 0 );
int CCI_Return_02 = [Link]( "Style 1", ( int )
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchAngle1, 45.0 * [Link] / 180.0 );
int CCI_Return_03 = [Link]( ( int )
[Link], "" );
Table 191: Entity Top Level
Find Text Entity Set
Get
DLL Function int CCI_Return = ScGetEntityStringData(string Search_Text, int Data_ID, ref string Path)
ASCII Function string Text = ScCciGetEntityStringData(string Search_Text, int Data_ID)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 152
Find Text Entity Set
Get
Description Find the path and Entity_Name of a Text2D entity by text content.
Search_Text Type: string Unit: none
Specify the searched text.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdFindEntityWithText 18
Path Type: string Unit: none
The path in job including the Entity_Name. It starts with a full stop in front. Group
names are separated by a full stop. If the entity is nested in several groups, all
groups are named.
CCI_Return Type: int
CCI return number, see error list.
Notes · SetToTopLevelEntity can be used to constrain the search. However, the complete
path is always returned.
C# Example: Find a Text2D entity with the text content "Cripps Pink":
string Path = "";
int CCI_Return = [Link]( "Cripps Pink", ( int )
[Link], ref Path );
Example: Interpret Path ".[Link]":
The text searched for matches the Text2D entity "Cultivar" in the group "Fruit" and subgroup "Apple".
Table 192: Find Text Entity
6.2.3 Transformations
· Center Entity
· Entity Outline
· Mirror Entity
· Outline 2D
· Rotate Entity
· Rotate Entity (Double Data ID)
· Rotate Entity (String Data ID)
· Rotation Angle & Outline
· Rotation Center
· Scale Entity
· Scale Entity (Current Position)
· Translate Entity
· Translate Entity (String Data ID)
Center Entity Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Axis)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Axis)
Description Center the entities with respect to the defined axis
Entity_Name Type: string Unit: none
Specify the entity to be changed.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 153
Center Entity Set
Get
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityCenter 129
Axis Type: int Unit: none
· 6: Center horizontally
· 7: Center vertically
· 8: Center both
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Center the entity "entity1" in both axes:
int CCI_Return = [Link]( "entity1", ( int )
[Link], 8 );
Table 193: Center Entity
Entity Outline Set
Get
DLL Function double Value = ScGetEntityOutline(string Entity_Name, int Index)
ASCII Function double Value = ScCciGetEntityOutline(string Entity_Name, int Index)
Description Returns the outline of the current enitity specified by Entity_Name. The following
constants can be set for Index to specify which outline value has to be returned.
Entity_Name Type: string Unit: none
If Entity_Name is an empty string, the function returns the job outline.
Index Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlOutlineIndexMinX 0
The smallest x coordinate.
scComSAMLightClientCtrlOutlineIndexMinY 1
The smallest y coordinate.
scComSAMLightClientCtrlOutlineIndexMinZ 2
The smallest z coordinate.
scComSAMLightClientCtrlOutlineIndexMaxX 3
The biggest x coordinate.
scComSAMLightClientCtrlOutlineIndexMaxY 4
The biggest y coordinate.
scComSAMLightClientCtrlOutlineIndexMaxZ 5
The biggest z coordinate.
Value Type: double Unit: [mm]*
The corresponding value.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Get the biggest x coordinate of the whole job:
double Max_X = [Link]( "", 3 );
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 154
Table 194: Entity Outline
Mirror Entity Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Mirror_Plane)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Mirror_Plane)
Description Mirrors the specified entity along the specified plane. The same functionality as the
buttons of page Z-Dimension > Mirror and Rotate.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityMirrorOnPlane 120
Mirror_Plane Type: int Unit: none
· 1: xz-plane with y = center of field
· 2: yz-plane with x = center of field
· 3: xy-plane with z = center of field
· 4: xz-plane with y = center of entity
· 5: yz-plane with x = center of entity
· 6: xy-plane with z = center of entity
CCI_Return Type: int
CCI return number, see error list.
Notes · You can set only one flag simultaneously.
C# Example: Mirror the entity "entity1" on the xz-plane with y in the center of field
int CCI_Return = [Link]( "entity1", ( int )
[Link], 1 );
Table 195: Mirror Entity
Outline 2D Set
Get
DLL Function int CCI_Return = ScSetEntityOutline2D(string Entity_Name, double Min_X, double Min_Y, double
Max_X, double Max_Y, int Index)
int CCI_Return = ScGetEntityOutline2D(string Entity_Name, ref double Min_X, ref double Min_Y,
ref double Max_X, ref double Max_Y)
ASCII Function int CCI_Return = ScCciSetEntityOutline2D(string Entity_Name, double Min_X, double Min_Y,
double Max_X, double Max_Y, int Index)
double Min_X double Min_Y double Max_X double Max_Y = ScCciGetEntityOutline2D(string
Entity_Name)
Description With this command the total 2D outlines of all entities with Entity_Name can be set
or get.
Entity_Name Type: string Unit: none
If Entity_Name is an empty string, the function returns the job outline.
Min_X Type: double Unit: none
The smallest x coordinate.
Min_Y Type: double Unit: none
The smallest y coordinate.
Max_X Type: double Unit: none
The biggest x coordinate.
Max_Y Type: double Unit: none
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 155
Outline 2D Set
Get
The biggest y coordinate.
Index Type: int Index:
Location: ScComSAMLightClientCtrlFlags
- 0
Entity will be scaled like defined by the parameters.
scComSAMLightClientCtrlSetOutlineNoMove 1
Left down point will stay at current position. Just the dimension will be changed,
defined by: X_dim = Max_X - Min_X and Y_dim = Max_Y - Min_Y.
scComSAMLightClientCtrlSetOutlineNoSize 2
Specity the center coordinates. The dimension will be ignored.
X_center = Max_X = Min_X and Y_center = Max_Y = Min_Y.
CCI_Return Type: int
CCI return number, see error list.
Note · Max coordinate has to be bigger than Min coordinate
· For this command the index cannot be combined.
· This command can also be used for 1D entities. In this case make sure that Min_X
= Max_X or Min_Y = Max_Y.
C# Example: Set new outline for the entity "circle":
int CCI_Return = cci.ScSetEntityOutline2D( "circle", -15, -10, 20, 15, 0 );
C# Example: Get current outline of entity "circle":
double Min_X, Min_Y, Max_X, Max_Y;
Min_X = Min_Y = Max_X = Max_Y = 0.0;
int CCI_Return = cci.ScGetEntityOutline2D( "circle", ref Min_X, ref Min_Y, ref Max_X, ref Max_Y );
Table 196: Outline 2D
Rotate Entity Set
Get
DLL Function int CCI_Return = ScRotateEntity(string Entity_Name, double Center_X, double Center_Y, double
Angle)
ASCII Function int CCI_Return = ScCciRotateEntity(string Entity_Name, double Center_X, double Center_Y,
double Angle)
Description Relative rotation around a chosen center.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Center_X Type: double Unit: none
Rotation center X.
Center_Y Type: double Unit: none
Rotation center Y.
Angle Type: double Unit: [deg]
Relative rotation angle. Counterclockwise for positive angles.
CCI_Return Type: int
CCI return number, see error list.
Notes · If Entity_Name is an empty string the complete job is rotated.
C# Example: Rotate the entity "Rectangle" by 45.5 degrees around the origin:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 156
Rotate Entity Set
Get
int CCI_Return = [Link]( "Rectangle", 0.0, 0.0, 45.5 );
Table 197: Rotate Entity
Rotate Entity (Double Data ID) Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Angle)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Angle)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Angle)
double Angle = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description · Relative rotation around the entity center.
· Get the rotation angle.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdEntityRotationAngle 71
Angle Type: double Unit: [deg]
(Relative) rotation angle. Counterclockwise for positive angles.
CCI_Return Type: int
CCI return number, see error list.
Notes · If Entity_Name is an empty string the each entity in the job is rotated.
C# Example: Get the rotation angle of the entity "Rectangle":
double Angle = 0;
int CCI_Return = [Link]( "Rectangle", ( int )
[Link], ref Angle );
C# Example: Rotate entity "Rectangle" to 50° relative:
int CCI_Return = [Link]( "Rectangle", ( int )
[Link], 50.0 );
Table 198: Rotate Entity (Double Data ID)
Rotate Entity (String Data ID) Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Rotation_Param)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string
Rotation_Param)
Description Relative rotation around a chosen center. Multiple objects can be rotated with
different parameters.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdRotate 30
Rotation_Param Type: string Unit: [mm*, mm*, °]
"CenterX;CenterY;Angle": A string containing of rotation center X, rotation center Y
and relative rotation angle separated by semicolon ";". The parameters for multiple
entities have to be separated by vertical tab "\v".
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 157
Rotate Entity (String Data ID) Set
Get
CCI _Return Type: int
CCI return number, see error list.
Notes · If Entity_Name is an empty string the complete job is rotated.
· If used for multiple entities Entity_NamesSeparatedBySemicolon has to be set.
C# Example: Rotate entity "Rectangle" around the center (0.0, 0.0) by 45.0 degrees and rotate entity "Text"
around the center (50.0, 50.0) by 10.0 degrees.:
int CCI_Return = [Link]( "Rectangle;Text", ( int )
[Link], "0.0;0.0;45.0\v50.0;50.0;10.0" );
Table 199: Rotate Entity (String Data ID)
Rotation Angle & Outline Set
Get
DLL Function int CCI_Return = ScGetEntityStringData(string Entity_Name, int Data_ID, ref string Outl_Angle)
ASCII Function string Outl_Angle = ScCciGetEntityStringData(string Entity_Name, int Data_ID)
Description This allows to get the Outline and the Rotation Angle of the Entities defined by
Entity_Name.
Entity_Name Type: string Unit: none
Specify the entity to be changed
Data_ID Type: int ID:
Location: Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdOutlineAndRotate 31
Outl_Angle Type: string Unit: [mm*, mm*, mm*, mm*, °]
Returns the outline and the rotation angle in the following format:
"MinX;MinY;MaxX;MaxY;Angle"
CCI_Return Type: int
CCI return number, see error list.
Notes · If used for multiple entities Entity_NamesSeparatedBySemicolon has to be set.
Outl_Angle will hold the Outlines and Rotation Angle in a list in the format
"MinX;MinY;MaxX;MaxY;Angle".
C# Example: Get the outline and the rotation angle of the entity "entity1":
string Outl_Angle = "";
int CCI_Return = [Link]( "entity1", ( int )
[Link], ref Outl_Angle );
Table 200: Rotation Angle & Outline
Rotation Center Set
Get
DLL Function int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Get the position of the rotation center of an entity.
Entity_Name Type: string Unit: none
Enter the name of the entity.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdEntityRotationCenterX 111
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 158
Rotation Center Set
Get
scComSAMLightClientCtrlDoubleDataIdEntityRotationCenterY 112
Parameter Type: double Unit: none
Enter the corresponding parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get x-position the rotation center of "entity1":
double RotationCenterX = 0.0;
int CCI_Return = [Link]( "entity1", ( int )
[Link], ref RotationCenterX
);
Table 201: Rotation Center
Scale Entity Set
Get
DLL Function int CCI_Return = ScScaleEntity(string Entity_Name, double Scale_X, double Scale_Y, double
Scale_Z)
ASCII Function int CCI_Return = ScCciScaleEntity(string Entity_Name, double Scale_X, double Scale_Y, double
Scale_Z)
Description Scales the entity specified by Entity_Name. The scaling center is the center of field.
Entity_Name Type: string Unit: none
The Entity to be scaled.
Scale_X Type: double Unit: none
Scaling coefficient in x direction.
Scale_Y Type: double Unit: none
Scaling coefficient in y direction.
Scale_Z Type: double Unit: none
Scaling coefficient in z direction.
CCI_Return Type: int
CCI return number, see error list.
Notes · If Entity_Name is set to an empty string the complete job is scaled.
C# Example: Scale the entity "entity1" by factor 2 in y direction:
int CCI_Return = [Link]( "entity1", 1.0, 2.0, 1.0 );
Table 202: Scale Entity
Scale Entity (Current Position) Set
Get
DLL Function int CCI_Return = ScScaleEntityCurPos(string Entity_Name, double Scale_X, double Scale_Y,
double Scale_Z)
ASCII Function int CCI_Return = ScCciScaleEntityCurPos(string Entity_Name, double Scale_X, double Scale_Y,
double Scale_Z)
Description Scales the entity specified by Entity_Name. The scaling center is the center of entity.
Entity_Name Type: string Unit: none
The Entity to be scaled.
Scale_X Type: double Unit: none
Scaling coefficient in x direction.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 159
Scale Entity (Current Position) Set
Get
Scale_Y Type: double Unit: none
Scaling coefficient in y direction.
Scale_Z Type: double Unit: none
Scaling coefficient in z direction.
CCI_Return Type: int
CCI return number, see error list.
Notes · If Entity_Name is set to an empty string the complete job is scaled.
C# Example: Scale the entity "entity1" by factor 2 in y direction:
int CCI_Return = [Link]( "entity1", 1.0, 2.0, 1.0 );
Table 203: Scale Entity (Current Position)
Translate Entity Set
Get
DLL Function int CCI_Return = ScTranslateEntity(string Entity_Name, double X, double Y, double Z)
ASCII Function int CCI_Return = ScCciTranslateEntity(string Entity_Name, double X, double Y, double Z)
Description Translates the an entity relative to its current position.
Entity_Name Type: string Unit: none
The Entity to be translated.
X Type: double Unit: [mm]*
The relative x coordinate.
Y Type: double Unit: [mm]*
The relative y coordinate.
Z Type: double Unit: [mm]*
The relative z coordinate.
CCI_Return Type: int
CCI return number, see error list.
Notes · If Entity_Name is set to an empty string the complete job is translated.
· The default unit is mm, but the user can select a different unit.
C# Example: Translate the entity "entity1" by 15 mm in x direction:
int CCI_Return = [Link]( "entity1", 15.0, 0.0, 0.0 );
Table 204: Translate Entity
Translate Entity (String Data ID) Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Coordinates)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Coordinates)
Description Translates the an entity relative to its current position. Multiple objects can be
translated with different parameters.
Entity_Name Type: string Unit: none
This allows to translate the entity or entities defined by Entity_Name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdTranslate 29
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 160
Translate Entity (String Data ID) Set
Get
Coordinates Type: string Unit: none
"X;Y;Z" A string containing of X translation, Y translation and Z translation separated
by semicolon ";". The parameters for multiple entities have to be separated by
vertical tab "\v".
CCI_Return Type: int
CCI return number, see error list.
Notes · If used for multiple entities Entity_NamesSeparatedBySemicolon has to be set.
C# Example: Translate the entity "Rectangle" by 5.0 mm in Y and translate the entity "Text" by 1.0 mm in X:
int CCI_Return = [Link]( "Rectangle;Text", ( int )
[Link], "0.0;5.0;0.0\v1.0;0.0;0.0" );
Table 205: Translate Entity (String Data ID)
6.2.4 Hatch
· Apply Hatch Style
· Copy Hatch Parameters
· EnableHatch & HatchStyle
· Hatch Angle
· Hatch Beam Compensation
· Hatch Distance
· Hatch End Offset
· Hatch Flags
· Hatch Line Index Step
· Hatch Line Reduction
· Hatch Loop
· Hatch Loop Angle
· Hatch Minimal Jump
· Hatch Minimal Length
· Hatch Num Loops
· Hatch Point Offset
· Hatch Rehatch All
· Hatch Select Hatch Pair
· Hatch Start Offset
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 161
Apply Hatch Pair Preset Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Hatch_Style)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Hatch_Style)
Description Apply a predefined hatch pair preset to the selected entity.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntitySetToDefaultHatchPair 133
Hatch_Style Type: int Unit: none
· 1..9: Hatch style 1..9
CCI_Return Type: int
CCI return number, see error list.
Notes · When applying the hatch pair preset via CCI, the hatch pair preset is not displayed
in SAMLight.
C# Example: Apply hatch pair preset "Hatch style 1" to the entity "circle":
int CCI_Return = [Link]("circle", (int)
[Link], 1);
Table 206: Apply Hatch Pair Preset
Copy Hatch Parameters Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Copy all hatch parameters from one entity to another.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandCopyHatch 80
CCI_Return Type: int
CCI return number, see error list.
Notes · Copy from StringPara1: Define the name of the entity from which the hatch
parameters are copied. The first entity in the job with this entity name is taken.
· Copy to StringPara2: Define the name of the entity to which the hatch parameters
are copied. All entities with this name are considered.
C# Example: Copy all hatch parameters from entity "a" to entity "b".
int CCI_Return_01 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara1, "a" ); // copy from
int CCI_Return_02 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara2, "b" ); // copy to
int CCI_Return_03 = [Link]( ( int )
[Link] );
Table 207: Copy Hatch Parameters
Enable Hatch & Hatch Style Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Hatch_Style)
int Hatch_Style = ScGetEntityLongData(string Entity_Name, int Data_ID)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 162
Enable Hatch & Hatch Style Set
Get
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Hatch_Style)
int Hatch_Style = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the hatch styles of the both hatchers. Both hatchers can be enabled,
disabled or the actual mode can be retrieved.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEnableHatching1 51
Enable the hatch 1.
scComSAMLightClientCtrlLongDataIdEnableHatching2 52
Enable the hatch 2.
Hatch_Style Type: int Index:
Disable 0
Wavy line without marking jumps 1
Horizontal left to right without marking jumps 2
Horizontal right to left without marking jumps 3
Rotational 4
Wavy line including jumps 5
Zigzag 6
CCI_Return Type: int
CCI return number, see error list.
Notes · Rotational, applies only to rectangle, ellipse and triangle structures in the current
version.
C# Example: Set hatch 1 to hatch style 4 (rotational):
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEnableHatching1, 4);
C# Example: Get hatch style of hatch 2:
int Hatch_Style_2 = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEnableHatching2);
Table 208: Enable Hatch & Hatch Style
Hatch Angle Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Hatch_Angle)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Hatch_Angle)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Hatch_Angle)
double Hatch_Angle = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description This function can be used to set or get the hatch angles.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchAngle1 38
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 163
Hatch Angle Set
Get
Set hatch angle 1.
scComSAMLightClientCtrlDoubleDataIdHatchAngle2 46
Set hatch angle 2.
Hatch_Angle Type: double Unit: [rad]
The corresponding hatch angle.
CCI_Return Type: int
CCI return number, see error list.
Notes · Please note that the unit of angle in CCI project is [rad], whereas the unit in
SAMLight is [deg].
· These constants can also be used for drill. If it is desired to get and set the values
of entities in the Drill Geometry, "drill_geom_" should be added at the beginning of
the entity name. For example, if the entity name is "Test", in the CCI call the entity
name should be modified to "drill_geom_Test".
C# Example: Set hatch angle 1 to 45° = pi/4:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchAngle1, 45.0 * [Link] / 180.0);
C# Example: Get hatch angle 2 for rectangle with entity name "rectangle":
double Hatch_Angle_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchAngle2, ref Hatch_Angle_2);
Table 209: Hatch Angle
Hatch Beam Compensation Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Beam_Comp)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
Beam_Comp)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Beam_Comp)
double Beam_Comp = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch beam compensation for hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchBeamcompensation1 43
Set hatch beamcompensation 1.
scComSAMLightClientCtrlDoubleDataIdHatchBeamcompensation2 51
Set hatch beamcompensation 2.
Beam_Comp Type: double Unit: [mm]*
The corresponding hatch beam compensation.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch beam compensation 1 to 0.05:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchBeamcompensation1, 0.05);
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 164
Hatch Beam Compensation Set
Get
C# Example: Get hatch beam compensation 2 for rectangle with entity name "rectangle":
double Beam_Compensation_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchBeamcompensation2, ref
Beam_Compensation_2);
Table 210: Hatch Beam Compensation
Hatch Distance Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Distance)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Distance)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Distance)
int Distance = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch distance for the hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchDistance1 37
Set hatch distance 1.
scComSAMLightClientCtrlDoubleDataIdHatchDistance2 45
Set hatch distance 2.
Distance Type: double Unit: [mm]*
The corresponding hatch distance.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch distance 1 to 10:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchDistance1, 10);
C# Example: Get hatch distance 2:
double Hatch_Distance_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchDistance2, ref hatchdistance2);
Table 211: Hatch Distance
Hatch End Offset Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double End_Offset)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double End_Offset)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double End_Offset)
double End_Offset = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch endoffset for hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 165
Hatch End Offset Set
Get
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchEndoffset1 42
Set hatch endoffset 1.
scComSAMLightClientCtrlDoubleDataIdHatchEndoffset2 50
Set hatch endoffset 2.
End_Offset Type: double Unit: [mm]*
The corresponding hatch endoffset.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch endoffset 1 to 0.05:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchEndoffset1, 0.05);
C# Example: Get hatch endoffset 2 for rectangle with entity name "rectangle".
double Hatch_Endoffset_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchEndoffset2, ref Hatch_Endoffset_2);
Table 212: Hatch End Offset
Hatch Flags Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Get or set or clear the hatch flags for the given entity. Use SetHatchFlags to check
the flag and ClearHatchFlags to uncheck the flag.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdSetHatchFlags1 81
Set flags of hatch 1.
scComSAMLightClientCtrlLongDataIdSetHatchFlags2 82
Set flags of hatch 2.
scComSAMLightClientCtrlLongDataIdClearHatchFlags1 91
Clear flags of hatch 1.
scComSAMLightClientCtrlLongDataIdClearHatchFlags2 92
Clear flags of hatch 2.
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdHatchFlagNoSort 0x100
Checkbox Sort on the hatch property page.
scComSAMLightClientCtrlLongDataIdHatchFlagAllLines 0x400
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 166
Hatch Flags Set
Get
Checkbox All lines on the hatch property page.
scComSAMLightClientCtrlLongDataIdHatchFlagPolyLineBeamComp 0x2000
This flag activates the NumLoops feature of the hatch. It will create a beam
compensation from outside to inside of the object. This works not only for
2D but also in SAM3D situation.
scComSAMLightClientCtrlLongDataIdHatchFlagDontFillRest 0x4000
Checkbox Don't fill reset on the hatch property page.
scComSAMLightClientCtrlLongDataIdHatchFlagKeepAngle 0x80000
Checkbox KeepAngle on the hatch property page.
scComSAMLightClientCtrlLongDataIdHatchFlagEqualizeDistance 0x100000
0
Checkbox Equalize Distance on the hatch property page.
scComSAMLightClientCtrlLongDataIdHatchFlagBeamComp 0x200000
LoopReverseOrder 0
This flag has to be used together with the hatch flag PolyLineBeamComp
and will generate NumLoops from inside to outside of the object.
CCI_Return Type: int
CCI return number, see error list.
Notes · This works not only for 2D but also in SAM3D situation.
C# Example: Activate the checkboxe Sort of hatch 1A:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdClearHatchFlags1, (int)
[Link]);
C# Example: Get current set hatch flags as hex value of hatch 1A:
int Hatch_Flags_1 = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdSetHatchFlags1);
Table 213: Hatch Flags
Hatch Line Index Step Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double
Line_Index_Step)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
Line_Index_Step)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double
Line_Index_Step)
double Line_Index_Step = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch line index step for hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchLineIndexStep1 93
Set hatch line index step 1.
scComSAMLightClientCtrlDoubleDataIdHatchLineIndexStep2 94
Set hatch line index step 2.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 167
Hatch Line Index Step Set
Get
Line_Index_Step Type: double Unit: [mm]*
The corresponding hatch line index step.
CCI_Return Type: int
CCI return number, see error list.
Notes · Double value of hatch line index step must be between 1 and 1000000.
· The default unit is mm, but the user can select a different unit.
C# Example: Set hatch line index Step 1 to 2:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchLineIndexStep1, 2);
C# Example: Get hatch line index step 2 for rectangle with entity name "rectangle":
double Hatch_Line_Index_Step2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchLineIndexStep2, ref
Hatch_Line_Index_Step2);
Table 214: Hatch Line Index Step
Hatch Line Reduction Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Line_Reduction)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
Line_Reduction)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double
Line_Reduction)
double Line_Reduction = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch line reduction for hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchLinereduct1 93
Set hatch line reduction 1.
scComSAMLightClientCtrlDoubleDataIdHatchLinereduct2 94
Set hatch line reduction 2.
Line_Reduction Type: double Unit: [mm]*
The corresponding hatch line reduction.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch line reduction 1 to 0.05:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchLinereduct1, 0.05);
C# Example: Get hatch line reduction 2 for rectangle with entity name "rectangle":
double Hatch_Line_Reduct_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchLinereduct2, ref
Hatch_Line_Reduct_2);
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 168
Table 215: Hatch Line Reduction
Hatch Loop Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Loop)
int Loop = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Loop)
int Loop = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch loop for hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdHatchLoop1 134
Set hatch loop angle 1.
scComSAMLightClientCtrlLongDataIdHatchLoop2 135
Set hatch loop angle 2.
Loop Type: int Unit: none
The corresponding hatch loop.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set hatch loop 15:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdHatchLoop1, 15);
C# Example: Get hatch loop angle 1:
double Hatch_Loop_1 = 0;
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLoopDataIdHatchLoop1, ref Hatch_Loop_1);
Table 216: Hatch Loop
Hatch Loop Angle Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Loop_Angle)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Loop_Angle)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Loop_Angle)
double Loop_Angle = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch loop angle for hatch number one or two.
Entity_Name Type: string Unit: none
The corresponding entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchLoopAngle1 99
Set hatch loop angle 1.
scComSAMLightClientCtrlDoubleDataIdHatchLoopAngle2 100
Set hatch loop angle 2.
Loop Type: double Unit: [deg]
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 169
Hatch Loop Angle Set
Get
The corresponding hatch loop angle.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set hatch loop angle 1 to 15:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchLoopAngle1, 15.0);
C# Example: Get hatch loop angle 1:
double Hatch_Loop_Angle_1 = 0;
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchLinereduct2, ref Hatch_Loop_Angle_1);
Table 217: Hatch Loop Angle
Hatch Minimal Jump Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Min_Jump)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Min_Jump)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Min_Jump)
double Min_Jump = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch minimal jump for hatch number one or two.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchMinjump1 39
Set hatch minimal jump 1.
scComSAMLightClientCtrlDoubleDataIdHatchMinjump2 47
Set hatch minimal jump 2.
Entity_Name Type: string Unit: none
The corresponding entity name.
Min_Jump Type: double Unit: [mm]*
The corresponding hatch minimal jump.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch minimal jump 1 to 0.02:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchMinjump1, 0.02);
C# Example: Get hatch minimal jump 2 for rectangle with entity name "rectangle":
double hatch_min_jump_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchMinjump2, ref hatch_min_jump_2);
Table 218: Hatch Minimal Jump
Hatch Minimal Length Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Minimal_Length)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 170
Hatch Minimal Length Set
Get
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
Minimal_Length)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double
Minimal_Length)
double Minimal_Length = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch minimal length for hatch number one or two.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchMinLength1 84
Set Hatch Minimal Length 1.
scComSAMLightClientCtrlDoubleDataIdHatchMinLength2 86
Set Hatch Minimal Length 2.
Entity_Name Type: string Unit: none
The corresponding entity name.
Minimal_Length Type: double Unit: [mm]*
The corresponding hatch minimal length.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch minimal length 1 to 1:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchMinLength1, 1);
C# Example: Get hatch minimal length 2 for rectangle with entity name "rectangle":
double hatch_minimal_length_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchMinLength2, ref
hatch_minimal_length_2);
Table 219: Hatch Minimal Length
Hatch Num Loops Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Num_Loops)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Num_Loops)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Num_Loops)
double Num_Loops = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch numloops for hatch number one or two.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchNumloops1 44
Set hatch num loops 1.
scComSAMLightClientCtrlDoubleDataIdHatchNumloops2 52
Set hatch num loops 2.
Entity_Name Type: string Unit: none
The corresponding entity name.
Num_Loops Type: int Unit: none
The corresponding hatch num loops.
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 171
Hatch Num Loops Set
Get
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set hatch NumLoops 1 to 5:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchNumloops1, 5);
C# Example: Get hatch NumLoops 2 for rectangle with entity name "rectangle":
double hatch_num_loops_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchNumloops2, ref hatch_num_loops_2);
Table 220: Hatch Num Loops
Hatch Point Offset Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Point_Offset)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Point_Offset)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Point_Offset)
double Point_Offset = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch point offset for hatch number one or two.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchPointOffset1 83
Set hatch point offset 1.
scComSAMLightClientCtrlDoubleDataIdHatchPointOffset2 85
Set hatch point offset 2.
Entity_Name Type: string Unit: none
The corresponding entity name.
Point_Offset Type: double Unit: [mm]*
The corresponding hatch point offset.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch PointOffset 1 to 1:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchPointOffset1, 5);
C# Example: Get hatch PointOffset 2 for rectangle with entity name "rectangle":
double hatch_point_offset_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchPointOffset2, ref
hatch_point_offset_2);
Table 221: Hatch Point Offset
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 172
Hatch Rehatch All Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Updates the hatch of all entities in the current job.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandRehatchAll 28
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Rehatch all entities:
int CCI_Return = [Link]((int)
[Link]);
Table 222: Hatch Rehatch All
Hatch Select Hatch Pair Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Number_Hatch_Pair)
int Number_Hatch_Pair = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Number_Hatch_Pair)
int Number_Hatch_Pair = ScCciGetLongValue(int Value_Type)
Description Get or set a number for the Hatch Pair. 0 corresponds to Pair A and 4 corresponds
to Pair E. This command will not update the GUI. Instead this will only affect the
other Client Control Hatch commands.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSelectHatchPair 64
Number_Hatch_Pair Type: int Unit: none
· 0: Hatch Pair A
· 1: Hatch Pair B
· 2: Hatch Pair C
· 3: Hatch Pair D
· 4: Hatch Pair E
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set hatch pair E:
int CCI_Return = [Link]((int)
[Link], 4);
C# Example: Get hatch pair:
int hatch_pair_number = [Link]((int)
[Link]);
Table 223: Hatch Select Hatch Pair
Hatch Start Offset Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Start_Offset)
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 173
Hatch Start Offset Set
Get
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Start_Offset)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Start_Offset)
double Start_Offset = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Sets or gets the hatch start offset for hatch number one or two.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchStartoffset1 40
Set hatch start offset 1.
scComSAMLightClientCtrlDoubleDataIdHatchStartoffset2 48
Set hatch start offset 2.
Entity_Name Type: string Unit: none
The corresponding entity name.
Start_Offset Type: double Unit: [mm]*
The corresponding hatch start offset.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set hatch startoffset 1 to 0.05:
int CCI_Return = [Link]("", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchStartoffset1, 0.05);
C# Example: Get hatch startoffset 2 for rectangle with entity name "rectangle":
double hatch_start_offset_2 = 0;
int CCI_Return = [Link]("rectangle", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchStartoffset2, ref
hatch_start_offset_2);
Table 224: Hatch Start Offset
6.2.5 Entity Info
· Entity Type
· Group Settings
· Mark Loop Count
· Mark Beat Count
· Mark Start Count
· Mark Flags
· Output as Bitmap
Entity Type Set
Get
DLL Function int CCI_Return = ScGetIDStringData(int Data_ID, int Index, ref string Parameter)
ASCII Function string Parameter = ScCciGetIDStringData(int Data_ID, int Index)
Description This is used to get the entity type by its index. The index is zero based and starts
from the top level going through the tree on the base of the first object, going on with
the siblings.
Data_ID Type: int ID:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 174
Entity Type Set
Get
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdGetEntityType 22
Get the entity type of a (sub)-entity based on its index.
scComSAMLightClientCtrlStringDataIdGetEntityTypeAsInSAMLight 35
Get the entity type as in SAMLight of a (sub)-entity based on its index.
Index Type: int Unit: none
The entity ID.
Parameter Type: string Unit: none
The entity type.
CCI_Return Type: int
CCI return number, see error list.
Notes · Together with the top-level only mode flag it is possible just to get the type of the
top-level entities. See example Retrieve entities.
C# Example: Get the entity type:
string entity_type = "";
int CCI_Return = [Link]((int)
[Link], 0, ref entity_type);
C# Example: Get the entity type as in SAMLight of the second (sub)-entity:
string entity_type_as_in_SAMLight = "";
int CCI_Return_01 = [Link](0);
int CCI_Return_02 = [Link]((int)
[Link], 1, ref
entity_type_as_in_SAMLight);
Table 225: Entity Type
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 175
Group Settings Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Checkbox)
int Checkbox = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Checkbox)
int Checkbox = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the corresponding group checkboxes.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityGroupPenPaths 118
Use this flag to get or set the checkbox PenPaths.
scComSAMLightClientCtrlLongDataIdEntityGroupCluster 119
Use this flag to get or set the checkbox Cluster.
Entity_Name Type: string Unit: none
Enter the name of the entity, which should be changed.
Checkbox Type: int Unit: none
· Enable checkbox PenPaths.
· Disable checkbox PenPaths.
CCI_Return Type: int
CCI return number, see error list.
Notes · For to set group checkbox just the values 1 and 0 are valid.
C# Example: Set the group PenPath checkbox flag of an entity with entity name "grouped entities":
int CCI_Return = [Link]("grouped entities", (int)
[Link], 1);
C# Example: Get the group PenPath checkbox flag of an entity with entity name "grouped entities":
int Proup_Pen_Paths = [Link]("grouped entities", (int)
[Link]);
Table 226: Group Settings
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 176
Mark Beat Count Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Beat_Count)
int Mark_Beat_Count = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Beat_Count)
int Mark_Beat_Count = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the corresponding mark beat count.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityMarkBeatCount 56
Entity_Name Type: string Unit: none
Enter the name of the entity, which should be changed.
Mark_Beat_Count Type: int Unit: none
The number of the mark beat count.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the mark beat count of an entity with entity name "rectangle" to 2:
int CCI_Return = [Link]("rectangle", (int)
[Link], 2);
C# Example: Get the mark beat count of an entity with entity name "rectangle":
int Mark_Beat_Count = [Link]("rectangle", (int)
[Link]);
Table 227: Mark Beat Count
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 177
Mark Loop Count Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Loop_Count)
int Mark_Loop_Count = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Loop_Count)
int Mark_Loop_Count = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the corresponding mark loop count.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityMarkLoopCount 55
Entity_Name Type: string Unit: none
Enter the name of the entity, which should be changed.
Mark_Loop_Count Type: int Unit: none
The number of the mark loop count.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the mark loop count of an entity with entity name "rectangle" to 10:
int CCI_Return = [Link]("rectangle", (int)
[Link], 10);
C# Example: Get the Mark Loop Count of an entity with entity name "rectangle":
int Mark_Loop_Count = [Link]("rectangle", (int)
[Link]);
Table 228: Mark Loop Count
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 178
Mark Start Count Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Start_Count)
int Mark_Start_Count = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Start_Count)
int Mark_Start_Count = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the mark start count, which corresponds to the mark beat offset.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityMarkStartCount 57
Entity_Name Type: string Unit: none
Enter the name of the entity, which should be changed.
Mark_Start_Count Type: int Unit: none
the number of the Mark Start Count.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the mark start count of an entity with entity name "rectangle" to 1:
int CCI_Return = [Link]("rectangle", (int)
[Link], 1);
C# Example: Get the mark start count of an entity with entity name "rectangle":
int Mark_Start_Count = [Link]("rectangle", (int)
[Link]);
Table 229: Mark Start Count
Mark Flags Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Optic_Flag)
int Mark_Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Mark_Flag)
int Mark_Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the mark flags for mark contour and mark hatch of entity Entity_Name.
The corresponding flag value is a bit field.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityMarkFlags 58
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityMarkFlagMarkContour 0x1
Mark Contour.
scComSAMLightClientCtrlLongDataIdEntityMarkFlagMarkHatch 0x2
Mark Hatch.
CCI_Return Type: int
CCI return number, see error list.
Notes · The mark hatch flag can only be set if the corresponding entity is hatched.
C# Example: Enable mark contour for an entity named "Circle":
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 179
Mark Flags Set
Get
int CCI_Return = [Link]( "Circle", ( int )
[Link],
[Link] );
C# Example: Get the mark flags of an entity with entity name "Circle":
int Mark_Flags = [Link]( "Circle", ( int )
[Link] );
Table 230: Mark Flags
Output as Bitmap Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int As_Bitmap)
int As_Bitmap = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int As_Bitmap)
int As_Bitmap = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the corresponding As Bitmap checkbox.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityOutputAsBitmap 121
Entity_Name Type: string Unit: none
Enter the name of the entity, which should be changed.
As_Bitmap Type: int Unit: none
· Enable checkbox As Bitmap.
· Disable checkbox As Bitmap.
CCI_Return Type: int
CCI return number, see error list.
Notes · For the checkbox just the values 1 and 0 are valid.
C# Example: Set the As Bitmap checkbox flag of an entity:
int CCI_Return = [Link]("", (int)
[Link], 1);
C# Example: Get the As Bitmap checkbox flag of an entity:
int As_Bitmap = [Link]("", (int)
[Link]);
Table 231: Group Settings
6.2.6 Array Copy
· Array Copy Adapt & Associate, see Application, Mode
· ArrayCount & ArrayStep
· Array Order Flags
· Array Copy Hard
· Array Polar Copy Adapt & Rotate, see Application, Mode
· ArrayPolarCopy Number Of Copies
· ArrayPolarCopy Radius, Center & Angle
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 180
ArrayCount & ArrayStep Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the corresponding ArrayCount and ArrayStep (Increment) at the EntityInfo
property page for a soft array copy with virtual entities.
Entity_Name Type: string Unit: none
Enter the name of the entity, which should be copied virtual.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityArrayCountX 4
Use this command to set or get Array Count X.
scComSAMLightClientCtrlLongDataIdEntityArrayCountY 5
Use this command to set or get Array Count Y.
scComSAMLightClientCtrlLongDataIdEntityArrayStepX 6
Use this command to set or get Array Step (Increment) X. Units: [µm]
scComSAMLightClientCtrlLongDataIdEntityArrayStepY 7
Use this command to set or get Array Step (Increment) Y. Units: [µm]
Parameter Type: int Unit: depends on constant
Set or get the new number for the array count or array step (increment).
CCI_Return Type: int
CCI return number, see error list.
Notes · Array step (increment) can also be negative.
C# Example: For a soft arraycopy set count X = 3:
int CCI_Return = [Link]( "ArrayCopy Soft",( int )
[Link], 3 );
C# Example: For soft arraycopy get arraycountX:
int array_count_x = 0;
array_count_x = [Link]("ArrayCopy Soft",(int)
[Link]);
Table 232: Array Copy & Arry Step
Array Order Flags Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Flag)
int Flag = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the output order of a virtual array (virtual means that no new entities are
generated in the entity list. The corresponding setup is in the EntityInfo property page
at array). The corresponding flag is a bit field.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityArrayOrderFlags 8
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 181
Array Order Flags Set
Get
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlEntityArrayOrderFlagNegX 0x100
Direction from right to left in horizontal direction if this flag is set, else from left to
right.
scComSAMLightClientCtrlEntityArrayOrderFlagNegY 0x200
Direction from top to bottom in vertical direction is this flag is set, else from bottom to
top.
scComSAMLightClientCtrlEntityArrayOrderFlagMainDirX 0x400
Use X as the main direction for array copying, array copies would be marked column
by column.
scComSAMLightClientCtrlEntityArrayOrderFlagBiDir 0x800
Use bidirectional mode (horizontal), which means the order of the array copy is
serpentinous back and forth instead of using only one direction with back jumps.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set NegX flag for entity "ArrayCopySoft":
int CCI_Return = [Link]( "ArrayCopySoft", ( int )
[Link],
( int )[Link] );
C# Example: Get current set flag for entity "ArrayCopySoft":
int Entity_Array_Order_Flags = [Link]( "ArrayCopySoft", ( int )
[Link] );
Table 233: Array Order Flags
Array Copy Hard Set
Get
DLL Function int CCI_Return = ScSetEntityStringData(string Entity_Name, int Data_ID, string Copy_Name)
ASCII Function int CCI_Return = ScCciSetEntityStringData(string Entity_Name, int Data_ID, string Copy_Name)
Description This is used to execute the array copy.
Entity_Name Type: string Unit: none
Set the entity name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdArrayCopyHard 28
Executes the ArrayCopyHard.
scComSAMLightClientCtrlStringDataIdArrayPolarCopyHard 39
Executes the ArrayPolarCopyHard.
Copy_Name Type: string Unit: none
Set the name for all copied entities.
CCI_Return Type: int
CCI return number, see error list.
Notes -
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 182
Array Copy Hard Set
Get
C# Example: Executes the ArrayCopyHard for Entity "Text1":
int CCI_Return = [Link]("Text1", (int)
[Link], "Clone");
Table 234: Array Copy Hard
ArrayPolarCopy Number Of Copies Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Copies)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Copies)
Description Set the number of copies for Array polar copy.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEntityArrayPolarNumberOfCopies 151
Copies Type: int Unit: none
Set the number of copies.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the number of copies to 5:
int CCI_Return = [Link]( ( int )
[Link], 5 );
Table 235: ArrayPolarCopy Number Of Copies
ArrayPolarCopy Radius, Center & Angle Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
Description Set the various array polar copy parameters.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarRadius 159
Array Polar Copy Radius. [mm]
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarXCenter 160
Array Polar Copy Center X. [mm].
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarYCenter 161
Array Polar Copy Center Y.[mm]
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarTotalAngle 162
Array Polar Copy Total Angle. [°]
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarStartAngle 163
Array Polar Copy Start Angle [°]
Parameter Type: int Unit: depends on constant
The corresponding value.
CCI_Return Type: int
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 183
ArrayPolarCopy Radius, Center & Angle Set
Get
CCI return number, see error list.
Notes -
C# Example: Set radius for array polar copy to 25 mm:
int CCI_Return = [Link]( ( int )
[Link], 25 );
Table 236: ArrayPolarCopy Radius, Center & Angle
6.3 Data Wizard
· Areas
· Beam Compensation
· Check for Open Polyline
· Data Reduction
· Marking Order
· Sort
Areas Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description This allows the use of the data wizard areas functions.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandWizardClipper 43
· Define area operation with DoublePara1:
o 0: Intersection
o 1: Union
o 2: Difference
o 3: Xor
o 4: Simplify
· Define fill type with DoublePara2.
o 0: Even/Odd
o 1: NonZero
o 2: Positive
o 3: Negative
CCI_Return Type: int
CCI return number, see error list.
Notes · Select entities with EntitySelected.
C# Example: Set area type to union with fill type positive:
int CCI_Return_01 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 1.0);
int CCI_Return_02 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 2.0);
int CCI_Return_03 = [Link]((int)
[Link]);
Table 237: Areas
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 184
Beam Compensation Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Create a beam comped copy of a entity with specified distance.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandCreateBeamCompedCopy 37
Select Entity via Entity Name to Copy with StringPara1.
Determine the new Entity Name via StringPara2.
The Dist parameter is defined by DoublePara1.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Create beam comped copy of entity "Test1" and name it "Test2" and place it at distance
"20.0":
int CCI_Return_01 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara1,"Entity");
int CCI_Return_02 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara2,"BeamCompedEntity" );
int CCI_Return_03 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 20.0);
int CCI_Return_04 = [Link]((int)
[Link]);
Table 238: Create Beam Comped Copy
Check for Open Polyline Set
Get
DLL Function int Open_Polyline = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int Open_Polyline = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Check if a polyline (or any poly line in a group) is open.
Entity_Name Type: string Unit: none
Specify the entity to be checked.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityOpenPolyline 148
Open_Polyline Type: int Unit: none
· 0: (all) closed
· 1: (any) open
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Check if entity "logo" has any open polyline:
int Open_Polyline = [Link]( "logo", ( int )
[Link] );
Table 239: Check for Open Polyline
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 185
Data Reduction Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Use the Data Reduction function of the Data Wizard.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandWizardDataReductionRedundantPoints 31
Use the data wizard function data reduction redundant points.
scComSAMLightClientCtrlExecCommandWizardDataReductionShortLines 42
This allows you to use the data wizard function data reduction short lines.
The Short Lines Length can be defined with DoublePara1.
CCI Return Type: int
CCI error number, see error list.
Notes · Select entities with EntitySelected.
C# Example: Data reduction short lines:
int CCI_Return_01 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 10.0);
int CCI_Return_02 = [Link]((int)
[Link]
s);
Table 240: Data Reduction
Marking Order Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Executes the Data Wizard command "Set Order". There can be set 3 parameters
with Client Control. See Double Value Types DoublePara1/2/3. This will affect all
entities in the job.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandWizardOrder 55
· Marking Order(Red Arrow): DoublePara1
o 0: Left to Right
o 1: Top to Bottom
o 2: Right to Left
o 3: Bottom to Top
· Checkbox: Sort Equal Coordinates By Size: DoublePara2
o 0: Disable
o 1: Enable
· Checkbox: Sort Equal By Other Coordinate: DoublePara3
o 0: Disable
o 1: Enable
CCI_Return Type: int
CCI return number, see error list.
Notes · Select entities with EntitySelected before.
C# Example: Set Checkbox Sort Equal Coordinates by Size:
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 186
Marking Order Set
Get
int CCI_Return_01 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 1 );
int CCI_Return_02 = [Link]((int)
[Link]);
Table 241: Wizard Order
Sort Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Use the Sort function from the Data Wizard.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandWizardCreateSinglePenGroup 29
Create a pen group for a specific pen.
Additional notes:
· Returns '0' if no vector with the chosen pen is found in the selected entites.
· Choose pen with ScSetPen.
· Eventually it could be helpful to select all entities and create one group first by
corresponding CCI command before settings pen.
scComSAMLightClientCtrlExecCommandWizardCreateOneGroup 57
Executes the data wizard command Create One Group.
scComSAMLightClientCtrlExecCommandWizardClosePolylines 61
With this command it is possible to close polylines.
Specify the Close Distance with DoublePara1.
scComSAMLightClientCtrlExecCommandWizardOptimizeJumps 62
The total jump distance between poly lines would be optimized.
scComSAMLightClientCtrlExecCommandWizardCreatePenGroups 63
Regroups selected entities into pen groups.
CCI_Return Type: int
CCI return number, see error list.
Notes · Select entities with EntitySelected before.
C# Example: Close polylines:
int CCI_Return_01 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 1.0 );
int CCI_Return_02 = [Link]((int)
[Link]);
Table 242: Sort
6.4 Styles
In CCI commands that work with entity names, add the prefix "style_entity_" to the entity name to access the
styles, for example: "style_entity_Style 1".
· Style Number
· Reapply all Styles
© 2024 SCAPS GmbH
Client Control Interface Manual - Job 187
Style Number Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Style)
int Style = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Style)
int Style = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Set or get the assigned style for the specified entity.
Entity_Name Type: string Unit: none
Specify the entity to be changed.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityStyle 149
Style Type: int Unit: none
· -1: Unassign style to entity.
· 1..256: The style number.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Assign style 4 to entity "ent1":
int CCI_Return = [Link]("ent1", (int)
[Link], 4);
C# Example: Get style number assigned style of entity "ent":
int Style = [Link]("ent1", (int)
[Link]);
Table 243: Assign Style
Reapply all Styles Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Styles are reapplied to all entities assigned to a style. Thus, if the style has changed,
the chane becomes active on the assigned entities.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandReApplyAllStyles 75
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Reapply all styles:
int CCI_Return = [Link]( ( int )
[Link] );
Table 244: Reapply all Styles
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 188
7 Direct Motion Control
There are two possibilities to drive motion axes via CCI:
· Job control objects, see Control Objects
o Motion Entity Parameter Get
o Motion Entity Parameter Set
o Motion Entity String
· Direct motion control, see sub-chapters:
o Direct motion home
o Direct motion move
o Direct motion RS-232
o Direct motion stop
o Direct motion status
7.1 Direct Motion Home/Shift
· Direct Motion Home
· Direct Motion Shift
Direct Motion Home Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Start the direction motion homing procedure.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandMotionHome 15
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set before.
C# Example: Start homing:
int CCI_Return = [Link]( ( int )
[Link] );
Table 245: Direct Motion Home
Direct Motion Shift Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Axis_Shift)
double Axis_Shift = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Axis_Shift)
double Axis_Shift = ScCciGetDoubleValue(int Value_Type)
Description Set or get the defined axis shift value.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMotionAxisOffset 158
Axis_Shift Type: double Unit: [mm]*
Set or get the desired value.
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 189
Direct Motion Shift Set
Get
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set before.
· The default unit is mm, but the user can select a different unit.
C# Example: Set shift to 777.77:
int CCI_Return = [Link]( ( int )
[Link], 777.77 );
C# Example: Get current defined shift value:
double Axis_Shift = [Link]( ( int )
[Link] );
Table 246: Direct Motion Shift
7.2 Direct Motion Move
· Direct Motion Move
· Motion Axis
· Motion Axis Type
· Motion Position
· Motion Speed
· Motion Wait For End
Direct Motion Move Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Start the direction motion.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandMotionGo 16
CCI_Return Type: int
CCI return number, see error list.
Notes The following motion move parameters have to be set before:
· MotionAxis
· AxisPosition, MotionAxisAngle, MotionAxisPositionRelative or
MotionAxisAngleRelative
· MotionAxisSpeed
· MotionWaitForEnd
C# Example: Start motion move:
int CCI_Return = [Link]( ( int )
[Link] );
Table 247: Direct Motion Move
Motion Axis Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Motion_Axis)
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 190
Motion Axis Set
Get
int Motion_Axis = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Motion_Axis)
int Motion_Axis = ScCciGetLongValue(int Value_Type)
Description Set or get the selected motion axis for further motion CCI commands.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeMotionAxis 17
Motion_Axis Type: int Unit: none
· -1: all motion axes
· [0, 6]: motion axis (up to 7 axes, depending on the motion type)
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Select first motion axis:
int CCI_Return = [Link]( ( int )
[Link], 0 );
C# Example: Get current selected motion axis:
int Motion_Axis = [Link]( ( int )
[Link] );
Table 248: Motion Axis
Motion Axis Type Set
Get
DLL Function int Type = ScGetLongValue(int Value_Type)
ASCII Function int Type = ScCciGetLongValue(int Value_Type)
Description Get the set motion type angular or planar.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeMotionAxisType 113
Type Type: int Unit: none
· 0: Planar.
· 3: Angular.
CCI_Return Type: int
CCI return number, see error list.
Notes · Axis has to be selected before via MotionAxis.
C# Example: Get axis type:
int Type = [Link]( ( int )
[Link] );
Table 249: Motion Axis Type
Motion Position Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Motion_Position)
double Motion_Position = ScGetDoubleValue(int Value_Type)
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 191
Motion Position Set
Get
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Motion_Position)
double Motion_Position = ScCciGetDoubleValue(int Value_Type)
Description 1) Set or get the target position for MotionGo.
2) Get current axis position (after using MotionUpdatePos).
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMotionAxisPosition 38
Absolute position [mm]
scComSAMLightClientCtrlDoubleValueTypeMotionAxisAngle 39
Absolute angle [deg]
scComSAMLightClientCtrlDoubleValueTypeMotionAxisPositionRelativ 40
e
Position relative to the current position [mm]
scComSAMLightClientCtrlDoubleValueTypeMotionAxisAngleRelative 41
Position angle relative to the current angle [deg]
Motion_Position Type: double Unit: depends on constant
Absolut / relative target position.
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set first.
· In some cases (e.g. after stop signal), it is recommended to use MotionUpdatePos
before the get command.
C# Example: Set target position to 10.0 mm:
int CCI_Return = [Link]( ( int )
[Link], 10.0 );
C# Example: Get current target position value:
double Motion_Position = [Link]( ( int )
[Link] );
Table 250: Motion Position
Motion Speed Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Motion_Speed)
double Motion_Speed = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Motion_Speed)
double Motion_Speed = ScCciGetDoubleValue(int Value_Type)
Description Set or get the motion speed for MotionGo.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeMotionAxisSpeed 42
Motion_Speed Type: double Unit: depends on constant
Motion speed [mm/s]
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 192
Motion Speed Set
Get
Notes · MotionAxis has to be set first.
C# Example: Set speed to 25.0 mm/s:
int CCI_Return = [Link]( ( int )
[Link], 25.0 );
C# Example: Get current speed value:
double Motion_Position = [Link]( ( int )
[Link] );
Table 251: Motion Speed
Motion Wait For End Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Motion_Wait_For_End)
int Motion_Wait_For_End = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Motion_Wait_For_End)
int Motion_Wait_For_End = ScCciGetLongValue(int Value_Type)
Description Set or get the motion wait for end value, which changes the return timing of
MotionGo.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeMotionWaitForEnd 18
Motion_Wait_For_End Type: int Unit: none
· 0: MotionGo returns immediately. This is not possible for homing.
· 1: MotionGo returns when the motion move has finished.
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set first.
C# Example: Set motion wait for end value to 1:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get current motion wait for end value:
int Motion_Wait_For_End = [Link]( ( int )
[Link] );
Table 252: Motion Wait For End
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 193
7.3 Direct Motion RS-232
· Direct Motion RS-232
· RS-232 Motion String
Direct Motion RS-232 Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Send the RS-232 motion string.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandMotionSendString 17
CCI_Return Type: int
CCI return number, see error list.
Notes The following motion move parameters have to be set before:
· MotionAxis has to be set before.
· MotionString has to be set before.
C# Example: Send motion RS-232:
int CCI_Return = [Link]( ( int )
[Link] );
Table 253: Direct Motion RS-232
RS-232 motion string Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string RS232_String)
int CCI_Return = ScGetStringValue(int Value_Type, ref string RS232_String)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string RS232_String)
string RS232_String = ScCciGetStringValue(int Value_Type)
Description Set or get the motion string for MotionSendString.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeMotionString 11
RS232_String Type: string Unit: depends on constant
RS-232 motion string
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set first.
· MotionSendString sends the string.
C# Example: Set RS-232 motion string to "PR AL":
int CCI_Return = [Link]( ( int )
[Link], "PR AL" );
C# Example: Get current RS-232 motion string:
string RS232_String = "";
int CCI_Return = [Link]( ( int )
[Link], ref RS232_String );
Table 254: RS-232 Motion String
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 194
7.4 Direct Motion Status
· Motion Moving
· Update Motion Position
Motion moving Set
Get
DLL Function int Motion_Moving = ScGetLongValue(int Value_Type)
ASCII Function int Motion_Moving = ScCciGetLongValue(int Value_Type)
Description Returns the moving state of the motion axes.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeMotionMoving 19
Motion_Moving Type: int Unit: none
For a single axis:
· 0: Axis is not moving.
· 1: Axis is moving.
For all axes (MotionAxis is -1):
· 0: No axis is moving.
· 1: At least one axis is moving.
Notes · MotionAxis has to be set first.
C# Example: Check if motion axis is moving:
int Motion_Moving = [Link]( ( int )
[Link] );
Table 255: Motion Moving
Update Motion Position Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Updates the SAMLight motion position from the motion controller
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandMotionUpdatePos 18
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set before.
· After the update the position can be get with AxisPosition or MotionAxisAngle.
C# Example: Update motion position:
int CCI_Return = [Link]( ( int )
[Link] );
Table 256: Update Motion Position
© 2024 SCAPS GmbH
Client Control Interface Manual - Direct Motion Control 195
7.5 Direct Motion Stop
· Direct Motion Stop
Direct Motion Stop Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Stops a current motion move.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandMotionStopMove 14
CCI_Return Type: int
CCI return number, see error list.
Notes · MotionAxis has to be set before.
C# Example: Stop a current motion move:
int CCI_Return = [Link]( ( int )
[Link] );
Table 257: Direct Motion Stop
8 Inputs and Outputs
The following commands can be used to directly control inputs and outputs.
· Get Inputs
· Get Outputs
· IO Control Object (ScWaitForInput and ScSetOutput) Properties
· Set Outputs
· Get Output Inversions
· Set Output Inversions
· Set Stepper Outputs
Get Inputs Set
Get
DLL Function int Input_States = ScGetLongValue(int Value_Type)
ASCII Function int Input_States = ScCciGetLongValue(int Value_Type)
Description This function is used to get the input states of the Opto_Ins and Digi_Ins.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeOptoIO 4
Input_States Type: int Unit: none
Input_States is a decimal number that is best understood binary:
The bits represent an input state (blue), inactive (0) or active (1). Some bits are
undefined (gray). Which bit represents which input depends on the hardware and is
shown below.
USC-1:
0000_0000_0000_0000_0000_0000_0010_0000
© 2024 SCAPS GmbH
Client Control Interface Manual - Inputs and Outputs 196
Get Inputs Set
Get
| Opto_In_0
Opto_In_5
USC-2/-3:
0000_0000_0000_0000_0000_0000_0010_0000
| | | || Opto_In_0
| | | | Opto_In_5
| | | Digi_In_0
| | Digi_In_9
| Stepper_In_0
Stepper_In_2
RTC3/4/5/6:
0000_0000_0000_0000_0000_0000_0010_0000
| Digi_In_0
Digi_In_15
Alternative mathematical representation of unsigned Input_States:
Notes · Should be called >100ms after Outputs have been set.
· An programming example to get a single input can be found here.
C# Example: Get input states:
int Input_States = [Link]((int)
[Link]);
Example: Interpret USC input states 32:
(32)dec = (0000 0000 0010 0000)bin Opto_In_5 is active, all other inputs are inactive.
Table 258: Get Inputs
Get Outputs Set
Get
DLL Function int Output_States = ScGetLongValue(int Value_Type)
ASCII Function int Output_States = ScCciGetLongValue(int Value_Type)
Description This function is used to get the output states of the Opto_Outs and Digi_Outs.
Output_States Type: int Unit: none
Output_States is a decimal number that is best understood binary:
The bits represent an output state (blue), inactive (0) or active (1). Some bits are
undefined (gray). Which bit represents which output depends on the hardware and is
shown below.
USC-1:
© 2024 SCAPS GmbH
Client Control Interface Manual - Inputs and Outputs 197
Get Outputs Set
Get
0000_0000_0000_0000_0000_0000_0000_1000
| Opto_Out_0
Opto_Out_5
USC-2/-3:
0000_0000_0000_0000_0000_0000_0000_1000
| | | | | || Opto_Out_0
| | | | | | Opto_Out_5
| | | | | Digi_Out_0
| | | | Digi_Out_9
| | | Stepper_Out_0
| | Stepper_Out_5
| Laser_Port_0
Laser_Port_7
Alternative mathematical representation of unsigned Ouput_States:
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeGetOptoOut 31
Notes · USC cards only.
· USC-1 does not have Digi_Outs.
· Should be called >100ms after Outputs have been set.
· Do not misunderstand the name of the command, you can also get Digi_Outs.
· An programming example to get a single output can be found here.
C# Example: Get output states:
int Output_States = [Link]((int)
[Link]);
Example: Interpret USC output states 16:
(16)dec = (0000 0000 0001 0000)bin Opto_Out_4 is active, all other outputs are inactive.
Table 259: Get Outputs
Set Outputs Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Output_States)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Output_States)
Description This function is used to set the output states of the Opto_Outs and Digi_Outs.
© 2024 SCAPS GmbH
Client Control Interface Manual - Inputs and Outputs 198
Set Outputs Set
Get
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeOptoIO 4
Output_States Type: int Unit: none
Output_States is a 32 bit signed integer that is best understood binary:
The first 16 bits represent a mask of the outputs (red), telling which output should be
changed (0) or unchanged (1). The last 16 bits represent the desired state of the
output (blue), inactive (0) or active (1). Some bits are undefined (gray). Which bit
represents which output depends on the hardware and is shown below.
USC-1:
1111_1111_1111_0111_0000_0000_0000_1000
| | | State Opto_Out_0
| | State Opto_Out_5
| Mask Opto_Out_0
Mask Opto_Out_5
USC-2/-3:
1111_1111_1111_0111_0000_0000_0000_1000
| || | | || State Opto_Out_0
| || | | | State Opto_Out_5
| || | | State Digi_Out_0
| || | State Digi_Out_9
| || Mask Opto_Out_0
| | Mask Opto_Out_5
| Mask Digi_Out_0
Mask Digi_Out_9
RTC3/4/5/6:
1111_1111_1111_0111_0000_0000_0000_1000
| | | State Digi_Out_0
| | State Digi_Out_15
| Mask Digi_Out_0
Mask Digi_Out_15
Alternative mathematical representation of unsigned Output_States:
CCI_Return Type: int
CCI return number, see error list.
Notes · Opto_Out 0 can not be influenced by this command, since it is reserved for the
mark in progress flag.
© 2024 SCAPS GmbH
Client Control Interface Manual - Inputs and Outputs 199
Set Outputs Set
Get
· An programming example to set a single output can be found here.
· Only output states where the associated mask is 0 have an effect.
· If a output is used somewhere else (like status outputs, red pointer, stepper
motion, etc.) the output will be overwritten when the event occurs.
C# Example: Set USC Opto_Out_3 active and keep all other outputs in their current state:
uint Output_States = 0b_1111_1111_1111_0111_0000_0000_0000_1000;
// Decimal 4294377480 as uint32 and -589816 as int32.
int CCI_Return = [Link]((int)
[Link], (int) Output_States);
Table 260: Set Outputs
Get Output Inversions Set
Get
DLL Function int Output_Inversions = ScGetLongValue(int Value_Type)
ASCII Function int Output_Inversions = ScCciGetLongValue(int Value_Type)
Description Get the inversion states of outputs on USC-2/-3 cards.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeOptoOutInvert 124
Output_Inversions Type: int Unit: none
Output_Inversions is a decimal number that is best understood binary:
The bits represent an output inversion state (blue), normal (0) or inverted (1). Some
bits are undefined (gray). Which bit represents which output inversion is shown
below.
USC-2/-3:
0000_0000_0000_0000_0000_0000_0000_0101
| | | || Inversion State Opto_Out_0
| | | | Inversion State Opto_Out_5
| | | Inversion State Digi_Out_0
| | Inversion State Digi_Out_9
| Inversion State Stepper_Out_0
Inversion State Stepper_Out_5
Alternative mathematical representation of unsigned Ouput_Inversions:
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get output inversion states:
© 2024 SCAPS GmbH
Client Control Interface Manual - Inputs and Outputs 200
Get Output Inversions Set
Get
int Output_Inversion = [Link]((int)
[Link]);
Example: Interpret USC output inversion states 5:
(5)dec = (0000 0000 0000 0101)bin Inversion states of Opto_Out_0 and Opto_Out_2 are active, all other
inversion states are inactive.
Table 261: Get Output Inversions
Set Output Inversions Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Output_Inversions)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Output_Inversions)
Description Set or get the inversion states of outputs on USC-2/-3 cards.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeOptoOutInvert 124
Output_Inversions Type: int Unit: none
Output_Inversions is a 32 bit signed integer that is best understood binary:
The first 16 bits represent a mask of the output inversions (red), telling which output
inversion should be changed (0) or unchanged (1). The last 16 bits represent the
desired state of the output inversion (blue), normal (0) or inverted (1).
USC-2/-3:
1111_1111_1100_0000_0000_0000_0011_1111
| || | | || Inversion State Opto_Out_0
| || | | | Inversion State Opto_Out_5
| || | | Inversion State Digi_Out_0
| || | Inversion State Digi_Out_9
| || Mask Opto_Out_0
| | Mask Opto_Out_5
| Mask Digi_Out_0
Mask Digi_Out_9
Alternative mathematical representation of unsigned Ouput_Inversions:
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Invert all Opto_Outs and keep the inversion states of the Digi_Outs in their current state:
uint Output_Inversion = 0b_1111_1111_1100_0000_0000_0000_0011_1111;
© 2024 SCAPS GmbH
Client Control Interface Manual - Inputs and Outputs 201
Set Output Inversions Set
Get
// Decimal 4290773055 as uint32 and -4194241 as int32.
int CCI_Return = [Link]((int)
[Link], (int)
Output_Inversion);
Table 262: Set Output Inversions
Set Stepper_Outputs Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Output_States)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Output_States)
Description This function is used to set the output states of the Stepper_Outs.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeStepperPort 157
Output_States Type: int Unit: none
Output_States is a 32 bit signed integer that is best understood binary:
The first 16 bits represent a mask of the outputs (red), telling which output should be
changed (0) or unchanged (1). The last 16 bits represent the desired state of the
output (blue), inactive (0) or active (1). Some bits are undefined (gray). Which bit
represents which output depends on the hardware and is shown below.
USC-2/3:
1111_1111_1111_0111_0000_0000_0000_1000
| | | State Stepper_Out_0
| | State Stepper_Out_5
| Mask Stepper_Out_0
Mask Stepper_Out_5
Alternative mathematical representation of unsigned Output_States:
CCI_Return Type: int
CCI return number, see error list.
Notes · Only output states where the associated mask is 0 have an effect.
· If a output is used somewhere else (like status outputs, red pointer, stepper
motion, etc.) the output will be overwritten when the event occurs.
C# Example: Set USC Stepper_Out_3 active and keep all other outputs in their current state:
uint Output_States = 0b_1111_1111_1111_0111_0000_0000_0000_1000;
// Decimal 4294377480 as uint32 and -589816 as int32.
int CCI_Return = [Link]((int)
[Link], (int) Output_States);
Table 263: Set Stepper_Outputs
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 202
9 Mark
Mark has following sub-chapters:
· Mark Dialog
o Red Pointer
· Trigger Dialog
· Mark Preview
· Mark Sequence
· Mark Time
· Mark Counter
The following commands are described in this chapter:
· Execution Status
· Is Marking
· Mark Entity by Name
· Mark Flags
· Stop Marking
Execution Status Set
Get
DLL Function int Status = ScGetLongValue(int Value_Type)
ASCII Function int Status = ScCciGetLongValue(int Value_Type)
Description Returns the current execution state. Will be reset for each new marking process,
enabling the red pointer or opening the Mark-Trigger-Dialog.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeExecutionStatus 3
Index Type: int Flag:
Location: None
scComStandardDeviceExecutionExtStop 0x1
External Stop was recognized.
scComStandardDeviceExecutionBreak 0x2
Stop Execution via SAMLight
scComStandardDeviceExecutionWaitForTrigger (only RTC) 0x4
RTC card waiting for Trigger.
Notes · 0x0 means no external stop was recognized.
· Usually the return 0x1 will be internally overwritten by a break 0x2.
· ExtStop (0x1) will only be returned if the break was not executed.
C# Example: Get Execution Status:
int Status = [Link]( ( int )
[Link] );
Table 264: Execution Status
Is Marking Set
Get
DLL Function int CCI_Return = ScIsMarking()
ASCII Function int CCI_Return = ScCciIsMarking()
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 203
Is Marking Set
Get
Description If the ScMarkEntityByName function was called with WaitForMarkEnd set to 0, this
function can be used for checking whether the actual marking process is already
finished or not. The Function returns 1 if the scanner application is still marking.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Check if the actual marking process is already finished or not:
int CCI_Return = [Link]();
Table 265: Is Marking
Mark Entity by Name Set
Get
DLL Function int CCI_Return = ScMarkEntityByName(string Entity_Name, int Wait_For_Mark_End)
ASCII Function int CCI_Return = ScCciMarkEntityByName(string Entity_Name, int Wait_For_Mark_End)
Description Marks the entity with the name Entity_Name.
Entity Name Type: string Unit: none
Set the entity name.
Wait_For_Mark_End Type: int Unit: none
If it is set to 0, the function returns immediately and the client application can start
other tasks while the scanner application is marking in background. If it is set to 1,
function returns at the end of marking.
CCI_Return Type: int
CCI return number, see error list.
Notes · If the string for the entity name is empty (""), the complete job will be marked.
· Entity_Name together with the flag
scComSAMLightClientCtrlModeFlagEntity_NamesSeparatedBySemicolon can
include more than one entity name. Therefore the names of the entities have to be
separated by a semicolon. If more than one entity with a given name exists, all of
them are marked.
· If you are in SAM3D Mode, it is possible to mark the whole 3D object or a
predefined slice range. For a predefined sclice range set the layer limits. In both
cases, set the parameter Entity_Name to
@@@[Link]@@@. After 10h it runs into a timeout.
· Some mark flags can be set before this command by ScSetMarkFlags().
· The red pointer has to be stopped before the marking procedure can be started by
this command.
C# Example: Mark whole job:
int CCI_Return = [Link]( "", 1 );
Table 266: Mark Entity by Name
Mark Flags Set
Get
DLL Function int CCI_Return = ScSetMarkFlags(int Flag)
int Flag = ScGetMarkFlags()
ASCII Function int CCI_Return = ScCciSetMarkFlags(int Flag)
int Flag = ScCciGetMarkFlags()
Description The mark flags that can be set and get using these functions define the general
behaviour of the output process during the next call of ScMarkEntityByName().
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 204
Mark Flags Set
Get
Following marking flags are available and can be combined to set using a logical
OR:
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlMarkFlags
scComSAMLightClientCtrlMarkFlagWaitForTrigger 0x1
The Mark function starts only after an external start. The WaitForMarkEnd
parameter
value of ScMarkEntityByName() flag has no effect.
scComSAMLightClientCtrlMarkFlagHideOutput 0x4
Does not show the trigger output window of the controlled scanner application during
marking.
scComSAMLightClientCtrlMarkFlagDisableHomeJump 0x8
Switch off the home jump after the mark.
scComSAMLightClientCtrlMarkFlagPreview 0x10
Execute marking in preview mode. For an example see also: Precalculating Marking
Time.
scComSAMLightClientCtrlMarkFlagSelected 0x20
Mark only selected entities and ignore all other ones.
scComSAMLightClientCtrlMarkFlagDisablePreProcessing 0x40
Disable the pre-processing phase.
scComSAMLightClientCtrlMarkFlagDisablePostProcessing 0x80
Disable the post-processing phase.
scComSAMLightClientCtrlMarkFlagControlLoopByEntity 0x400
Normally if the Mark Loop Count of an Entity is greater than 1, for example 10, then if
marking is active 10 copies of this entity are created internally during download to the
card. If this flag is set, only 1 copy is created but looping 10 times on a lower
software level. This saves time and memory. Only helpful for very complex jobs with
very high loop count and for very high speed marking applications with minimum
dead time between two marks. This flag only works for basic vector objects without
advanced features as for example pen paths or event objects.
scComSAMLightClientCtrlMarkFlagCloseTriggerWindowAtStop 0x800
Close trigger window, if e.g. a ScStopExecution() is called.
scComSAMLightClientCtrlMarkFlagManualLayerPreparation 0x2000
Disables / enables automatic layer preparation.
scComSAMLightClientCtrlMarkFlagUseAlreadyOpenedMarkDialog 0x4000
Keeps marking dialog opened for MarkEntityByName.
scComSAMLightClientCtrlMarkFlagDontSwitchToNextLayer 0x8000
Prevents the next layer from being selected after marking. Selection of the next layer
only happens when marking through the Mark Dialog or MarkEntityByName with
Entity_Name @@@[Link]@@@)". When multiple layers
are marked: Prevents the first layer from being selected after marking all layers.
scComSAMLightClientCtrlMarkFlagDebugNoOutput 0x10000
Hide SAMLight error windows.
scComSAMLightClientCtrlMarkFlagMultiHeadIndependant 0x20000
MultiHead independent mode.
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 205
Mark Flags Set
Get
scComSAMLightClientCtrlMarkFlagMarkDialogWaitForTrigger 0x40000
External Trigger checkbox in Mark Dialog.
CCI_Return Type: int
CCI return number, see error list.
Notes · To prevent incorrect operation please read chapter How to work with flags.
C# Example: Enable MultiHead independent mode:
int Mark_Flags = [Link]();
Mark_Flags = Mark_Flags | ( int )
[Link];
int CCI_Return = [Link]( Mark_Flags );
C# Example: Disable MultiHead independent mode:
int Mark_Flags = [Link]();
Mark_Flags = Mark_Flags & ~( int )
[Link];
int CCI_Return = [Link]( Mark_Flags );
Table 267: Mark Flags
Stop Marking Set
Get
DLL Function int CCI_Return = ScStopMarking()
ASCII Function int CCI_Return = ScCciStopMarking()
Description Stops the current marking process.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Stop marking:
int CCI_Return = [Link]();
Table 268: Stop Marking
9.1 Mark Dialog
· Mark Dialog Status
· Open / Close Mark Dialog
Mark Dialog Status Set
Get
DLL Function int State = ScGetLongValue (int Value_Type)
ASCII Function int State = ScCciGetLongValue(int Value_Type)
Description Return the state of the mark dialog.
· 0: Mark dialog is closed.
· 1: Mark dialog is open.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeIsMarkDialogOpen 135
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 206
Mark Dialog Status Set
Get
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get the state of the mark dialog:
int State = [Link]( ( int )
[Link] );
Table 269: Mark Dialog Status
Open / Close Mark Dialog Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Open or close the mark dialog.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandOpenMarkDialog 48
Open the Mark dialog.
scComSAMLightClientCtrlExecCommandCloseMarkDialog 49
Close the Mark dialog.
CCI_Return Type: int
CCI return number, see error list.
Notes · The state of the mark dialog can be obtained as well.
C# Example: Open the mark dialog:
int CCI_Return = [Link]( ( int )
[Link] );
Table 270: Open / Close Mark Dialog
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 207
9.1.1 Red Pointer
· Redpointer Mode
· Start / Stop Redpointer
Redpointer Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Redpointer_Mode)
int Redpointer_Mode = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Redpointer_Mode)
int Redpointer_Mode = ScCciGetLongValue(int Value_Type)
Description Set or get the redpointer mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeRedpointerMode 65
Redpointer_Mode Type: int Unit: none
· 1: Individual outline
· 2: Total outline
· 3: Individual border
· 4: Only redpointer entities
· 5: Outermost border
CCI_Return Type: int
CCI return number, see error list.
Notes · The mark dialog must be open.
C# Example: Set redpointer mode to total outline:
int CCI_Return = [Link]( ( int )
[Link], 2 );
Table 271: Redpointer Mode
Start / Stop Redpointer Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Start or stop the redpointer.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandRedPointerStart 20
Start the red pointer. The mark dialog will be opened, if its closed.
scComSAMLightClientCtrlExecCommandRedPointerStop 21
Stops the red pointer. The mark dialog must be open.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Start redpointer:
int CCI_Return = [Link]( ( int )
[Link] );
Table 272: Start / Stop Redpointer
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 208
9.2 Trigger Dialog
· Exit Trigger Mode
· Start Trigger Mode with Mark Entity by Name and Mark Flag WaitForTrigger
· Stop Execution
Exit Trigger Mode Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Stops the TriggerMode.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandExitTriggerMode 41
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Exit trigger mode:
int CCI_Return = [Link]( ( int )
[Link] );
Table 273: Exit Trigger Mode
Stop Execution Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Stops the execution: If scComSAMLightClientCtrlMarkFlagWaitForTrigger is set with
ScSetMarkFlags and mark is called with ScMarkEntityByName, the trigger mark
dialog opens. The command closes the trigger mark dialog and disables trigger
mode. This is necessary for example if a job is edited and new data need to be given
to the scanner card. Then the trigger mode needs to be stopped and the marking
has to be
started again.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandStopExecution 19
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Stop execution:
int CCI_Return = [Link]( ( int )
[Link] );
Table 274: Stop Execution
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 209
9.3 Mark Preview
· Generate Preview with Mark Entity by Name and Mark Flag Preview
· Show Preview
Show Preview Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Preview)
int Preview = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Preview)
int Preview = ScCciGetLongValue(int Value_Type)
Description Switch between Main and preview window.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSwitchToPane 43
Preview Type: int Unit: none
· 1: Preview window
· 2: Main window
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Switch to mark preview window:
int CCI_Return = [Link]( ( int )
[Link], 1 );
Table 275: Show Preview
9.4 Mark Sequence
· ResetSequence
Reset Sequence Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciResetSequence()
Description This resets the marking sequence to its initial state. This is important for jobs using
the beat count and beat offset parameters.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandResetSequence 2
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Reset Sequence:
int CCI_Return = [Link]( ( int )
[Link] );
Table 276: Reset Sequence
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 210
9.5 Mark Time
· Relevant Times
Relevant Times Set
Get
DLL Function double Time = ScGetDoubleValue(int Value_Type)
ASCII Function double Time = ScCciGetDoubleValue(int Value_Type)
Description Get various mark times.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeLastMarkTime 21
Get the marking time of the last mark. It can be used to evaluate the time that was
needed for the last marking operation. It is listed in the status bar in SAMLight.
scComSAMLightClientCtrlDoubleValueTypeLastExpectedMarkTime 34
Get the expected marking time of the last marking. Returns the expected marking
time like SAMLight-> Mark->TimeInfo. A previous mark preview is not required. If the
command is send during marking, the return will be "-1".
scComSAMLightClientCtrlDoubleValueTypeLastPreviewTime 112
Get process time of last preview.
scComSAMLightClientCtrlDoubleValueTypeProcessTime 143
Get the process time listed in the status bar in SAMLight.
scComSAMLightClientCtrlDoubleValueTypeTotalMarkingTime 144
Get the total marking time listed in the status bar in SAMLight.
Time Type: double Unit: [s]
The corresponding time.
Notes -
C# Example: Get expected mark time:
double Expected_Mark_Time = [Link]( ( int )
[Link] );
Table 277: Relevant Times
9.6 Mark Counter
· Number Marks Completed
· Quantity & Max Quantity
· Reset Counter
Number Marks Completed Set
Get
DLL Function int Mark_Num = ScGetLongValue(int Value_Type)
ASCII Function int Mark_Num = ScCciGetLongValue(int Value_Type)
Description Return the number of markings.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeNumMarksCompleted 1
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 211
Number Marks Completed Set
Get
Marks_Num Type: int Unit: none
The number of markings.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Return the number of marks:
int Mark_Num = [Link]( ( int )
[Link] );
Table 278: Number Marks Completed
Quantity Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Quantity)
int Quantity = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Quantity)
int Quantity = ScCciGetLongValue(int Value_Type)
Description Set or get the current quantity or maximum quantity.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeQuantity 5
Quantity. Quantity counter must be enabled.
scComSAMLightClientCtrlLongValueTypeMaxQuantity 15
Maximum quantity, after that a message is shown. When a value of -1 is set, the
quantity counter functionality is disabled.
Quantity Type: int Unit: none
Returns the number of marks.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get the current quantity:
int Quantity = [Link]( ( int )
[Link] );
Table 279: Quantity
Reset Counter Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
int CCI_Return = ScCciResetCounter()
Description Resets the mark quantity counter. See chapter Mark Status Bar.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandResetCounter 7
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Mark 212
Reset Counter Set
Get
Notes -
C# Example: Reset counter
int CCI_Return = [Link]( ( int )
[Link] );
Table 280: Reset Counter
10 Splitting
This chapter deals with the option splitting. There exist several options that are only available in some
modes but not in all modes. The commands available in all modes are explained below. Other commands
only available in a few modes are explained with further details in the following subchapters:
· Angular Splitting
· 1D Planar Splitting
· 2D Planar Splitting
· Ring Splitting
· 1D MOTF Splitting
· Bitmap Rotary Splitting
· Step and Repeat
For an overview which options are available for which modes, please see the SAMLight manual chapter on
Spllitting.
Following commands can be used and are relevant for all Splitting Modes:
· Enable/Disable Splitting or Resplit
· Global Splitting Checkboxes
· Save Splits Job File Name
· Save Split Job
· Split Mode
· Split Order
· Split Overlap
· Split Repetitions
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 213
Enable/Disable Splitting or Resplit Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Enable or disable the splitting checkbox or replit the current job.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandResplitJob 13
Resplit / activate the splitting of a job that was modified so that the split data have to
be updated by this option.
scComSAMLightClientCtrlExecCommandDisableSplit 44
Disable splitting.
CCI_Return Type: int
CCI return number, see error list.
Notes · The splitting mode will be activated if it is disabled.
C# Example: Disable splitting:
int CCI_Return = [Link]((int)
[Link]);
Table 281: Disable Splitting
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 214
Global Splitting Checkboxes Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Checkbox)
int Checkbox = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Checkbox)
int Checkbox = ScCciGetLongValue(int Value_Type)
Description Set or get the state of various global splitting checkboxes.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSplitKeepMarkFlag 127
Checkbox Keep Mark In Progress Active.
scComSAMLightClientCtrlLongValueTypeSplitDoNotRecalculateSplitLines 128
Checkbox Do Not Recalculate Split Lines.
Only available in vector marking - fixed size splitting.
scComSAMLightClientCtrlLongValueTypeSplitCogOverlappedLines 129
Checkbox Cog Vectors in Overlap Area. Not available in Bitmap Marking.
scComSAMLightClientCtrlLongValueTypeSplitEntityBasedOnlyTopLevel 130
Checkbox Top Level Entities as Split Parts.
Only available in vector marking - entity based splitting.
scComSAMLightClientCtrlLongValueTypeSplitEntityBasedOnlyTopLevelUngr 132
oupWinTextChars2D
Checkbox Ungroup Text. Top Level Entities as Split Part has to be enabled before.
Only available in vector marking - entity based splitting.
scComSAMLightClientCtrlLongValueTypeSplitAllowPreSort 133
Checkbox Avoid Unnecessary Splits in Overlap Area.
Only available in vector marking - fixed split size.
scComSAMLightClientCtrlLongValueTypeWorkpieceMovement 147
Checkbox Workpiece Movement.
Not available for 1D MOTF Splitting.
scComSAMLightClientCtrlLongValueTypeBmpKeepSize 154
Checkbox Keep Bitmap Size.
Only available in splitting submode Bitmap Marking.
Checkbox Type: int Unit: none
· 0: Disable Checkbox
· 1: Enable Checkbox
CCI_Return Type: int
CCI return number, see error list.
Notes · The availability depends on the 1D MOTF Splitting Submode.
C# Example: Enable cog vectors in overlap area:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get the state of the cog vectors in overlap area checkbox:
int Cog_Overlapped_Lines_Checkbox = [Link]( ( int )
[Link] );
Table 282: Global Splitting Checkboxes
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 215
Save Splits Job File Name Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string File_Name)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string File_Name)
Description Set the string values of the file name.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeSaveSplitsJobFileName 21
File_Name Type: string Unit: none
Set the required file name value.
CCI_Return Type: int
CCI return number, see error list.
Notes
C# Example: Set file name for splitjob:
int Split_Job = [Link]((int)
[Link],
[Link](@"%SCAPS_SAM%") + "\\jobfiles\\demo_splitted.sjf");
// Job is saved in <SCAPS>/jobfiles
Table 283: Save Splits Job File Name
Save Splitjob Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description This constant can be used to save a splitted job file as an entity list of split tiles.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSaveSplitsAsOrigEntities 30
Save the splitted job with the functionality of the checkbox "Original positions /
Positions as in job to mark".
scComSAMLightClientCtrlExecCommandSaveSplitsAsEntities 38
Save the splitted job.
CCI_Return Type: int
CCI return number, see error list.
Notes This constant has to be executed after SaveSplitsJobFileName.
C# Example: Save Split Job:
int CCI_Return = [Link]((int)
[Link]);
Table 284: Save Splits
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 216
Split Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Split_Mode)
int Split_Mode = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Split_Mode)
int Split_Mode = ScCciGetLongValue(int Value_Type)
Description Set or get the global split mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSplitMode 125
Split_Mode Type: int Unit: none
· 1: Angular Splitting
· 2: 1D Planar Splitting
· 3: 2D Planar Splitting
· 4: 1D Mark on the Fly Splitting
· 5: Ring Splitting
CCI_Return Type: int
CCI return number, see error list.
Notes · If no mode is selected, the return is -1.
C# Example: Set splitting mode to angular splitting:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get current split mode:
int Split_Mode = [Link]( ( int )
[Link] );
Table 285: Split Mode
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 217
Split Order Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Set or get various long values in the 1D MOTF settings dialog.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeAngularSplittingSplitAxis 94
Split axis:
· 0: Vertical
· 1: Horizontal
scComSAMLightClientCtrlLongValueType1dMotfReverse 104
Split Direction. (Only 1D MOTF Splitting).
· 0: Normal
· 1: Reverse
scComSAMLightClientCtrlLongValueTypeReverseSplitOrder 108
Enables and disables the ReverseSplitOrder. (Not available for 1D MOTF Splitting)
· 0: Off.
· 1: On.
Parameter Type: int Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the split order to vertical:
int CCI_Return = [Link]( ( int )
[Link], 0 );
C# Example: Get the set axis:
int Axis_State = [Link]( ( int )
[Link] );
Table 286: Split Order
SplitAxis ReverseSplitOrder Fixed Size Split Order Entity Based Split Order
0 0
0 1
1 0
1 1
Table 287: Splitting Direction
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 218
Split Overlap Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Overlap)
double Overlap = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Overlap)
double Overlap = ScCciGetDoubleValue(int Value_Type)
Description Set or get the split overlap value for each available split mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSplitOverlap 145
Overlap Type: double Unit: [%]
Define the split overlap value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the split overlap to 50.0%:
int CCI_Return = [Link]((int)
[Link], 50.0);
C# Example: Get the split overlap value:
double Overlap = [Link]((int)
[Link]);
Table 288: Split Overlap
10.1 Angular Splitting
· Diameter
· Global Splitting Checkboxes, see Splitting
o Avoid Unnecessary Splits in Overlap Area
o Cog Vectors in Overlap Area
o Do Not Recalculate Split Lines
o Top Level Entities as Split Parts
o Keep Mark In Progress Active
o Workpiece Movement
o Ungroup Text
· Repetitions Over 360°
· Split Angle
· Split Jobs Larger Than 360°
· Split Order, see Splitting
· Split Overlap, see Splitting
· Start Position, see Splitting 2D Planar Splitting
· Split Repetitions, see Splitting
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 219
Diameter Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Total_Diameter)
double Total_Diameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Total_Diameter)
double Total_Diameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the angular splitting total diameter.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeAngularSplittingTotalDiameter 50
Total_Diameter Type: double Unit: [mm]*
The corresponding value of the total diameter.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set the angular splitting total diameter to 100.0:
int CCI_Return = [Link]((int)
[Link],
100.0);
C# Example: Get the angular splitting total diameter:
double Total_Diameter = [Link]((int)
[Link]);
Table 289: Diameter
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 220
Repetitions Over 360° Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parts)
int Parts = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parts)
int Parts = ScCciGetLongValue(int Value_Type)
Description Especially for Rotary Splitting, this constant defines how often the job should be
marked distributed homogeneously on the surface.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeAngularSplittingParts 33
Sets or gets the number of parts distributed homogeneously over the surface of the
cylinder, if it is big enough.
Parts Type: int Unit: none
Define the number of repetitions within 360°.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set number of AngularSplittingParts to 10:
int CCI_Return = [Link]((int)
[Link], 10);
C# Example: Get number of AngularSplittingParts:
int CCI_Return = [Link]((int)
[Link]);
Table 290: Repetitions Over 360°
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 221
Split Angle Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Angle)
double Angle = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Angle)
double Angle = ScCciGetDoubleValue(int Value_Type)
Description Set or get the angular splitting angle for angular splitting mode "Vector Marking -
Fixed Split Size".
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeAngularSplittingAngle 51
Angle Type: double Unit: [deg]
The corresponding value of the splitting angle.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set the angular splitting angle to 10.0°:
int CCI_Return = [Link]((int)
[Link], 10.0);
C# Example: Get the angular splitting angle:
double Splitting_Angle = [Link]((int)
[Link]);
Table 291: Split Angle
Split Jobs Larger Than 360° Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parts)
int Parts = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parts)
int Parts = ScCciGetLongValue(int Value_Type)
Description Set or get the state of the checkbox Tolerate Larger Split Jobs Than 360°.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueType1DAllowMoreThan360 148
Will allow a continuous rotation with an angle greater than 360°.
Checkbox Type: int Unit: none
· 0: Disable Checkbox.
· 1: Enable Checkbox.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable Tolerate Larger Split Jobs Than 360°:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType1DAllowMoreThan360, 1 );
C# Example: Get the state of the Tolerate Larger Split Jobs Than 360° checkbox:
int AllowMoreThan360_Checkbox = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType1DAllowMoreThan360 );
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 222
Table 292: Split Jobs Larger Than 360°
10.2 1D Planar Splitting
· Global Splitting Checkboxes, see Splitting
o Avoid Unnecessary Splits in Overlap Area
o Cog Vectors in Overlap Area
o Do Not Recalculate Split Lines
o Top Level Entities as Split Parts
o Keep Mark In Progress Active
o Workpiece Movement
o Ungroup Text
· Group Width
· Split Order, see Splitting
· Split Overlap, see Splitting
· Start Position, see Splitting 2D Planar Splitting
· Split Repetitions, see Splitting
· Split Size
Group Width Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Width)
double Width = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Width)
double Width = ScCciGetDoubleValue(int Value_Type)
Description Set or get the grouped entities width.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeEntityBasedSplittingGroupedEntityWidth 94
Width Type: double Unit: [mm]*
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default length unit is mm, but the user can select a different unit.
· Only available in vector marking - entity based splitting.
C# Example: Set the grouped entities width to 16.7 mm:
int CCI_Return = [Link]( ( int )
[Link]
idth, 16.7 );
C# Example: Get the grouped entities width:
double Grouped_Entities_Width = [Link]( ( int )
[Link]
idth );
Table 293: Group Width
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 223
Split Size Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Horizontal_Splitting_Value)
double Horizontal_Splitting_Value = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Horizontal_Splitting_Value)
double Horizontal_Splitting_Value = ScCciGetDoubleValue(int Value_Type)
Description Set or get the Splitting Size for 1D planar splitting mode "Vector Marking - Fixed Split
Size"
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeHorizontalSplittingValue 52
Set the horizontal splitting value.
scComSAMLightClientCtrlDoubleValueTypeVerticalSplittingValue 53
Set the vertical splitting value.
Value Type: double Unit: [mm]*
The corresponding value of the splitting size.
CCI_Return Type: int
CCI return number, see error list.
Notes · Can also be set with 2DSplitWidthValue.
· The default unit is mm, but the user can select a different unit.
C# Example: Set the horizontal splitting value (Splitting Size) to 30
int CCI_Return = [Link]((int)
[Link], 30);
C# Example: Get the horizontal splitting value (Splitting Size)
double Splitting_Size = [Link]((int)
[Link]);
Table 294: Split Size
10.3 2D Planar Splitting
· Global Splitting Checkboxes, see Splitting
o Avoid Unnecessary Splits in Overlap Area
o Cog Vectors in Overlap Area
o Do Not Recalculate Split Lines
o Top Level Entities as Split Parts
o Keep Mark In Progress Active
o Workpiece Movement
o Ungroup Text
· Split Order, see Splitting
· Split Overlap, see Splitting
· Start Position
· Split Repetitions, see Splitting
· Split Width / Height
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 224
Start Position Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the start value for splitting.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeStartSplittingPosX 56
Set or get a start value for the first axis (not necessarily X axis).
scComSAMLightClientCtrlDoubleValueTypeStartSplittingPosY 57
Set or get a start value for the second axis (not necessarily Y axis).
Parameter Type: double Unit: depends on constant
Set or get the required data.
CCI_Return Type: int
CCI return number, see error list.
Notes When using Angular Splitting, the start value can be set with StartSplittingPosX in °.
When using 2D planar splitting, the start value of the first axis is set with
StartSplittingPosX, the start value of the second axis is set with StartSplittingPosY.
C# Example: Set spitting start value X to 12.3:
int CCI_Return = [Link]((int)
[Link], 12.3);
C# Example: Get spitting start value Y:
double Start_Splitting_Position = [Link]((int)
[Link]);
Table 295: Start Position
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 225
Split Width / Height Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double 2D_Split_Width_Value)
double 2D_Split_Width_Value = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double 2D_Split_Width_Value)
double 2D_Split_Width_Value = ScCciGetDoubleValue(int Value_Type)
Description Set or get the split width or height for 2D planar splitting mode "Vector Marking -
Fixed Split Size"
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueType2DSplitWidthValue 113
Set or get the split width.
scComSAMLightClientCtrlDoubleValueType2DSplitHeightValue 114
Set or get the split height.
Value Type: double Unit: [mm]*
The corresponding value of the split width/height.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Set the split width to 10.0:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType2DSplitWidthValue, 10.0);
C# Example: Get the split height:
double Split_Height_Value = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType2DSplitHeightValue
Table 296: Split Width / Height
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 226
10.4 Ring Splitting
The following parameter for ring splitting can be found and only be set in the ring splitting dialog. In addition
there is a Splitting Tab in SAMLight at Settings System Splitting, see Global Settings Splitting.
· Enable Z Tilt Compensation
· Center Whole Job on Current Axis Position
· Splitting Submode
· Global Splitting Checkboxes, see Splitting
o Avoid Unnecessary Splits in Overlap Area
o Cog Vectors in Overlap Area
o Do Not Recalculate Split Lines
o Top Level Entities as Split Parts
o Keep Mark In Progress Active
o Workpiece Movement
o Ungroup Text
· Group Width, see Splitting 1D Planar Splitting
· Repetitions Over 360°s, see Splitting Angular Splitting
· Tolerate Larger Split Jobs Than 360°, see Splitting Angular Splitting
· Tilt Compensation Parameters, see Global Settings Splitting
o Mark Angle
· Split Order, see Splitting
· Split Overlap, see Splitting
· Split Repetitions, see Splitting
· Z Motion Axis, see Global Settings Splitting
Enable Z Tilt Compensation Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Tilt_Compensation)
int Tilt_Compensation = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Tilt_Compensation)
int Tilt_Compensation = ScCciGetLongValue(int Value_Type)
Description Sets or gets the Ring Splitting Z tilt compensation
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeRingSplittingEnableZTiltCompensation 96
Tilt_Compensation Type: int Unit: none
· 0: Disables the z tilt compensation.
· 1: Enables the z tilt compensation.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable the ring splitting z tilt compensation:
int CCI_Return = [Link]((int)
[Link]
, 1);
C# Example: Get the ring splitting Z tilt compensation status:
int Z_Tilt_Compensation = [Link]((int)
[Link]
);
Table 297: Enable Z Tilt Compensation
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 227
Center On Axis Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parts)
int Parts = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parts)
int Parts = ScCciGetLongValue(int Value_Type)
Description Set or get the state of the checkbox Center Whole Job on Current Axis Position.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeRingCenterSplits 149
Start position of the marking is always the same while using this option. The first split
part will be always marked at the same position.
Checkbox Type: int Unit: none
· 0: Disable Checkbox.
· 1: Enable Checkbox.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable Center Whole Job on Current Axis Position:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get the state of the Center Whole Job on Current Axis Position checkbox:
int CenterOnAxis_Checkbox = [Link]( ( int )
[Link] );
Table 298: Center Job on Axis
Splitting Submode Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Set the submode of the drop down menu in the splitting settings dialog.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSetRingBmp 78
Bitmap Marking.
CCI_Return Type: int
CCI return number, see error list.
Notes
C# Example: Set Ring splitting submode to Bitmap Marking:
int CCI_Return = [Link]( ( int )
[Link] );
Table 299: Splitting Submode Ring Splitting
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 228
10.5 1D MOTF Splitting
· 1D MOTF Splitting Checkboxes
· 1D MOTF Splitting Double Values
· Splitting Submode
· Global Splitting Checkboxes, see Splitting
o Avoid Unnecessary Splits in Overlap Area
o Cog Vectors in Overlap Area
o Do Not Recalculate Split Lines
o Top Level Entities as Split Parts
o Keep Mark In Progress Active
o Ungroup Text
· Group Width, see Splitting 1D Planar Splitting
· Split Order, see Splitting
· Split Overlap, see Splitting
· Split Repetitions, see Splitting
1D MOTF Splitting Checkboxes Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Checkbox)
int Checkbox = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Checkbox)
int Checkbox = ScCciGetLongValue(int Value_Type)
Description Set or get the state of various 1D MOTF Splitting checkboxes.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueType1DMotfCenter 111
Checkbox Center resulting splits. Not available in Bitmap Marking.
scComSAMLightClientCtrlLongValueTypeSplitEntityBasedOnlyTopLevelSort 131
AccordingToStartBorder
Checkbox Sort according to start border. OnlyTopLevel has to be enabled before.
Only available in vector marking - entity based splitting.
scComSAMLightClientCtrlLongValueTypeSplitMotfEndlessRepeat 134
Checkbox Endless repeat.
Checkbox Type: int Unit: none
· 0: Disable Checkbox.
· 1: Enable Checkbox.
CCI_Return Type: int
CCI return number, see error list.
Notes · The availability depends on the 1D MOTF Splitting Submode.
C# Example: Enable endless repeat:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get the state of the endless repeat checkbox:
int Endless_Repeat_Checkbox = [Link]( ( int )
[Link] );
Table 300: 1D MOTF Splitting Checkboxes
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 229
1D MOTF Splitting Double Values Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various double values in the 1D MOTF settings dialog.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSpeedMotfEntityBasedSplitting 91
Set function: Use speed [mm/s]. Get function: Current possible speed [mm/s]. The
unit displayed in SAMLight is different: [m/min]. Only available in vector marking -
entity based splitting.
scComSAMLightClientCtrlDoubleValueTypeSplitMotfDistanceBetweenSplits 147
Gap between splits [mm]*. Endless repeat has to enabled.
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default length unit is mm, but the user can select a different unit.
C# Example: Set the gap between the splits to 16.7 mm:
int CCI_Return = [Link]( ( int )
[Link],
16.7 );
C# Example: Get the gap between splits:
double Gap_Between_Splits = [Link]( ( int )
[Link] );
Table 301: 1D MOTF Splitting Double Values
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 230
Splitting Submode Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Set the submode of the drop down menu in the splitting settings dialog.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSetMotfFixed 45
Vector marking - fixed split size.
scComSAMLightClientCtrlExecCommandSetMotfBmp 46
Bitmap Marking.
scComSAMLightClientCtrlExecCommandSetMotf 53
Vector marking - entity based splitting.
CCI_Return Type: int
CCI return number, see error list.
Notes
C# Example: Set 1D splitting submode to vector marking - fixed size:
int CCI_Return = [Link]( ( int )
[Link] );
Table 302: Splitting Submode 1D MOTF Splitting
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 231
10.6 Bitmap Rotary Splitting
· Bitmap Mode Parameters
· Enable Bitmap Rotary Splitting
Bitmap Mode Parameters Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeBmpContinuousTotalDiameter 141
Set total diameter value [mm*].
scComSAMLightClientCtrlDoubleValueTypeBmpContinuousAngle 142
Set the mark angle [deg].
Parameter Type: double Unit: depends on constant
The desired value.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example:
Table 303: Bitmap Mode Parameters
Enable Bitmap Rotary Splitting Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Bitmap_Splitting)
int Bitmap_Splitting = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Bitmap_Splitting)
int Bitmap_Splitting = ScCciGetLongValue(int Value_Type)
Description Enable the bitmap rotary splitting mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableBmpSplitting 93
Bitmap_Splitting Type: int Unit: none
· 0: Disable bitmap rotary splitting.
· 1: Enable bitmap rotary splitting.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get if bitmap rotary splitting is enabled:
int Bitmap_Splitting = [Link]((int)
[Link]);
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 232
Table 304: Enable Bitmap Rotary Splitting
10.7 Step and Repeat
· Enable Step and Repeat / Select Mode
· Step and Repeat Parameters
· Step and Repeat Planar Stepping
The command SplitKeepMarkFlag does not set the flag Keep Marking Active Output for Step and
Repeat.
Enable Step and Repeat / Select Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Step_Repeat = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Step_Repeat = ScCciGetLongValue(int Value_Type)
Description See below.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarMode 115
Set or get if planar mode for step and repeat is enabled.
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarModeSimulation 116
Set or get if simulate axis for planar mode is enabled.
scComSAMLightClientCtrlLongValueTypeEnableStepAndRepeat 121
Set or get if step and repeat is enabled.
Parameter Type: int Unit: none
· 0: Disable step and repeat.
· 1: Enable step and repeat.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set step and repeat to enabled:
int Step_Repeat_enable = [Link]((int)
[Link], 1);
Table 305: Enable Step and Repeat /Select Mode
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 233
Step and Repeat Parameters Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description See below.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeStepAndRepeatTotalSteps 114
Set or get the total number of steps.
scComSAMLightClientCtrlLongValueTypeStepAndRepeatFirstMoveAxis 117
Set or get planar axis in 1(X), please refer to motion settings dialog for the axis index
(zero based). None is not allowed to be set.
scComSAMLightClientCtrlLongValueTypeStepAndRepeatSecondMoveAxis 118
Set or get planar axis in 2(Y), please refer to motion settings dialog for the axis index
(zero based). Index of "none" is -1.
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarStepCountX 119
Set or get the step count for X.
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarStepCountY 120
Set or get the step count for Y.
Parameter Type: int Unit: none
The corresponding parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set total steps to 9:
int Total_Steps = [Link]((int)
[Link], 9);
Table 306: Step and Repeat Parameters
Step and Repeat Planar Stepping Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get the parameters for the planar mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStart 132
X
Set or get the start parameter of the first axis.
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStart 133
Y
Set or get the start parameter of the second axis.
© 2024 SCAPS GmbH
Client Control Interface Manual - Splitting 234
Step and Repeat Planar Stepping Set
Get
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStep 134
X
Set or get the step value of the first axis.
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStep 135
Y
Set or get the step value of the second axis.
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatSpeed 136
Set or get the motion speed.
Parameter Type: double Unit: none
The corresponding parameter.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get the start parameter for the first axis:
double Start_First_Axis = [Link]((int)
[Link]);
Table 307: Step and Repeat Planar Stepping
11 Option Optic3D
The following chapter deals with Optic3D. Global parameters can be found in the main chapter, whereby the
commands for 3D surfaces are explained in the following subchapter:
· Optic 3D Settings
Optic 3D Settings Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various Optic 3D parameter of the Z Correction (3D Ext) dialog.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeDistanceMirrorsMM 196608
Distance mirrors [mm].
scComSAMLightClientCtrlDoubleValueTypeRadiusSecondMirrorMM 196609
Distance 2nd mirror to focus [mm].
scComSAMLightClientCtrlDoubleValueTypeZNumControlPoints 196610
Number of Z-Corr lookup control points of the Z-Corr lookup table. Range: [2.0,
32.0].
scComSAMLightClientCtrlDoubleValueTypeZCorrFieldSize 196612
Fieldsize [mm] of the Z Correction (3D Ext) dialog.
scComSAMLightClientCtrlDoubleValueTypeLookupZMMStart 196864
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 235
Optic 3D Settings Set
Get
Focus distance [mm] of the Z-Corr lookup table. Range of mm values: [0.0, 5000.0].
Up to 32 Z-Corr lookup control points can be used. Range of LookupZMM IDs:
[196864, 196895].
scComSAMLightClientCtrlDoubleValueTypeLookupZDacStart 229632
Z - value [bit] of the Z-Corr lookup table. Range of bit values: [-32768.0, 32767.0]. Up
to 32 Z-Corr lookup control points can be used. Range of LookupZDac IDs: [229632,
229663].
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set mirror distance to 20.0 mm:
int CCI_Return = [Link]( ( int )
[Link], 20.0 );
C# Example: Get current mirror distance:
int Distance_Mirrors = [Link]( ( int )
[Link] );
C# Example: Set up a linear Z lookup table:
double[] Lookup_Z_MM = { 210.0, 270.0 };
double[] Lookup_Z_Dac = { -32768.0, 32767.0 };
int CCI_Return_00 = [Link]( ( int )
[Link], ( double )
Lookup_Z_MM.Length );
for (int i = 0; i < Lookup_Z_MM.Length; i++ )
{
int CCI_Return_01 = [Link]( ( int )
[Link] + i, Lookup_Z_MM[i]
);
int CCI_Return_02 = [Link]( ( int )
[Link] + i,
Lookup_Z_Dac[i] );
}
Table 308: Optic 3D Settings
11.1 3D Surfaces
· 3D Surface Enable
· 3D Surface Type
· Cylinder Properties
· Sphere Properties
· Tilted Surface Properties
· STL Projection Properties
· STL Path
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 236
3D Surface Enable Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Enable_3D_Surface)
int Enable_3D_Surface = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Enable_3D_Surface)
int Enable_3D_Surface = ScCciGetLongValue(int Value_Type)
Description Set or get the 3D Surface enable state.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnable3DSurface 87
Enable_3D_Surface Type: int Unit: none
· 0: 3D Surfaces disabled.
· 1: 3D Surfaces enabled.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Enable 3D Surface:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeEnable3DSurface, 1 );
C# Example: Get current 3D Surface enable state:
int Enable_3D_Surface = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeEnable3DSurface );
Table 309: 3D Surface Enable
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 237
3D Surface Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Mode_3D_Surface)
int Mode_3D_Surface = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Mode_3D_Surface)
int Mode_3D_Surface = ScCciGetLongValue(int Value_Type)
Description Set or get the 3D Surface mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueType3DSurfaceSetType 86
Mode_3D_Surface Type: int Unit: none
· 0: Cylinder (Cylinder properties)
· 1: STL projection (STL projection properties, STL path)
· 2: Tilted surface (Tilted surface properties)
· 3: Sphere (Sphere properties)
CCI_Return Type: int
CCI return number, see error list.
Notes · 3D Surface enable must be set.
C# Example: Set the 3D Surface mode to sphere:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType3DSurfaceSetType, 3 );
C# Example: Get current 3D Surface mode:
int Mode_3D_Surface = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType3DSurfaceSetType );
Table 310: 3D Surface Mode
Cylinder Properties Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various cylinder parameter.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 96
X position [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue2 97
Y position [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue3 98
Z offset [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue4 99
XY angle [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue5 100
Diameter / 2 [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue6 101
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 238
Cylinder Properties Set
Get
Line splitting length [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue7 102
Tube angle [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue8 103
Z tilt angle [deg].
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · 3D Surfaces type must be set to cylinder.
C# Example: Set cylinder X position to 0.0 mm:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1, 0.0 );
C# Example: Get current cylinder X position:
double Cylinder_X_Position = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 );
Table 311: Cylinder Properties
Sphere Properties Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various sphere parameter.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 96
X position [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue2 97
Y position [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue3 98
Z offset [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue4 99
Line splitting length [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue5 100
Sphere angle [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue6 101
Diameter [mm].
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 239
Sphere Properties Set
Get
Notes · 3D Surfaces type must be set to sphere.
C# Example: Set sphere X position to 0.0 mm:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1, 0.0 );
C# Example: Get current sphere X position
double Sphere_X_Position = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 );
Table 312: Sphere Properties
Tilted Surface Properties Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various Tilted surface parameter.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 96
X position [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue2 97
Y position [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue3 98
Z offset [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue4 99
XY angle [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue5 100
Z tilt angle [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue6 101
Width [mm]. Use '-1.0' for an infinite surface.
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue7 102
Heigth [mm]. Use '-1.0' for an infinite surface.
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · 3D Surfaces type must be set to tilted surface.
C# Example: Set tilted surface X position to 0.0 mm:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1, 0.0 );
C# Example: Get current tilted surface X position:
double Tilted_Surface_X_Position = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 );
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 240
Table 313: Tilted Surface Properties
STL Projection Properties Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description Set or get various STL projection parameter.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 96
Center in field: ('0.0' for disabled, '1.0' for enabled).
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue2 97
X offset [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue3 98
Y offset [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue4 99
Z offset [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue5 100
XY rotation [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue6 101
Line splitting length [mm].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue7 102
X scale.
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue8 103
Y scale.
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue9 104
Z scale.
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue10 105
XZ rotaion [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue11 106
YZ rotation [deg].
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue12 107
Set checkbox 'Rotate around STL Origin'.
· 0.0: Disable
· 1.0: Enable
Parameter Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes · 3D Surfaces type must be set to STL projection.
C# Example: Enable center in field:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1, 1.0 );
C# Example: Get current center in field enable state:
© 2024 SCAPS GmbH
Client Control Interface Manual - Option Optic3D 241
STL Projection Properties Set
Get
double Enable_Center_In_Field = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 );
Table 314: STL Projection Properties
STL Path Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string STL_File_Path)
int CCI_Return = ScGetStringValue(int Value_Type, ref string STL_File_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string STL_File_Path)
string STL_File_Path = ScCciGetStringValue(int Value_Type)
Description Set or get the STL file path.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeLoadStl 32
STL_File_Path Type: string Unit: none
Path to STL file.
CCI_Return Type: int
CCI return number, see error list.
Notes · 3D Surfaces type must be set to STL projection.
C# Example: Load a STL file:
int CCI_Return = [Link]( ( int )
[Link], @"F:\3d_surface.stl" );
C# Example: Get the STL file path:
string STL_File_Path = "";
int CCI_Return = [Link]( ( int )
[Link], ref STL_File_Path );
Table 315: STL Path
12 Option SAM3D
The following commands can be used for SAM2D and SAM3D. Please find the detailed description linked in
the following table. Specific SAM3D information can be found in the corresponding notes line of each
command.
· Double User Value
· Entity Name
· Entity Outline
· Entity Type
· Exec Command
· Export File
· Import File
· Inputs and Outputs
· Job Execution Delay
· LastMessageInput
· Load Job
· Mark Entity by Name
· Relevant Times (Mark Times)
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 242
· SAMLight ShutDown()
· SAMLight Status
· SAMLight Window
· SaveView2DBitmapDPI
· SaveView2DVariableSize screenshot size
· Scale Entity
· SCAPS Dongle ID
· String User Value
· Translate Entity
· Working Area
12.1 Specific Commands
· Change View3D
· Check 2D/3D
· Entity Outline SAM3D
· Hatch Layer Solid Parameters
· Hatch Layer Solid Global Parameters
· Hatch Var Angle
· Import scl as Line Array
· Layer
· Layer Count
· Outline 3D
· Pause Marking
· Prepare Layer
· Rotate Entity (3D)
· Screenshot of current 2D layer
· Screenshot of current View3D
· Slice
· Slice from text file
Change View3D Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Set View3D to Standard 3D View.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandView3DViewIso 26
CCI_Return Type: int
CCI return number, see error list.
Notes · The current View3D can also be changed via FitViewToAllEntities and
FitViewToSelectedEntities.
C# Example: Set View3D to standard 3DView:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlExecCommandConstants.scComSAMLightClientCtrlExecCommandView3DViewIso);
Table 316: Change View3D
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 243
Check 2D/3D Set
Get
DLL Function int SAM3D_Mode = ScGetLongValue(int Value_Type)
ASCII Function int SAM3D_Mode = ScCciGetLongValue(int Value_Type)
Description Check if SAMLight is running in SAM3D mode.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueType3D 71
SAM3D_Mode Type: int Unit: none
· 0: SAMLight runs in 2D Mode.
· 1: SAMLight runs in SAM3D mode.
Notes -
C# Example: Check if SAMLight is running in SAM3D mode:
int SAM3D_Mode = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType3D );
Table 317: Check 2D/3D
Entity Outline SAM3D Set
Get
DLL Function double Value = ScGetEntityOutline(string Entity_Name, int Index)
ASCII Function double Value = ScCciGetEntityOutline(string Entity_Name, int Index)
Description Returns the outline of the current slice of the ScLayerSolid specified by Entity_Name.
The following constants can be set for Index to specify which outline value has to be
returned.
Entity_Name Type: string Unit: none
If Entity_Name is an empty string, the function returns the job outline.
Index Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlOutlineSliceIndexMinX 6
The smallest x coordinate.
scComSAMLightClientCtrlOutlineSliceIndexMinY 7
The smallest y coordinate.
scComSAMLightClientCtrlOutlineSliceIndexMinZ 8
The smallest z coordinate.
scComSAMLightClientCtrlOutlineSliceIndexMaxX 9
The biggest x coordinate.
scComSAMLightClientCtrlOutlineSliceIndexMaxY 10
The biggest y coordinate.
scComSAMLightClientCtrlOutlineSliceIndexMaxZ 11
The biggest z coordinate.
Value Type: double Unit: [mm]*
The corresponding value.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Get the biggest x coordinate of the whole job:
double Max_X = [Link]( "", 9 );
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 244
Table 318: Entity Outline SAM3D
Hatch Layer Solid Parameters Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double Parameter)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double Parameter)
double Parameter = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get various values for the hatch solid layer.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidUpDownSkinBeamComp 101
Set the beam compensation value [mm].
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidMinUpSkinArea 102
Set the minimum upskin area [mm²].
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidMinDownSkinArea 103
Set the minimum downskin area [mm²].
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidReduceUp 104
Set the reduce up [mm].
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidReduceDown 105
Set the reduce down [mm].
Parameter Type: double Unit: depends on constant
Set the required value.
CCI_Return Type: int
CCI return number, see error list.
Notes · Styles have to be enabled first.
C# Example: Set the beam compensation value to 55.55:
int CCI_Return = [Link]( "Any_Entity", ( int )
[Link],
55.55 );
C# Example: Get the beam compensation value:
double comp = 0;
int CCI_Return = [Link]("", (int)
[Link], ref
comp);
Table 319: Hatch Layer Solid Parameters
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 245
Hatch Layer Solid Global Parameters Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Parameter)
int Parameter = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdHatchLayerSolidNumLoops 136
Set the num loops value.
scComSAMLightClientCtrlLongDataIdHatchLayerSolidPointOffset 137
Set the point offset value.
scComSAMLightClientCtrlLongDataIdHatchLayerSolidBeamCompOutToIn 139
Set the marking order for beam compensated lines.
Parameter Type: int Unit: none
Set the required value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set the num loops value to 55:
int CCI_Return = [Link]("", (int)
[Link], 55);
C# Example: Get the num loops value:
int Num_Loops = [Link]( "Any_Entity", ( int )
[Link] );
Table 320: Hatch Layer Solid Global Parameters
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 246
Hatch Var Angle Set
Get
DLL Function int CCI_Return = ScSetEntityDoubleData(string Entity_Name, int Data_ID, double
Hatch_Var_Angle)
int CCI_Return = ScGetEntityDoubleData(string Entity_Name, int Data_ID, ref double
Hatch_Var_Angle)
ASCII Function int CCI_Return = ScCciSetEntityDoubleData(string Entity_Name, int Data_ID, double
Hatch_Var_Angle)
double Hatch_Var_Angle = ScCciGetEntityDoubleData(string Entity_Name, int Data_ID)
Description Set or get variable hatch angles of an entity of the selected hatch pair.
Entity_Name Type: string Unit: none
Specify the required entity based on the name.
Data_ID Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlDoubleDataIdHatchVarAngle1 95
Variable hatch angle 1
scComSAMLightClientCtrlDoubleDataIdHatchVarAngle2 96
Variable hatch angle 2
Hatch_Var_Angle Type: int Unit: [deg]
Value of the variable hatch angle
CCI_Return Type: int
CCI return number, see error list.
Notes · HatchPair has to be set first.
C# Example: Set variable hatch angle 1 to 20.0:
int CCI_Return = [Link]( "Sphere", ( int )
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchVarAngle1, 20.0 );
C# Example: Get current variable hatch angle 1:
double HatchVarAngle1 = 0.0;
int CCI_Return = [Link]( "Sphere", ( int )
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdHatchVarAngle1, ref HatchVarAngle1 );
Table 321: Hatch Var Angle
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 247
Import .slc as Line Array Set
Get
DLL Function int SAM3D_Mode = ScGetLongValue(int Value_Type)
ASCII Function int SAM3D_Mode = ScCciGetLongValue(int Value_Type)
Description Import all lines of an .slc as Line Array.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueType3DImportSlcAsLineArrays 155
Parameter Type: int Unit: none
· 0: Imports closed polylines as is.
· 1: Imports closed polylines of an .slc as Line Array.
Notes
C# Example: Imports closed polylines of an .slc as Line Array:
int slc_import = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType3DImportSlcAsLineArrays, 1
);
Table 322: Import .slc as Line Array
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 248
Layer Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Set or get different layer numbers.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeGetTotalSlices 44
Total number of layers in job. There is no set function.
scComSAMLightClientCtrlLongValueTypeSliceFrom 45
First layer to be marked
scComSAMLightClientCtrlLongValueTypeSliceTo 46
Last layer to be marked
scComSAMLightClientCtrlLongValueTypeCurrentSliceNum 47
Current layer
Parameter Type: int Unit: none
The corresponding value.
CCI_Return Type: int
CCI return number, see error list.
Notes When defining limits for the layers to be marked, use Entity Name
"@@@[Link]@@@". See also Mark Entity by Name.
C# Example: Set current layer to 3:
int CCI_Return = [Link]( ( int )
[Link], 3 );
C# Example: Get current layer:
int Current_Layer = [Link]( ( int )
[Link] );
Table 323: Layer
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 249
Layer Count Set
Get
DLL Function int Layer_Count = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int Layer_Count = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description Get the total number of layers from the LayerSolid.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Data_ID Type: int
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdEntityLayerCount 111
Layer_Count Type: int Unit: none
Layer counter.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get layer counter:
int Layer_Count = [Link]("", (int)
[Link]);
Table 324: Layer Count
Outline 3D Set
Get
DLL Function int CCI_Return = ScSetEntityOutline3D(string Entity_Name, double Min_X, double Min_Y, double
Max_X, double Max_Y, double Min_Z, double Max_Z, int Flag)
int CCI_Return = ScGetEntityOutline3D(string Entity_Name, ref double Min_X, ref double Min_Y,
ref double Max_X, ref double Max_Y, ref double Max_Z, ref double Max_Z, int Flag)
ASCII Function int CCI_Return = ScCciSetEntityOutline3D(string Entity_Name, double Min_X, double Min_Y,
double Max_X, double Max_Y, double Min_Z, double Max_Z, int Flag)
double Min_X double Min_Y double Max_X double Max_Y double Min_Z double Max_Z =
ScCciGetEntityOutline3D(string Entity_Name)
Description Set or get the 3D outlines of all entities named Entity_Name.
Entity_Name Type: string Unit: none
If Entity_Name is an empty string, the function returns the outline of the whole job.
Min_X Type: double Unit: [mm]*
The smallest x coordinate.
Min_Y Type: double Unit: [mm]*
The smallest y coordinate.
Max_X Type: double Unit: [mm]*
The biggest x coordinate.
Max_Y Type: double Unit: [mm]*
The biggest y coordinate.
Min_Z Type: double Unit: [mm]*
The smallest z coordinate.
Max_Z Type: double Unit: [mm]*
The biggest z coordinate.
Flag Type: int Flag:
Location: ScComSAMLightClientCtrlFlags
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 250
Outline 3D Set
Get
scComSAMLightClientCtrlSetOutlineNoMove 0x1
Left down point will stay at current position and the rest is scaled.
scComSAMLightClientCtrlSetOutlineNoSize 0x2
All values should be the same value to define the new center
CCI_Return Type: int
CCI return number, see error list.
Note · The default unit is mm, but the user can select a different unit.
· ScSetEntityOutline3D does not work for ScLayerSolid entities.
· When 0 is used as Flag, the object will be scaled and positioned like defined.
· For this command the flags cannot be combined.
C# Example: Set new 3D outline for the ScTriaMesh3D entity "Sphere":
int CCI_Return = cci.ScSetEntityOutline3D( "Sphere", 0.0, 0.0, 10.0, 10.0, 0.0, 10.0, 0 );
C# Example: Get current 3D outline of entity "Sphere":
double Min_X, Min_Y, Max_X, Max_Y, Min_Z, Max_Z;
Min_X = Min_Y = Max_X = Max_Y = Min_Z = Max_Z = 0.0;
int CCI_Return = cci.ScGetEntityOutline3D( "Sphere", ref Min_X, ref Min_Y, ref Max_X, ref Max_Y, ref
Min_Z, ref Max_Z );
Table 325: Outline 3D
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 251
Pause Marking Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Pause)
int Pause = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Pause)
int Pause = ScCciGetLongValue(int Value_Type)
Description Set function: Continue/Pause current job execution.
Get function: Get current pause state.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypePauseBuild 98
Pause Type: int Unit: none
· Set function:
o 0: Continue marking.
o 1: Pause marking.
· Get function:
o 0: Marking is not paused.
o 1: Marking will be paused. Current layer will be finished before.
o 2: Marking is paused.
CCI_Return Type: int
CCI return number, see error list.
Notes Can only be used in SAM3D.
C# Example: Pause current job execution:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get current pause state:
int Pause = [Link]( ( int )
[Link] );
Table 326: Pause Marking
Prepare Layer Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Layer)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Layer)
Description Prepare the selected layer for marking.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypePrepareLayer 67
Layer Type: int Unit: none
Set the layer number.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Prepare layer 4:
int CCI_Return = [Link]((int)
[Link], 4);
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 252
Table 327: Prepare layer
Rotate Entity 3D Set
Get
DLL Function int CCI_Return = ScRotateEntity3D(string Entity_Name, double P_X, double P_Y, double P_Z,
double V_X, double V_Y, double V_Z, double Angle)
ASCII Function int CCI_Return = ScCciRotateEntity3D(string Entity_Name, double P_X, double P_Y, double P_Z,
double V_X, double V_Y, double V_Z, double Angle)
Description Rotates Entity_Name around the axis of rotation by the given Angle.
The axis of rotation is defined by two points:
· Point P (P_X, P_Y, P_Z)
· Point Q (P_X+V_X, P_Y+V_Y, P_Z+V_Z).
Entity_Name Type: string Unit: none
Specify the entity which should be rotated.
P_X Type: double Unit: [mm]*
X position of the start point of the rotation axis.
P_Y Type: double Unit: [mm]*
Y position of the start point of the rotation axis.
P_Z Type: double Unit: [mm]*
Z position of the start point of the rotation axis.
V_X Type: double Unit: [mm]*
X position of the end point of the rotation axis.
V_Y Type: double Unit: [mm]*
Y position of the end point of the rotation axis.
V_Z Type: double Unit: [mm]*
Z position of the end point of the rotation axis.
Angle Type: double Unit: [deg]
Rotation angle, counterclockwise around the rotation vector for positive angles.
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Rotate entity Star in the XY plane around the center (X = 4, Y = 5) by 30 degrees:
int CCI_Return = cci.ScRotateEntity3D( "Star", 4.0, 5.0, 0.0, 0.0, 0.0, 1.0, 30.0 );
Table 328: Rotate Entity 3D
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 253
Screenshot of current 2D layer Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Screenshot_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Screenshot_Path)
Description Take a screenshot of current 2D layer.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeSaveLayerAdjustableDPI 24
Screenshot_Path Type: string Unit: none
Defines the path, where the screenshot is saved to. The path must include the file
extension, which must be ".bmp".
CCI_Return Type: int
CCI return number, see error list.
Notes · The pixel density of the screenshot must be defined with SaveView2DBitmapDPI.
· The screenshot contains a defined section of the View3D, defined by
SaveView2DBitmapX, SaveView2DBitmapY, SaveView2DBitmapXW and
SaveView2DBitmapYW.
· The line drawing width can be changed with SaveView2DBitmapMode.
· The screenshot is black and white.
· This CCI command even works if SAMLight is hidden.
C# Example: Make a screenshot of current 2D layer in SAM3D:
int CCI_Return = [Link]( ( int )
[Link], @"F:
\[Link]" );
Table 329: Screenshot of current 2D layer
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 254
Screenshot of current View3D Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Screenshot_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Screenshot_Path)
Description Take a screenshot of the current View3D.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeSaveView3DVariableSize 25
The width of the screenshot is defined by SaveView2DBitmapVariableSize.
The larger axis (usually x) is set to a fixed value, the aspect ratio is kept.
scComSAMLightClientCtrlStringValueTypeSaveView3DFull 26
Size of the screenshot is 1:1 from the current View3D.
Screenshot_Path Type: string Unit: none
Define the required file name.
CCI_Return Type: int
CCI return number, see error list.
Notes · The screenshot contains the section of the current View3D.
· The screenshot is colored.
· This CCI command only works if SAMLight is visible and not hidden by something
else.
· The current View3D can be changed via FitViewToAllEntities,
FitViewToSelectedEntities and View3DViewIso.
C# Example: Make a 1:1 screenshot of current View3D:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView3DFull, @"F:
\screenshot_A.bmp" );
Table 330: Screenshot of current View3D
Slice Set
Get
DLL Function int CCI_Return = ScSlice(string Entity_Name, string Layer_Solid_Name, double Layer_Spacing,
int Only_Selected, int Slice_Reverse )
ASCII Function -
Description Slices a ScTriaMesh3D entity into a ScLayerSolid entity.
Entity_Name Type: string Unit: none
Entity name of the ScTriaMesh3D that is being sliced. Use "" for all ScTriaMesh3D
entities in job.
Layer_Solid_Name Type: string Unit: none
Entity name of the generated ScLayerSolid entity.
Layer_Spacing Type: double Unit: [mm]*
Layer spacing (aka Constant or Slice Thickness)
Only_Selected Type: int Unit: none
· 0: All ScTriaMesh3D entities named Entity_Name are being sliced.
· 1: All ScTriaMesh3D selected entities which are named Entity_Name are being
sliced.
Slice_Reverse Type: int Unit: none
· 0: The order of the sliced layers is from bottom to top (additive manufacturing).
© 2024 SCAPS GmbH
Client Control Interface Manual - Option SAM3D 255
Slice Set
Get
· 1: The order of the sliced layers is from top to bottom (subtractive manufacturing).
CCI_Return Type: int
CCI return number, see error list.
Notes · The default unit is mm, but the user can select a different unit.
C# Example: Slices a ScTriaMesh3D entity into a ScLayerSolid entity:
int CCI_Return = [Link]( "Sphere", "Layers", 0.05, 0, 0 );
Table 331: Slice
Slice from text file Set
Get
DLL Function int CCI_Return = ScSliceFromTxt(string File_Path, string Entity_Name, string Layer_Solid_Name,
int Only_Selected)
ASCII Function -
Description Slices a ScTriaMesh3D entity into a ScLayerSolid entity according to a text file
containing the slice information.
File_Path Type: string Unit: none
Path to the text file containing the slice information. The path must include the file
extension ".txt". The specification of the slice parameter in the text file can be found
here.
Entity_Name Type: string Unit: none
Entity name of the ScTriaMesh3D that is being sliced. Use "" for all ScTriaMesh3D
entities in job.
Layer_Solid_Name Type: string Unit: none
Entity name of the generated ScLayerSolid entity.
Only_Selected Type: int Unit: none
· 0: All ScTriaMesh3D entities named Entity_Name are being sliced.
· 1: All ScTriaMesh3D selected entities which are named Entity_Name are being
sliced.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Slice from text file:
int CCI_Return = [Link]( @"F:\slice_info.txt", "Spehre", "Layers", 0 );
Table 332: Slice from text file
13 Other
13.1 Background Camera Image
· Background Image Enable
· Background Image Source
· Calibration Background Points
· Camera Count
· Camera Name
· Camera Frames per Second
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 256
· Crop Image to Working Area
· Crop Source
· Entity Transparency
· From File Image Path
· From File Update Enable
· From File Update Period
Background Image Enable Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int BG_Img_Enable)
int BG_Img_Enable = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int BG_Img_Enable)
int BG_Img_Enable = ScCciGetLongValue(int Value_Type)
Description Set or get the background image enable state (checkbox in the background camera
toolbar).
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableBackgroundImage 122
BG_Img_Enable Type: int Unit: none
· 0: Disable background image.
· 1: Enable background image.
CCI_Return Type: int
CCI error number, see error list.
Notes · Direct3D must be enabled.
C# Example: Disable background image:
int CCI_Return = [Link]( ( int )
[Link], 0 );
C# Example: Get current background image enable state:
int BG_Img_Enable = [Link]( ( int )
[Link] );
Table 333: Background Image Enable
Background Image Source Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Image_Source)
int Image_Source = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Image_Source)
int Image_Source = ScCciGetLongValue(int Value_Type)
Description Set or get the background image source.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeBackgroundImage 140
Image_Source Type: int Unit: none
· 0: Disable background image.
· 1: Image from file.
· 2: Image from camera.
CCI_Return Type: int
CCI error number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 257
Background Image Source Set
Get
Notes -
C# Example: Set background image from camera:
int CCI_Return = [Link]( ( int )
[Link], 2 );
C# Example: Get background image status:
int Image_Source = [Link]( ( int )
[Link] );
Table 334: Background Image Source
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 258
Calibration Background Points Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Set or get Calibration Background Points. Those are defined via the DoublePara1-8.
· Top Left X: DoublePara1
· Top Left Y: DoublePara2
· Top Right X: DoublePara3
· Top Right Y: DoublePara4
· Bottom Left X: DoublePara5
· Bottom Left Y: DoublePara6
· Bottom Right X: DoublePara7
· Bottom Right Y: DoublePara8
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSetBackgroundPoints 71
Set the predefined background points. The calibration background points have to be
set via DoublePara1-8 in advance.
scComSAMLightClientCtrlExecCommandGetBackgroundPoints 73
Get the current calibration background points. After this command the DoublePara1-
8 are filled and have to be get to read out the values.
CCI_Return Type: int
CCI return number, see error list.
Notes · For setting it is necessary first to enter the double para values and then the exec
command.
· UpdateViewNow is required to directly see the changes.
· For getting the exec command is used first.
C# Example: Set calibration background points top left (-50.0, 50.0), top right (50.0, 50.0), bottom left (-
50.0, -50.0) and bottom right (-50.0, 50.0):
int CCI_Return_01 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, -50.0 );
int CCI_Return_02 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 50.0 );
int CCI_Return_03 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3, 50.0 );
int CCI_Return_04 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara4, 50.0 );
int CCI_Return_05 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara5, -50.0 );
int CCI_Return_06 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara6, -50.0 );
int CCI_Return_07 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara7, 50.0 );
int CCI_Return_08 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara8, -50.0 );
int CCI_Return_09 = [Link]( ( int )
[Link] );
int CCI_Return_10 = [Link]( ( int )
[Link] );
C# Example: Get calibration background points:
int CCI_Return = [Link]( ( int )
[Link] );
double Top_Left_X = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1 );
double Top_Left_Y = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2 );
double Top_Right_X = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3 );
double Top_Right_Y = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara4 ); © 2024 SCAPS GmbH
double Bottom_Left_X = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara5 );
double Bottom_Left_Y = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara6 );
double Bottom_Right_X = [Link]( ( int )
Client Control Interface Manual - Other 259
Table 335: Calibration Background Points
Camera Count Set
Get
DLL Function, int Camera_Count = ScGetLongValue(int Value_Type)
ASCII Function int Camera_Count = ScCciGetLongValue(int Value_Type)
Description Get the count of cameras connected to the PC.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeGetCameraCount 138
Camera_Count Type: int Unit: none
Get the camera count.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Get Camera Count:
int Camera_Count = [Link]( ( int )
[Link] );
Table 336: Camera Count
Camera Name Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Camera_Name)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Camera_Name)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Camera_Name)
string Camera_Name = ScCciGetStringValue(int Value_Type)
Description Get current camera name, get list of all camera sources or set camera source by
name.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeCurrentCameraName 39
Get current camera name.
scComSAMLightClientCtrlStringValueTypeCameraName 40000 -
40099
Get list of all camera sources or set camera source by name.
Camera_Name Type: string Unit: none
The name of the camera.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Get current camera name:
string Current_Camera_Name = "";
int CCI_Return = [Link]( ( int )
[Link], ref
Current_Camera_Name );
C# Example: Get list of all camera sources:
List<string> Camera_Name_List = new List<string>();
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 260
Camera Name Set
Get
int Camera_Count = [Link]( ( int )
[Link] );
for( int i = 0; i < Camera_Count; i++ )
{
string Camera_Name = "";
int CCI_Return = [Link]( ( int )
[Link] + i, ref Camera_Name );
Camera_Name_List.Add( Camera_Name );
}
C# Example: Set camera source to "DSHOW: OBS Virtual Camera":
int CCI_Return = [Link]( ( int )
[Link], "DSHOW: OBS Virtual
Camera" );
Table 337: Camera Name
Camera Frames per Second Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Max_Frames)
double Max_Frames = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Max_Frames)
double Max_Frames = ScCciGetDoubleValue(int Value_Type)
Description Set or get the maximal frames per second for the background camera.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeBackgroundImageWebcam 153
MaxFramesPerSecond
Max_Frames Type: double Unit: [Hz]
Frames per second value.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set maximal frames per second to 15.0:
int CCI_Return = [Link]( ( int )
[Link]
econd, 15.0 );
C# Example: Get maximum frames per second:
int Max_Frames = [Link]( ( int )
[Link]
econd );
Table 338: Camera Frames per Second
Crop Image to Working Area Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Crop_Image_WA)
int Crop_Image_WA = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Crop_Image_WA)
int Crop_Image_WA = ScCciGetLongValue(int Value_Type)
Description Set or get the Crop Image to Working Area state.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 261
Crop Image to Working Area Set
Get
scComSAMLightClientCtrlLongValueTypeBackgroundImageCrop 142
Crop_Image_WA Type: int Unit: none
· 0: Disable Crop Image to Working Area.
· 1: Enable Crop Image to Working Area.
CCI_Return Type: int
CCI error number, see error list.
Notes · UpdateViewNow is required to directly see the changes.
C# Example: Disable Crop Image to Working Area:
int CCI_Return_01 = [Link]( ( int )
[Link], 0 );
int CCI_Return_02 = [Link]( ( int )
[Link] );
C# Example: Get current Crop Image to Working Area state:
int Crop_Image_WA = [Link]( ( int )
[Link] );
Table 339: Crop Image to Working Area
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 262
Crop Source Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Set or get crop source values in %. Those are defined via the DoublePara1-4.
· Top: DoublePara1
· Left: DoublePara2
· Bottom: DoublePara3
· Right: DoublePara4
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandSetCrop 70
Set the predefined crop values. The crop values have to be set via DoublePara1-4 in
advance.
scComSAMLightClientCtrlExecCommandGetCrop 72
Get the current crop values. After this command the DoublePara1-4 are filled and
have to be get to read out the values.
CCI_Return Type: int
CCI return number, see error list.
Notes · For setting it is necessary first to enter the double para values and then the exec
command.
· UpdateViewNow is required to directly see the changes.
· For getting the exec command is used first.
C# Example: Set crop source to top 10.0%, left 20.0%, bottom 30.0% and right 40.0%:
int CCI_Return_01 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 10.0 );
int CCI_Return_02 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 20.0 );
int CCI_Return_03 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3, 30.0 );
int CCI_Return_04 = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara4, 40.0 );
int CCI_Return_05 = [Link]( ( int )
[Link] );
int CCI_Return_06 = [Link]( ( int )
[Link] );
C# Example: Get crop source values:
int CCI_Return = [Link]( ( int )
[Link] );
double Crop_Top = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1 );
double Crop_Left = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2 );
double Crop_Bottom = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3 );
double Crop_Right = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara4 );
Table 340: Crop Source
Entity Transparency Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Entity_Transparency)
int Entity_Transparency = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Entity_Transparency)
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 263
Entity Transparency Set
Get
int Entity_Transparency = ScCciGetLongValue(int Value_Type)
Description Set or get the Alpha Entity Transparency.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEntityTransparency 144
Entity_Transparenc Type: int Unit: %
y Entity Transparency in range [0, 80] %.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Set Entity Transparency to 30:
int CCI_Return = [Link]( ( int )
[Link], 30 );
C# Example: Get Entity Transparency:
int Entity_Transparency = [Link]( ( int )
[Link] );
Table 341: Entity Transparency
From File Image Path Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Image_Path)
int CCI_Return = ScGetStringValue(int Value_Type, ref string Image_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Image_Path)
string Image_Path = ScCciGetStringValue(int Value_Type)
Description Set background image path.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeBackgroundImagePath 27
Image_Path Type: string Unit: none
Path to the source image.
CCI_Return Type: int
CCI error number, see error list.
Notes · This command also sets the image source to image from file.
C# Example: Set background image path to "F:\[Link]":
int CCI_Return = [Link]( ( int )
[Link], @"F:
\[Link]" );
C# Example: Get background image path:
string Image_Path = "";
int CCI_Return = [Link]( ( int )
[Link], ref
Image_Path );
Table 342: From File Image Path
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 264
From File Update Enable Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Image_Update)
int Image_Update = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Image_Update)
int Image_Update = ScCciGetLongValue(int Value_Type)
Description Set or get the background image from file update enable state.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeImageFromFileUpdate 141
Image_Update Type: int Unit: none
· 0: Disable Update.
· 1: Enable Update.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Enable background image from file update:
int CCI_Return = [Link]( ( int )
[Link], 1 );
C# Example: Get background image from file update status:
int Image_Update = [Link]( ( int )
[Link] );
Table 343: From File Update Enable
From File Update Period Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Update_Period)
int Update_Period = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Update_Period)
int Update_Period = ScCciGetLongValue(int Value_Type)
Description Set or get the update period for file integration as background image in ms.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeBackgroundImageFromFileUpdateInMs 139
Update_Period Type: int Unit: [ms]
Update rate in ms.
CCI_Return Type: int
CCI error number, see error list.
Notes · UpdateViewNow is required to directly see the changes.
C# Example: Set update period to 1000 ms:
int CCI_Return = [Link]( ( int )
[Link],
1000 );
C# Example: Get current update period:
int Update_Period = [Link]( ( int )
[Link]);
Table 344: From File Update Period
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 265
13.2 Disable Message Beep
Disable Message Beep Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Beep_State)
int Beep_State = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Beep_State)
int Beep_State = ScCciGetLongValue(int Value_Type)
Description Disable the message beep in SAMLight.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDisableMessageBeep 143
Beep_State Type: int Unit: none
· 0: Enable message beep.
· 1: Disable message beep.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Disable message beep:
int CCI_Return = [Link]( ( int )
[Link], 1);
C# Example: Get message beep state:
int State = [Link]((int)
[Link]);
Table 345: Disable Message Beep
13.3 External Stop
· Enable external stop
Enable external stop Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Ext_Stop)
int Ext_Stop = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Ext_Stop)
int Ext_Stop = ScCciGetLongValue(int Value_Type)
Description Set or get the state of the external stop.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeEnableExternStop 136
Ext_Stop Type: int Unit: none
· 0: Disable external stop.
· 1: Enable external stop.
CCI_Return Type: int
CCI error number, see error list.
Notes · Do not set during marking operation.
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 266
Enable external stop Set
Get
C# Example: Disable external stop:
int CCI_Return = [Link]((int)
[Link], 0);
C# Example: Get current external stop enable state:
int State = [Link]((int)
[Link];
Table 346: Enable external stop
13.4 Hardware Status
· Hardware State
· Last Message Input
· License
· SCAPS Dongle ID
· USC Firmware Status
· USC Server Status
Hardware State Set
Get
DLL Function int State = ScGetLongValue(int Value_Type)
ASCII Function int State = ScCciGetLongValue(int Value_Type)
Description Get the hardware state of the current selected head.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeHardwareState 41
State Type: int Unit: none
· 0: Error.
· 2: OK.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get hardware state
int State = [Link]((int)
[Link]);
Table 347: Hardware State
Last Message Input Set
Get
DLL Function int CCI_Return = ScGetStringValue(int Value_Type, ref string Last_Message_Input)
ASCII Function string Last_Message_Input = ScCciGetStringValue(int Value_Type)
Description Get last message input that is still active.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeGetLastErrorMessageInput 14
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 267
Last Message Input Set
Get
Error message input.
scComSAMLightClientCtrlStringValueTypeGetLastInfoMessageInput 15
Info message input.
Last_Message_Inpu Type: string Unit: none
t The corresponding last message input.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get last message input:
string Last_Message_Input = "";
int CCI_Return = [Link]( ( int )
[Link], ref
Last_Message_Input );
Table 348: Last Message Input
License Set
Get
DLL Function int CCI_Return = ScGetStringValue(int Value_Type, ref string License)
ASCII Function string License = ScCciGetStringValue(int Value_Type)
Description Get the active license from USB dongle and USC card.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeLicenseAsString 40
License Type: string Unit: none
The active license from USB dongle and USC card. Example string:
"USB license: None, USC license: SAMLight + MOTF"
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Get current license information:
string License = "";
int CCI_Return = [Link]( ( int )
[Link], ref License );
Table 349: License
SCAPS Dongle ID Set
Get
DLL Function int Dongle_ID = ScGetLongValue(int Value_Type)
ASCII Function int Dongle_ID = ScCciGetLongValue(int Value_Type)
Description Get customer or dongle ID.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDongleUserNumber 39
Customer ID (aka user number or user ID)
scComSAMLightClientCtrlLongValueTypeDongleSystemNumber 40
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 268
SCAPS Dongle ID Set
Get
Dongle ID (aka system number, system ID or card ID)
Dongle_ID Type: int Unit: none
Get the required dongle ID
CCI_Return Type: int
CCI return number, see error list.
Notes · If a combination of USB-Dongle and Card is used, the USB-Dongle is shown.
C# Example: Get current SCAPS dongle ID:
int Dongle_ID = [Link]( ( int )
[Link] );
Table 350: SCAPS Dongle ID
USC Firmware Status Set
Get
DLL Function int Firmware_Status = ScGetLongValue(int Value_Type)
ASCII Function int Firmware_Status = ScCciGetLongValue(int Value_Type)
Description Get the status of the USC firmware.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeFirmwareStatus 123
Firmware_Status Type: int Unit: none
· < 0: Firmware on the USC card is newer than the software version.
· = 0: Firmware on the USC card is up to date.
· > 0: A newer firmware is available.
CCI Return Type: int
CCI return number, see error list.
Notes · This command is only for USC-2 and USC-3 cards.
C# Example: Get current USC firmware status:
int Firmware_Status = [Link]( ( int )
[Link] );
Table 351: USC Firmware Status
USC Server Status Set
Get
DLL Function int Server_Status = ScGetLongValue(int Value_Type)
ASCII Function int Server_Status = ScCciGetLongValue(int Value_Type)
Description Get the status of the usc server.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeServerStatus 67
Server_Status Type: int Flag:
Location: None
Device Connected 0x1
Device OK 0x2
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 269
USC Server Status Set
Get
Device Missing 0x8
Device USC-1 0x10000
Device USC-2 0x20000
Device USC-3 0x80000
CCI_Return Type: int
CCI return number, see error list.
Notes · The flags can be combined by using logical operators. Please refer to the chapter
How to work with Flags for more information.
· There are further undocumented flags for internal use only.
C# Example: Get current USC server status:
int Server_Status = [Link]( ( int )
[Link] );
Table 352: USC Server Status
13.5 Parameter Constants
· Double Para
· String Para
Double Para Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
double Parameter = ScCciGetDoubleValue(int Value_Type)
Description All Double Para are dummy values. You define with those dummies your value and
use another command to set the value to the desired parameter. For all parameter,
which use Double Para the desired Double Para number is given in the respective
command description or note.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeDoublePara1 66
scComSAMLightClientCtrlDoubleValueTypeDoublePara2 67
scComSAMLightClientCtrlDoubleValueTypeDoublePara3 95
scComSAMLightClientCtrlDoubleValueTypeDoublePara4 148
scComSAMLightClientCtrlDoubleValueTypeDoublePara5 149
scComSAMLightClientCtrlDoubleValueTypeDoublePara6 150
scComSAMLightClientCtrlDoubleValueTypeDoublePara7 151
scComSAMLightClientCtrlDoubleValueTypeDoublePara8 152
Parameter Type: double Unit: none
Set the desired parameter value.
CCI_Return Type: int
CCI return number, see error list.
Notes · An other command is needed afterwards to set the value in the software.
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 270
Double Para Set
Get
C# Example: Set DoublePara1 to 1.0:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 1.0);
C# Example: Get DoublePara1:
double para1 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1);
Table 353: Double Para
String Para Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, double Parameter)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, double Parameter)
Description Set or get string values.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeStringPara1 19
scComSAMLightClientCtrlStringValueTypeStringPara2 20
Parameter Type: string Unit: none
Set the desired parameter value.
CCI_Return Type: int
· CCI return number, see error list.
Notes -
C# Example: Create a beam compensated copy out of the entity "Entity" with the name
"BeamCompedEntity":
int CCI_Return_01 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara1,"Entity");
int CCI_Return_02 = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara2,"BeamCompedEntity" );
Table 354: String Para
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 271
13.6 Print
· Execute Print
· Print Settings
Execute Print Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Execute to print the current View2D.
Cmd_ID Type: int
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandPrintDirect 74
CCI_Return Type: int
CCI return number, see error list.
Notes · The printer can not be chosen by the user. The windows default will be used.
· Further settings can be made in the print settings.
C# Example: Execute Printing:
int CCI_Return = [Link]( ( int )
[Link] );
Table 355: Execute Print
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 272
Print Settings Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
int Parameter = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
int Parameter = ScCciGetLongValue(int Value_Type)
Description Define the print settings regarding page orientation or number of copies.
Value_Type Type: int
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypePrintOrientation 145
Set page orientation.
· 1: Landscape
· 2: Portrait
scComSAMLightClientCtrlLongValueTypePrintNumCopies 146
Set number of print copies.
Parameter Type: int Unit: none
Set parameter according to used constant
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Set number of copies to 2:
int CCI_Return = [Link]( ( int )
[Link], 2 );
C# Example: Get page orientation:
int Page_orientation = [Link]( ( int )
[Link]);
Table 356: Print Settings
13.7 RS-232
· USC RS-232 Command
· USC RS-232 Baud Rate
· USC RS-232 Mode
USC RS-232 Command Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string RS232_String)
int CCI_Return = ScGetStringValue(int Value_Type, ref string RS232_String)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string RS232_String)
string RS232_String = ScCciGetStringValue(int Value_Type)
Description Send/Receive an output/input string via the USC RS-232 port.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeRs232OutputString 2
RS232_String Type: string Unit: none
RS-232 output string
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 273
USC RS-232 Command Set
Get
CCI_Return Type: int
CCI error number, see error list.
Notes · Only valid for USC cards.
· Rs232BaudRate has to be set first.
· Rs232Mode has to be set first
· Get command returns character, which were sent to the RS-232 input of USC
card. It also clears the input buffer.
C# Example: Send RS-232 string "hi":
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeRs232OutputString, "hi" );
C# Example: Receive RS-232 string:
string RS232_String = "";
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeRs232OutputString, ref
RS232_String );
Table 357: USC RS-232 Command
USC RS-232 Baud Rate Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string RS232_Baud_Rate)
int CCI_Return = ScGetStringValue(int Value_Type, ref string RS232_Baud_Rate)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string RS232_Baud_Rate)
string RS232_Baud_Rate = ScCciGetStringValue(int Value_Type)
Description Set or get the baud rate for Rs232OutputString.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeRs232BaudRate 1
RS232_Baud_Rate Type: string Unit: [Hz]
The RS-232 interface supports the following Baud rates:
· "2400"
· "4800"
· "9600"
· "19200"
· "28800"
· "38400"
· "57600"
· "115200" (USC-2/-3 only)
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Set RS-232 baud rate to 9600:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeRs232BaudRate, "9600" );
C# Example: Get RS-232 baud rate:
string RS232_Baud_Rate = "";
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 274
USC RS-232 Baud Rate Set
Get
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeRs232BaudRate, ref RS232_Baud_Rate
);
Table 358: USC RS-232 Baud Rate
USC RS-232 Mode Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string RS232_Mode)
int CCI_Return = ScGetStringValue(int Value_Type, ref string RS232_Mode)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string RS232_Mode)
string RS232_Mode = ScCciGetStringValue(int Value_Type)
Description Set or get the RS-232 mode for Rs232OutputString.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeRs232Mode 3
RS232_Mode Type: string Unit: none
· "0": Parity not used
· "1": Parity odd
· "2": Parity even
· "3": Parity 1
· "4": Parity 0
CCI_Return Type: int
CCI error number, see error list.
Notes In all modes:
· DataLength is set to 8.
· StopBits is set to 1.
· Flow control is not used.
C# Example: Set RS-232 mode to parity not used:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeRs232Mode, "0" );
C# Example: Get RS-232 mode:
string RS232_Mode = "";
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeRs232Mode, ref RS232_Mode );
Table 359: USC RS-232 Mode
13.8 RTC only commands
· After Defocus Delay
· Automatic Self-Calibration
· Automatic Self-Calibration Result
· RTC3/4 AnalogOut
· RTC4 Scan Head Temperature
· RTC5 Scan Head Temperature
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 275
After Defocus Delay Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Defocus_Delay)
int Defocus_Delay = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Defocus_Delay)
int Defocus_Delay = ScCciGetLongValue(int Value_Type)
Description Set or get the after defocus delay.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeAfterDefocusDelay 106
Defocus_Delay Type: int Unit: [µs]
Delay used after changing defocus.
CCI_Return Type: int
CCI return number, see error list.
Notes · RTC-5/-6 only
C# Example: Set defocus delay to 1000 µs:
int CCI_Return = [Link]( ( int )
[Link], 1000 );
C# Example: Get current after defocus delay:
int Defocus_Delay = [Link]( ( int )
[Link] );
Table 360: After Defocus Delay
Automatic Self-Calibration Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Scan head auto-calibration functionality for hardware supporting SCANLAB
automatic self-calibration.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandAutoCompensateOff 10
Turn auto calibration mode off.
scComSAMLightClientCtrlExecCommandAutoCompensateRef 11
Turn auto calibration mode on and go to reference position for initial calibration.
scComSAMLightClientCtrlExecCommandAutoCompensateCal 12
Recalibrate the scan head.
CCI_Return Type: int
CCI return number, see error list.
Notes · Works only with hardware supporting SCANLAB automatic self-calibration.
C# Example: Turn auto calibration mode off:
int CCI_Return = [Link]( ( int )
[Link] );
Table 361: Automatic Self-Calibration
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 276
Automatic Self-Calibration Result Set
Get
DLL Function int Error_Code = ScGetLongValue(int Value_Type)
ASCII Function int Error_Code = ScCciGetLongValue(int Value_Type)
Description Returns the error code of the last automatic self-calibration.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeLastAutoCompensateResult 38
Error_Code Type: int Unit: none
Last result of automatic self-calibration.
CCI_Return Type: int
CCI return number, see error list.
Notes · Works only with hardware supporting SCANLAB automatic self-calibration.
C# Example: Get error code of last automatic self-calibration:
int Defocus_Delay = [Link]( ( int )
[Link] );
Table 362: Automatic Self-Calibration Result
RTC3/4 AnalogOut Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Analog_Out)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Analog_Out)
Description Set the analog out values 3-6 at the RTC3/4 I/O extension board.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeDA3 34
Set analog out 3.
scComSAMLightClientCtrlLongValueTypeDA4 35
Set analog out 4.
scComSAMLightClientCtrlLongValueTypeDA5 36
Set analog out 5.
scComSAMLightClientCtrlLongValueTypeDA6 37
Set analog out 6.
Analog_Out Type: int Unit: none
CCI_Return Type: int
CCI return number, see error list.
Notes · Command only for RTC3/4.
C# Example:
Table 363: RTC3/4 AnalogOut
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 277
RTC4 Scan Head Temperature Set
Get
DLL Function int Temp = ScGetLongValue(int Value_Type)
ASCII Function int Temp = ScCciGetLongValue(int Value_Type)
Description This commands return the temperature for an RTC4 for the galvanometer scanner
termperature for intelliSCAN, intelliSCANde, intelliDRILL, intellicube.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeRTCTempX 72
Get the Temp X from RTC4.
scComSAMLightClientCtrlLongValueTypeRTCTempY 73
Get the Temp Y from RTC4.
scComSAMLightClientCtrlLongValueTypeRTCTempZ 80
Get the Temp Z from RTC4.
Temp Type: int Unit: [°C]
Return the temperature of the desired command.
Notes · Command only for RTC4
C# Example: Get X Temp:
int Temp = [Link]( ( int )
[Link] );
Table 364: RTC4 Scan Head Temperature
RTC5 Scan Head Temperature Set
Get
DLL Function int Temp = ScGetLongValue(int Value_Type)
ASCII Function int Temp = ScCciGetLongValue(int Value_Type)
Description This commands return the servo board temperature of the scan head for an RTC5.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeRTCServo2TempY 74
Get the Temp Y from Head 2.
scComSAMLightClientCtrlLongValueTypeRTCServoTempX 83
Get the Temp X from Head 1.
scComSAMLightClientCtrlLongValueTypeRTCServoTempY 84
Get the Temp Y from Head 1.
scComSAMLightClientCtrlLongValueTypeRTCServoTempZ 85
scComSAMLightClientCtrlLongValueTypeRTCServo2TempX
Get the Temp Z/Temp X from Head 1/2.
Temp Type: int Unit: [°C]
Return the temperature of the desired command.
Notes · Command only for RTC5
C# Example: Get Servo X Temp:
int Temp = [Link]( ( int )
[Link] );
Table 365: RTC5 Scan Head Temperature
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 278
13.9 Screenshot
This chapter deals with creating screenshots in SAMLight. There are two different possibilities:
· Screenshot of current View2D (SAMLight must not be hidden, colored current View2D)
· Screenshot of entities (SAMLight can be hidden, only black and white)
13.9.1 Screenshot of current View2D
· Screenshot of current View2D
· SaveView2DVariableSize screenshot size
Screenshot of current View2D Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Screenshot_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Screenshot_Path)
Description Make a screenshot of the current View2D.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeSaveView2D160 6
The width of the screenshot is set to 160 pixel. [*]
scComSAMLightClientCtrlStringValueTypeSaveView2D320 7
The width of the screenshot is set to 320 pixel. [*]
scComSAMLightClientCtrlStringValueTypeSaveView2DVariableSize 8
The width of the screenshot is defined by SaveView2DBitmapVariableSize. [*]
scComSAMLightClientCtrlStringValueTypeSaveView2DFull 9
Size of the screenshot is 1:1 from the current View2D.
Screenshot_Path Type: string Unit: none
Defines the path, where the screenshot is saved to. The path must include the file
extension, which must be ".bmp".
CCI_Return Type: int
CCI error number, see error list.
Notes · [*]: The larger axis (usually x) is set to a fixed value, the aspect ratio is kept.
· The screenshot contains the section of the current View2D.
· The screenshot is colored.
· There are several possibilities to control the pixel size of the screenshot.
· This CCI command only works if SAMLight is visible and not hidden by something
else.
· The current View2D can be changed via CCI, see Change View2D.
C# Example: Make a 1:1 screenshot of current View2D:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2DFull, @"F:
\[Link]" );
Table 366: Screenshot of current View2D
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 279
SaveView2DVariableSize screenshot size Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Width)
double Width = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Width)
double Width = ScCciGetDoubleValue(int Value_Type)
Description Set or get the screenshot width that is created with SaveView2DVariableSize.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapVariableSize 81
Width Type: double Unit: [mm]
Width of the screenshot [pixel]
CCI_Return Type: int
CCI error number, see error list.
Notes The larger axis (usually x) is set to a fixed value, the aspect ratio is kept.
C# Example: Set screenshot width to 640 pixel:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapVariableSize,
640.0 );
C# Example: Get screenshot width:
double Screenshot_Size = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapVariableSize );
Table 367: SaveView2DBitmapVariableSize screenshot size
13.9.2 Screenshot of entities
· Screenshot of entities
· SaveView2DBitmapDPI pixel density
· SaveView2DAdjustableDPI position and size
· SaveView2DAdjustableDPI drawing width
Screenshot of entities Set
Get
DLL Function int CCI_Return = ScSetStringValue(int Value_Type, string Screenshot_Path)
ASCII Function int CCI_Return = ScCciSetStringValue(int Value_Type, string Screenshot_Path)
Description Make a screenshot of entities.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeSaveView2DAdjustableDPI 12
Screenshot_Path Type: string Unit: none
Defines the path, where the screenshot is saved to. The path must include the file
extension, which must be ".bmp".
CCI_Return Type: int
CCI error number, see error list.
Notes · The pixel density of the screenshot must be defined with SaveView2DBitmapDPI
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 280
Screenshot of entities Set
Get
· The screenshot contains a defined section of the View2D, defined by
SaveView2DBitmapX, SaveView2DBitmapY, SaveView2DBitmapXW and
SaveView2DBitmapYW.
· The line drawing width can be changed with SaveView2DBitmapMode.
· The screenshot is black and white.
· This CCI command even works if SAMLight is hidden.
C# Example: Make a screenshot of entities
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2DAdjustableDPI, @"F:
\[Link]" );
Table 368: Screenshot of entities
SaveView2DBitmapDPI Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double DPI)
double DPI = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double DPI)
double DPI = ScCciGetDoubleValue(int Value_Type)
Description Set or get the pixel resolution for SaveView2DAdjustableDPI, depending on SAM2D
or SAM3D.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapDPI 44
DPI Type: double Unit: depends on constant
Pixel density [dpi]
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Set screenshot to 96.0 dpi:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapDPI, 96.0 );
C# Example: Get current screenshot DPI:
double Screenshot_DPI = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapDPI );
Table 369: SaveView2DBitmapDPI pixel density
SaveView2DAdjustableDPI position and size Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Value)
double Value = ScGetDoubleValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Value)
double Value = ScCciGetDoubleValue(int Value_Type)
Description Set or get position and size of the screenshot taken by SaveView2DAdjustableDPI,
depending on SAM2D or SAM3D.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapX 82
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 281
SaveView2DAdjustableDPI position and size Set
Get
X center position [mm].
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapY 83
Y center position [mm].
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapXW 84
Width [mm].
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapYW 85
Height [mm].
Value Type: double Unit: depends on constant
The corresponding value.
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Set X center position of the screenshot to 0.0 mm:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapX, 0.0 );
C# Example: Get X center position of the screenshot:
double Screenshot_DPI = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapX );
Table 370: SaveView2DAdjustableDPI position and size
SaveView2DAdjustableDPI drawing width Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Drawing_Width)
int Drawing_Width = ScGetLongValue(int Value_Type)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Drawing_Width)
int Drawing_Width = ScCciGetLongValue(int Value_Type)
Description Set or get the drawing width of SaveView2DAdjustableDPI.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSaveView2DBitmapMode 63
Drawing_Width Type: int Unit: none
· 0: lines and pixels are drawn normal
· 1: lines and pixels are drawn thicker
· 2: hatch only, lines and pixels are drawn normal
· 3: hatch only, lines and pixels are drawn thicker
CCI_Return Type: int
CCI error number, see error list.
Notes -
C# Example: Set thicker drawing width:
int CCI_Return = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeSaveView2DBitmapMode, 1 );
C# Example: Get current drawing width:
int Drawing_Width = [Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeSaveView2DBitmapMode );
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 282
Table 371: SaveView2DAdjustableDPI drawing width
13.10 Scan Head
· Entity Head ID
· Get Scanner Position
· Head ID
· Head Status
· Head Count
· Redpointer for ScMoveAbs
· ScMoveAbs
· ScSwitchLaser
· Update Scanner Position
· XY Status
Entity Head ID Set
Get
DLL Function int CCI_Return = ScSetEntityLongData(string Entity_Name, int Data_ID, int Head_ID)
int Head_ID = ScGetEntityLongData(string Entity_Name, int Data_ID)
ASCII Function int CCI_Return = ScCciSetEntityLongData(string Entity_Name, int Data_ID, int Head_ID)
int Head_ID = ScCciGetEntityLongData(string Entity_Name, int Data_ID)
Description In case of MultiHead, it is possible to assign an entity to a specific HeadID.
Entity_Name Type: string Unit: none
Specify the entity based on the name.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdManualHead 150
Head_ID Type: int Unit: none
· -2: Auto (Automatic entity assignment)
· -1: All (Assign to all Heads)
· 0..5: Head0..5
CCI_Return Type: int
CCI error number, see error list.
Notes · Do not set during marking operation.
C# Example: Assign Entity "Text_1" to Head1:
int CCI_Return = [Link]("Text_1", (int)
[Link], 1);
C# Example: Get assigned HeadID of Entity "Text_1":
int Head_ID = [Link]("Text_1", (int)
[Link]);
Table 372: Entity Head ID
Get Scanner Position Set
Get
DLL Function double Scanner_Pos = ScGetDoubleValue(int Value_Type)
ASCII Function double Scanner_Pos = ScCciGetDoubleValue(int Value_Type)
Description Get the x, y or z position of the scanner in mm.
Value_Type Type: int ID:
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 283
Get Scanner Position Set
Get
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeScannerXPos 12
Get the current x position of the scanner.
scComSAMLightClientCtrlDoubleValueTypeScannerYPos 13
Get the current position of the scanner.
scComSAMLightClientCtrlDoubleValueTypeScannerZPos 14
Get the current z position of the scanner.
Scanner_Pos Type: double Unit: mm*
Get the x, y or z position of the scanner.
CCI_Return Type: int
CCI return number, see error list.
Notes · Before requesting the scanner positions with these three constants, they must be
updated with Update scanner position
· Not recommended during marking.
C# Example: Get x position of the scanner:
double Scanner_X_Pos = [Link](( int)
[Link]);
Table 373: Get Scanner Position
Head ID Set
Get
DLL Function int CCI_Return = ScSetHead (int Head_ID)
int CCI_Return = ScGetHead (int Head_ID)
ASCII Function int CCI_Return = ScCciSetHead(int Head_ID)
int Head_ID = ScCciGetHead()
Description This function is for MultiHead and MultiCard applications. It specifies a head that is
used with the commands that follow after ScSetHead or returns the ID of the active
head. HeadID can have a number in range 0..n which is the ID of the active head or -
1 to apply commands for all heads.
Head_ID Type: int Unit: none
Enter the ID of the head to select.
CCI_Return Type: int
CCI return number, see error list.
Notes · -1 is for all heads which are connected.
C# Example: Set head 2:
int CCI_Return = [Link](2);
C# Example: Get active head:
int Head_ID = 1;
int CCI_Return = [Link]( ref Head_ID );
Table 374: Head ID
Head Status Set
Get
DLL Function int Flag = ScGetLongValue(int Value_Type)
ASCII Function int Flag = ScCciGetLongValue(int Value_Type)
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 284
Head Status Set
Get
Description Returns the status of the primary or secondary head. For different card types (USC-
1, USC-2/3, RTC), different values can be returned, also a combination of them. If
you use more than one card, you have to select the card with ScSetHead first.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeHeadStatus 2
Returns the status of the primary head.
scComSAMLightClientCtrlLongValueTypeHead2Status 75
Returns the status of the secondary head.
Flag Type: int Flag:
Location: none
Temperature OK 0x1
Only for RTC cards, the temperature status is available.
Power OK 0x2
Only for RTC cards, the power status is available.
Position OK 0x4
Only for RTC cards, the position status is available.
Out of data with laser on 0x1024
For all cards, the state out of data with laser on is available.
Notes · Depending on the specific type of card, different flags are available.
C# Example: Get head status:
int Head_Status = [Link]((int)
[Link]);
Table 375: Head Status
Head Count Set
Get
DLL Function int Head_Count = ScGetLongValue(int Value_Type)
ASCII Function int Head_Count = ScCciGetLongValue(int Value_Type)
Description Returns the total number of heads (cards).
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeGetHeadCount 61
Head_Count Type: int Unit: none
Get the number of heads.
Notes · Head count counts the number of cards which are present in the settings file, not
the number of heads which are selected for one card.
C# Example: Get the current head count:
int Head_Count = [Link]((int)
[Link]);
Table 376: Head Count
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 285
Redpointer for absolute scanner move Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int RP_On_Off)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int RP_On_Off)
Description With this flag, the behaviour of the ScMoveAbs command is completely different.
The ScMoveAbs commands will be executed as a list.
The red pointer move list is
* started and cleared by setting SelectRedpointerForMoveAbs to '1'.
* filled by one or multiple ScMoveAbs commands.
* executed by setting SelectRedpointerForMoveAbs to '0'. After the execution the list
is cleared.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeSelectRedpointerForMoveAbs 57
Use the red pointer move list.
RP_On_Off Type: int Unit: none
· 0: Redpointer selection for ScMoveAbs off
· 1: Redpointer selection for ScMoveAbs on
CCI Return Type: int
CCI return number, see error list.
Notes · Use this flag before ScMoveAbs.
C# Example:
CCI_Return = [Link]((int)
[Link], 1 )
Table 377: Redpointer for absolute scanner move
Absolute scanner move Set
Get
DLL Function int CCI_Return = ScMoveAbs(double X_Position, double Y_Position, double Z_Position)
ASCII Function int CCI_Return = ScCciMoveAbs(double X_Position, double Y_Position, double Z_Position)
Description Jumps with the defined pen directly to the new position specified by x, y and z.
During the jump the laser emission is turned off by default and can be turned on with
ScSwitchLaser().
X_Position Type: double Unit: [mm]
X value of the target position.
Y_Position Type: double Unit: [mm]
Y value of the target position.
Z_Position Type: double Unit: [mm]
Z value of the target position.
CCI_Return Type: int
CCI return number, see error list.
Notes · Define the pen which should be used for the jump using ScSetPen().
· Without pen definition, pen #1 will be taken as default.
· The values will be affected by the correction file as well.
C# Example: Move the scanner to x = 10mm, y = 10mm and z = 22mm:
int CCI_Return = [Link]( 10, 10, 22 );
Table 378: Absolute scanner move
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 286
Switch laser on / off Set
Get
DLL Function int CCI_Return = ScSwitchLaser(int On_Off)
ASCII Function int CCI_Return = ScCciSwitchLaser(int On_Off)
Description Switches the Laser_Gate signal of a USC card on or off.
On_Off Type: int Unit: none
· 0: Laser_Gate signal off
· 1: Laser_Gate signal on
CCI_Return Type: int
CCI return number, see error list.
Notes · The Laser_Gate is switched on or off immediately.
· Can be used together with ScMoveAbs.
· Do not use this command with a regular job as it will stop the marking process.
C# Example: Switch on the Laser_Gate signal:
int CCI_Return = [Link]( 1 );
Table <%HMTABLECOUNTER%>: Switch laser on / off
Update Scanner Position Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Updates the position information of the scanner.
Cmd_ID Type: int ID:
Location:ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandUpdateScannerPos 9
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Update scanner position:
int CCI_Rerturn = [Link]((int)
[Link]);
Table 379: Update Scanner Position
XY Status Set
Get
DLL Function int XY_Status = ScGetLongValue(int Value_Type)
ASCII Function int XY_Status = ScCciGetLongValue(int Value_Type)
Description Returns the status of the scanner (head 0 or head 1) based on the status signal X of
the XY2-100 interface of the selected USC-2 or USC-3 card. If you use more than
one USC-2 or USC-3 card, you have to select the card with ScSetHead first.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeXYStatus 68
Get the status of head 0.
scComSAMLightClientCtrlLongValueTypeXYStatus1 69
Get the status of head 1.
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 287
XY Status Set
Get
XY_Status Type: int Unit: none
Returns the status of the head.
Notes · The status will be updated every 100 ms (approximately).
· For the interpretation of this signal please refer to your scanner manual.
C# Example: Get XY status of the scanner connected to head 0:
int XY_Status = [Link]((int)
[Link]);
Table 380: XY Status
13.11 sc_corr_table
· Correction Mode
· Correction Points
· 2D Fit Type
· Correct SamLight
· Send Cor Table Values
Correction Mode Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
Description Specifies the correction mode of CorrectSamLight
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeCorrectionMode 81
Parameter Type: int Unit: none
Location: none
scComSAMLightClientCtrlCorrectionModeOld 0
Old algorithm: The grid points of the UCF file will be mapped through a linear
interpolation of the 4 enclosing measure points. Finding the enclosing points could
fail and lead to single grid point distortions. Postfix: _YYYYMMDDOld.ucf
scComSAMLightClientCtrlCorrectionModeRTS 1
Rotation, Translation, Scale: Rotation, translation and scaling operations are used to
minimizes the sum of squared residuals of all calib points. Postfix:
_YYYYMMDDRts.ucf
scComSAMLightClientCtrlCorrectionModeIDW 2
Inverse Distance Weighting: The position of each grid point is influenced by the
closest x calib points weighted by their inverse distance. The number of influence
points can be chosen with CorrectionPoints. This algorithm tends to cause unwanted
oscillations. Postfix: _YYYYMMDDIdw#.ucf
scComSAMLightClientCtrlCorrectionMode2dFit 4
2D Fit: Minimizes the sum of squared residuals (distance between the fit and the
calibration points). The more points in sc_calib_points.txt, the better is the
compensation of measuring errors.
It is possible to try different fit modes and to compare the results in *_fit_log.txt. The
fit order can be selected by 2dFitType. Postfix: _YYYYMMDDFit2D#.ucf
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 288
Correction Mode Set
Get
CCI_Return Type: int
CCI return number, see error list.
Notes
C# Example: Select Fit2D correction algorithm:
int CCI_Return = [Link]((int)
[Link], (int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlCorrectionMode2dFit);
Table 381: Correction Mode
Correction Points Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Parameter)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Parameter)
Description Specifies the number of influence points for each grid point for inverse distance
weighting (IDW) mode. A value of '4' seems to lead to good results. IDW mode must
be enabled with CorrectionModeIDW.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeCorrectionPoints 82
Parameter Type: int Unit: none
· 0: Disable.
· 1: Enable.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Correct points in Fit2D correction algorithm:
int CCI_Return = [Link]((int)
[Link], (int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlCorrectionMode2dFit);
Table 382: Correction Points
2D Fit Type Set
Get
DLL Function, int CCI_Return = ScSetLongValue(int Value_Type, int Fit_Mode)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Fit_Mode)
Description Selects the 2D fit order to adjust a correction file (*.ucf) by
<SCAPS>\system\sc_calib_points.txt. 2D fit algorithm must be enabled with
CorrectionMode2dFit. Postfix: _YYYYMMDDFit2D#.ucf.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueType2dFitType 92
Fit_Mode Type: int Unit: none
· 1&2: 2D Fit Basic: Recommended for measurements with big errors. Improved
compensation of measurement errors. 1_Basic can only compensate linear
(trapezoid) distortions and should not be used for the neutral correction file
(cor_neutral.ucf).
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 289
2D Fit Type Set
Get
· 3&4: 2D Fit Advanced: Recommended for most scenarios. 3_Advanced is the
default mode.
· 5&6: 2D Fit Expert: Only recommended for precise measurements which means
the measurement error is really small.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Select Fit2D order, for example 3_Advanced:
int CCI_Return = [Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType2dFitType, 3);
Table 383: 2D Fit Type
Correct SamLight Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function int CCI_Return = ScCciExecCommand(int Cmd_ID)
Description Executes the correction of the currently used correction file with
<SCAPS>\system\sc_calib_points.txt. The new correction file is applied in SAMLight
and it is saved in the same folder as the previous used one. The correction mode
can be chosen with CorrectionMode. An example can be found in the chapter
Correct UCF. In sc_corr_table, this function is called 'Correct UCF by calibration
points'.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandCorrectSamLight 50
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Execute the correction with <SCAPS>\system\sc_calib_points.txt and apply the new
correction file in SAMLight:
int CCI_Return = [Link]((int)
[Link]);
Table 384: Correct SamLight
Send Cor Table Values Set
Get
DLL Function int CCI_Return = ScSetDoubleValue(int Value_Type, double Parameter)
ASCII Function int CCI_Return = ScCciSetDoubleValue(int Value_Type, double Parameter)
Description Insert new head offset commands during the marking.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlDoubleValueTypeSendCorTableValues 65630
Parameter Type: int Unit: none
Set the desired values.
CCI_Return Type: int
CCI return number, see error list.
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 290
Send Cor Table Values Set
Get
Notes
Table 385: Send Cor Table Values
13.12 View2D
· BackgroundColor
· MultiHeadSplit
· Show Coordinates/Working Area/Grid
Background Color Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Color)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Color)
Description Set the background color in the View2D.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeBackgroundColor 79
Set the background color in the View2D.
Color Type: int Unit: none
From hex value 0x000000 for black to hex value 0xffffff for white.
CCI_Return Type: int
CCI return number, see error list.
Notes · The color depth is 24 bit, which corresponds to 16.777.216 different colors.
C# Example: Set the background color to white:
int CCI_Return = [Link]((int)
[Link], 0xffffff);
Table 386: Background Color View2D
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 291
MultiHeadSplit Set
Get
DLL Function int CCI_Return = ScExecCommand(int Cmd_ID)
ASCII Function -
Description Change the AutoSplit Mode for MultiHead.
Cmd_ID Type: int ID:
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandAutosplitOn 67
Activates the Autosplit Mode for MultiHead.
scComSAMLightClientCtrlExecCommandAutosplitOff 68
Deactivates the Autosplit Mode for MultiHead.
scComSAMLightClientCtrlExecCommandDoAutosplit 69
Performs the MultiHead split manually.
CCI_Return Type: int
CCI return number, see error list.
Notes -
C# Example: Activate the Autosplit Mode for MultiHead:
int CCI_Return = [Link]((int)
[Link]);
Table 387: MultiHeadSplit
© 2024 SCAPS GmbH
Client Control Interface Manual - Other 292
Show Coordinates/Working Area/Grid Set
Get
DLL Function int CCI_Return = ScSetLongValue(int Value_Type, int Mode)
ASCII Function int CCI_Return = ScCciSetLongValue(int Value_Type, int Mode)
Description Set the status of the Coordinates, Working Area and Grid in the View2D.
Value_Type Type: int ID:
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeShowCoordinates 76
Hide or show the Coordinates in View2D.
scComSAMLightClientCtrlLongValueTypeShowWorkingArea 77
Hide or show the Working Area in View2D.
scComSAMLightClientCtrlLongValueTypeShowGrid 78
Hide or show the Grid in View2D.
Mode Type: int Unit: none
· 0: To hide.
· 1: To show.
CCI_Return Type: int
· CCI return number, see error list.
Notes -
C# Example: Hide the coordinates, working area and grid in View2D:
int CCI_Return_01 = [Link]((int)
[Link], 0);
int CCI_Return_02 = [Link]((int)
[Link], 0);
int CCI_Return_03 = [Link]((int)
[Link], 0);
Table 388: Coordinates/Working Area/Grid View2D
14 List of Commands
14.1 ASCII Commands
· ScCciAutoCompensateCal
· ScCciAutoCompensateOff
· ScCciAutoCompensateRef
· ScCciChangeTextByName
· ScCciCreateEntity
· ScCciDecSerialNumbers
· ScCciDeleteEntity
· ScCciDuplicateEntity
· ScCciExecCommand
· ScCciFitViewToEntities
· ScCciFitViewToSelectedEntities
· ScCciFitViewToWorkingArea
· ScCciGetDoubleValue
· ScCciGetEntityDoubleData
· ScCciGetEntityLongData
· ScCciGetEntityOutline
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Commands 293
· ScCciGetEntityOutline2D
· ScCciGetEntityOutline3D
· ScCciGetEntityStringData
· ScCciGetHead
· ScCciGetIDStringData
· ScCciGetInterfaceVersion
· ScCciGetLongValue
· ScCciGetMarkFlags
· ScCciGetMode
· ScCciGetOpticMatrix
· ScCciGetPen
· ScCciGetStringDoubleValue
· ScCciGetStringValue
· ScCciGetWorkingArea
· ScCciImport
· ScCciIncSerialNumbers
· ScCciIsMarking
· ScCciLoadJob
· ScCciMarkEntityByName
· ScCciMotionGo
· ScCciMotionHome
· ScCciMotionSendString
· ScCciMotionStopMove
· ScCciMotionUpdatePos
· ScCciMoveAbs
· ScCciNewJob
· ScCciOpticMatrixReset
· ScCciOpticMatrixRotate
· ScCciOpticMatrixScale
· ScCciOpticMatrixTranslate
· ScCciProcessFlashJob
· ScCciResetCounter
· ScCciResetSequence
· ScCciResetSerialNumbers
· ScCciResplitJob
· ScCciRotateEntity
· ScCciRotateEntity3D
· ScCciSaveJob
· ScCciSaveSplitsAsEntities
· ScCciScaleEntity
· ScCciScaleEntityCurPos
· ScCciSetDoubleValue
· ScCciSetEntityDoubleData
· ScCciSetEntityLongData
· ScCciSetEntityOutline2D
· ScCciSetEntityOutline3D
· ScCciSetEntityStringData
· ScCciSetFieldSizeAndWorkingArea
· ScCciSetHead
· ScCciSetIDStringData
· ScCciSetLongValue
· ScCciSetMarkFlags
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Commands 294
· ScCciSetMode
· ScCciSetPen
· ScCciSetPixelMapForPen
· ScCciSetStringDoubleValue
· ScCciSetStringLongValue
· ScCciSetStringValue
· ScCciShowApp
· ScCciShutdown
· ScCciStopMarking
· ScCciSwitchLaser
· ScCciTest
· ScCciTranslateEntity
· ScCciUpdateScannerPos
· ScCciUpdateViewNow
14.2 DLL Commands
· ScChangeTextByName
· ScCloseEthernetConnection
· ScCreateEntity
· ScDeleteEntity
· ScDuplicateEntity
· ScExecCommand
· ScExport
· ScFlashCommand
· ScGetConnectionStatus
· ScGetDoubleValue
· ScGetEntityDoubleData
· ScGetEntityLongData
· ScGetEntityOutline
· ScGetEntityOutline2D
· ScGetEntityOutline3D
· ScGetEntityStringData
· ScGetHead
· ScGetIDStringData
· ScGetInterfaceVersion
· ScGetLongData
· ScGetLongValue
· ScGetMarkFlags
· ScGetMode
· ScGetOpticMatrix
· ScGetPen
· ScGetPenPathForPen
· ScGetPreviewImage
· ScGetStringDblValue
· ScGetStringValue
· ScGetWorkingArea
· ScImport
· ScIsMarking
· ScIsRunning
· ScLoadJob
· ScMarkEntityByName
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Commands 295
· ScMoveAbs
· ScOpenEthernetConnection
· ScOpenTCPConnection
· ScOpenUDPConnection
· ScOpticMatrixReset
· ScOpticMatrixRotate
· ScOpticMatrixScale
· ScOpticMatrixTranslate
· ScProcessFlashJob
· ScRotateEntity
· ScRotateEntity3D
· ScSaveJob
· ScScaleEntity
· ScScaleEntityCurPos
· ScSetDoubleValue
· ScSetEntityDoubleData
· ScSetEntityLongData
· ScSetEntityOutline2D
· ScSetEntityOutline3D
· ScSetEntityStringData
· ScSetFieldSizeAndWorkingArea
· ScSetHead
· ScSetIDStringData
· ScSetLongData
· ScSetLongValue
· ScSetLongValue64
· ScSetMarkFlags
· ScSetMode
· ScSetPen
· ScSetPenPathForPen
· ScSetPixelMapForPen
· ScSetStringDblValue
· ScSetStringLongValue
· ScSetStringValue
· ScShowApp
· ScShutDown
· ScSlice
· ScSliceFromTxt
· ScStopMarking
· ScSwitchLaser
· ScTranslateEntity
15 List of Constants
15.1 Double Value Types
Double Value Types
Description: List of constants used by the Double Value Types function.
Type: int ID
Location: ScComSAMLightClientCtrlValueTypes
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 296
Double Value Types
scComSAMLightClientCtrlDoubleValueTypeOverrideSpeed 1
scComSAMLightClientCtrlDoubleValueTypeOverridePower 2
scComSAMLightClientCtrlDoubleValueTypeOverrideFrequency 3
scComSAMLightClientCtrlDoubleValueTypeMarkSpeed 4
scComSAMLightClientCtrlDoubleValueTypeJumpSpeed 5
scComSAMLightClientCtrlDoubleValueTypeFrequency 6
scComSAMLightClientCtrlDoubleValueTypeJumpDelay 7
scComSAMLightClientCtrlDoubleValueTypeMarkDelay 8
scComSAMLightClientCtrlDoubleValueTypePolyDelay 9
scComSAMLightClientCtrlDoubleValueTypeLaserOnDelay 10
scComSAMLightClientCtrlDoubleValueTypeLaserOffDelay 11
scComSAMLightClientCtrlDoubleValueTypeScannerXPos 12
scComSAMLightClientCtrlDoubleValueTypeScannerYPos 13
scComSAMLightClientCtrlDoubleValueTypeScannerZPos 14
scComSAMLightClientCtrlDoubleValueTypePulseLength 15
scComSAMLightClientCtrlDoubleValueTypeFirstPulseLength 16
scComSAMLightClientCtrlDoubleValueTypeLaserPower 17
scComSAMLightClientCtrlDoubleValueTypeSizePowerMap 18
scComSAMLightClientCtrlDoubleValueTypePowerMapStartId 19
scComSAMLightClientCtrlDoubleValueTypeMaxPower 20
scComSAMLightClientCtrlDoubleValueTypeLastMarkTime 21
scComSAMLightClientCtrlDoubleValueTypeOverridePower2 22
scComSAMLightClientCtrlDoubleValueTypeHomePosX 23
scComSAMLightClientCtrlDoubleValueTypeHomePosY 24
scComSAMLightClientCtrlDoubleValueTypeHomePosZ 25
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerStartRampValue 26
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerStartRampLength 27
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerEndRampValue 28
scComSAMLightClientCtrlDoubleValueTypeLineRampingPowerEndRampLength 29
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedStartRampValue 30
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedStartRampLength 31
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedEndRampValue 32
scComSAMLightClientCtrlDoubleValueTypeLineRampingSpeedEndRampLength 33
scComSAMLightClientCtrlDoubleValueTypeLastExpectedMarkTime 34
scComSAMLightClientCtrlDoubleValueTypeSkyWritingStartLength 35
scComSAMLightClientCtrlDoubleValueTypeSkyWritingEndLength 36
scComSAMLightClientCtrlDoubleValueTypeSkyWritingBreakAngle 37
scComSAMLightClientCtrlDoubleValueTypeMotionAxisPosition 38
scComSAMLightClientCtrlDoubleValueTypeMotionAxisAngle 39
scComSAMLightClientCtrlDoubleValueTypeMotionAxisPositionRelative 40
scComSAMLightClientCtrlDoubleValueTypeMotionAxisAngleRelative 41
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 297
Double Value Types
scComSAMLightClientCtrlDoubleValueTypeMotionAxisSpeed 42
scComSAMLightClientCtrlDoubleValueTypeHalfPeriod 43
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapDPI 44
scComSAMLightClientCtrlDoubleValueTypeSpiLaserSimmer 45
scComSAMLightClientCtrlDoubleValueTypeGainX 46
scComSAMLightClientCtrlDoubleValueTypeGainY 47
scComSAMLightClientCtrlDoubleValueTypeLaserCo2Power1 48
scComSAMLightClientCtrlDoubleValueTypeLaserCo2Power2 49
scComSAMLightClientCtrlDoubleValueTypeAngularSplittingTotalDiameter 50
scComSAMLightClientCtrlDoubleValueTypeAngularSplittingAngle 51
scComSAMLightClientCtrlDoubleValueTypeHorizontalSplittingValue 52
scComSAMLightClientCtrlDoubleValueTypeVerticalSplittingValue 53
scComSAMLightClientCtrlDoubleValueTypeWobbleFrequency 54
scComSAMLightClientCtrlDoubleValueTypeWobbleAmplitude 55
scComSAMLightClientCtrlDoubleValueTypeStartSplittingPosX 56
scComSAMLightClientCtrlDoubleValueTypeStartSplittingPosY 57
scComSAMLightClientCtrlDoubleValueTypeOffsetX 58
scComSAMLightClientCtrlDoubleValueTypeOffsetY 59
scComSAMLightClientCtrlDoubleValueTypeLineRampingLengthenStart 60
scComSAMLightClientCtrlDoubleValueTypeLineRampingLengthenEnd 61
scComSAMLightClientCtrlDoubleValueTypeDefocus 62
scComSAMLightClientCtrlDoubleValueTypeAsyncModeResult 63
scComSAMLightClientCtrlDoubleValueTypeMotionAxisAddControl 64
scComSAMLightClientCtrlDoubleValueTypeMOFExtStartDelay 65
scComSAMLightClientCtrlDoubleValueTypeDoublePara1 66
scComSAMLightClientCtrlDoubleValueTypeDoublePara2 67
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMinX 68
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMinY 69
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMaxX 70
scComSAMLightClientCtrlDoubleValueTypeWorkingAreaMaxY 71
scComSAMLightClientCtrlDoubleValueTypeDrillPeriod 72
scComSAMLightClientCtrlDoubleValueTypeDrillDuration 73
scComSAMLightClientCtrlDoubleValueTypeDrillLength 74
scComSAMLightClientCtrlDoubleValueTypeDrillJumpSpeed 75
scComSAMLightClientCtrlDoubleValueTypeDrillJumpDelay 76
scComSAMLightClientCtrlDoubleValueTypeDrillDimension 78
scComSAMLightClientCtrlDoubleValueTypeDrillCo2HalfPeriod 79
scComSAMLightClientCtrlDoubleValueType3DVariHatchAngle 80
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapVariableSize 81
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapX 82
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapY 83
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 298
Double Value Types
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapXW 84
scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapYW 85
scComSAMLightClientCtrlDoubleValueTypeSelPointXPos 86
scComSAMLightClientCtrlDoubleValueTypeSelPointYPos 87
scComSAMLightClientCtrlDoubleValueTypeSelPointZPos 88
scComSAMLightClientCtrlDoubleValueTypeLongDelay 89
scComSAMLightClientCtrlDoubleValueTypeOffsetZ 90
scComSAMLightClientCtrlDoubleValueTypeSpeedMotfEntityBasedSplitting 91
scComSAMLightClientCtrlDoubleValueTypeEntityArrayStepX 92
scComSAMLightClientCtrlDoubleValueTypeEntityArrayStepY 93
scComSAMLightClientCtrlDoubleValueTypeEntityBasedSplittingGroupedEntityWidth 94
scComSAMLightClientCtrlDoubleValueTypeDoublePara3 95
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue1 96
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue2 97
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue3 98
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue4 99
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue5 100
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue6 101
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue7 102
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue8 103
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue9 104
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue10 105
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue11 106
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue12 107
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue13 108
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue14 109
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue15 110
scComSAMLightClientCtrlDoubleValueTypeOpticRotation 111
scComSAMLightClientCtrlDoubleValueTypeLastPreviewTime 112
scComSAMLightClientCtrlDoubleValueType2DSplitWidthValue 113
scComSAMLightClientCtrlDoubleValueType2DSplitHeightValue 114
scComSAMLightClientCtrlDoubleValueTypeRingSplittingZTiltAngle 115
scComSAMLightClientCtrlDoubleValueTypeRingSplittingZSpindleCenterHeight 116
scComSAMLightClientCtrlDoubleValueTypeRingSplittingSpindleRradius 117
scComSAMLightClientCtrlDoubleValueTypeRingSplittingZRingCenterHeight 118
scComSAMLightClientCtrlDoubleValueTypeFieldMinX 119
scComSAMLightClientCtrlDoubleValueTypeFieldMinY 120
scComSAMLightClientCtrlDoubleValueTypeFieldMaxX 121
scComSAMLightClientCtrlDoubleValueTypeFieldMaxY 122
scComSAMLightClientCtrlDoubleValueTypeIPGPulseLength 123
scComSAMLightClientCtrlDoubleValueTypeMinFrequency 124
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 299
Double Value Types
scComSAMLightClientCtrlDoubleValueTypeMaxFrequency 125
scComSAMLightClientCtrlDoubleValueTypeDrillMarkLineAsDotsGridX 126
scComSAMLightClientCtrlDoubleValueTypeDrillMarkLineAsDotsGridY 127
scComSAMLightClientCtrlDoubleValueTypeMinMarkSpeed 128
scComSAMLightClientCtrlDoubleValueTypeMaxMarkSpeed 129
scComSAMLightClientCtrlDoubleValueTypeMinJumpSpeed 130
scComSAMLightClientCtrlDoubleValueTypeMaxJumpSpeed 131
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStartX 132
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStartY 133
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStepX 134
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatPlanarStepY 135
scComSAMLightClientCtrlDoubleValueTypeStepAndRepeatSpeed 136
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendPointXTo 137
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendPointYTo 138
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendDimXTo 139
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendDimYTo 140
scComSAMLightClientCtrlDoubleValueTypeBmpContinuousTotalDiameter 141
scComSAMLightClientCtrlDoubleValueTypeBmpContinuousAngle 142
scComSAMLightClientCtrlDoubleValueTypeProcessTime 143
scComSAMLightClientCtrlDoubleValueTypeTotalMarkingTime 144
scComSAMLightClientCtrlDoubleValueTypeSplitOverlap 145
scComSAMLightClientCtrlDoubleValueTypeSplitMotfDistanceBetweenSplits 147
scComSAMLightClientCtrlDoubleValueTypeDoublePara4 148
scComSAMLightClientCtrlDoubleValueTypeDoublePara5 149
scComSAMLightClientCtrlDoubleValueTypeDoublePara6 150
scComSAMLightClientCtrlDoubleValueTypeDoublePara7 151
scComSAMLightClientCtrlDoubleValueTypeDoublePara8 152
scComSAMLightClientCtrlDoubleValueTypeBackgroundImageWebcamMaxFramesPerSecond 153
scComSAMLightClientCtrlDoubleValueTypeRedPointerOffsetX 154
scComSAMLightClientCtrlDoubleValueTypeRedPointerOffsetY 155
scComSAMLightClientCtrlDoubleValueTypeRedPointerFactorX 156
scComSAMLightClientCtrlDoubleValueTypeRedPointerFactorY 157
scComSAMLightClientCtrlDoubleValueTypeMotionAxisOffset 158
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarRadius 159
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarXCenter 160
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarYCenter 161
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarTotalAngle 162
scComSAMLightClientCtrlDoubleValueTypeEntityArrayPolarStartAngle 163
scComSAMLightClientCtrlDoubleValueTypeNudgeX 164
scComSAMLightClientCtrlDoubleValueTypeNudgeY 165
scComSAMLightClientCtrlDoubleValueTypeSkyRtcLaserShiftOn 166
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 300
Double Value Types
scComSAMLightClientCtrlDoubleValueTypeSkyRtcTimeLag 167
scComSAMLightClientCtrlDoubleValueTypeLaserPower2 168
scComSAMLightClientCtrlDoubleValueTypeStyleIdPixelMapZone 4096 -
4101
scComSAMLightClientCtrlDoubleValueTypeUserValue 20000 -
20015
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfCh0Multiplier 65539
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfCh1Multiplier 65540
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadOffsetX 65546
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadOffsetY 65547
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadGainX 65548
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadGainY 65549
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadRotate 65550
scComSAMLightClientCtrlDoubleValueTypePrimaryHeadEnable 65551
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadOffsetX 65552
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadOffsetY 65553
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadGainX 65556
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadGainY 65557
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadRotate 65558
scComSAMLightClientCtrlDoubleValueTypeSecondaryHeadEnable 65559
scComSAMLightClientCtrlDoubleValueTypeLaserType 65597
scComSAMLightClientCtrlDoubleValueTypeLaserTypeVersion 65598
scComSAMLightClientCtrlDoubleValueTypeSendCorTableValues 65630
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfSimulate 65638
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfUseYChannel 65640
scComSAMLightClientCtrlDoubleValueTypeUsc1MotfInvertOffset 65661
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Enable 65662
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Enable 65663
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Simulate 65664
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Simulate 65665
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0SwapAB 65666
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1SwapAB 65667
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Mode 65668
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Mode 65669
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Multiplier 65670
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Multiplier 65671
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh0Counter 65718
scComSAMLightClientCtrlDoubleValueTypeUsc2MotfCh1Counter 65719
scComSAMLightClientCtrlDoubleValueTypeDistanceMirrorsMM 196608
scComSAMLightClientCtrlDoubleValueTypeRadiusSecondMirrorMM 196609
scComSAMLightClientCtrlDoubleValueTypeZNumControlPoints 196610
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 301
Double Value Types
scComSAMLightClientCtrlDoubleValueTypeZCorrFieldSize 196612
scComSAMLightClientCtrlDoubleValueTypeLookupZMMStart 196864 -
196895
scComSAMLightClientCtrlDoubleValueTypeLookupZDacStart 229632 -
229663
scComSAMLightClientCtrlDoubleValueTypePixelCtrlPointsSize 29999
scComSAMLightClientCtrlDoubleValueTypePixelCtrlPointsIn 30000 -
30255
scComSAMLightClientCtrlDoubleValueTypePixelCtrlPointsOut 30256 -
30511
Table 389: Double Value Types
15.2 Long Value Types
Long Value Types
Description: List of constants used by the Long Value Types function.
Constant Flag ID
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlLongValueTypeNumMarksCompleted 1
scComSAMLightClientCtrlLongValueTypeHeadStatus 2
Temperature OK 0x1
Power OK 0x2
Position OK 0x4
scComSAMLightClientCtrlLongValueTypeExecutionStatus 3
scComSAMLightClientCtrlLongValueTypeOptoIO 4
scComSAMLightClientCtrlLongValueTypeQuantity 5
scComSAMLightClientCtrlLongValueTypeDA1 6
scComSAMLightClientCtrlLongValueTypeDA2 7
scComSAMLightClientCtrlLongValueTypeDeviceEnableFlagsSet 8
scComStandardDeviceEnableFlagGroupStyle 0
scComStandardDeviceEnableFlagGroupOptoOut 1
scComSAMLightClientCtrlLongValueTypeDeviceEnableFlagsValue 9
scComStandardDeviceStyleFlagEnableLongDelay 0x1
scComStandardDeviceStyleFlagEnablePortLaser 0x2
scComStandardDeviceStyleFlagEnablePort1 0x4
scComStandardDeviceStyleFlagEnableWobble 0x8
scComStandardDeviceStyleFlagEnableYAGStandBy 0x20
scComStandardDeviceStyleFlagEnablePixelOutput (deprecated, use 0x40
BitmapPixelHardwareMode)
scComStandardDeviceStyleFlagEnablePort2 0x80
scComStandardDeviceStyleFlagEnableDA1 0x200
scComStandardDeviceStyleFlagEnableDA2 0x400
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 302
Long Value Types
scComStandardDeviceStyleFlagEnableSkyWriting 0x2000
scComStandardDeviceStyleFlagEnablePointUsePowerMap 0x400000
scComSAMLightClientCtrlLongValueTypeTotalEntityNum 10
scComSAMLightClientCtrlLongValueTypeToplevelEntityNum 11
scComSAMLightClientCtrlLongValueTypeJobExecutionDelay 12
scComSAMLightClientCtrlLongValueTypeGetMarkCount 13
scComSAMLightClientCtrlLongValueTypeQueueLength 14
scComSAMLightClientCtrlLongValueTypeMaxQuantity 15
scComSAMLightClientCtrlLongValueTypeOverridePen 16
scComSAMLightClientCtrlLongValueTypeMotionAxis 17
scComSAMLightClientCtrlLongValueTypeMotionWaitForEnd 18
scComSAMLightClientCtrlLongValueTypeMotionMoving 19
scComSAMLightClientCtrlLongValueTypeSpiWaveform 20
scComSAMLightClientCtrlLongValueTypeSpiCw 21
scComSAMLightClientCtrlLongValueTypeLineRampingPowerStartRampActive 22
scComSAMLightClientCtrlLongValueTypeLineRampingPowerEndRampActive 23
scComSAMLightClientCtrlLongValueTypeLineRampingSpeedStartRampActive 24
scComSAMLightClientCtrlLongValueTypeLineRampingSpeedEndRampActive 25
scComSAMLightClientCtrlLongValueTypeLineRampingLengthenStartActive 26
scComSAMLightClientCtrlLongValueTypeLineRampingLengthenEndActive 27
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncMode 28
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncModeIsRunning 29
scComSAMLightClientCtrlLongValueTypeClientCtrlAsyncModeResult 30
scComSAMLightClientCtrlLongValueTypeGetOptoOut 31
scComSAMLightClientCtrlLongValueTypeStoreRestoreTransformation 32
scComSAMLightClientCtrlLongValueTypeAngularSplittingParts 33
scComSAMLightClientCtrlLongValueTypeDA3 34
scComSAMLightClientCtrlLongValueTypeDA4 35
scComSAMLightClientCtrlLongValueTypeDA5 36
scComSAMLightClientCtrlLongValueTypeDA6 37
scComSAMLightClientCtrlLongValueTypeLastAutoCompensateResult 38
scComSAMLightClientCtrlLongValueTypeDongleUserNumber 39
scComSAMLightClientCtrlLongValueTypeDongleSystemNumber 40
scComSAMLightClientCtrlLongValueTypeHardwareState 41
scComSAMLightClientCtrlLongValueTypeSizePixelMap 42
scComSAMLightClientCtrlLongValueTypeSwitchToPane 43
scComSAMLightClientCtrlLongValueTypeGetTotalSlices 44
scComSAMLightClientCtrlLongValueTypeSliceFrom 45
scComSAMLightClientCtrlLongValueTypeSliceTo 46
scComSAMLightClientCtrlLongValueTypeCurrentSliceNum 47
scComSAMLightClientCtrlLongValueTypePort2 48
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 303
Long Value Types
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendSourceConstantAlpha 50
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendCenterPointX 51
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendUpperLeftPointX
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendCenterPointY 52
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendUpperLeftPointY
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendBmpDimX 53
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendBmpDimY 54
scComSAMLightClientCtrlLongValueTypeDrillEnable 55
scComSAMLightClientCtrlLongValueTypeDrillEnableCo2Power 56
scComSAMLightClientCtrlLongValueTypeSelectRedpointerForMoveAbs 57
scComSAMLightClientCtrlLongValueTypeEntityArrayCountX 58
scComSAMLightClientCtrlLongValueTypeEntityArrayCountY 59
scComSAMLightClientCtrlLongValueTypeEntityArrayOrderFlags 60
scComSAMLightClientCtrlEntityArrayOrderFlagNegX 0x100
scComSAMLightClientCtrlEntityArrayOrderFlagNegY 0x200
scComSAMLightClientCtrlEntityArrayOrderFlagMainDirX 0x400
scComSAMLightClientCtrlEntityArrayOrderFlagBiDir 0x800
scComSAMLightClientCtrlLongValueTypeGetHeadCount 61
scComSAMLightClientCtrlLongValueTypeSaveView2DBitmapMode 63
scComSAMLightClientCtrlLongValueTypeSelectHatchPair 64
scComSAMLightClientCtrlLongValueTypeRedpointerMode 65
scComSAMLightClientCtrlLongValueTypeSetLockSjfToDongleFlags 66
scComSAMLightClientCtrlLockToDongleFlagLockLoadToSystemId 0x1
scComSAMLightClientCtrlLockToDongleFlagLockLoadToUserId 0x2
scComSAMLightClientCtrlLockToDongleFlagLockExport 0x4
(set only) scComSAMLightClientCtrlLongValueTypePrepareLayer 67
(get only) scComSAMLightClientCtrlLongValueTypeServerStatus
SC_USC1_SERVER_STATUS_DEVICE_CONNECTED 0x1
SC_USC1_SERVER_STATUS_DEVICE_OK 0x2
SC_USC1_SERVER_STATUS_DEVICE_MISSING 0x8
SC_USC1_SERVER_STATUS_DEVICE_USC_1 0x10000
SC_USC1_SERVER_STATUS_DEVICE_USC_2 0x20000
SC_USC1_SERVER_STATUS_DEVICE_USC_3 0x80000
scComSAMLightClientCtrlLongValueTypeXYStatus 68
scComSAMLightClientCtrlLongValueTypeXYStatus1 69
scComSAMLightClientCtrlLongValueTypeSimulationMode 70
scComSAMLightClientCtrlLongValueType3D 71
scComSAMLightClientCtrlLongValueTypeRTCTempX 72
scComSAMLightClientCtrlLongValueTypeRTCTempY 73
scComSAMLightClientCtrlLongValueTypeRTCServo2TempY 74
scComSAMLightClientCtrlLongValueTypeHead2Status 75
Temperature OK 0x1
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 304
Long Value Types
Power OK 0x2
Position OK 0x4
scComSAMLightClientCtrlLongValueTypeShowCoordinates 76
scComSAMLightClientCtrlLongValueTypeShowWorkingArea 77
scComSAMLightClientCtrlLongValueTypeShowGrid 78
scComSAMLightClientCtrlLongValueTypeBackgroundColor 79
scComSAMLightClientCtrlLongValueTypeRTCTempZ 80
scComSAMLightClientCtrlLongValueTypeCorrectionMode 81
scComSAMLightClientCtrlCorrectionModeOld 0
scComSAMLightClientCtrlCorrectionModeRTS 1
scComSAMLightClientCtrlCorrectionModeIDW 2
scComSAMLightClientCtrlCorrectionMode2dFit 4
scComSAMLightClientCtrlLongValueTypeCorrectionPoints 82
scComSAMLightClientCtrlLongValueTypeRTCServoTempX 83
scComSAMLightClientCtrlLongValueTypeRTCServoTempY 84
scComSAMLightClientCtrlLongValueTypeRTCServoTempZ 85
scComSAMLightClientCtrlLongValueTypeRTCServo2TempX
scComSAMLightClientCtrlLongValueType3DSurfaceSetType 86
scComSAMLightClientCtrlLongValueTypeEnable3DSurface 87
scComSAMLightClientCtrlLongValueTypeEnableJobToolbar 88
scComSAMLightClientCtrlLongValueTypeBitmapPixelHardwareMode 89
scComSAMLightClientCtrlLongValueTypeBitmapPenPowerAsMaxPower 90
scComSAMLightClientCtrlLongValueTypeEnableMotf 91
scComSAMLightClientCtrlLongValueType2dFitType 92
scComSAMLightClientCtrlLongValueTypeEnableBmpSplitting 93
scComSAMLightClientCtrlLongValueTypeAngularSplittingSplitAxis 94
scComSAMLightClientCtrlLongValueTypeEnableAllSerialNumbersInJob 95
scComSAMLightClientCtrlLongValueTypeRingSplittingEnableZTiltCompensation 96
scComSAMLightClientCtrlLongValueTypeRingSplittingZMotionAxis 97
scComSAMLightClientCtrlLongValueTypePauseBuild 98
scComSAMLightClientCtrlLongValueTypeShowEntityList 99
scComSAMLightClientCtrlLongValueTypeShowPropSheet 100
scComSAMLightClientCtrlLongValueTypeDrillMarkLineAsDotsActive 101
scComSAMLightClientCtrlLongValueTypeProtectedPen 102
scComSAMLightClientCtrlLongValueTypeShowToolBars 103
SC_SHOW_TOOLBAR_MAIN 0x1
SC_SHOW_TOOLBAR_CAMERA 0x2
SC_SHOW_TOOLBAR_VIEW_LEVEL 0x4
SC_SHOW_TOOLBAR_FUNC_OBJECTS 0x8
SC_SHOW_TOOLBAR_ALIGN 0x10
SC_SHOW_TOOLBAR_GEOM_OBJECTS 0x20
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 305
Long Value Types
SC_SHOW_TOOLBAR_EXTRAS 0x40
SC_SHOW_TOOLBAR_STEPPER 0x80
SC_SHOW_TOOLBAR_SURFACE 0x100
SC_SHOW_TOOLBAR_ANALOG_IN 0x200
scComSAMLightClientCtrlLongValueType1dMotfReverse 104
scComSAMLightClientCtrlLongValueTypeNewCciErrorReturn 105
scComSAMLightClientCtrlLongValueTypeAfterDefocusDelay 106
scComSAMLightClientCtrlLongValueTypeMarkMode 107
scComStandardDeviceMiscPenPathsAndMarkModeFlagSkipContour 0x10000
scComStandardDeviceMiscPenPathsAndMarkModeFlagSkipHatch1 0x20000
scComStandardDeviceMiscPenPathsAndMarkModeFlagSkipHatch2 0x30000
scComSAMLightClientCtrlLongValueTypeReverseSplitOrder 108
scComSAMLightClientCtrlLongValueTypeDisableSimulationMode 109
scComSAMLightClientCtrlLongValueTypeOpticAxisState 110
X-axis inverted 1
Y-axis inverted 2
X- & Y-axes inverted 3
XY-axis flipped 4
X-axis inverted & XY-axis flipped 5
Y-axis inverted & XY-axis flipped 6
X- & Y-axis inverted & XY-axis flipped 7
Z-axis inverted 8
X- & Z-axes inverted 9
Y- & Z-axes inverted 10
X-, Y- & Z-axes inverted 11
Z-axis inverted & XY-axis flipped 12
X- & Z-axes inverted & XY-axis flipped 13
Y- & Z-axes inverted & XY-axis flipped 14
X-, Y- & Z-axes inverted & XY-axis flipped 15
scComSAMLightClientCtrlLongValueType1DMotfCenter 111
scComSAMLightClientCtrlLongValueTypeIsCardAccesAllowed 112
scComSAMLightClientCtrlLongValueTypeMotionAxisType 113
scComSAMLightClientCtrlLongValueTypeStepAndRepeatTotalSteps 114
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarMode 115
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarModeSimulation 116
scComSAMLightClientCtrlLongValueTypeStepAndRepeatFirstMoveAxis 117
scComSAMLightClientCtrlLongValueTypeStepAndRepeatSecondMoveAxis 118
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarStepCountX 119
scComSAMLightClientCtrlLongValueTypeStepAndRepeatPlanarStepCountY 120
scComSAMLightClientCtrlLongValueTypeEnableStepAndRepeat 121
scComSAMLightClientCtrlLongValueTypeEnableBackgroundImage 122
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 306
Long Value Types
scComSAMLightClientCtrlLongValueTypeFirmwareStatus 123
scComSAMLightClientCtrlLongValueTypeOptoOutInvert 124
scComSAMLightClientCtrlLongValueTypeSplitMode 125
scComSAMLightClientCtrlLongValueTypeSplitMarkLoop 126
scComSAMLightClientCtrlLongValueTypeSplitKeepMarkFlag 127
scComSAMLightClientCtrlLongValueTypeSplitDoNotRecalculateSplitLines 128
scComSAMLightClientCtrlLongValueTypeSplitCogOverlappedLines 129
scComSAMLightClientCtrlLongValueTypeSplitEntityBasedOnlyTopLevel 130
scComSAMLightClientCtrlLongValueTypeSplitEntityBasedOnlyTopLevelSortAccordingToStartBorder 131
scComSAMLightClientCtrlLongValueTypeSplitEntityBasedOnlyTopLevelUngroupWinTextChars2D 132
scComSAMLightClientCtrlLongValueTypeSplitAllowPreSort 133
scComSAMLightClientCtrlLongValueTypeSplitMotfEndlessRepeat 134
scComSAMLightClientCtrlLongValueTypeIsMarkDialogOpen 135
scComSAMLightClientCtrlLongValueTypeEnableExternStop 136
scComSAMLightClientCtrlLongValueTypeEnableImprovedBeamCompensation 137
scComSAMLightClientCtrlLongValueTypeGetCameraCount 138
scComSAMLightClientCtrlLongValueTypeBackgroundImageFromFileUpdateInMs 139
scComSAMLightClientCtrlLongValueTypeBackgroundImage 140
scComSAMLightClientCtrlLongValueTypeImageFromFileUpdate 141
scComSAMLightClientCtrlLongValueTypeBackgroundImageCrop 142
scComSAMLightClientCtrlLongValueTypeDisableMessageBeep 143
scComSAMLightClientCtrlLongValueTypeEntityTransparency 144
scComSAMLightClientCtrlLongValueTypePrintOrientation 145
scComSAMLightClientCtrlLongValueTypePrintNumCopies 146
scComSAMLightClientCtrlLongValueTypeWorkpieceMovement 147
scComSAMLightClientCtrlLongValueType1DAllowMoreThan360 148
scComSAMLightClientCtrlLongValueTypeRingCenterSplits 149
scComSAMLightClientCtrlLongValueTypePixelMapType 150
scComSAMLightClientCtrlLongValueTypeEntityArrayPolarNumberOfCopies 151
scComSAMLightClientCtrlLongValueTypeEmonState 153
scComSAMLightClientCtrlLongValueTypeBmpKeepSize 154
scComSAMLightClientCtrlLongValueType3DImportSlcAsLineArrays 155
scComSAMLightClientCtrlLongValueTypeCopyCurrentPenToOtherPen 156
scComSAMLightClientCtrlLongValueTypeStepperPort 157
Table 390: Long Value Types
15.3 String Value Types
String Value Types
Description: List of String Value Types used by StringValue functions.
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 307
String Value Types
Type: int ID
Location: ScComSAMLightClientCtrlValueTypes
scComSAMLightClientCtrlStringValueTypeRs232BaudRate 1
scComSAMLightClientCtrlStringValueTypeRs232OutputString 2
scComSAMLightClientCtrlStringValueTypeRs232Mode 3
scComSAMLightClientCtrlStringValueTypeJobFileName 4
scComSAMLightClientCtrlStringValueTypeSaveView2D160 6
scComSAMLightClientCtrlStringValueTypeSaveView2D320 7
scComSAMLightClientCtrlStringValueTypeSaveView2DVariableSize 8
scComSAMLightClientCtrlStringValueTypeSaveView2DFull 9
scComSAMLightClientCtrlStringValueTypeEntityNameAtTopLevel 10
scComSAMLightClientCtrlStringValueTypeMotionString 11
scComSAMLightClientCtrlStringValueTypeSaveView2DAdjustableDPI 12
scComSAMLightClientCtrlStringValueTypeCorrectionFile 13
scComSAMLightClientCtrlStringValueTypeGetLastErrorMessageInput 14
scComSAMLightClientCtrlStringValueTypeGetLastInfoMessageInput 15
scComSAMLightClientCtrlStringValueTypeEntityNamesWithType 16
scComSAMLightClientCtrlStringValueTypeSetToTopLevelEntity 17
scComSAMLightClientCtrlStringValueTypeAsyncModeResult 18
scComSAMLightClientCtrlStringValueTypeStringPara1 19
scComSAMLightClientCtrlStringValueTypeStringPara2 20
scComSAMLightClientCtrlStringValueTypeSaveSplitsJobFileName 21
scComSAMLightClientCtrlStringValueTypeCurrentPenName 22
scComSAMLightClientCtrlStringValueTypeCorrectionFileHead2 23
scComSAMLightClientCtrlStringValueTypeSaveLayerAdjustableDPI 24
scComSAMLightClientCtrlStringValueTypeSaveView3DVariableSize 25
scComSAMLightClientCtrlStringValueTypeSaveView3DFull 26
scComSAMLightClientCtrlStringValueTypeBackgroundImagePath 27
scComSAMLightClientCtrlStringValueTypePenPixelMap 28
scComSAMLightClientCtrlStringValueTypeCorrectionFileLcf 29
scComSAMLightClientCtrlStringValueTypeCorrectionFileLcfLensInit 30
scComSAMLightClientCtrlStringValueTypeTrail 31
scComSAMLightClientCtrlStringValueTypeLoadStl 32
scComSAMLightClientCtrlStringValueTypeCurrentUserName 33
scComSAMLightClientCtrlStringValueTypeLanguage 34
scComSAMLightClientCtrlStringValueTypeEntityNamesWithTypeAsInSAMLight 35
scComSAMLightClientCtrlStringValueTypeCreateEntity 36
scComSAMLightClientCtrlStringValueTypeGroupingName 37
scComSAMLightClientCtrlStringValueTypeLoginUserAndPassword 38
scComSAMLightClientCtrlStringValueTypeCurrentCameraName 39
scComSAMLightClientCtrlStringValueTypeLicenseAsString 40
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 308
String Value Types
scComSAMLightClientCtrlStringValueTypeCciToolbar 41
scComSAMLightClientCtrlStringValueTypeControlCmdCW300 50
scComSAMLightClientCtrlStringValueTypeUserValue 20000 -
20009
scComSAMLightClientCtrlStringValueTypeCameraName 40000 -
40099
Table 391: String Value Types
15.4 Double Data ID
Double Data ID
Description: List of String Data IDs used by EntityDoubleData functions.
Constant ID
Location: ScComSAMLightClientCtrlFlags
ScSetEntityDoubleData() -
scComSAMLightClientCtrlDoubleDataIdFlagDontUpdateView 0x10000
scComSAMLightClientCtrlDoubleDataIdFlagDontUpdateEntity 0x20000
scComSAMLightClientCtrlDoubleDataIdFlagToplevelOnly 0x40000
scComSAMLightClientCtrlDoubleDataIdTextSize 1
scComSAMLightClientCtrlDoubleDataIdTextCharSpacing 2
scComSAMLightClientCtrlDoubleDataIdTextLengthLimit 3
scComSAMLightClientCtrlDoubleDataIdTextHeightLimit 4
scComSAMLightClientCtrlDoubleDataIdTextRadius 5
scComSAMLightClientCtrlDoubleDataIdTextStartAngle 6
scComSAMLightClientCtrlDoubleDataIdTextPointResolution 7
scComSAMLightClientCtrlDoubleDataIdTextBaseline 8
scComSAMLightClientCtrlDoubleDataIdTextRadialCenterX 9
scComSAMLightClientCtrlDoubleDataIdTextRadialCenterY 10
scComSAMLightClientCtrlDoubleDataIdTextLineSpacing 11
scComSAMLightClientCtrlDoubleDataIdBitmapIntensity 33
scComSAMLightClientCtrlDoubleDataIdBitmapBrightness 34
scComSAMLightClientCtrlDoubleDataIdBitmapDitherstep 35
scComSAMLightClientCtrlDoubleDataIdTextOrientation 36
scComSAMLightClientCtrlDoubleDataIdHatchDistance1 37
scComSAMLightClientCtrlDoubleDataIdHatchAngle1 38
scComSAMLightClientCtrlDoubleDataIdHatchMinjump1 39
scComSAMLightClientCtrlDoubleDataIdHatchStartoffset1 40
scComSAMLightClientCtrlDoubleDataIdHatchLinereduct1 41
scComSAMLightClientCtrlDoubleDataIdHatchEndoffset1 42
scComSAMLightClientCtrlDoubleDataIdHatchBeamcompensation1 43
scComSAMLightClientCtrlDoubleDataIdHatchNumloops1 44
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 309
Double Data ID
scComSAMLightClientCtrlDoubleDataIdHatchDistance2 45
scComSAMLightClientCtrlDoubleDataIdHatchAngle2 46
scComSAMLightClientCtrlDoubleDataIdHatchMinjump2 47
scComSAMLightClientCtrlDoubleDataIdHatchStartoffset2 48
scComSAMLightClientCtrlDoubleDataIdHatchLinereduct2 49
scComSAMLightClientCtrlDoubleDataIdHatchEndoffset2 50
scComSAMLightClientCtrlDoubleDataIdHatchBeamcompensation2 51
scComSAMLightClientCtrlDoubleDataIdHatchNumloops2 52
scComSAMLightClientCtrlDoubleDataIdBarcodeLinereduction 69
scComSAMLightClientCtrlDoubleDataIdMotfOffset 70
scComSAMLightClientCtrlDoubleDataIdEntityRotationAngle 71
scComSAMLightClientCtrlDoubleDataIdDataMatrixCellSizeX 72
scComSAMLightClientCtrlDoubleDataIdDataMatrixCellSizeY 73
scComSAMLightClientCtrlDoubleDataIdSpiral2DInnerRadius 74
scComSAMLightClientCtrlDoubleDataIdSpiral2DOuterRadius 75
scComSAMLightClientCtrlDoubleDataIdSpiral2DRise 76
scComSAMLightClientCtrlDoubleDataIdEllipse2DRadiusX 77
scComSAMLightClientCtrlDoubleDataIdEllipse2DRadiusY 78
scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterX 79
scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterY 80
scComSAMLightClientCtrlDoubleDataIdDataMatrixQuietZoneX 81
scComSAMLightClientCtrlDoubleDataIdDataMatrixQuietZoneY 82
scComSAMLightClientCtrlDoubleDataIdHatchPointOffset1 83
scComSAMLightClientCtrlDoubleDataIdHatchMinLength1 84
scComSAMLightClientCtrlDoubleDataIdHatchPointOffset2 85
scComSAMLightClientCtrlDoubleDataIdHatchMinLength2 86
scComSAMLightClientCtrlDoubleDataIdDataMatrixDistanceBetweenDots 87
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationOffsetX 88
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationOffsetY 89
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationScaleX 90
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationScaleY 91
scComSAMLightClientCtrlDoubleDataIdSecondaryHeadTransformationRotation 92
scComSAMLightClientCtrlDoubleDataIdHatchLineIndexStep1 93
scComSAMLightClientCtrlDoubleDataIdHatchLineIndexStep2 94
scComSAMLightClientCtrlDoubleDataIdHatchVarAngle1 95
scComSAMLightClientCtrlDoubleDataIdHatchVarAngle2 96
scComSAMLightClientCtrlDoubleDataIdGetMotionCtrlPos 97
ScComSAMLightClientCtrlDoubleDataIdEllipse2DSegmentCount 98
scComSAMLightClientCtrlDoubleDataIdHatchLoopAngle1 99
scComSAMLightClientCtrlDoubleDataIdHatchLoopAngle2 100
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidUpDownSkinBeamComp 101
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 310
Double Data ID
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidMinUpSkinArea 102
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidMinDownSkinArea 103
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidReduceUp 104
scComSAMLightClientCtrlDoubleDataIdHatchLayerSolidReduceDown 105
scComSAMLightClientCtrlDoubleDataIdRectangle2DEdgeRadius 106
scComSAMLightClientCtrlDoubleDataIdRectangle2DEdgeRadiusSegmentCount 107
scComSAMLightClientCtrlDoubleDataIdEllipse2DStartAngle 108
scComSAMLightClientCtrlDoubleDataIdEllipse2DDeltaAngle 109
scComSAMLIghtClientCtrlDoubleDataIdBitmapOneToOne 110
scComSAMLightClientCtrlDoubleDataIdEntityRotationCenterX 111
scComSAMLightClientCtrlDoubleDataIdEntityRotationCenterY 112
Table 392: Double Data ID
15.5 Long Data ID
Long Data ID
Description: List of String Data IDs used by EntityLongData functions.
Type: int ID
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlLongDataIdFlagDontUpdateView 0x10000 -
scComSAMLightClientCtrlLongDataIdFlagDontUpdateEntity 0x20000
scComSAMLightClientCtrlLongDataIdFlagToplevelOnly 0x200000
scComSAMLightClientCtrlLongDataIdFlagEnqueueCtrlCmd 0x80000
scComSAMLightClientCtrlLongDataIdFlagEnqueueLastCtrlCmd 0x100000
scComSAMLightClientCtrlLongDataIdUserData 1
scComSAMLightClientCtrlLongDataIdTextAlignment 2
scComSAMLightClientCtrlTextAlignmentCenter 0x1
scComSAMLightClientCtrlTextAlignmentLeft 0x2
scComSAMLightClientCtrlTextAlignmentRight 0x4
scComSAMLightClientCtrlTextAlignmentTop 0x8
scComSAMLightClientCtrlTextAlignmentBottom 0x10
scComSAMLightClientCtrlTextAlignmentMiddle 0x20
scComSAMLightClientCtrlTextAlignmentRadialCenter 0x40
scComSAMLightClientCtrlTextAlignmentRadialEnd 0x80
scComSAMLightClientCtrlTextAlignmentLineLeft 0x100
scComSAMLightClientCtrlTextAlignmentLineRight 0x200
scComSAMLightClientCtrlTextAlignmentLineCenter 0x400
scComSAMLightClientCtrlLongDataIdEntitySelected 3
scComSAMLightClientCtrlLongDataIdEntityArrayCountX 4
scComSAMLightClientCtrlLongDataIdEntityArrayCountY 5
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 311
Long Data ID
scComSAMLightClientCtrlLongDataIdEntityArrayStepX 6
scComSAMLightClientCtrlLongDataIdEntityArrayStepY 7
scComSAMLightClientCtrlLongDataIdEntityArrayOrderFlags 8
scComSAMLightClientCtrlEntityArrayOrderFlagNegX 0x100
scComSAMLightClientCtrlEntityArrayOrderFlagNegY 0x200
scComSAMLightClientCtrlEntityArrayOrderFlagMainDirX 0x400
scComSAMLightClientCtrlEntityArrayOrderFlagBiDir 0x800
scComSAMLightClientCtrlLongDataIdTextCharFlags 9
scComSAMLightClientCtrlLongDataIdTextCharFlagMonoSpaced 0x3
scComSAMLightClientCtrlLongDataIdTextCharFlagItalic 0x10000
scComSAMLightClientCtrlLongDataIdTextCharFlagRadial 0x20000
scComSAMLightClientCtrlLongDataIdTextCharFlagRadialAlignToCharOutline 0x40000
scComSAMLightClientCtrlLongDataIdTextCharFlagReverseOrder 0x80000
scComSAMLightClientCtrlLongDataIdTextCharFlagMirrorCharOnXAxis 0x100000
scComSAMLightClientCtrlLongDataIdTextCharFlagMirrorCharOnYAxis 0x200000
scComSAMLightClientCtrlLongDataIdTextCharFlagSwapLines 0x400000
scComSAMLightClientCtrlLongDataIdTextCharFlagSetToLimitLength 0x800000
scComSAMLightClientCtrlLongDataIdTextCharFlagSetToLimitHeight 0x100000
0
scComSAMLightClientCtrlLongDataIdTextCharFlagSetToLimitKeepAspect 0x200000
0
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderXDown 0x400000
0
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderYUp 0x800000
0
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderYMainUp 0x10000000
scComSAMLightClientCtrlLongDataIdTextCharFlagOrderBiDir 0x20000000
scComSAMLightClientCtrlLongDataIdTextCharFlagRadialCenterMode 0x40000000
scComSAMLightClientCtrlLongDataIdTextCharFlagMergeCharacterOutline 0x80000000
scComSAMLightClientCtrlLongDataIdTextFontAvailable 10
scComSAMLightClientCtrlLongDataIdBitmapMode 49
scComSAMLightClientCtrlLongDataIdBitmapModeInvert 0x1
scComSAMLightClientCtrlLongDataIdBitmapModeGreyscale 0x2
scComSAMLightClientCtrlLongDataIdBitmapModeDrillmode 0x4
scComSAMLightClientCtrlLongDataIdBitmapModeBidirectional 0x8
scComSAMLightClientCtrlLongDataIdBitmapModeStartlastline 0x10
scComSAMLightClientCtrlLongDataIdBitmapModeNolineincr 0x20
scComSAMLightClientCtrlLongDataIdBitmapModeShowBitmap 0x100
scComSAMLightClientCtrlLongDataIdBitmapModeShowScanner 0x200
scComSAMLightClientCtrlLongDataIdBitmapModeScanXDir 0x400
scComSAMLightClientCtrlLongDataIdBitmapModePenFrequency 0x800
scComSAMLightClientCtrlLongDataIdBitmapModeJumpOverBlankPixels 0x1000
scComSAMLightClientCtrlLongDataIdBitmapModeDrillGreyscale 0x2000
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 312
Long Data ID
scComSAMLightClientCtrlLongDataIdTextWeight 50
scComCharWeightThin 100
scComCharWeightExtraLight 200
scComCharWeightLight 300
scComCharWeightNormal 400
scComCharWeightMedium 500
scComCharWeightSemiBold 600
scComCharWeightBold 700
scComCharWeightExtraBold 800
scComCharWeightHeavy 900
scComSAMLightClientCtrlLongDataIdEnableHatching1 51
scComSAMLightClientCtrlLongDataIdEnableHatching2 52
scComSAMLightClientCtrlLongDataIdEntityMarkLoopCount 55
scComSAMLightClientCtrlLongDataIdEntityMarkBeatCount 56
scComSAMLightClientCtrlLongDataIdEntityMarkStartCount 57
scComSAMLightClientCtrlLongDataIdEntityMarkFlags 58
scComSAMLightClientCtrlLongDataIdEntityMarkFlagMarkContour 0x1
scComSAMLightClientCtrlLongDataIdEntityMarkFlagMarkHatch 0x2
scComSAMLightClientCtrlLongDataIdEntitySetPen 60
scComSAMLightClientCtrlLongDataIdEntitySetTimerValue 61
scComSAMLightClientCtrlLongDataIdEntitySetInOutValue 62
scComSAMLightClientCtrlLongDataIdEntitySetOutputPulse 64
scComSAMLightClientCtrlLongDataIdEntitySetInOutLevel 65
scComSAMLightClientCtrlLongDataIdEntityGetTimerValue 66
scComSAMLightClientCtrlLongDataIdEntityGetInOutValue 67
scComSAMLightClientCtrlLongDataIdEntityGetOutputPulse 69
scComSAMLightClientCtrlLongDataIdEntityGetInOutLevel 70
scComSAMLightClientCtrlLongDataIdEntitySerialStartValue 71
scComSAMLightClientCtrlLongDataIdEntitySerialIncrValue 72
scComSAMLightClientCtrlLongDataIdEntitySerialCurrValue 73
scComSAMLightClientCtrlLongDataIdEntityGetPen 74
scComSAMLightClientCtrlLongDataIdEntityOpticFlags 75
scComSAMLightClientCtrlLongDataIdEntityOpticFlagContour 0x1
scComSAMLightClientCtrlLongDataIdEntityOpticFlagHatch 0x2
scComSAMLightClientCtrlLongDataIdEntitySplittable 76
scComSAMLightClientCtrlLongDataIdEntitySerialNumLines 77
scComSAMLightClientCtrlLongDataIdEntitySetAsBackgroundEntity 78
scComSAMLightClientCtrlLongDataIdEntitySerialBeatCount 79
scComSAMLightClientCtrlLongDataIdEntitySerialResetCount 80
scComSAMLightClientCtrlLongDataIdSetHatchFlags1 81
scComSAMLightClientCtrlLongDataIdSetHatchFlags2 82
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 313
Long Data ID
scComSAMLightClientCtrlLongDataIdClearHatchFlags1 91
scComSAMLightClientCtrlLongDataIdClearHatchFlags2 92
scComSAMLightClientCtrlLongDataIdHatchFlagNoSort 0x100
scComSAMLightClientCtrlLongDataIdHatchFlagAllLines 0x400
scComSAMLightClientCtrlLongDataIdHatchFlagPolyLineBeamComp 0x2000
scComSAMLightClientCtrlLongDataIdHatchFlagDontFillRest 0x4000
scComSAMLightClientCtrlLongDataIdHatchFlagKeepAngle 0x80000
scComSAMLightClientCtrlLongDataIdHatchFlagEqualizeDistance 0x100000
0
scComSAMLightClientCtrlLongDataIdHatchFlagBeamCompLoopReverseOrder 0x200000
0
scComSAMLightClientCtrlLongDataIdBarcodeSetFlags 101
scComSAMLightClientCtrlLongDataIdBarcodeClearFlags 102
scComSAMLightClientCtrlLongDataIdBarcodeFlagVariableLength 0x1
scComSAMLightClientCtrlLongDataIdBarcodeFlagInvert 0x2
scComSAMLightClientCtrlLongDataIdBarcodeFlagDisableAutoQuietZone 0x4
scComSAMLightClientCtrlLongDataIdBarcodeFlagQuietZoneAbsolute 0x8
scComSAMLightClientCtrlLongDataIdBarcodeFlagGenerateCheckCode 0x10
scComSAMLightClientCtrlLongDataIdBarcodeFlagInvertExceptText 0x20
scComSAMLightClientCtrlLongDataIdBarcodeFlagInvertCellMode 0x40
scComSAMLightClientCtrlLongDataIdBarcodeFlagCompactMode 0x80
scComSAMLightClientCtrlLongDataIdBarcodeFlagUseUtf8 0x800
scComSAMLightClientCtrlLongDataIdDataMatrixSetSymbolMode 103
scComSAMLightClientCtrlLongDataIdDataMatrixClearSymbolMode 104
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeRectangle 0x1
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeAutoSize 0x10000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeAutoEncodatio 0x20000
n
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeDots 0x40000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeTilde 0x80000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeCells 0x100000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeNoFinderCells 0x200000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeEllipse 0x400000
scComSAMLightClientCtrlLongDataIdDataMatrixExSymbolModeTextFreelyEdita 0x800000
ble
scComSAMLightClientCtrlLongDataIdDataMatrixSymbolSize 105
scComSAMLightClientCtrlLongDataIdDataMatrixEncoding 106
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationAscii 1
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationBase256 2
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationC40 3
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationText 4
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationAnsiX12 5
scComSAMLightClientCtrlLongDataIdDataMatrixExEncodationEdifact 6
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 314
Long Data ID
scComSAMLightClientCtrlLongDataIdDataBarcodeTextEnable 107
scComSAMLightClientCtrlLongDataIdDataBarcodeLevel 108
scComSAMLightClientCtrlLongDataIdDataBarcodeMode 109
scComSAMLightClientCtrlLongDataIdDataBarcodeSize 110
scComSAMLightClientCtrlLongDataIdEntityLayerCount 111
scComSAMLightClientCtrlLongDataIdEntitySetAsHiddenEntity 112
scComSAMLightClientCtrlLongDataIdSpiralNumInnerRotations 113
scComSAMLightClientCtrlLongDataIdSpiralNumOuterRotations 114
scComSAMLightClientCtrlLongDataIdSpiralNumOuterSegments 115
scComSAMLightClientCtrlLongDataIdSpiralFlags 116
Clockwise 0x1
Start from Outer 0x2
Set Return Path 0x4
Use NumSeg for every rotation 0x8
scComSAMLightClientCtrlLongDataIdEntitySerialNumModesFlags 117
scComSerialNumber2DModeText 0x1
scComSerialNumber2DModeBarCode 0x2
scComSerialNumber2DModeASCIIFile 0x4
scComSerialNumber2DModeDateTime 0x8
scComSerialNumber2DModeCustomFormat 0x10
scComSAMLightClientCtrlLongDataIdEntityGroupPenPaths 118
scComSAMLightClientCtrlLongDataIdEntityGroupCluster 119
scComSAMLightClientCtrlLongDataIdEntityMirrorOnPlane 120
scComSAMLightClientCtrlLongDataIdEntityOutputAsBitmap 121
scComSAMLightClientCtrlLongDataIdBitmapBlankThreshold 122
scComSAMLightClientCtrlLongDataIdBitmapLineIndexStep 123
scComSAMLightClientCtrlLongDataIdDataMatrixNumberOfDots 124
scComSAMLightClientCtrlLongDataIdEntityGenerate 125
scComSAMLightClientCtrlLongDataIdEnableControl 126
scComSAMLightClientCtrlLongDataIdQrCodeExSetMode 127
scComSAMLightClientCtrlLongDataIdQrCodeExClearMode 128
scComSAMLightClientCtrlLongDataIdQrCodeExModeDots 0x1
scComSAMLightClientCtrlLongDataIdQrCodeExModeCells 0x100000
scComSAMLightClientCtrlLongDataIdQrCodeExModeTextFreelyEditable 0x800000
scComSAMLightClientCtrlLongDataIdEntityCenter 129
scComSAMLightClientCtrlLongDataIdEntityChangeable 130
scComSAMLightClientCtrlLongDataIdEntityRedpointer 131
scComSAMLightClientCtrlLongDataIdEntityJump 132
scComSAMLightClientCtrlLongDataIdEntitySetToDefaultHatchPair 133
scComSAMLightClientCtrlLongDataIdHatchLoop1 134
scComSAMLightClientCtrlLongDataIdHatchLoop2 135
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 315
Long Data ID
scComSAMLightClientCtrlLongDataIdHatchLayerSolidNumLoops 136
scComSAMLightClientCtrlLongDataIdHatchLayerSolidPointOffset 137
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHigh 138
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHighLimitLength 0x1
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHighLimitHeight 0x2
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHighKeepAspect 0x4
scComSAMLightClientCtrlLongDataIdBarcodeFlagsHigh 0x8A
scComSAMLightClientCtrlLongDataIdHatchLayerSolidBeamCompOutToIn 139
scComSAMLightClientCtrlLongDataIdEntityNonMarkableEntity 140
scComSAMLightClientCtrlLongDataIdEntityNonEditableEntity 141
scComSAMLightClientCtrlLongDataIdEntityNonSplittablePre 142
scComSAMLightClientCtrlLongDataIdEntityNonSplittablePost 143
scComSAMLightClientCtrlLongDataIdUseMMForSpacing 144
scComSAMLightClientCtrlLongDataIdUseMMforLineSpacing 145
scComSAMLightClientCtrlLongDataIdEntityIoControlObjectMask 146
scComSAMLightClientCtrlLongDataIdEntityIoControlObjectStates 147
scComSAMLightClientCtrlLongDataIdEntityOpenPolyline 148
scComSAMLightClientCtrlLongDataIdEntityStyle 149
scComSAMLightClientCtrlLongDataIdManualHead 150
scComSAMLightClientCtrlLongDataIdConvertToSingleLayer 151
Table 393: Long Data ID
15.6 String Data ID
Entity String Data ID
Description: List of String Data IDs used by EntityStringData.
Type: int ID
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdFlagDontUpdateView 0x10000 -
scComSAMLightClientCtrlStringDataIdFlagDontUpdateEntity 0x20000
scComSAMLightClientCtrlStringDataIdFlagToplevelOnly 0x200000
scComSAMLightClientCtrlStringDataIdTextFontName 1
scComSAMLightClientCtrlStringDataIdTextText 2
scComSAMLightClientCtrlStringDataIdGetToplevelEntity 17
scComSAMLightClientCtrlStringDataIdFindEntityWithText 18
scComSAMLightClientCtrlStringDataIdSetBarcodeType 19
scComSAMLightClientCtrlStringDataIdGetBarcodeType 20
scComSAMLightClientCtrlStringDataIdEntitySerialASCIIFileName or 24
scComSAMLightClientCtrlStringDataIdEntitySerialExcelFileName
scComSAMLightClientCtrlStringDataIdSetToplevelEntity 25
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 316
Entity String Data ID
scComSAMLightClientCtrlStringDataIdSetMotionCtrls 26
scComSAMLightClientCtrlStringDataIdSerialNumberFormatString 27
scComSAMLightClientCtrlStringDataIdArrayCopyHard 28
scComSAMLightClientCtrlStringDataIdTranslate 29
scComSAMLightClientCtrlStringDataIdRotate 30
scComSAMLightClientCtrlStringDataIdOutlineAndRotate 31
scComSAMLightClientCtrlStringDataIdBarCodeFormatString 32
scComSAMLightClientCtrlStringDataIdSetMotionCtrlsString 33
scComSAMLightClientCtrlStringDataIdSpecialPenAndMore 34
scComSAMLightClientCtrlStringDataIdExportScannerBmp 36
scComSAMLightClientCtrlStringDataIdMoveEntityBefore 37
scComSAMLightClientCtrlStringDataIdMoveEntityAfter 38
scComSAMLightClientCtrlStringDataIdArrayPolarCopyHard 39
Table 394: Entity String Data ID
ID String Data ID
Description: List of String Data IDs used by IDStringData.
Type: int ID
Location: ScComSAMLightClientCtrlFlags
scComSAMLightClientCtrlStringDataIdGetEntityName 21
scComSAMLightClientCtrlStringDataIdGetEntityType 22
scComSAMLightClientCtrlStringDataIdSetEntityName 23
scComSAMLightClientCtrlStringDataIdGetEntityTypeAsInSAMLight 35
Table 395: ID String Data ID
15.7 Cmd ID
Cmd ID
Description: List of Cmd IDs used by the Exec Command function.
Type: int ID
Location: ScComSAMLightClientCtrlExecCommandConstants
scComSAMLightClientCtrlExecCommandTest 1
scComSAMLightClientCtrlExecCommandResetSequence 2
scComSAMLightClientCtrlExecCommandNewJob 3
scComSAMLightClientCtrlExecCommandFitViewToWorkingArea 4
scComSAMLightClientCtrlExecCommandFitViewToAllEntities 5
scComSAMLightClientCtrlExecCommandFitViewToSelectedEntities 6
scComSAMLightClientCtrlExecCommandResetCounter 7
scComSAMLightClientCtrlExecCommandResetSerialNumber 8
scComSAMLightClientCtrlExecCommandUpdateScannerPos 9
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 317
Cmd ID
scComSAMLightClientCtrlExecCommandAutoCompensateOff 10
scComSAMLightClientCtrlExecCommandAutoCompensateRef 11
scComSAMLightClientCtrlExecCommandAutoCompensateCal 12
scComSAMLightClientCtrlExecCommandResplitJob 13
scComSAMLightClientCtrlExecCommandMotionStopMove 14
scComSAMLightClientCtrlExecCommandMotionHome 15
scComSAMLightClientCtrlExecCommandMotionGo 16
scComSAMLightClientCtrlExecCommandMotionSendString 17
scComSAMLightClientCtrlExecCommandMotionUpdatePos 18
scComSAMLightClientCtrlExecCommandStopExecution 19
scComSAMLightClientCtrlExecCommandRedPointerStart 20
scComSAMLightClientCtrlExecCommandRedPointerStop 21
scComSAMLightClientCtrlExecCommandUpdateViewNow 22
scComSAMLightClientCtrlExecCommandIncSerialNumber 23
scComSAMLightClientCtrlExecCommandDecSerialNumber 24
scComSAMLightClientCtrlExecCommandView3DViewIso 26
scComSAMLightClientCtrlExecCommandRehatchAll 28
scComSAMLightClientCtrlExecCommandWizardCreateSinglePenGroup 29
scComSAMLightClientCtrlExecCommandSaveSplitsAsOrigEntities 30
scComSAMLightClientCtrlExecCommandWizardDataReductionRedundantPoints 31
scComSAMLightClientCtrlExecCommandCreateBeamCompedCopy 37
scComSAMLightClientCtrlExecCommandSaveSplitsAsEntities 38
scComSAMLightClientCtrlExecCommandCheckIfJobIsInField 40
scComSAMLightClientCtrlExecCommandExitTriggerMode 41
scComSAMLightClientCtrlExecCommandWizardDataReductionShortLines 42
scComSAMLightClientCtrlExecCommandWizardClipper 43
scComSAMLightClientCtrlExecCommandDisableSplit 44
scComSAMLightClientCtrlExecCommandSetMotfFixed 45
scComSAMLightClientCtrlExecCommandSetMotfBmp 46
scComSAMLightClientCtrlExecCommandLogout 47
scComSAMLightClientCtrlExecCommandOpenMarkDialog 48
scComSAMLightClientCtrlExecCommandCloseMarkDialog 49
scComSAMLightClientCtrlExecCommandCorrectSamLight 50
scComSAMLightClientCtrlExecCommandSaveSettingsNow 51
scComSAMLightClientCtrlExecCommandSortJobByName 52
scComSAMLightClientCtrlExecCommandSetMotf 53
scComSAMLightClientCtrlExecCommandUndo 54
scComSAMLightClientCtrlExecCommandWizardOrder 55
scComSAMLightClientCtrlExecCommandWizardCreateOneGroup 57
scComSAMLightClientCtrlExecCommandStoreFlashSettings 58
scComSAMLightClientCtrlExecCommandGroupEntities 59
© 2024 SCAPS GmbH
Client Control Interface Manual - List of Constants 318
Cmd ID
scComSAMLightClientCtrlExecCommandUngroupEntities 60
scComSAMLightClientCtrlExecCommandWizardClosePolylines 61
scComSAMLightClientCtrlExecCommandWizardOptimizeJumps 62
scComSAMLightClientCtrlExecCommandWizardCreatePenGroups 63
scComSAMLightClientCtrlExecCommandLoadHeadFromUSC3 64
scComSAMLightClientCtrlExecCommandAddPointToCreateEntityPolyline 65
scComSAMLightClientCtrlExecCommandAddPolylineToCreateEntityPolyline 66
scComSAMLightClientCtrlExecCommandAutosplitOn 67
scComSAMLightClientCtrlExecCommandAutosplitOff 68
scComSAMLightClientCtrlExecCommandDoAutosplit 69
scComSAMLightClientCtrlExecCommandSetCrop 70
scComSAMLightClientCtrlExecCommandSetBackgroundPoints 71
scComSAMLightClientCtrlExecCommandGetCrop 72
scComSAMLightClientCtrlExecCommandGetBackgroundPoints 73
scComSAMLightClientCtrlExecCommandPrintDirect 74
scComSAMLightClientCtrlExecCommandReApplyAllStyles 75
scComSAMLightClientCtrlExecCommandGenerateBackupZip 76
scComSAMLightClientCtrlExecCommandSaveSettingsNow 77
scComSAMLightClientCtrlExecCommandSetRingBmp 78
scComSAMLightClientCtrlExecCommandSaveLcfFile 79
scComSAMLightClientCtrlExecCommandCopyHatch 80
Table 396: Cmd ID
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 319
16 Implementation
In general, CCI can be used with any programming environment of your choice. SAMLight offers three
interfaces for remote control which differ in the configuration, communication and return value handling.
Always configure the remote settings in SAMLight (Settings - System - Remote) for the desired interface
(local function calls, remote TCP or remote ASCII) first. Then, proceed as follows depending on your chosen
interface.
· OCX (ActiveX):
o Initialize COM
o Instantiate ActiveX control [Link]
o If TCP, connect via ScOpenTCPConnection
o Call desired functions
· COM (CCI Ex):
o Initialize COM
o Create instance of [Link] object
o If TCP, connect via ScOpenTCPConnection
o Call desired functions
· ASCII (plain text):
o Open TCP connection to configured IP and Port
o Send commands in the configured code page, with end character <LF>
o Wait for end character <LF> in return data, interpret return string
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 320
16.1 OCX (ActiveX)
1. OCX CCI Function Commands via Function Calls
· SAMLight can be controlled by a CCI application running on the same PC:
· SAMLight Settings System Remote Function Calls must be enabled.
· The client application can use all Function commands, see DLL Commands.
2. OCX CCI Function commands via TCP
· SAMLight can be controlled by a CCI application running on a different PC. The SAM DLL (included
in the SAMLight installer must be installed on the remote controlling PC, meaning that both system
need to be a Windows PC.
· Both Windows PCs are connected via TCP (Ethernet).
· SAMLight Settings System Remote:
o TCP must be enabled.
o IP Address must be one of the available IP addresses of the PC on which SAMLight is running
and is independent of the IP of the sender of the CCI commands. Use [Link] to allow remote
control from any IP or [Link] for local host.
· The client application can use all Function commands, see DLL Commands.
· If MultiInstance is used with two or more instances of SAMLight which should be controlled by one
CCI application, different TCP connections ([Link], different Ports) have to be set in every
instance of SAMLight together with two or more SAMLight Client Control OCX with different names
in the CCI application. If just one TCP connection is closed by ScCloseEthernetConnection(), then
TCP mode is also getting disabled and CCI switches to function call mode, which could lead to
incorrect CCI function return values. So it is better to close all TCP connection and eventually
reopen them all again.
· Client Control has to be initialized at a STAThread. Otherwise windows will create a temporary
STAThread, which will be closed automatically after 5 minutes.
Steps for the custom program to use OCX (ActiveX) CCI:
· Initialize COM
· Instantiate ActiveX control [Link]
· If TCP, connect via ScOpenTCPConnection
· Call desired functions
© 2024 SCAPS GmbH
Figure 1 illustrates how to use [Link] with Microsoft Visual Studio: This SAMLight
Client Control implementation is simply linked via drag and drop of the SAMLight Client Control ocx onto the
form of the SAMLight Client Control application.
Client Control Interface Manual - Implementation 321
Figure 1: CCI OCX implementation for C# in Microsoft Visual Studio
The possible return values of the SAMLight Client Control function calls are normally just 0 or 1, but can
also be a long, double or string value.
OCX CCI error Name Description
0 NOK Command did not work
1 OK Command did work
Table 397: OCX CCI function error return values
With the CCI command NewCciErrorReturn the extended error mode can be enabled. Possible function
error return values for more detailed error analysis are:
OCX CCI error Name Description
-10000 IDispatch error #17 no named entity found
-10001 IDispatch error #18 job is empty
-10002 IDispatch error #19 function returned 0 (not ok)
-10003 IDispatch error #20 not allowed in 3D mode
-10004 IDispatch error #22 no valid license
-10006 IDispatch error #24 object out of field
Table 398: OCX CCI function extended error return values
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 322
The maximum size of individual strings in TCP mode is 511 characters.
Note on versions: sc_samlight_client_ctrl.ocx, since installer 3.3.5 Build 232 to 3.4.5 Build 148 also a 64 bit
version is available: sc_samlight_client_ctrl_x64.ocx. Because of a 8.3 filename convention problem with
sc_samlight_client_ctrl.ocx the name of the 64 bit version was changed to sc_x64_samlight_client_ctrl.ocx
with installer 3.4.5 Build 149.
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 323
16.2 COM (CCI Ex)
1. COM CCI Function Commands via Function Calls
· SAMLight can be controlled by a CCI application running on the same PC:
· SAMLight Settings System Remote Function Calls must be enabled.
· The client application can use all Function commands, see DLL Commands.
2. COM CCI Function commands via TCP
· SAMLight can be controlled by a CCI application running on a different PC. The SAM DLL (included
in the SAMLight installer must be installed on the remote controlling PC, meaning that both system
need to be a Windows PC.
· Both Windows PCs are connected via TCP (Ethernet).
· SAMLight Settings System Remote:
o TCP must be enabled.
o IP Address must be one of the available IP addresses of the PC on which SAMLight is running
and is independent of the IP of the sender of the CCI commands. Use [Link] to allow remote
control from any IP or [Link] for local host.
· The client application can use all Function commands, see DLL Commands.
· If MultiInstance is used with two or more instances of SAMLight which should be controlled by one
CCI application, different TCP connections ([Link], different Ports) have to be set in every
instance of SAMLight together with two or more SAMLight Client Control OCX with different names
in the CCI application. If just one TCP connection is closed by ScCloseEthernetConnection(), then
TCP mode is also getting disabled and CCI switches to function call mode, which could lead to
incorrect CCI function return values. So it is better to close all TCP connection and eventually
reopen them all again.
Steps for the custom program to use COM (CCI Ex) CCI:
· Initialize COM
· Create instance of [Link] object
· If TCP, connect via ScOpenTCPConnection
· Call desired functions
For the COM (CCI Ex) Mode, there will be no CCI_Return for set and get functions. The returns
are HRESULTS in the case of any exceptions.
© 2024 SCAPS GmbH
Figure 2 illustrates how to use [Link] with Microsoft Visual Studio: SAMLight Client
Control Ex is added via Reference.
Client Control Interface Manual - Implementation 324
Figure 2: CCI COM implementation for C# in Microsoft Visual Studio
The possible HRESULT function error return values for more detailed error analysis are:
COM CCI HRESULT Name Description
0x80040200 Unknown error please inform SCAPS by e-mail: info@[Link]
0x80040201 IDispatch error #1 an event could not call a subscriber: Samlight unavailable
0x80040202 IDispatch error #2 tcp timed out
0x80040211 IDispatch error #17 no named entity found
0x80040212 IDispatch error #18 job is empty
0x80040213 IDispatch error #19 function returned 0 ( not ok )
0x80040214 IDispatch error #20 not allowed in 3D mode
0x80040215 IDispatch error #21 no outline because entities are empty
0x80040216 IDispatch error #22 no valid license
Table 399: COM CCI HRESULT function error return values
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 325
Under C#, if one of these HRESULT are returned by a ScSamlightClientCtrlEx function, the C# RCW
(runtime callable wrapper) of the function converts this error (facility ITF) into a corresponding .Net COM
Exception, containing the information above.
The maximum size of individual strings in TCP mode is 511 characters.
Note on versions: SAMLight Client Control Ex with Ex for Extended, included since version 3.5.5 build 0002:
32 bit version sc_ex_samlight_client_ctrl.dll and 64 bit version sc_ex64_samlight_client_ctrl.dll.
16.3 ASCII (plain text)
CCI ASCII commands via TCP
· SAMLight can be controlled by a CCI application running on a different system which does not need
to be a Windows PC.
· The system and the Windows PC are connected via TCP (Ethernet)
· SAMLight Settings System Remote:
o TCP must be enabled.
o ASCII Communication Mode must be enabled.
o IP Address must be one of the available IP addresses of the PC on which SAMLight is running
and is independent of the IP of the sender of the CCI commands. Use [Link] to allow remote
control from any IP or [Link] for local host.
o Port can be freely chosen. Use 23 for standard Telnet port.
o ASCII mode code page can be set to an ASCII or Unicode code page.
· The client application can use all ASCII Commands.
Steps for the custom program to use ASCII (plain text) CCI:
· Open TCP connection to configured IP and Port
· Send commands in the configured code page, with end character <LF>
· Wait for end character <LF> in return data, interpret return string
ASCII CCI
Command to SAMLight Return from SAMLight
New line End of command New line End of return
[a] <LF> <CR><LF> [b] <LF>
\r\n
Table 400: ASCII CCI new line, end of command and end of return control characters.
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 326
[a]: \r\n as text, four ASCII chars: 0x5C 0x72 0x5C 0x6E
[b]: For ASCII CCI: It is possible to receive multi-line strings, but only if the program do not interpret the
<LF> in new line (<CR><LF>) as the end of the return.
The maximum size of a command is 20000 bytes, since version 4.2.5 build 0026.
ASCII character Name Dec Hex Description
<LF> Line Feed 10 0A The end character is the <LF> character. Example:
(one character) · Cmd to SAMLight: ScCciShowApp(1)<LF>
· Return from SAMLight: 1<LF>
, Comma 44 2C Commas are used as separator between
parameters. Example:
ScCciGetEntityStringData("a", 2)<LF>
" Quotation Mark 34 22 Strings must be enclosed by Quotation Marks. A
Quotation Mark in a string must be escaped by an
other Quotation Mark. Example:
ScCciSetEntityStringData("a", 2, "She said,
""Yes""!"<LF>
. Full Stop 46 2E Full Stop is used as decimal separator.
Example: ScCciRotateEntity(string "a", 0.0, 0.0,
12.733)<LF>
\n Backslash + n 92 110 5C 6E Sending \n as text in a non path string parameter to
(as text, two chars) SAMLight will be replaced with <LF>. Example:
ScCciSetEntityStringData("a", 2, "first
line\r\nsecond line")<LF>
\r Backslash + r 92 114 5C 72 Sending \r as text in a non path string parameter to
(as text, two chars) SAMLight will be replaced with <CR>. Example:
ScCciSetEntityStringData("a", 2, "first
line\r\nsecond line")<LF>
Table 401: Control characters for ASCII CCI
16.4 cci.
In our program examples we start our commands always via "cci.". But this is no default setup and has to be
defined in the MS Visual Studio.
During the Implementation (see OCX) you drag and drop the OCX library into the Studio Form1. If you
choose this object and open the properties dialog you can define as name cci.
© 2024 SCAPS GmbH
Client Control Interface Manual - Implementation 327
Figure 3: cci. setup
17 Programming Examples
17.1 Create beam-compensated Copy of Entity
The following examples shows how to create a beam compensated copy of an entity.
Create beam compensated copy of entity (ScWinTextChars2D)
//define the original entity from which the copy should be created
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara1, "OriginalEntity" );
//define the entity for the copy
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeStringPara2,"BeamCompedEntity" );
//define the distance parameter for the beam compensation itself
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 328
Create beam compensated copy of entity (ScWinTextChars2D)
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 0.1 );
//create the beam compensated copy of the original entity
[Link]( ( int )
[Link] )
Table 402: Create beam compensated copy
17.2 Create screenshot of SAMLight View2D
The following examples shows how to create a screenshot of the Viewo2D in SAMLight.
Create screenshot of View2D
// set path here, for example [Link]( [Link] );
string path =
// generating fixed size colored View2D screenshots with SAMLight Windows opened in background
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2D160, path + "\
\[Link]" );
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2D320, path + "\
\[Link]" );
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2DFull, path + "\
\[Link]" );
// generating variable size colored View2D screenshot with SAMLight Windows opened in background
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapVariableSi
ze, 640 ); // set bitmap size in pixel
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2DVariableSize,
path + "\\[Link]" );
// generating black and white View2D screenshot with just SAMLight running background
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapX, 0 ); //
set center in X (like View2D coordinate system)
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapY, 0 ); //
set center in Y (like View2D coordinate system)
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapXW,
10 ); // set size in X in mm (like View2D coordinate system)
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapYW,
10 ); // set size in Y in mm (like View2D coordinate system)
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeSaveView2DBitmapDPI,
200 ); // set bitmap resolution in DPI
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeSaveView2DBitmapMode,
0 ); // 0: lines and pixels are drawn normal
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2DAdjustableDPI,
path + "\\ScreenshotView2DAdjustableDPI_DrawnNormal.bmp" );
// define pixel and line thickness and save the screenshot with a new name
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueTypeSaveView2DBitmapMode,
1 ); // 1: lines and pixels are drawn thicker
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlStringValueTypeSaveView2DAdjustableDPI,
path + "\\ScreenshotView2DAdjustableDPI_DrawnThicker.bmp" );
Table 403: Create screenshot of SAMLight View2D
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 329
17.3 Create Entity
There are ScCreateEntity examples for following entity types:
· Text2D
· BarCode
· SerialNumber
· Ellipse
· Rectangle
· PolyLine
17.3.1 Text2D
Create a new text entity with various properties
// Define the type of the new entity
int CCI_Return_01 = [Link]( ( int )
[Link],
"ScWinTextChars2D" );
// Set Arial as font
int CCI_Return_02 = [Link]( "ScCreateEntity", ( int )
[Link], "Arial" );
// Set text weight to bold
int CCI_Return_03 = [Link]( "ScCreateEntity", ( int )
[Link], 700 );
// Enable font property italic
int CCI_Return_04 = [Link]( "ScCreateEntity", ( int )
[Link], (int)
[Link] );
// Set the text to "Hey!"
int CCI_Return_05 = [Link]( "ScCreateEntity", "Hey!" );
// Set font size to 9.0 mm
int CCI_Return_06 = [Link]( "ScCreateEntity", ( int )
[Link], 9.0 );
// Create a toplevel entity "New Entity" with predefined parameters, assign pen number 3, set the center
of entity to x = 20.0 mm, y = 10.0 mm, z = 0.0 mm and use dim_x = 0.0 mm and dim_y = 0.0 mm to keep the
font size
int CCI_Return_07 = [Link]( "New Entity", "", 3, 20.0, 10.0, 0.0, 0.0, 0.0, 0, "" );
Table 404: Create text entity (ScWinTextChars2D)
17.3.2 BarCode
Create barcode entity (ScBarCode12Chars2D)
//define the type of the new entity
[Link]((int)
[Link],
"ScBarCode12Chars2D");
//specify the exact barcode type
[Link]("ScCreateEntity", (int)
[Link], "QR Code");
//fill the empty entity with content [Link] "123"
[Link]("ScCreateEntity", "123");
//define the desired mode of the barcode, if available; if this is not defined,
//the first level will be taken as [Link], that your barcode might not be valid
//for every content in the default mode and will not be created in this case.
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 330
Create barcode entity (ScBarCode12Chars2D)
[Link]("ScCreateEntity", (int)
[Link], 2);
//define the desired level of the barcode, if avaiable; if this is not defined,
//the first level will be taken as [Link], that your barcode might not be valid
//for every content with the default level and will not be created in this case.
[Link]("ScCreateEntity", (int)
[Link], 1);
//create the entity of the type defined above, name it "MyEntity", apply pen = 3,
//position its center at(x | y | z) = (0 | 0 | 0) in the coordinate system,
//deactivate the definition of the dimension with dim_x = 0, dim_y = 0
[Link]("MyEntity", "", 3, 0, 0, 0, 0, 0, 0, "");
Table 405: Create barcode entity (ScBarCode12Chars2D)
17.3.3 SerialNumber
Create serial number entity (ScSerialNumber2D)
//define the type of the new entity
[Link]((int)
[Link], "ScSerialNumber2D");
//specify the text size; this value will be taken, if dim_x = dim_y = 0 in ScCreateEntity,
//otherwise it will be ignored
[Link]("ScCreateEntity", (int)
[Link], 9);
//specify the increment of the serial number
[Link]("ScCreateEntity", (int)
[Link], 3);
//specify the start value of the serial number
[Link]("ScCreateEntity", (int)
[Link]
, 12);
//create the entity of the type defined above, name it "MyEntity", apply pen = 4, position its
//center at(x | y | z) = (10 | 50 | 0) in the coordinate system, deactivate the definition
//of the dimension with dim_x = 0, dim_y = 0
[Link]("MyEntity", "", 4, 10, 50, 0, 0, 0, 0, "");
Table 406: Create serial number entity (ScSerialNumber2D)
17.3.4 Ellipse
Create ellipse/circle entity (ScEllipse 2D)
//define the type of the new entity
[Link]((int)
[Link],"ScEllipse2D");
//define radius in x direction
[Link]("ScCreateEntity", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DRadiusX, 40);
//define radius in x direction
[Link]("ScCreateEntity", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DRadiusY, 35);
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 331
Create ellipse/circle entity (ScEllipse 2D)
//define x center coordinate
[Link]("ScCreateEntity", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterX, -10);
//define y center coordinate
[Link]("ScCreateEntity", (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlDoubleDataIdEllipse2DCenterY, -10);
//create the entity of the type defined above, name it "MyEntity", apply pen = 3,
//position its center at(x | y | z) = (0 | 0 | 0) in the coordinate system,
//deactivate the definition of the dimension with dim_x = 0, dim_y = 0
[Link]("MyEntity", "", 3, 0, 0, 0, 25, 15, 0, "");
Table 407: Create ellipse/circle entity (ScEllipse 2D)
17.3.5 Rectangle
Create rectangle entity (ScRectangle 2D)
//define the type of the new entity
[Link]((int)
[Link], "ScRectangle2D");
//create the entity of the type defined above, name it "MyEntity", apply pen = 3,
//position its center at(x | y | z) = (0 | 0 | 0) in the coordinate system,
//deactivate the definition of the dimension with dim_x = 0, dim_y = 0
[Link]("MyEntity", "", 3, 0, 0, 0, 25, 15, 0, "");
Table 408: Create rectangle entity (ScRectangle 2D)
17.3.6 PolyLine
Create polyline entity (ScPolyLine 2D)
//define the type of the new entity
[Link]((int)
[Link], "ScPolyLine2D");
//define start point at 0/0/0
[Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 0); // x
[Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 0); // y
[Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3, 0); // z
//add point to polyline
[Link]((int)
[Link]
ne);
//define end point at 100/0/0
[Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara1, 100); // x
[Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara2, 0); // y
[Link]((int)
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlDoubleValueTypeDoublePara3, 0); // z
//add point to polyline
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 332
Create polyline entity (ScPolyLine 2D)
[Link]((int)
[Link]
ne);
//add additional empty polyline in the polyline subchapter
[Link]((int)
[Link]
yline);
//create the entity of the type defined above, name it "MyEntity", apply pen = 3,
//position its center at(x | y | z) = (0 | 0 | 0) in the coordinate system,
//deactivate the definition of the dimension with dim_x = 0, dim_y = 0
[Link]("MyEntity", "", 3, 0, 0, 0, 25, 15, 0, "");
Table 409: Create polyline entity (ScPolyLine 2D)
17.4 Correct UCF
The following examples shows how to correct an ucf file using sc_corr_table via CCI.
Correct ucf
// Select Fit2D correction algorithm
[Link]( ( int )
[Link], ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlCorrectionMode2dFit );
// Select Fit2D order, for example 3_Advanced
[Link]( ( int )
ScComSAMLightClientCtrlValueTypes.scComSAMLightClientCtrlLongValueType2dFitType, 3 );
// Execute the correction with <SCAPS>\system\sc_calib_points.txt and apply the new correction file in
SAMLight.
[Link]( ( int )
[Link] );
Table 410: Correct ucf
17.5 Fit to entity
The following examples shows how to fit the view to a specific entity.
Fit view to an entity
// set entity name here, for example "EntityName";
string EntityName =
// deselect all
[Link]( "",
( int ) [Link] |
( int ) [Link], 0 );
// select
[Link]( EntityName,( int )
[Link], 1 );
[Link]( ( int )
[Link]
ities );
Table 411: Fit view to an entity
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 333
17.6 Get / Set Inputs and Outputs
Get Single Input
bool Get_Input( int InputBit )
{
int Flag = 1 << ( InputBit - 1 );
int OptoIO = [Link](
( int )[Link] );
return ( OptoIO & Flag ) == Flag ? true : false;
}
Table 412: Get Single Outputs
Get Single Outputs
bool Get_Output( int OutputBit ) // USC only
{
int Flag = 1 << ( OutputBit - 1 );
int GetOptoOut = [Link](
( int )[Link] );
return ( GetOptoOut & Flag ) == Flag ? true : false;
}
Table 413: Get Single Outputs
Set Single Outputs
void Set_Output( int OutputBit, bool High )
{
int Flag = 1 << ( OutputBit - 1 );
int Mask = ( ~Flag ) << 16;
if( !High )
Flag = 0;
int OptoIO = Mask | Flag;
[Link](
( int )[Link],
OptoIO );
return;
}
Table 414: Get Single Outputs
17.7 Get / Set text properties
The following examples shows how to manipulate the properties of a text object.
Create text entity
int dontupdate = ( int )[Link] |
( int )[Link];
string EntityName = // set entity name here, for example "TextEnity";
// set the text properties of the entity with name EntityName
[Link]( EntityName, dontupdate | ( int )
[Link], "NewText" );
[Link]( EntityName, dontupdate | ( int )
[Link], "Arial" );
[Link]( EntityName, dontupdate | ( int )
[Link], 2 );
[Link]( EntityName, dontupdate | ( int )
[Link], 0.95 );
[Link]( EntityName, dontupdate | ( int )
[Link], 4.5 );
[Link]( EntityName, dontupdate | ( int )
[Link], 1.5 );
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 334
Create text entity
[Link]( EntityName, dontupdate | ( int )
[Link], 11.5 );
[Link]( EntityName, dontupdate | ( int )
[Link], [Link] / 2 );
int flags = [Link]( EntityName, ( int )
[Link] );
// force to radial text
flags = flags | ( int ) [Link];
[Link]( EntityName, ( int )
[Link], flags );
// get the text properties of the entity with name EntityName
string str = "";
double val = 0;
[Link]( EntityName, ( int )
[Link], ref str );
[Link]( "Text: " + str, "Text" );
[Link]( EntityName, ( int )
[Link], ref str );
[Link]( "FontName: " + str, "FontName" );
[Link]( EntityName, ( int )
[Link], ref val );
[Link]( "TextSize: " + [Link](), "TextSize" );
Table 415: Get / Set text properties
17.8 Get Server Status with Mask
The following examples shows how to get the status of the USC server and explains how to use masks for
this purpose.
Get Server Status with Mask
// Get the over all server status
[Link]((int)
[Link] )
//Only ask for the documented server stati using a mask combined with & at the end
[Link]( (int)
[Link] ) & 0x3000B
// Here, the mask 0x3000B ensures only to look for the bits at the position x in binary representation:
00xx 0000 0000 0000 x0xx, which are the documented parameters (1, 2, 8, 65536 and 131072 in decimal
representation) for scComSAMLightClientCtrlLongValueTypeServerStatus.
[Link]( (int)
[Link] ) & 0x30000
//If you only want to know if the connected device is a USC-1 or USC-2 card, use a mask for the
corresponding values (x in binary representation 00xx 0000 0000 0000 0000, 65536 and 131072 in decimal
representation) which would be 0x30000 in hexadecimal representation.
Table 416: Get Server Status with Mask
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 335
17.9 Handle texts
The following examples shows how to uses the ASCII protocol to modify a text, rotate it by 45° and evaluate
its total width. The creation of the socket connection, that is completely operating system and programming
environment dependent, is not shown here. Also sending and receiving of the data is not part of that
example. Here the assumption is made that the function DoSend() sends the command line while
DoReceive() performs the reception of the answer.
Handle texts with ASCII protocol
// a buffer for the ASCII command lines that have to be sent, the its maximum size is defined in
ScCciCommands.h
char msgStr[ SC_CCI_MAX_COMMANDLENGTH ];
// open the socket connection here
...
// send the initialization string to set up the interface for the ASCII protocol
DoSend( SC_CCI_INITSTRING );
// create the command line that has to be sent, that function call results in a command
"ScCciChangeTextByName("MyEntity", "NewText")\n" that is stored in msgStr
sprintf( msgStr, SC_CCI_CMD_CHANGE_TEXT_BY_NAME, "MyEntity", "NewText" );
// send the message via the already opened socket
DoSend( msgStr );
// receive the answer and display it within a MessageBox
MessageBox( DoReceive() );
// creates the command "ScCciRotateEntity("MyEntity", 100, 100, 45)\n"
sprintf( msgStr, SC_CCI_CMD_ROTATE_ENTITY, "MyEntity", 100, 100, 45 );
// execute that command...
DoSend( msgStr );
// ...and receive the handshake answer
DoReceive();
// send the command to get the minimum horizontal position of the entities outline
sprintf( msgStr, SC_CCI_CMD_GET_ENTITY_OUTLINE, "MyEntity", 0 );
DoSend( msgStr );
// convert the returned string into a double value; please note: if fetching of the outline value failed,
the returned string is "NaN" (=not a number)
outline_min_x = atof( DoReceive() );
// an alternative possibility to send a command, here all values are statically so that it is not
necessary to "construct" the command using sprintf()
DoSend( "ScCciGetEntityOutline(\"MyEntity\", 3)\n" );
// calculate the width of the entity "MyEntity"
outline_max_x = atof( DoReceive() );
width = outline_max_x - outline_min_x;
Table 417: Handle texts with ASCII protocol
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 336
17.10 How to work with Flags
Some commands give a possibility to set multiple flag values at once. These are for example:
DeviceEnableFlagsValue, MarkFlags, and a lot of others.
There are simple procedures which allow you to operate with the flag values very easily. We will consider an
example of Mark Flags being set with MarkFlags function.
Set Flag Values
The complete set of all available Mark Flags you can find in the corresponding command description. Here
we just pick a few flags and use them for demonstration.
Assume we want to set following flag values:
WaitForTrigger With this flag you activate the Trigger Mode.
Selected When this flag is activated, only selected entities will be marked.
We do not know initially, which flags are already set and we do not want to overwrite them. That is why we
call the current state of Mark Flags as first. To set the above flags, we need to combine them with the
current flags state. We can do it by using the logical OR operator. In the last step, we "send" the modified
flags value to SAMLight. In the table below you can see the example code for the described procedure.
Set Flag Values
// Save the current mark flags value to the markFlags variable
int Mark_Flags = [Link]();
// Modify the vlaue of markFlags by adding the new flags
markFlags |= (int)[Link];
markFlags |= (int)[Link];
// Define the new Flags Value to the SAMLight
int CCI_Return = [Link](Mark_Flags);
Table 418: Example Set Flag Values
Get Flag Status
If we want to check, if the Wait For trigger Flag is already activated, we proceed as follows. As first get the
current state of the mark flags. Than we save the value of the WaitForTrigger flag to the constant
TriggerFlag. Using logical AND operator, we can now compare the current flag state with the Trigger flag.
· If the condition markFlags & TriggerFlag == TriggerFlag is true, the WaitForTrigger flag is enabled.
· If the above condition is false, the flag is disabled.
In the table below the example code for this case.
Get Flag Status
// Save the current mark flags value to the markFlags variable
int Mark_Flags = [Link]();
// Define the value of the flag to be compared
int Some_Flag = (int)[Link];
// Check, if the flag is already activated
bool Flag_Status = (markFlags & someFlag) == someFlag ? true : false;
Table 419: Example Get Flag Status
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 337
Deactivate a particular Flag
If you want to deactivate any particular flag, the work flow is very similar to the first example, where you
activate some flags, but here we must use the logical AND NOT instead of logical OR.
Below is the coding example of deactivating the WaitForTrigger flag.
Deactivate Flag
// Save the current mark flags value to the markFlags variable
int Mark_Flags = [Link]();
// Define the value of the flag to be deactivated
int Deactivate_Flag = (int)[Link];
// Deactivate the flag using AND NOT operator
Mark_Flags = Mark_Flags & (~Deactivate_Flag);
// Define the updated flags value to SAMLight
int CCI_Return = [Link](Mark_Flags);
Table 420: Example Deactivate Flag
17.11 Mirror Entity on Y Axis
The following examples shows how to mirror an entity on the Y axis. To mirror on X axis, just switch the -1,1
to 1,-1 in the ScScaleEntity command. The Entity has the name "A" in this example.
Mirror Entity on Y Axis
//define the type of the new entity
[Link]((int)
[Link],"ScWinTextChars2D");
string EntityName = "A";
// Get Co-ordinates of the center point of the entity
double Xmin, Ymin, Xmax, Ymax, Xc, Yc;
Xmin = [Link]( EntityName, 0 );
Ymin = [Link]( EntityName, 1 );
Xmax = [Link]( EntityName, 3 );
Ymax = [Link]( EntityName, 4 );
Xc = ( Xmin + Xmax ) / 2;
Yc = ( Ymin + Ymax ) / 2;
// Translate entity to the center of the working field
[Link]( EntityName, -Xc, -Yc, 0 );
// Mirror Entity
[Link]( EntityName, -1, 1, 1 );
// Translate entity back to its original position
[Link]( EntityName, Xc, Yc, 0 );
Table 421: Mirror Entity on Y Axis
17.12 Motion Control
The following examples shows for MDrive motors (Type=5) how to set the absolute/relative position/angle
and speed of two drives, execute the starting command and retrieve a message that both drives (1. part) and
the first/second (2. part) drive has stopped respectively. In this context it is important to wait until the last
drive has stopped before sending a new starting command (MotionGo; therefore the stop messages).
Otherwise the motion control would not work correctly. If one drive reaches its position limit given in the
motion settings file or has already reached its new position before, it does not move any more.
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 338
Motion Control - MDrive - type 5
// the application comes back immediately
[Link]( ( int )
[Link], 0 );
// 1. part: check if all MDrive motors have stopped
[Link]( ( int )
[Link], 0 );
[Link]( ( int )
[Link], 100 );
[Link]( ( int )
[Link], 4 );
[Link]( ( int )
[Link], 1 );
[Link]( ( int )
[Link], 720 );
[Link]( ( int )
[Link], 1 );
[Link]( ( int )
[Link] );
// -1 means all axes
[Link]( ( int )
[Link], -1 );
do
{ [Link]( ( int )
[Link], -1 );
}
while( [Link]( ( int )
[Link] ) == 1 );
[Link]( "All motors have stopped." );
// 2. part: check if single MDrive motor has stopped
[Link]( ( int )
[Link], 0 );
[Link]( ( int )
[Link], 100 );
[Link]( ( int )
[Link], 1 );
[Link]( ( int )
[Link], 720 );
[Link]( ( int )
[Link] );
int axis0 = 1;
int axis1 = 1;
do
{
if( axis0 == 1 )
{
[Link]( ( int )
[Link], 0 );
if( [Link]( ( int )
[Link] ) == 0 )
{
[Link]( "Motor with axis 0 has stopped." );
axis0 = 0;
}
}
if( axis1 == 1 )
{
[Link]( ( int )
[Link], 1 );
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 339
Motion Control - MDrive - type 5
if( [Link]( ( int )
[Link] ) == 0 )
{
[Link]( "Motor with axis 1 has stopped." );
axis1 = 0;
}
}
} while ( ( axis0 == 1 ) || ( axis1 == 1 ) ) ;
Table 422: Motion Control type 5
17.13 Precalculating Marking Time
The following examples shows how to precalculate the marking time.
Precalculate Marking Time
// Get expected mark time of complete job
double LastExpectedMarkTime = [Link](
( int )
SAMLIGHT_CLIENT_CTRL_OCXLib.[Link]
peLastExpectedMarkTime );
// Alternative: Get process time of chosen entities
// Enable MarkFlagPreview
int MarkFlags = [Link]();
MarkFlags = MarkFlags | ( int )
SAMLIGHT_CLIENT_CTRL_OCXLib.[Link]
w;
int CciReturn1 = [Link]( MarkFlags );
// Enable ModeFlagEntityNamesSeparatedBySemicolon
int ModeFlags = 0;
int CciReturn2 = [Link]( ref ModeFlags );
ModeFlags = MarkFlags | ( int )
SAMLIGHT_CLIENT_CTRL_OCXLib.[Link]
sSeparatedBySemicolon;
int CciReturn3 = [Link]( ModeFlags );
// Preview of entities 'a and 'b'
int CciReturn4 = [Link]( "a;b", 1 );
// Get process time of last preview
double LastPreviewTime = [Link](
( int )
SAMLIGHT_CLIENT_CTRL_OCXLib.[Link]
peLastPreviewTime );
Table 423: Precalculate Marking Time
17.14 Retrieve Entities
The following C# code uses SAMLight Client Control first to list all toplevel entities and then all entities
including their possible entity names by message box. If further parameters of all entities like the set pen
number or the Mark Loop Count should be requested, empty entities have to be renamed to a unique entity
name first. Then parameter has to be requested by entity settings command and entity name has to be reset
again. To speed up an automatic entity scan the command ScSetMode can be used similar as in Optimize
Performance Example 2.
Retrieve Entities
// important: the BSTR-pointer has to be initialized, otherwise the COM -interface may crash!
string name = "", type = "";
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 340
Retrieve Entities
int i, count;
// step through all available toplevel entities
[Link]( ( int )[Link] );
count = [Link]( ( int )
[Link] );
if( count > 0 )
{
for( i = 0; i < count; i++ )
{
// get the name of the entity at the index position "i"
[Link]( ( int )
[Link], i, ref name );
if( name == "" )
name = "'empty'";
[Link]( ( int )
[Link], i, ref type );
[Link]( "entity number: " + ( i + 1 ) + ", entity name: " + name + ",entity type: " +
type, "total number of toplevel entities: " + [Link]() );
}
}
else
[Link]( "No top level entities found", "total number of toplevel entities: 0" );
// step through all available entities
[Link]( 0 );
count = [Link]( ( int )
[Link] );
if( count > 0 )
{
for( i = 0; i < count; i++ )
{
// get the name and type of the entity at the index position "i"
[Link]( ( int )
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlStringDataIdGetEntity_Name, i, ref name );
if( name == "" )
name = "'empty'";
[Link]( ( int )
[Link], i, ref type );
[Link]( "entity number: " + ( i + 1 ) + ", entity name: " + name + ", entity type: " +
type, "total number of entities: " + [Link]() );
}
}
else
[Link]( "No entities found", "total number of entities: 0" );
Table 424: Retrieve Entities
17.15 Rotate Output Matrix
The following examples shows how to mark an entity with the name RotateEntity.
Rotate Output Matrix
// Rotate the output matrix for 20 degrees around the middle of the entity center and marks again.
This step will be repeated 19 times.
if( [Link]() == 0 )
{
[Link]( "SAMLight not found", "Warning" );
return;
}
double min_x, min_y, max_x, max_y;
double center_x, center_y;
long i;
double ang_inc;
double act_angle;
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 341
Rotate Output Matrix
string entity_name = // set entity name here, for example "RotateEntity";
// calculate the center of the entity
min_x = [Link]( entity_name, 0 );
min_y = [Link]( entity_name, 1 );
max_x = [Link]( entity_name, 3 );
max_y = [Link]( entity_name, 4 );
center_x = ( min_x + max_x ) / 2;
center_y = ( min_y + max_y ) / 2;
// Repeat the rotation and marking
ang_inc = 20 * 2 * [Link] / 360;
act_angle = 0;
for( i = 0; i < 19; i++ )
{
[Link]();
[Link]( center_x, center_y, act_angle );
[Link]( entity_name, 1 );
act_angle = act_angle + ang_inc;
}
Table 425: Rotate Output Matrix
17.16 Save Splitted Job as Tiles
The following examples shows how to split a job file and save it as an entity list of single split tiles with full
access, which can be used as a basis to manually setup a split job file according to own needs (motion
entities have to be added manually). To use this example a splitting mode with reasonable splitting
parameters and motion axes has to be defined in SAMLight before.
Save Splitted Job as Tiles
[Link]( ( int)
[Link] );
[Link]( [Link]( @"%SCAPS_SAM%" ) + "\\jobfiles\\[Link]",
1, 1, 0 );
ScCenterEntityByEntityName( "" );
[Link]( ( int )
[Link] ); //
scComSAMLightClientCtrlExecCommandResplitJob = 13
[Link]( ( int )
[Link],
[Link]( @"%SCAPS_SAM%" ) + "\\jobfiles\
\demo_splitted_as_tiles.sjf" );
[Link]( ( int )
[Link]
); // scComSAMLightClientCtrlExecCommandSaveSplitsAsEntities = 38
[Link]( [Link]( @"%SCAPS_SAM%" ) + "\\jobfiles\
\demo_splitted_as_tiles.sjf", 1, 1, 0 );
ScCenterEntityByEntityName( "" );
}
private long ScCenterEntityByEntityName( string entityname )
{
double MIN_X = [Link]( 0 ); // SC_SAMLIGHT_OUTLINE_INDEX_MIN_X = 0
double MIN_Y = [Link]( 1 ); // SC_SAMLIGHT_OUTLINE_INDEX_MIN_Y = 1
double MAX_X = [Link]( 3 ); // SC_SAMLIGHT_OUTLINE_INDEX_MAX_X = 3
double MAX_Y = [Link]( 4 ); // SC_SAMLIGHT_OUTLINE_INDEX_MAX_Y = 4
double CENTER_WORKING_AREA_X = ( MAX_X + MIN_X ) / 2;
double CENTER_WORKING_AREA_Y = ( MAX_Y + MIN_Y ) / 2;
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 342
Save Splitted Job as Tiles
double min_x = [Link]( entityname, 0 ); //
scComSAMLightClientCtrlOutlineIndexMinX = 0
double min_y = [Link]( entityname, 1 ); //
scComSAMLightClientCtrlOutlineIndexMinY = 1
double max_x = [Link]( entityname, 3 ); //
scComSAMLightClientCtrlOutlineIndexMaxX = 3
double max_y = [Link]( entityname, 4 ); //
scComSAMLightClientCtrlOutlineIndexMaxY = 4
double center_entity_outline_x = ( max_x + min_x ) / 2;
double center_entity_outline_y = ( max_y + min_y ) / 2;
return [Link]( entityname, CENTER_WORKING_AREA_X - center_entity_outline_x,
CENTER_WORKING_AREA_Y - center_entity_outline_y, 0 );
}
Table 426: Save Splitted Job as Tiles
17.17 Set Array
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 = [Link]( ( int )
[Link], ( int )
[Link] | ( int )
[Link] | ( int )
[Link] );
int CCI_Return_02 = [Link]( ( int )
[Link], 2 );
int CCI_Return_03 = [Link]( ( int )
[Link], 2 );
int CCI_Return_04 = [Link]( ( int )
[Link], 9.0 );
int CCI_Return_05 = [Link]( ( int )
[Link], 9.0 );
int CCI_Return_06 = [Link]( "circle", (int)
[Link], "circle copy" );
Table 427: 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 = [Link]( "circle", ( int )
[Link], 2 );
int CCI_Return_02 = [Link]( "circle", ( int )
[Link], 2 );
int CCI_Return_03 = [Link]( "circle", ( int )
[Link], 9000 );
int CCI_Return_04 = [Link]( "circle", ( int )
[Link], 9000 );
int CCI_Return_05 = [Link]( "circle", ( int )
[Link], ( int )
[Link] | ( int )
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 343
Virtual Array Copy
[Link] | ( int )
[Link] );
Table 428: Virtual Array Copy
17.18 Optimize Performance
The performance of SAMLight and thus your client control application can often be optimized by
suppressing time consuming and unnecessary actions of the program. If a property of an entity (like the text
or the size) has been changed by client control the entity will be regenerated and updated. Furthermore the
View2D in SAMLight will be updated as well. Usually, these updates of the entity or the View2D are not
necessary after every client control call. Here are some examples how the performance can be increased.
Only the top level entities:
If it is not necessary to execute a SAMLight Client Control command for all subentities of a top level entity,
the iteration through all subentities can be globally suppressed and the SAMLight Client Control command is
executed for the top level entity only. Use the FlagToplevelOnly flag:
Only top level entities
//Get the current mode
int current_mode = 0;
[Link](ref current_mode);
//update the current mode by adding an additional TopLevelEntity Flag
current_mode |= (int)[Link];
//Set the new mode value
[Link](current_mode);
Table 429: Only top level entities
Disable automatic View2D update of SAMLight:
If you are not using the View2D of SAMLight because you launch SAMLight in hidden mode or your
application is automatized without needing a visual view, you can disable the View2D completely. Use the
FlagDontUpdateView flag:
Disable the View2D update
//Get the current mode
int current_mode = 0;
[Link](ref current_mode);
//update the current mode by adding an additional DontUpdateView Flag
current_mode |= (int)[Link];
//Set the new mode value
[Link](current_mode);
Table 430: Disable the View2D update
If there's a need to update the view, you can do it by executiong the UpdateViewNow command:
Manual view update
[Link]((int)
[Link]);
Table 431: Manual view update
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 344
Execute SAMLight Client Control command for several entities:
The time consuming part of a client control application can be the COM call itself. The processing time for
the client interface application can be reduced if you want to use the same CI call for several entities. An
example is changing the text of several entities with just one COM call. This can be done by using
semicolon separated entity names which has to be activated by: ScSetMode() with the flag
NamesSeparatedBySemicolon:
Disable the View2D update
//Get the current mode
int current_mode = 0;
[Link](ref current_mode);
//update the current mode by adding an additional DontUpdateView Flag
current_mode |= (int)[Link];
//Set the new mode value
[Link](current_mode);
Table 432: Disable the View2D update
Suppress View2D update if you change more than one property of the same entity
at once:
Like mentioned above every entity change will be shown in View2D after any change of its properties. If you
want to change more than one property of the same entity, you can suppress View2D update of the entity.
Then the change of the entity will not be shown after after every call. To do so use:
· ScSetEntityLongData() with flag FlagDontUpdateView
· ScSetEntityDoubleData() with flag FlagDontUpdateView
· ScSetEntityStringData() with flag FlagDontUpdateView
You will find a detailed example in the chapter Optimize performance: Example 1.
Suppress entity update if you change more than one property of the same entity at
once:
Like mentioned above every entity will be regenerated and updated after any change of its properties. If you
want to change more than one property of the same entity you can suppress this behavior so that the entity
will not be regenerated and updated after after every call.
· ScSetEntityLongData() with flag FlagDontUpdateEntity
· ScSetEntityDoubleData() with flag FlagDontUpdateEntity
· ScSetEntityStringData() with flag FlagDontUpdateEntity
Please make sure that you are not using this flag at the last change of an entity. Otherwise this
entity will not be regenerated and updated at all.
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 345
You will find a detailed example in the chapter Programming Examples:
Address top level entities only:
For many CI calls you address an entity by its name or ID to set or get its parameters. To find this entity
SAMLight is looking for the name or ID in every group or subgroup of the entire entity hierarchy. To
decrease the time which is necessary to find the corresponding entity you want to address the search can
be limited to top level entities:
· ScSetEntityLongData() with flag FlagToplevelOnly
· ScSetEntityDoubleData() with flag FlagToplevelOnly
· ScSetEntityStringData() with flag FlagToplevelOnly
Use trigger mode:
In this mode the next job to be marked is prepared and sent to the controller card before the mark call has
been sent. As soon as the external trigger is recognized by the controller card the marking process will start.
If this mode is not enabled the job will be prepared and sent to the controller card after the external trigger
was recognized.
· ScSetMarkFlags() with flag MarkFlagWaitForTrigger
Please note that the logging of CCI commands also is time consuming. Thus, we would
recommend to only activate the sc_cci_debug.txt when doing some debugging and not during the
normal operation.
17.18.1 Example 1
To demonstrate how to use the CI calls properly we want to give an example code.
Consider you have 20 barcode entities in SAMLight with the entity names barcode1, barcode2, ...,
barcode20. We want to change for each barcode:
1. Enable Hatch1 with style 'wavy line without marking the jumps'
2. Enable Hatch2 with style 'zigzag'
A common way to program this changes in C# would be:
Enable Hatching ("slow" method)
for (int i = 1; i <= 20; i++)
{
//generate the entity name and the entity text for each of the 20 barcodes
string entity_name = "barcode" + [Link](i);
string entity_text = "This is the text of " + entity_name;
//change the text of each entity
[Link](entity_name, entity_text);
//enable Hatching1
[Link](entity_name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEnableHatching1, 1);
//enable Hatching2
[Link](entity_name, (int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEnableHatching2, 6);
}
Table 433: Enable Hatching ("slow" method)
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 346
This looks fine and will work properly but after every of the 60 CI calls the corresponding entity will get
regenerated and the View2D of SAMLight will be updated. This needs a lot of time.
We will now demonstrate how the same goal can be reached by using 3 CI calls instead of 60. To do so we
create two strings: containing all the entity names and the text for each of them. But we separate every entry
in the string by semicolon and will use the NamesSeparatedBySemicolon flag to change the properties at
once. Furthermore every entity will be regenerated only once and the View2D of SAMLight will only be
updated after the last entity change was completed. This is achieved by using DontUpdateView and
TopLevelOnly flags.
Enable Hatching (optimized performance)
//Generate one string 'all_entity_names' with all entity names separated by ";"
//and generate one string 'all_entity_texts' with all entity textes separated by "\v"
string all_entity_names = "barcode1";
string all_entity_texts = "This is the text of barcode 1";
for (int i = 2; i <= 20; i++)
{
all_entity_names = all_entity_names + ";" + "barcode" + [Link](i);
all_entity_texts = all_entity_texts + "\v" + "This is the text of barcode" +
[Link](i);
}
//enable entity name separated by semicolon mode
//disable View2D
//enable top level entities only
[Link]((int)
ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlModeFlagEntity_NamesSeparatedBySemicolon |
(int)[Link] |
(int)[Link]);
//change all texts of all entities
[Link](all_entity_names, all_entity_texts);
//enable Hatching1 and Hatching2 for all entities, suppress entity update after enabling Hatching 1
//so the entities will be updated after the enabling of Hatching 2 (second call)
[Link](all_entity_names,
(int)ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEnableHatching1 |
(int)[Link], 1);
[Link](all_entity_names,
(int)ScComSAMLightClientCtrlFlags.scComSAMLightClientCtrlLongDataIdEnableHatching2, 6);
//reset ScSetMode
[Link](0);
//manually update View2D
[Link]((int)
[Link]);
Table 434: Enable Hatching (optimized performance)
17.18.2 Example 2
The following C# example shows and measures how much SAMLight Client Control performance constants
can accelerate the executed SAMLight Client Control commands.
In this case the cursive font, text size, font type and the text content of a Text2D entity with entity name "text
entity" are set 100 times as substitute for 100 different text entities to show how SAMLight Client Control
performance constants can be used.
Import necessary namespaces
using SAMLIGHT_CLIENT_CTRL_OCXLib;
using [Link];
Table 435: Import necessary namespaces
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 347
As first we will change the text entities without introducing the performance increasing flags. We will make
the text in the text entities to be italic and of Arial type, change the size to 20 and change the text of the
entities.
Simple example without performance increase
//SAMLight Client Control commands to change a text entities: cursive font,
//text size, font type; then text content is set
//Standard commands without acceleration
Stopwatch stopWatch = new Stopwatch();
[Link]();
for (int i = 1; i <= 100; ++i)
{
[Link]("text entity",
(int)[Link],
(int)[Link]);
[Link]("text entity",
(int)[Link], 20);
[Link]("text entity",
(int)[Link],"Arial");
[Link]("text entity", "new text");
}
[Link]();
TimeSpan mt = [Link];
string MeasuredTime = [Link]("{0:00}.{1:00}", [Link], [Link]);
[Link]("measured time without acceleration: " + MeasuredTime + " s");
[Link]();
Table 436: Simple example without performance increase
As next we switch on TopLevelOnly and DontUpdateView flags, so that the view is not updated while we
change the entity properties and update the view using UpdateViewNow. It decreases the computation
time approximately by factor 1.5 - 2.0.
First example with performance increase (~ 2 x faster)
//General possibility to accelerate SAMLight Client Control commands by ScSetMode(),
//execution speed: ~ 1,5 - 2 0 x faster
//We switch on the DontUpdateView and ToplevelOnly modes and do the same, as in the previous step.
[Link](
(int)[Link] |
(int)[Link]);
[Link]();
for (int i = 1; i <= 100; ++i)
{
[Link]("text entity",
(int)[Link],
(int)[Link]);
[Link]("text entity",
(int)[Link],20);
[Link]("text entity",
(int)[Link],"Arial");
[Link]("text entity", "new text");
}
[Link](0);
[Link]((int)
[Link]);
[Link]();
mt = [Link];
MeasuredTime = [Link]("{0:00}.{1:00}", [Link], [Link]);
[Link]("measured time with medium acceleration: " + MeasuredTime + " s");
[Link]();
Table 437: First example with performance increase (~ 2 x faster)
© 2024 SCAPS GmbH
Client Control Interface Manual - Programming Examples 348
We can do even better by suppressing the entity update and the view update, while executing each
particular entity update command. We can do so by accelerating ScSetEntityLongData,
ScSetEntityDoubleData, ScSetEntityStringData directly by using additional flags.
Second example with performance increase (~ 3.5 x faster)
//Special possibility to accelerate ScSetEntityLongData, ScSetEntityDoubleData or
//ScSetEntityStringData commands, execution speed: ~ 3,5 x faster in this example
[Link]();
for (int i = 1; i <= 100; ++i)
{
[Link]("text entity",
(int) [Link] |
(int)[Link] |
(int)[Link] |
(int)[Link],
(int)[Link]);
[Link]("text entity",
(int)[Link] |
(int)[Link] |
(int)[Link] |
(int)[Link], 20);
[Link]("text entity",
(int)[Link]|
(int)[Link] |
(int)[Link] |
(int)[Link], "Arial");
[Link]("text entity", "new text");
}
[Link]();
mt = [Link];
MeasuredTime = [Link]("{0:00}.{1:00}", [Link], [Link]);
[Link]("measured time with high acceleration: " + MeasuredTime + " s");
[Link]();
Table 438: <Short Description>
The last command (here: [Link]("text entity", "new text")) should not contain
DontUpdateEntity or DontUpdateview flags, otherwise the entity will not be updated at all.
18 Optimization and Error Prevention
18.1 Error Codes
The possible return values of the SAMLight Client Control function calls are normally just 0 or 1, but can
also be a long, double or string value. With the CCI command NewCciErrorReturn, more error return values
are activated. The possible function error return values for more detailed error analysis are:
Client Control Error Codes
Error Code
Command implemented wrong 0
Command run succesful 1
IDispatch error #17: no named entity found -10000
IDispatch error #18: job is empty -10001
IDispatch error #19: function returned 0 ( not ok ) -10002
IDispatch error #20: not allowed in 3D mode -10003
IDispatch error #22: no valid license -10004
© 2024 SCAPS GmbH
Client Control Interface Manual - Optimization and Error Prevention 349
Client Control Error Codes
IDispatch error #24: Object Out of Field -10006
Table 439: Error Codes
18.2 5min Timeout
Description
Error Connection is interrupted regularly after 5 min.
Solution The ClientControl must be created on a STAThread. If this is not the case, Windows
temporarily creates a separate STAThread for the calls, but automatically terminates
this after 5 minutes.
Table 440: 5min Timeout
19 Deprecated commands
This chapter contains all deprecated commands. Some of them should not be used anymore, others have
been replaced.
Entity Array Step
Reason Replaced by ArrayCount & ArrayStep.
Command scComSAMLightClientCtrlDoubleValueTypeEntityArrayStepX
scComSAMLightClientCtrlDoubleValueTypeEntityArrayStepY
Table 441: Deprecated Entity Array Step
3D Vari Hatch Angle
Reason Now use Hatch Angle.
Command scComSAMLightClientCtrlDoubleValueType3DVariHatchAngle
Table 442: Deprecated 3D Vari Hatch Angle
Get Top Level Entity Name
Reason Renamed SetToTopLevelEntity.
Command scComSAMLightClientCtrlGetIdStringDataGetTopLevelEntityName
scComSAMLightClientCtrlStringValueTypeEntityNamesWithType
scComSAMLightClientCtrlStringValueTypeEntityNamesWithTypeAsInSAMLigh
t
Table 443: Deprecated Get Top Level Entity Name
Entity Name with Type
Reason Use GetEntityTypeAsInSAMLight.
Command scComSAMLightClientCtrlStringValueTypeEntityNamesWithType
Table 444: Deprecated Entity Name with Type
© 2024 SCAPS GmbH
Client Control Interface Manual - Deprecated commands 350
Data Barcode Size
Reason Do not use!
Command scComSAMLightClientCtrlLongDataIdDataBarcodeSize
Table 445: Deprecated Data Barcode Size
Drill Dimension
Reason Do not use!
Command scComSAMLightClientCtrlDoubleValueTypeDrillDimension
Table 446: Deprecated Drill Dimension
Get Mark Count
Reason Use Number Marks Completed.
Command scComSAMLightClientCtrlLongValueTypeGetMarkCount
Table 447: Deprecated Get Mark Count
Entity Name at Top Level
Reason Do not use!
Command scComSAMLightClientCtrlStringValueTypeEntityNameAtTopLevel
Table 448: Deprecated Entity Name at Top Level
Deprecated Motion Go
Reason Use exec command MotionGo.
Command ScCciMotionGo
Table 449: Deprecated Motion Go
Deprecated New Job
Reason Use exec command NewJob.
Command ScCciNewJob
Table 450: Deprecated New Job
Deprecated CW 300
Reason Do not use!
Command scComSAMLightClientCtrlStringValueTypeControlCmdCW300
Table 451: Deprecated CW 300
Deprecated Simulation Mode
Reason Now use DisableSimulationMode
Command scComSAMLightClientCtrlLongValueTypeSimulationMode
Table 452: Deprecated Simulation Mode
Deprecated Auto Compensate
Reason Available but not recommended.
© 2024 SCAPS GmbH
Client Control Interface Manual - Deprecated commands 351
Deprecated Auto Compensate
Command ScCciAutoCompensateCal (use:AutoCompensateCal)
ScCciAutoCompensateRef (use:AutoCompensateRef)
ScCciAutoCompensateOff (use:AutoCompensateOff)
Table 453: Deprecated Auto Compensate
Deprecated Buffer Trigger Mode
Reason Available but not recommended.
Command scComSAMLightClientCtrlLongValueTypeQueueLength
scComSAMLightClientCtrlStringDataIdFlagEnqueueCtrlCmd
scComSAMLightClientCtrlStringDataIdFlagEnqueueLastCtrlCmd
Table 454: Deprecated Buffer Trigger Mode
Deprecated Device Style Flag
Reason Do not use!
Command scComSAMLightClientCtrlLongValueTypeDeviceEnableFlagsValue
scComStandardDeviceStyleFlagEnablePort1
scComStandardDeviceStyleFlagEnablePort2
scComStandardDeviceStyleFlagEnableDA1
scComStandardDeviceStyleFlagEnableDA2
Table 455: Deprecated Device Style Flag
Deprecated Enable Motf
Reason Renamed Enable Motf.
Command scComSAMLightClientCtrlLongValueTypeEnableUsc2Motf
Table 456: Deprecated Enable Motf
Deprecated Top Level Entity
Reason Now us Set/GetEntityName with FlagToplevelOnly.
Command scComSAMLightClientCtrlStringDataIdFlagSelected
scComSAMLightClientCtrlStringDataIdGetToplevelEntity
scComSAMLightClientCtrlStringDataIdSetToplevelEntity
Table 457: Deprecated Top Level Entity
Deprecated Fit View
Reason Now use Change View 2D.
Command ScCciFitViewToEntities
ScCciFitViewToSelectedEntities
ScCciFitViewToWorkingArea
Table 458: Deprecated Fit View
Deprecated Optic Matrix
Reason Do not use! Now use Transformations.
© 2024 SCAPS GmbH
Client Control Interface Manual - Deprecated commands 352
Deprecated Optic Matrix
Command ScCciGetOpticMatrix
ScCciOpticMatrixReset
ScCciOpticMatrixRotate
ScCciOpticMatrixScale
ScCciOpticMatrixTranslate
ScGetOpticMatrix
ScOpticMatrixReset
ScOpticMatrixRotate
ScOpticMatrixScale
ScOpticMatrixTranslate
Table 459: Deprecated Optic Matrix
Deprecated Base Functions
Reason Do not use!
Command ScCciGetStringDoubleValue
ScCciSetStringDoubleValue
ScCciSetStringLongValue
ScGetLongData
ScGetStringDblValue
ScSetLongData
ScSetLongValue64
ScSetStringDblValue
ScSetStringLongValue
ScSetStringLongValue
Table 460: Deprecated Base Functions
Deprecated Entity Changeable
Reason Do not use!
Command scComSAMLightClientCtrlLongDataIdEntityChangeable
Use: NonEditableEntity
Table 461: Deprecated Entity Changeable
Deprecated 3D Surface Value
Reason Commands not used yet!
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue13
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue14
scComSAMLightClientCtrlDoubleValueType3DSurfaceValue15
Table 462: Deprecated 3D Surface Value
Deprecated Remote
Reason Do not use/renamed!
© 2024 SCAPS GmbH
Client Control Interface Manual - Deprecated commands 353
Deprecated Remote
Command ScCloseEthernetConnection
ScOpenEthernetConnection
Use: ScOpenTCPConnection
ScOpenUDPConnection
Table 463: Deprecated Remote
Deprecated Save View 3D Bitmap
Reason Renamed.
Command scComSAMLightClientCtrlDoubleValueTypeSaveView3DBitmapDPI
Use: SaveView2DBitmapDPI
scComSAMLightClientCtrlDoubleValueTypeSaveView3DBitmapVariableSize
Use: SaveView2DBitmapVariableSiz
scComSAMLightClientCtrlDoubleValueTypeSaveView3DBitmapX
Use: SaveView2DBitmapX
scComSAMLightClientCtrlDoubleValueTypeSaveView3DBitmapY
Use: SaveView2DBitmapY
scComSAMLightClientCtrlDoubleValueTypeSaveView3DBitmapXW
Use: SaveView2DBitmapXW
scComSAMLightClientCtrlDoubleValueTypeSaveView3DBitmapYW
Use: SaveView2DBitmapYW
Table 464: Deprecated Save View 3D Bitmap
Deprecated Alpha Blend
Reason Replaced by Screenshot.
Command scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendDimXTo
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendDimYTo
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendPointXTo
scComSAMLightClientCtrlDoubleValueTypeBmpAlphaBlendPointYTo
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendBmpDimX
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendBmpDimY
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendCenterPointX
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendCenterPointY
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendUpperLeftPointX
scComSAMLightClientCtrlLongValueTypeBmpAlphaBlendUpperLeftPointY
Table 465: Deprecated Alpha Blend
Deprecated Entity Optic Flags
Reason Replaced by EntityMarkFlags
Command scComSAMLightClientCtrlLongDataIdEntityOpticFlags
scComSAMLightClientCtrlLongDataIdEntityMarkFlagMarkContour
scComSAMLightClientCtrlLongDataIdEntityMarkFlagMarkHatch
Table 466: Deprecated Entity Optic Flags
© 2024 SCAPS GmbH
Client Control Interface Manual - Deprecated commands 354
Deprecated Interface Version
Reason Do not use!
Command ScGetInterfaceVersion
ScCciGetInterfaceVersion
Table 467: Deprecated Interface Version
Deprecated SPI laser specials
Reason Renamed.
Command scComSAMLightClientCtrlLongValueTypeSpiG3Cw
Use: SpiCw
scComSAMLightClientCtrlLongValueTypeSpiG3Waveform
Use: SpiWaveform
Table 468: Deprecated SPI laser specials
Deprecated IO Control Object Parameter
Reason Replaced by IoControlObjectMask and IoControlObjectStates.
Command scComSAMLightClientCtrlLongDataIdEntitySetInOutValue
scComSAMLightClientCtrlLongDataIdEntitySetInOutLevel
scComSAMLightClientCtrlLongDataIdEntityGetInOutValue
scComSAMLightClientCtrlLongDataIdEntityGetInOutLevel
Table 469: Deprecated IO Control Object Parameter
Deprecated Entity Splittable
Reason Replaced by EntityNonSplittablePre and EntityNonSplittablePost.
Command scComSAMLightClientCtrlLongDataIdEntitySplittable
Table 470: Deprecated Entity Splittable
Deprecated Resplit Job
Reason Replaced by ResplitJob.
Command ScCciResplitJob
Table 471: Deprecated Resplit Job
© 2024 SCAPS GmbH