https://github.com/labspiral/sirius3
A .NET-Based, All-IN-ONE Platform for Precision Laser Processing. Example Projects for SIRIUS3 Library.
https://github.com/labspiral/sirius3
3d laser opentk rtc scanlab sirius3 syncaxis
Last synced: 5 months ago
JSON representation
A .NET-Based, All-IN-ONE Platform for Precision Laser Processing. Example Projects for SIRIUS3 Library.
- Host: GitHub
- URL: https://github.com/labspiral/sirius3
- Owner: labspiral
- License: other
- Created: 2023-05-23T11:29:16.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-12-22T07:13:16.000Z (6 months ago)
- Last Synced: 2025-12-23T18:46:01.244Z (6 months ago)
- Topics: 3d, laser, opentk, rtc, scanlab, sirius3, syncaxis
- Homepage: https://spirallab.co.kr/sirius3-library
- Size: 34.7 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: HISTORY.koKR.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# 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
| | SIRIUS3 | SIRIUS2 |
|:-----------------------------|:-----------------------------------------|:--------------------------------------|
| Multiple page |4 Pages |1 Page(Single) |
| Camera |6 Built-in Cameras |Perspective |
| Render speed |Fastest by updated shader engine |Faster |
| Render mode |Model, PerVertex, Normal, ZDepth |None |
| HitTest speed |Faster by AABBTree |Slow |
| Hatch |Multiple Hatches |Single Hatch |
| 3D Mesh with slicer |Built-in Slicer for PLY, OBJ, STL |None |
| Gerber file(RS-274x) |Supported |None |
| Wafer/Substrate map |Built-in editor |None |
| Font file |General CXF, LFF formats |Customized CXF, LFF formats |
| Pen |Pens for Entity and Layer |Single Pen |
| Library update |By Nuget Package Manager |None |



## 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
## Install Packages
- Add references
- `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
```
$(DefineConstants);OPENTK3
PropertyGroup Condition="'$(TargetFramework)'=='net8.0-windows'">
$(DefineConstants);OPENTK4
```
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 = 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 sirius3 library
SpiralLab.Sirius3.Core.Initialize();
...
Application.Run(new MainForm());
// Clean-up sirius3 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](HISTORY.md)
- 한국어 이력 정보 [HISTORY.krKR.md](HISTORY.koKR.md)