{"id":37044917,"url":"https://github.com/labspiral/sirius3","last_synced_at":"2026-01-14T05:11:41.172Z","repository":{"id":322922971,"uuid":"644370013","full_name":"labspiral/sirius3","owner":"labspiral","description":"A .NET-Based, All-IN-ONE Platform for Precision Laser Processing. Example Projects for SIRIUS3 Library.","archived":false,"fork":false,"pushed_at":"2025-12-22T07:13:16.000Z","size":36430,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-23T18:46:01.244Z","etag":null,"topics":["3d","laser","opentk","rtc","scanlab","sirius3","syncaxis"],"latest_commit_sha":null,"homepage":"https://spirallab.co.kr/sirius3-library","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/labspiral.png","metadata":{"files":{"readme":"README.md","changelog":"HISTORY.koKR.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-05-23T11:29:16.000Z","updated_at":"2025-12-22T07:13:19.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/labspiral/sirius3","commit_stats":null,"previous_names":["labspiral/sirius3"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/labspiral/sirius3","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labspiral%2Fsirius3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labspiral%2Fsirius3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labspiral%2Fsirius3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labspiral%2Fsirius3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/labspiral","download_url":"https://codeload.github.com/labspiral/sirius3/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labspiral%2Fsirius3/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28410303,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","laser","opentk","rtc","scanlab","sirius3","syncaxis"],"created_at":"2026-01-14T05:11:40.596Z","updated_at":"2026-01-14T05:11:41.155Z","avatar_url":"https://github.com/labspiral.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# Sirius3\nA .NET-Based, All-IN-ONE Platform for Precision Laser Processing.\n\n![sirius3_logo](https://spirallab.co.kr/sirius3/sirius3_logo3.png)\n\n---\n\n## Highlights\n![sirius3_editor](https://spirallab.co.kr/sirius3/sirius3_editor.png)\n\n- SCANLAB RTC Controllers\n   - RTC4 / RTC4e / RTC5 / RTC6 / RTC6e\n   - XL-SCAN (RTC6 + ACS via syncAXIS)\n- Measurement and Profiling\n   - Log scanner trajectory and output signals with plotted graphs\n- Powerful Marking Options\n   - MoF (Marking on the Fly), 2nd head, 3D\n   - Sky Writing Mode 1/2/3 and 4\n- Ramp (Automatic Laser Control)\n   – Position dependent \n   - Velocity(set or actual) dependent\n   - Encoder speed dependent\n- Scanner Field Correction\n   - 2D / 3D correction \n- Laser Power Control\n   - Frequency, Duty Cycle, Analog, Digital\n   - Built-in vendor integrations: AdvancedOptoWave, Coherent, IPG, JPT, Photonics Industry, Spectra Physics and more\n- Powermeters \u0026 Powermap\n   - Coherent (PowerMax), Thorlabs (via OPM), Ophir (via StarLab)\n   - Powermap-based output compensation\n- Various Entities and Formats\n   - Point(s), Line, Arc, Polyline, Triangle, Rectangle, Spiral, Trepan, Spline\n   - Layer, Group, Block and BlockInsert\n   - Text, SiriusText, ImageText, Circular Text\n   - Image, DXF, HPGL, ZPL\n   - QR, DataMatrix, PDF417 Barcodes\n   - 3D Mesh Format like as STL, OBJ, PLY\n- Open Architecture\n   - Editor and laser-source control code are open for customization\n\n## Major Changes\n|                              |                SIRIUS3                   |              SIRIUS2                  |\n|:-----------------------------|:-----------------------------------------|:--------------------------------------|\n| Multiple page                |4 Pages                                   |1 Page(Single)                         |\n| Camera                       |6 Built-in Cameras                        |Perspective                            |\n| Render speed                 |Fastest by updated shader engine          |Faster                                 |\n| Render mode                  |Model, PerVertex, Normal, ZDepth          |None                                   |\n| HitTest speed                |Faster by AABBTree                        |Slow                                   |\n| Hatch                        |Multiple Hatches                          |Single Hatch                           |\n| 3D Mesh with slicer          |Built-in Slicer for PLY, OBJ, STL         |None                                   |\n| Gerber file(RS-274x)         |Supported                                 |None                                   |\n| Wafer/Substrate map          |Built-in editor                           |None                                   |\n| Font file                    |General CXF, LFF formats                  |Customized CXF, LFF formats            |\n| Pen                          |Pens for Entity and Layer                 |Single Pen                             |\n| Library update               |By Nuget Package Manager                  |None                                   |\n                                                                                                              \n![sirius3_logo](https://spirallab.co.kr/sirius3/sirius3_hatch.png)\n![sirius3_logo](https://spirallab.co.kr/sirius3/sirius3_slicer.png)\n![sirius3_logo](https://spirallab.co.kr/sirius3/sirius3_syncaxis.png)\n\n## Packages / DLLs\n- `SpiralLab.Sirius3.Dependencies` — SCANLAB RTC4/5/6, syncAXIS runtime, fonts, sample data\n- `SpiralLab.Sirius3` — HAL controllers (scanner/laser/powermeter, etc.)\n- `SpiralLab.Sirius3.UI` — Entities, 3D renderer, WinForms UI controls\n \u003e Easy to update library files by NuGet package manager.\n\n## Platform targets\n- `net481`\n- `net8.0-windows`\n\n## System Requirements\n- Windows 10/11 (x64)\n- GPU/Driver with OpenGL 3.3 support (latest drivers strongly recommended)\n- SCANLAB drivers/runtimes installed (see versions below)\n \n## Dependencies\n- SCANLAB\n   - RTC4: v2023.11.02\n   - RTC5: v2024.09.27\n   - RTC6: 2025.10.30 v1.22.1\n   - syncAXIS: v1.8.2 (2023.03.09)\n\n- .NET / OpenTK\n   - `net481`\n      - OpenTK 3.3.3\n   - `net8.0-windows`\n      - OpenTK 4.9.4\n      - OpenTK.Mathematics 4.9.4\n   - Common\n      - Newtonsoft.Json 13.0.4\n      - Microsoft.Extensions.Logging 8.0.1\n      - Microsoft.Extensions.Logging.Abstractions 8.0.3\n\n## Install Packages\n- Add references \n   - `SpiralLab.Sirius3.Dependencies` (https://www.nuget.org/packages/SpiralLab.Sirius3.Dependencies)\n   - `SpiralLab.Sirius3` (https://www.nuget.org/packages/SpiralLab.Sirius3)\n   - `SpiralLab.Sirius3.UI` (https://www.nuget.org/packages/SpiralLab.Sirius3.UI)\n\n- Create your devices like as scanner, laser, powermeter, marker, ... and attach them to SiriusEditorControl.\n- Examples: https://github.com/labspiral/sirius3\n\n## Quick Start\nProject settings\n```\n\u003cPropertyGroup Condition=\"'$(TargetFramework)'=='net481'\"\u003e\n\t\u003cDefineConstants\u003e$(DefineConstants);OPENTK3\u003c/DefineConstants\u003e\n\u003c/PropertyGroup\u003e\n\nPropertyGroup Condition=\"'$(TargetFramework)'=='net8.0-windows'\"\u003e\n\t\u003cDefineConstants\u003e$(DefineConstants);OPENTK4\u003c/DefineConstants\u003e\n\u003c/PropertyGroup\u003e\n\n\u003cItemGroup Condition=\"'$(TargetFramework)'=='net481'\"\u003e\n\t\u003cPackageReference Include=\"OpenTK\" Version=\"3.3.3\" /\u003e\n\u003c/ItemGroup\u003e\n\t\n\u003cItemGroup Condition=\"'$(TargetFramework)'=='net8.0-windows'\"\u003e\n\t\u003cPackageReference Include=\"OpenTK\" Version=\"4.9.4\" /\u003e\n\t\u003cPackageReference Include=\"OpenTK.Mathematics\" Version=\"4.9.4\" /\u003e\n\u003c/ItemGroup\u003e\n\n\u003cItemGroup\u003e\n\t\u003cPackageReference Include=\"SpiralLab.Sirius3.Dependencies\" Version=\"1.*\" /\u003e\n\t\u003cPackageReference Include=\"SpiralLab.Sirius3\" Version=\"1.*\" /\u003e\n\t\u003cPackageReference Include=\"SpiralLab.Sirius3.UI\" Version=\"1.*\" /\u003e\n\t\u003cPackageReference Include=\"Microsoft.Extensions.Logging.Abstractions\" Version=\"8.0.3\" /\u003e\n\t\u003cPackageReference Include=\"Microsoft.Extensions.Logging\" Version=\"8.0.1\" /\u003e\n\t\u003cPackageReference Include=\"Newtonsoft.Json\" Version=\"13.0.4\" /\u003e\n\u003c/ItemGroup\u003e\n```\n\nExample code\n```\n#if OPENTK3\n    using OpenTK;\n    using DVec3 = OpenTK.Vector3d;\n#elif OPENTK4\n    using OpenTK.Mathematics;\n    using DVec3 = OpenTK.Mathematics.Vector3d;\n#endif\n\npublic class MainForm : Form\n{\n    private readonly SiriusEditorControl editor = new SiriusEditorControl();\n\n    public MainForm()\n    {\n        editor.Dock = DockStyle.Fill;\n        Controls.Add(editor);\n        Load += (s, e) =\u003e\n        {\n            // 1. Create devices \n            var scanner =  ScannerFactory.Create ...\n            scanner.Initialize();\n\n            var laser = LaserFactory.Create ...\n            laser.Initialize();\n\n            var powerMeter = PowerMeterFactory.Create ...\n            powerMeter.Initialize();\n\n            var marker = MarkerFactory.Create ... \n            marker.Initialize();\n\n            // 2. Assign into SiriusEditorControl\n            editor.Scanner = scanner;\n            editor.Laser = laser;\n            editor.PowerMeter = powerMeter;\n            editor.Marker = marker;\n            \n            // 3. Create entities\n            var line = EntityFactory.CreateLine(new DVec3(0, 0, 0), new DVec3(10, 10, 0));\n            editor.Document.ActAdd(line);\n          \n            var text = EntityFactory.CreateText(\"Arial\", FontStyle.Regular, \"SIRIUS3\", 10);\n            editor.Document.ActAdd(text);\n            \n            // 4. Ready marker\n            marker.Ready(editor.Document, editor.View, scanner, laser, powerMeter);\n        };\n    }\n\n    [STAThread]\n    static void Main()\n    {\n        // Initialize sirius3 library\n        SpiralLab.Sirius3.Core.Initialize();\n\n        ...\n        Application.Run(new MainForm());\n\n        // Clean-up sirius3 library\n        SpiralLab.Sirius3.Core.Cleanup();\n    }\n}\n```\n\n## License\n- Commercial license required for production use.\n- See LICENSE.txt and THIRD-PARTY-NOTICES.txt.\n- Contact: hcchoi@spirallab.co.kr | https://spirallab.co.kr\n\u003e Without a license key, the library runs in 30-minute evaluation mode.\n\n## Version history\n- See [HISTORY.md](HISTORY.md)\n- 한국어 이력 정보 [HISTORY.krKR.md](HISTORY.koKR.md)\n\n\n ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flabspiral%2Fsirius3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flabspiral%2Fsirius3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flabspiral%2Fsirius3/lists"}