From da53915689f3fe9fbf0c49f9ab169deaeb4741ca Mon Sep 17 00:00:00 2001 From: Alex Kurpanik <71767601+Kurpanik@users.noreply.github.com> Date: Mon, 11 May 2026 15:02:13 +0200 Subject: [PATCH 1/5] Set color-mode default to light --- docusaurus.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/docusaurus.config.js b/docusaurus.config.js index fd913da3..953569d8 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -69,6 +69,7 @@ const config = { ({ image: 'img/docusaurus-social-card.jpg', colorMode: { + defaultMode: 'light', respectPrefersColorScheme: true, }, docs: { From 2c7faa8aea39c9166fc92493e37262dfd4a00687 Mon Sep 17 00:00:00 2001 From: Alex Kurpanik <71767601+Kurpanik@users.noreply.github.com> Date: Mon, 11 May 2026 15:38:29 +0200 Subject: [PATCH 2/5] Remove obsolete gldf-editor-logo.webp --- static/img/homepage/gldf-editor-logo.webp | Bin 3272 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 static/img/homepage/gldf-editor-logo.webp diff --git a/static/img/homepage/gldf-editor-logo.webp b/static/img/homepage/gldf-editor-logo.webp deleted file mode 100644 index ba59549258d760f14adde8029a6ec2a3f2c85e9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3272 zcmV;(3^(&qNk&G%3;+OEMM6+kP&iDp3;+NxU4azy}>sY^_&4~02u$FJH^ z9}c71Rv%RS`KWHu6;v4&R9hcZOYaY>)Kqn?`fyNv7)Nz=Raex9!ciaos4&g?EdfD^ zLO@XD|7iW6fRQpf4Tn$LX&$YnRp{O_4&M*RUeiokK}Ox@(=0lI=`c7dO35%}dm)<- z3|V7Fh}kd{DvvQb3E4V~Q7dRR4wWimj7~we9%IxR)1&OE4t1wtsZSw;=>%bQC`Ea1K9WPGvY1E}VHl9C9TH(eI1&}fA5*Ft6f=>Ktg^}~s}Ob$Q>q3~+*M4e znjq07OsS}SrnmHzp3`jxfN6ynydXvl?2%-bF_G#C$=>h+D^{C^$y8TJ_LVXs^L->c zhKW>dNDiAKWV!>%mS8tLc=es(i!)Bx9(ur_k;|%Ie7fJKmB3ATx}rOTYYRX z8ivD%(hd;$PjC7aS~gf{1o=3d-k_C1@u90-&Ck!?a)SX{uIBV1dy*mjB!a>Z*-Hgn z{72{0Qs&cPe6!M!;dpVb=I3W`ncvVbg2O;V@(~i%_6SX~PS^!QqygZzY&IX8TUD4)yEubPFDMHy2$U}a38t#0-XKsT;#$cG>sptW zkB`mfC|w3WS{#BH3otcw3v*aR4CpWdGxC4P~+m0)UJ59nsx10o_9I96w=D$4E#AVy<3S1}}+-|d3{)P|GjmLlC-TwD(ImP7sM zwpR-Pl_C#ob58^m-Zxw%U-yYYqF`P5&i!>R;+U%!IdqMl@j917W$~7ywUFu&1R%+M zWlm4huZy@?T|zJrX?Fi#qKk`*%UOJB=~p=bILtUdSCXzC2^|3V^bwgP8~y*+xwv$f zx4f~}F8WxVlK5Ikej_Y&&|H61eGx#UQ&Bu48-UiLTLYo^B+)_vB$sI=)YTsd z6F`MO3`8u3VwW%gqCQ81D6LN~XqD@wB)3GSvy0L?&Eg8;nz z)RmjvGephoBgtTkOR*7DmzD3p15D5wvLE&!mdP`*h3XbyTM zmtqM3N|N|}yMSre1(X*L9qgs-%LY(pK16x@bpehyRTOh7U_W_VN|!0kDPI8_iZZE7zZz+04@>oq`ORG8s^jq!2v_QsfOF%qvR z3b z9KjIN1`=&rK_0gO`~@0|$bxE};{Eb{bw`^m&`8*0skSo+JYeI zYpl5d3;MJmQKs0!Bq;0~Dja|M-eH8Eq32ZhMF2-LL_R>GUsjMl6OdfR;?I&5)#e-p zFVH_FqLE)j& z?$ZuuxCeU!KYa#4Lh9-dMBEJ(s<<0~8yg}afTJlW5x^t_(etC_?QRHQ+NyHCi!q{+ zUo^(ED4PSYE)M}u;!4X-W4Js5fzwm)2;JPaZiwmD0>CSSAxZ%7W(64myj$RKE-OqQ z20+Kj+!;H7BZ!2?dl7(_i+&XylFpX)VhF6Rc|XSMvO(LNLj@O-cxvo|0poT2BABE6Ki-H zfE7Gg1-}U3iu#=-U?OW<+eC7^skCz{9+QUO3bQHg5u5uD^hU%V)QlozLgBECY= zMQG*$;F=sMh3)_A~WUG_-{WkLM2$c2t*Pu1zCJ^VrzsRu-9g;FRx3Qt|C&$?xaCBw2e215qomEQieaq4E-GkMIr28fF z<}B(icW)>*QLd=ZFjB>sKDQ@%G7uioz9!C6jS*}*Or#`Z ztcCneW6a_tWj Date: Mon, 11 May 2026 15:38:56 +0200 Subject: [PATCH 3/5] Add GLDF Editor nav-bar and docs pages --- docs/tools-dev/gldf-editor.md | 35 +++++++++++++++++++++++ docusaurus.config.js | 5 ++++ sidebars.js | 1 + src/pages/gldf-editor.md | 41 +++++++++++++++++++++++++++ static/img/homepage/gldf-editor.webp | Bin 6236 -> 32550 bytes 5 files changed, 82 insertions(+) create mode 100644 docs/tools-dev/gldf-editor.md create mode 100644 src/pages/gldf-editor.md diff --git a/docs/tools-dev/gldf-editor.md b/docs/tools-dev/gldf-editor.md new file mode 100644 index 00000000..525d7c6c --- /dev/null +++ b/docs/tools-dev/gldf-editor.md @@ -0,0 +1,35 @@ +--- +title: GLDF Editor +sidebar_label: GLDF Editor +--- + +## Introduction + +The GLDF Editor is a web-based application developed by RELUX to create, edit, and validate GLDF files. This tool allows you to enrich your product data with all the information required for modern lighting design, BIM processes, and integration into planning software such as DIALux or RELUX. You can start a project from scratch or upload existing GLDF files to modify or verify them. + +--- + +:::tip[Open] +[gldf-editor.relux.com](https://gldf-editor.relux.com) +::: + +![Screenshot GLDF Editor](/img/homepage/gldf-editor.webp) + +--- + +## Editor Sections and Data Management + +The interface is divided into logical modules to ensure a step-by-step preparation of your data: + +* **Product Overview & Description:** +Manage core master data such as GTIN, product numbers, and mounting types. This section also allows you to maintain multilingual product descriptions (e.g., German and English) using an integrated rich-text editor. +* **Product Attributes:** +Define the physical and technical properties of your luminaire. This includes mechanical aspects (IK rating, dimensions, weight) as well as electrical specifications (IP code, power factor). +* **Photometry & Emergency:** +Handle lighting technical values such as luminous flux (lm), color rendering (CRI), color temperature (K), and efficiency. Additionally, you can configure emergency lighting behavior and durations here. +* **Files (Asset Management):** +The editor acts as a container manager. You can upload and link all associated files, including photometric data (LDT/IES), product images, 3D geometries (L3D), spectra, and PIR sensor data. +* **Contact & Licensing:** +Store manufacturer contact information and specific license keys for DIAL and RELUX to ensure correct identification and assignment within the lighting design ecosystems. + +Finally, the editor provides integrated validation to ensure that the created file complies with the current GLDF standard and can be exported without errors. diff --git a/docusaurus.config.js b/docusaurus.config.js index 953569d8..d425b089 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -121,6 +121,11 @@ const config = { label: 'L3D Editor', position: 'left', }, + { + to: 'gldf-editor/', + label: 'GLDF Editor', + position: 'left', + }, { to: 'download', label: 'Download', diff --git a/sidebars.js b/sidebars.js index bff83a28..f8c2a93d 100644 --- a/sidebars.js +++ b/sidebars.js @@ -105,6 +105,7 @@ module.exports = { { Tooling: [ "tools-dev/l3d-editor", + "tools-dev/gldf-editor", ], Parsers: ["tools-dev/gldf-net-parser", "tools-dev/l3d-net-parser"], }, diff --git a/src/pages/gldf-editor.md b/src/pages/gldf-editor.md new file mode 100644 index 00000000..1c88e3c4 --- /dev/null +++ b/src/pages/gldf-editor.md @@ -0,0 +1,41 @@ +--- +--- + +# GLDF Editor + +## Introduction + +The GLDF Editor is a web-based application developed by RELUX to create, edit, and validate GLDF files. This tool allows you to enrich your product data with all the information required for modern lighting design, BIM processes, and integration into planning software such as DIALux or RELUX. You can start a project from scratch or upload existing GLDF files to modify or verify them. + +--- + +:::tip[Open] +[gldf-editor.relux.com](https://gldf-editor.relux.com) +::: + +![Screenshot GLDF Editor](/img/homepage/gldf-editor.webp) + +--- + +## Editor Sections and Data Management + +The interface is divided into logical modules to ensure a step-by-step preparation of your data: + +* **Product Overview & Description:** +Manage core master data such as GTIN, product numbers, and mounting types. This section also allows you to maintain multilingual product descriptions (e.g., German and English) using an integrated rich-text editor. +* **Product Attributes:** +Define the physical and technical properties of your luminaire. This includes mechanical aspects (IK rating, dimensions, weight) as well as electrical specifications (IP code, power factor). +* **Photometry & Emergency:** +Handle lighting technical values such as luminous flux (lm), color rendering (CRI), color temperature (K), and efficiency. Additionally, you can configure emergency lighting behavior and durations here. +* **Files (Asset Management):** +The editor acts as a container manager. You can upload and link all associated files, including photometric data (LDT/IES), product images, 3D geometries (L3D), spectra, and PIR sensor data. +* **Contact & Licensing:** +Store manufacturer contact information and specific license keys for DIAL and RELUX to ensure correct identification and assignment within the lighting design ecosystems. + +Finally, the editor provides integrated validation to ensure that the created file complies with the current GLDF standard and can be exported without errors. + +--- + +## Feedback + +We are happy to get your feedback, failure reports and wishes. You can contact RELUX at [info@relux.com](mailto:info@relux.com). diff --git a/static/img/homepage/gldf-editor.webp b/static/img/homepage/gldf-editor.webp index d03e05e4595c6f79fff6701a6537513c9aa909af..38dfca0be34a94f95fbf7c6544212fa339d7b2b9 100644 GIT binary patch literal 32550 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 aPCp#`kNS-^OEP7@rcTm@^Li{Gp#K5uJ*c1n literal 6236 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 GxBvjC(`2In From 3df01205b507412f569cf931dfeba6045b6b6a9c Mon Sep 17 00:00:00 2001 From: Alex Kurpanik <71767601+Kurpanik@users.noreply.github.com> Date: Mon, 11 May 2026 15:44:42 +0200 Subject: [PATCH 4/5] Fix path to image in minimalgeo.md --- docs/getting-started/examples/minimalgeo.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/examples/minimalgeo.md b/docs/getting-started/examples/minimalgeo.md index 7c692a6d..361e05b6 100644 --- a/docs/getting-started/examples/minimalgeo.md +++ b/docs/getting-started/examples/minimalgeo.md @@ -15,7 +15,7 @@ The setup of the file is very straightforward. It contains a simple 3D geometry, It also references a basic L3D file in the file definitions. The screenshot below shows that the 3D file contains only one light-emitting object named LEO, which we will reference later in the Geomtry part of the product.xml file. -![Minimal Geo r3d model in editor](/img/docs/getting-started/examples_minimalgeo_3D.webp) +![Minimal Geo r3d model in editor](/img/docs/getting-started/examples_minimalgeo_3d.webp) ## product.xml From 3f7c7fff95de52ab2e6b80929c7e3814b69827aa Mon Sep 17 00:00:00 2001 From: Alex Kurpanik <71767601+Kurpanik@users.noreply.github.com> Date: Mon, 11 May 2026 15:51:59 +0200 Subject: [PATCH 5/5] Rename L3d -> L3D in l3d-editor.md --- docusaurus.config.js | 8 ++++---- src/pages/l3d-editor.md | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docusaurus.config.js b/docusaurus.config.js index d425b089..6147c63f 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -117,13 +117,13 @@ const config = { target: '_blank', }, { - to: 'l3d-editor/', - label: 'L3D Editor', + to: 'gldf-editor/', + label: 'GLDF Editor', position: 'left', }, { - to: 'gldf-editor/', - label: 'GLDF Editor', + to: 'l3d-editor/', + label: 'L3D Editor', position: 'left', }, { diff --git a/src/pages/l3d-editor.md b/src/pages/l3d-editor.md index bdf8d356..1464811a 100644 --- a/src/pages/l3d-editor.md +++ b/src/pages/l3d-editor.md @@ -1,7 +1,7 @@ --- --- -# L3d Editor +# L3D Editor L3D is the new **3D geometry file format for GLDF**. It is comparable to the old r3d and m3d formats, but modern and open for everyone. DIAL did the first step and provide the first **Editor for L3D**. With this tool it is much easier to **view, edit and create L3D** as just with standard text editors. It is a web application running in browsers and **free to use**. We hope that a larger community will start to investigate the possibilities of GLDF and L3D.