SpiralLab.Sirius3 0.9.2

dotnet add package SpiralLab.Sirius3 --version 0.9.2
                    
NuGet\Install-Package SpiralLab.Sirius3 -Version 0.9.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SpiralLab.Sirius3" Version="0.9.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SpiralLab.Sirius3" Version="0.9.2" />
                    
Directory.Packages.props
<PackageReference Include="SpiralLab.Sirius3" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SpiralLab.Sirius3 --version 0.9.2
                    
#r "nuget: SpiralLab.Sirius3, 0.9.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SpiralLab.Sirius3@0.9.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SpiralLab.Sirius3&version=0.9.2
                    
Install as a Cake Addin
#tool nuget:?package=SpiralLab.Sirius3&version=0.9.2
                    
Install as a Cake Tool

Sirius3

A .NET-Based, All-IN-ONE Platform for Precision Laser Processing.

sirius3_logo


Highlights

sirius3_logo

  • 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

sirius3_logo

  • 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 data
  • SpiralLab.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

  • net481
  • net8.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

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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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.

Version Downloads Last Updated
0.9.2 34 11/25/2025
0.9.1 376 11/18/2025
0.8.1 260 11/11/2025
0.8.0 330 11/7/2025 0.8.0 is deprecated because it is no longer maintained.