SpiralLab.Sirius3
0.9.2
dotnet add package SpiralLab.Sirius3 --version 0.9.2
NuGet\Install-Package SpiralLab.Sirius3 -Version 0.9.2
<PackageReference Include="SpiralLab.Sirius3" Version="0.9.2" />
<PackageVersion Include="SpiralLab.Sirius3" Version="0.9.2" />
<PackageReference Include="SpiralLab.Sirius3" />
paket add SpiralLab.Sirius3 --version 0.9.2
#r "nuget: SpiralLab.Sirius3, 0.9.2"
#:package SpiralLab.Sirius3@0.9.2
#addin nuget:?package=SpiralLab.Sirius3&version=0.9.2
#tool nuget:?package=SpiralLab.Sirius3&version=0.9.2
Sirius3
A .NET-Based, All-IN-ONE Platform for Precision Laser Processing.
Highlights
- SCANLAB RTC Controllers
- RTC4 / RTC4e / RTC5 / RTC6 / RTC6e
- XL-SCAN (RTC6 + ACS via syncAXIS)
- Measurement and Profiling
- Log scanner trajectory and output signals with plotted graphs
- Powerful Marking Options
- MoF (Marking on the Fly), 2nd head, 3D
- Sky Writing Mode 1/2/3 and 4
- Ramp (Automatic Laser Control)
– Position dependent
- Velocity(set or actual) dependent
- Encoder speed dependent
- Scanner Field Correction
- 2D / 3D correction
- Laser Power Control
- Frequency, Duty Cycle, Analog, Digital
- Built-in vendor integrations: AdvancedOptoWave, Coherent, IPG, JPT, Photonics Industry, Spectra Physics and more
- Powermeters & Powermap
- Coherent (PowerMax), Thorlabs (via OPM), Ophir (via StarLab)
- Powermap-based output compensation
- Various Entities and Formats
- Point(s), Line, Arc, Polyline, Triangle, Rectangle, Spiral, Trepan, Spline
- Layer, Group, Block and BlockInsert
- Text, SiriusText, ImageText, Circular Text
- Image, DXF, HPGL, ZPL
- QR, DataMatrix, PDF417 Barcodes
- 3D Mesh Format like as STL, OBJ, PLY
- Open Architecture
- Editor and laser-source control code are open for customization
Major Changes
- Faster rendering with updated shader engine
- 3D-printer features: slicer integration and contour extraction
- Multiple hatch patterns with path optimizer
- Scanner, layer pen property system
- Various rendering modes (per-vertex, Z-depth, etc.)
- Multi-page documents
- Built-in wafer, substrate editor
- Switchable camera: orthographic / perspective
Packages / DLLs
SpiralLab.Sirius3.Dependencies— SCANLAB RTC4/5/6, syncAXIS runtime, fonts, sample dataSpiralLab.Sirius3— HAL controllers (scanner/laser/powermeter, etc.)SpiralLab.Sirius3.UI— Entities, 3D renderer, WinForms UI controls
Easy to update library files by NuGet package manager.
Platform targets
net481net8.0-windows
System Requirements
- Windows 10/11 (x64)
- GPU/Driver with OpenGL 3.3 support (latest drivers strongly recommended)
- SCANLAB drivers/runtimes installed (see versions below)
Dependencies
SCANLAB
- RTC4: v2023.11.02
- RTC5: v2024.09.27
- RTC6: 2025.10.30 v1.22.1
- syncAXIS: v1.8.2 (2023.03.09)
.NET / OpenTK
net481- OpenTK 3.3.3
net8.0-windows- OpenTK 4.9.4
- OpenTK.Mathematics 4.9.4
- Common
- Newtonsoft.Json 13.0.4
- Microsoft.Extensions.Logging 8.0.1
- Microsoft.Extensions.Logging.Abstractions 8.0.3
Getting Started
Add references (From NuGet package manager)
SpiralLab.Sirius3.Dependencies(https://www.nuget.org/packages/SpiralLab.Sirius3.Dependencies)SpiralLab.Sirius3(https://www.nuget.org/packages/SpiralLab.Sirius3)SpiralLab.Sirius3.UI(https://www.nuget.org/packages/SpiralLab.Sirius3.UI)
Create your devices like as scanner, laser, powermeter, marker, ... and attach them to SiriusEditorControl.
Examples: https://github.com/labspiral/sirius3
Quick Start
Project settings
<PropertyGroup Condition="'$(TargetFramework)'=='net481'">
<DefineConstants>$(DefineConstants);OPENTK3</DefineConstants>
</PropertyGroup>
PropertyGroup Condition="'$(TargetFramework)'=='net8.0-windows'">
<DefineConstants>$(DefineConstants);OPENTK4</DefineConstants>
</PropertyGroup>
<ItemGroup Condition="'$(TargetFramework)'=='net481'">
<PackageReference Include="OpenTK" Version="3.3.3" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)'=='net8.0-windows'">
<PackageReference Include="OpenTK" Version="4.9.4" />
<PackageReference Include="OpenTK.Mathematics" Version="4.9.4" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="SpiralLab.Sirius3.Dependencies" Version="*" />
<PackageReference Include="SpiralLab.Sirius3" Version="*" />
<PackageReference Include="SpiralLab.Sirius3.UI" Version="*" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.3" />
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.4" />
</ItemGroup>
Example code
#if OPENTK3
using OpenTK;
using DVec3 = OpenTK.Vector3d;
#elif OPENTK4
using OpenTK.Mathematics;
using DVec3 = OpenTK.Mathematics.Vector3d;
#endif
public class MainForm : Form
{
private readonly SiriusEditorControl editor = new SiriusEditorControl();
public MainForm()
{
editor.Dock = DockStyle.Fill;
Controls.Add(editor);
Load += (s, e) =>
{
// 1. Create devices
var scanner = ScannerFactory.Create ...
scanner.Initialize();
var laser = LaserFactory.Create ...
laser.Initialize();
var powerMeter = PowerMeterFactory.Create ...
powerMeter.Initialize();
var marker = MarkerFactory.Create ...
marker.Initialize();
// 2. Assign into SiriusEditorControl
editor.Scanner = scanner;
editor.Laser = laser;
editor.PowerMeter = powerMeter;
editor.Marker = marker;
// 3. Create entities
var line = EntityFactory.CreateLine(new DVec3(0, 0, 0), new DVec3(10, 10, 0));
editor.Document.ActAdd(line);
var text = new EntityFactory.CreateText("Arial", FontStyle.Regular, "SIRIUS3", 10);
editor.Document.ActAdd(text);
// 4. Ready marker
marker.Ready(editor.Document, editor.View, scanner, laser, powerMeter);
};
}
[STAThread]
static void Main()
{
// Initialize library
SpiralLab.Sirius3.Core.Initialize();
Application.EnableVisualStyles();
Application.Run(new MainForm());
// Clean-up library
SpiralLab.Sirius3.Core.Cleanup();
}
}
License
- Commercial license required for production use.
- See LICENSE.txt and THIRD-PARTY-NOTICES.txt.
- Contact: hcchoi@spirallab.co.kr | https://spirallab.co.kr
Without a license key, the library runs in 30-minute evaluation mode.
Version history
- See HISTORY.md
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0-windows7.0 is compatible. net9.0-windows was computed. net10.0-windows was computed. |
| .NET Framework | net481 is compatible. |
-
.NETFramework 4.8.1
- BouncyCastle.Cryptography (>= 2.3.1)
- Microsoft.Extensions.Logging (>= 8.0.1)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.3)
- Microsoft.Extensions.Logging.Debug (>= 8.0.0)
- Microsoft.Windows.Compatibility (>= 8.0.22)
- Newtonsoft.Json (>= 13.0.4)
- NLog (>= 6.0.5)
- NLog.Extensions.Logging (>= 6.0.5)
- OpenTK (>= 3.3.3)
- System.IO.Compression (>= 4.3.0)
- System.IO.Packaging (>= 8.0.1)
-
net8.0-windows7.0
- Microsoft.Extensions.Logging (>= 8.0.1)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.3)
- Microsoft.Extensions.Logging.Debug (>= 8.0.0)
- Microsoft.Windows.Compatibility (>= 8.0.22)
- Newtonsoft.Json (>= 13.0.4)
- NLog (>= 6.0.5)
- NLog.Extensions.Logging (>= 6.0.5)
- OpenTK (>= 4.9.4)
- OpenTK.Mathematics (>= 4.9.4)
- System.IO.Compression (>= 4.3.0)
- System.IO.Packaging (>= 8.0.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on SpiralLab.Sirius3:
| Package | Downloads |
|---|---|
|
SpiralLab.Sirius3.UI
Sirius3 is a .NET-based, all-in-one platform for precision laser processing |
GitHub repositories
This package is not used by any popular GitHub repositories.