ā2025-02-26 08:11 PM
š AI-Powered GDL Generator ā Would This Be Useful for You? š¤š
Hello everyone! š
Weāre exploring the idea of an AI-powered tool that generates GDL code based on natural language descriptions. Imagine simply describing the object you need, and the AI instantly produces the GDL scriptāno manual coding required! šļø
Potential Features:
ā Text-to-GDL Conversion ā Describe an object, get a functional GDL script.
ā Live Code Suggestions ā AI assists in optimizing and debugging GDL code.
ā GDL Library Enhancement ā Generate parametric objects quickly for Archicad.
ā Smart Learning ā The AI improves over time based on user input.
Before going further, weād love your thoughts and feedback:
š” Would this be useful for you?
š° Would you consider paying for a tool like this?
š§ What features would make it truly valuable?
Weāre still in the early development stage, so your input would be incredibly helpful in shaping the future of this tool! Looking forward to your insights. š
#Archicad #GDL #BIM #AI #Innovation
ā2025-10-01 01:51 PM
This would be a very welcome tool.
For someone who has not had the time to learn GDL properly I would love this kind of assistant.
Natural language coding, but also being able to troubleshoot existing code and/or suggest improvements to existing code.
Also, if it would be able to take an existing object code and amend that to add new parameters and options.
Would I use it - YES!
Would I pay for it - Probably not (but it all depends, doesn't it)
ā2025-10-01 04:39 PM
hi! while we are not fond of having super detailed objects in our models and plans (thats what specs are for) every now and then we do need some customization.
so yeah, it would be useful.
like everything else, we would pay for it if the price is fair.
on a tool like this, we would like to have:
-ability for instant visual 3d feedback
-ability to import any 3d object, generate its gdl code and then the ability to manipulate it
best of lucks in this endeavour!
ā2025-12-04
09:14 AM
- last edited on
ā2025-12-04
06:51 PM
by
Laszlo Nagy
So, today I tried Gemini to do script for a simple chair.
No errors!!!! š Also comments for every part.
ā2025-12-04 09:31 AM
AI is learning,
Soon it will take over the world. š¤£
Barry.
ā2025-12-04 06:54 PM
Could you post the generated 2D script and 3D script? It would be interesting to see how it was created, how efficient the generated GDL script is.
ā2025-12-04 11:57 PM
LOL - Gemini did an EpicFail on me. Generated a lot of code, but nothing worked...
...either it was my description or it just didn't work.
Oh well...back to waiting...
ā2025-12-05
09:12 AM
- last edited on
ā2025-12-05
09:28 AM
by
Noemi Balogh
Here is the 3D script. The 2D was just Project2 3, 270, 2
Comments are in Swedish.
! --- INITIERING ---
RESOL 36 ! Gƶr cirklarna mjuka (36 sidor)
MATERIAL mat_stol
! Definiera radien fƶr runda ben (halva tjockleken)
r = ben_tjk / 2
! Hotspots (samma som fƶrut)
HOTSPOT 0, 0, 0
HOTSPOT A, B, 0
HOTSPOT A, B, ZZYZX
! --- 1. FRAMBEN ---
! Hƶjden pƄ frambenen
h_fram = sits_hojd - sits_tjk
! --- Framben 1 (VƤnster) ---
IF runda_ben THEN
! Runda ben ritas frƄn mitten, sƄ vi flyttar in origo radien bit
ADDx r
ADDy r
CYLIND h_fram, r
DEL 2
ELSE
! Fyrkantiga ben ritas frƄn hƶrnet
BLOCK ben_tjk, ben_tjk, h_fram
ENDIF
! --- Framben 2 (Hƶger) ---
ADDx A - ben_tjk ! Flytta till hƶgerkanten
IF runda_ben THEN
ADDx r
ADDy r
CYLIND h_fram, r
DEL 2
ELSE
BLOCK ben_tjk, ben_tjk, h_fram
ENDIF
DEL 1 ! Backa frƄn hƶgerkanten
! --- 2. BAKBEN ---
! Flytta till bakkanten (Y-led)
ADDy B - ben_tjk
! --- Bakben 1 (VƤnster Bak) ---
IF runda_ben THEN
ADDx r
ADDy r
CYLIND ZZYZX, r
DEL 2
ELSE
BLOCK ben_tjk, ben_tjk, ZZYZX
ENDIF
! --- Bakben 2 (Hƶger Bak) ---
ADDx A - ben_tjk
IF runda_ben THEN
ADDx r
ADDy r
CYLIND ZZYZX, r
DEL 2
ELSE
BLOCK ben_tjk, ben_tjk, ZZYZX
ENDIF
DEL 1 ! Backa X (Hƶger bak)
DEL 1 ! Backa Y (Bakkanten)
! --- 3. SITS (Alltid rektangulƤr i detta exempel) ---
ADDz sits_hojd - sits_tjk
BLOCK A, B, sits_tjk
DEL 1
! --- 4. RYGGBRICKA ---
! Vi behƄller denna rektangulƤr Ƥven om benen Ƥr runda,
! men man skulle kunna gƶra den krƶkt med PRISM_ om man vill vara avancerad.
ADDz ZZYZX - rygg_h
ADDy B - ben_tjk
! Flytta in sƄ den sitter mellan benen
ADDx ben_tjk
BLOCK A - (2 * ben_tjk), ben_tjk, rygg_h
DEL 1 ! Backa X
DEL 2 ! Backa Z och Y
ā2025-12-05 10:04 AM
Can you remember the AI prompt?
Did you ask for a round or square leg option?
Adjustable seat and back height?
Barry.
ā2025-12-05
10:57 AM
- last edited on
ā2025-12-05
12:39 PM
by
Noemi Balogh
Yes, I did š
I also tried to upload a picture of a desk with drawer. Asked it to make it so I could open the drawers.
It almist worked. Just the drawers was aligned wrong. But that was easy to fix manually.
| Variabel | Typ | Namn | VƤrde |
| bredd_lador | LƤngd | Bredd pƄ lƄdsektion | 0.45 |
| skiva_tjk | LƤngd | Materialtjocklek | 0.03 |
| oppna_lador | LƤngd | Dra ut lƄdor (0-0.5) | 0.00 |
| oppna_tgb | LƤngd | Dra ut tangentbord | 0.00 |
| mat_bord | Material | Ytmaterial | Walnut Vertical |
| mat_handtag | Material | Handtagsmaterial | Metal Stainless |
! --- INSTĆLLNINGAR ---
RESOL 16
MATERIAL mat_bord
! Variabler fƶr mƄtt
sida_tjk = skiva_tjk ! Samma tjocklek pƄ ben som skiva
hurts_b = bredd_lador ! Bredden pƄ hƶgra delen
vanster_b = A - hurts_b ! Bredden pƄ vƤnstra delen (sittplatsen)
inner_djup = B - 0.02 ! LƄdornas djup
lador_antal = 4
! BerƤkna hƶjden fƶr varje lƄda (total hƶjd minus skivan / antal lƄdor)
lada_h = (ZZYZX - skiva_tjk) / lador_antal
! --- 1. STOMME & BORDSSKIVA ---
! Bordsskivan
ADDz ZZYZX - skiva_tjk
BLOCK A, B, skiva_tjk
DEL 1
! VƤnster ben (Gavel)
BLOCK sida_tjk, B, ZZYZX - skiva_tjk
! Bakstycke (Mellan vƤnster ben och hurtsen)
! Vi sƤtter den lite indragen
ADDx sida_tjk
ADDy B - 0.02
BLOCK vanster_b - sida_tjk, 0.02, ZZYZX - skiva_tjk - 0.15 ! Lite luft nertill
DEL 2
! Hurtsens vƤnstra vƤgg (Mellan benen)
ADDx vanster_b
BLOCK sida_tjk, B, ZZYZX - skiva_tjk
DEL 1
! Hurtsens hƶgra vƤgg (YttervƤgg)
ADDx A - sida_tjk
BLOCK sida_tjk, B, ZZYZX - skiva_tjk
DEL 1
! --- 2. TANGENTBORDSBRICKA ---
! Vi flyttar oss till mitten av sittutrymmet
ADDx sida_tjk
ADDz ZZYZX - skiva_tjk - 0.12 ! Placerad 12 cm under skivan
! HƤr sker magin: Flytta ut brickan baserat pƄ parametern
ADDy -oppna_tgb
! Rita sjƤlva brickan
BLOCK vanster_b - sida_tjk, B*0.6, 0.02
! (HƤr skulle man kunna rita metallskenor ocksƄ om man vill vara petig)
DEL 2 ! Backa ADDy och ADDx/z
! --- 3. LĆ
DOR (LOOP) ---
! Flytta origo till startpunkten fƶr hurtsen
ADDx vanster_b + sida_tjk
! Loopa 4 gƄnger fƶr att skapa 4 lƄdor
FOR i = 1 TO lador_antal
! --- RĆRELSE ---
! Om du vill att alla lƄdor ƶppnas samtidigt:
ADDy -oppna_lador
! (Alternativt: Om du bara vill ƶppna ƶversta lƄdan kan man anvƤnda IF i = 4...)
! --- LĆ
DFRONT ---
! Vi gƶr fronten lite mindre Ƥn hƄlet fƶr att fƄ en springa (gap)
gap = 0.002
! Rita fronten
BLOCK hurts_b - sida_tjk - gap, 0.02, lada_h - gap
! --- HANDTAG ---
! Placera handtaget centrerat pƄ fronten
cx = (hurts_b - sida_tjk)/2
cz = lada_h / 2
ADDx cx
ADDz cz
ADDy -0.01 ! Utanfƶr fronten
MATERIAL mat_handtag
ROTx 90
CYLIND 0.02, 0.005 ! En enkel knopp/cylinder som handtag
DEL 1 ! Backa ROTx
! Rita handtaget som en rektangulƤr grej (som pƄ bilden)
ADDx -0.05
ADDz -0.005
BLOCK 0.10, 0.01, 0.01
DEL 2
MATERIAL mat_bord ! Byt tillbaka till trƤ
DEL 3 ! Backa frƄn handtagspositionen
! --- LĆ
DLĆ
DA (SjƤlva boxen bakom fronten) ---
ADDy 0.02 ! Bakom fronten
ADDx 0.01
! Botten av lƄdan
BLOCK hurts_b - sida_tjk - 0.02, inner_djup*0.9, 0.015
! Sidor pƄ lƄdan (frivilligt, men ser bra ut nƤr man ƶppnar)
BLOCK 0.015, inner_djup*0.9, lada_h * 0.6
ADDx (hurts_b - sida_tjk - 0.02) - 0.015
BLOCK 0.015, inner_djup*0.9, lada_h * 0.6
DEL 1
DEL 2 ! Backa frƄn lƄdlƄdan
DEL 1 ! Backa ADDy (Ćppningsrƶrelsen)
! --- FĆRBERED NĆSTA VARV ---
! Flytta upp origo till nƤsta lƄdnivƄ
ADDz lada_h
NEXT i
! StƤda upp stacken (vi har gjort ADDx och sedan en loop med ADDz)
DEL 1 + lador_antal
ā2025-12-05 03:16 PM
I would say that this is pretty impressive.