Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.
SOLVED!

Skylight snapping on roof issue

Niranjan Das Sharma
Enthusiast

Screenshot 2025-04-24 at 11.40.51 AM.png

 

 I am trying to position dormer skylights in place. Problem is with selection and snapping points. The snapping points are not along the ridge or valley lines or intersections so it becomes extremely difficult to accurately position it.  Please check the zoomed screenshot.  Is there any solution for this?

 

Screenshot 2025-04-24 at 11.40.04 AM.png

Thank you in advance. 

1 ACCEPTED SOLUTION

Accepted Solutions
Solution
Jaime-airc_digital
Enthusiast

Hi @Niranjan Das Sharma, your request makes a lot of sense, those points are definitely needed to place the skylight accurately.
I managed to code the additional roof reference hotspots. Here are the required changes:

 
Copy and paste the following definition at the start of the 2D Script, replacing the existing one:
ySpitze = (dUeberstandGaubeVorn + zFrontFirst + 0.5 * sizeRoofFrontOverhang + 0.04142)/ tanDach
 
Paste the following new hotspots code at the end of the 2D script:
! 2D hotspots at key roof geometry points
hotspot2 xBreite + dUeberstandDachGaube, - sizeRoofFrontOverhang ! Front Top eave
hotspot2 xBreiteHalb, - sizeRoofFrontOverhang ! Front Ridge
hotspot2 -dUeberstandDachGaube, - sizeRoofFrontOverhang ! Front bottom eave
hotspot2 xBreite + dUeberstandDachGaube, yEcke - 0.05858 / tanDach ! Back Top eave
hotspot2 -dUeberstandDachGaube, yEcke - 0.05858 / tanDach ! Back bottom eave
 
Paste the following code at after the detailed model hotspots section of the 3D Script:
! 3D hotspots at key roof geometry points
hotspot xBreite + dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe / tanDach - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back Top eave
hotspot -dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe / tanDach - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back bottom eave
hotspot xBreiteHalb, (dUeberstandGaubeVorn + zFrontFirst + 0.5 * sizeRoofFrontOverhang + 0.0411 )/ tanDach, zFrontFirst + dzDachGaube, unID : unID = unID + 1 ! Back Ridge
hotspot xBreite + dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe / tanDach - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back Top eave
hotspot -dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back bottom eave
 
See video tip below on how to do it yourself:
Or subscribe to our airc.digital community and download the object for free:
https://airc.digital/community/
Archicad 28 ARM, MacBook Pro M3 Max 128Gb, macOS Sonoma.
/Operations Director /BIM Lead /Architect @ www.airc.digital ltd ™
M Architecture & Urbanism ARB

View solution in original post

6 REPLIES 6
Matteods
Enthusiast

Hi

What kind of object is? It's not a native Archicad object?

 

Greetings,

Matteo 

Its a skylight object. Native Archicad. 

NiranjanDasSharma_0-1746164639141.png

 Thanks ,

Niranjan 

 

When used with the skylight tool (which you are doing), it will automatically lock onto the roof surface.

You can only place it by one of those anchor points, but you can move it around where ever you like after it has been placed.

But only accurately by those anchor points.

Otherwise just zoom in and get as accurate as you can.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

It was locking on to roof surface. My only problem was the accuracy of placement. Understood the limitation.

Thank you. 

Solution
Jaime-airc_digital
Enthusiast

Hi @Niranjan Das Sharma, your request makes a lot of sense, those points are definitely needed to place the skylight accurately.
I managed to code the additional roof reference hotspots. Here are the required changes:

 
Copy and paste the following definition at the start of the 2D Script, replacing the existing one:
ySpitze = (dUeberstandGaubeVorn + zFrontFirst + 0.5 * sizeRoofFrontOverhang + 0.04142)/ tanDach
 
Paste the following new hotspots code at the end of the 2D script:
! 2D hotspots at key roof geometry points
hotspot2 xBreite + dUeberstandDachGaube, - sizeRoofFrontOverhang ! Front Top eave
hotspot2 xBreiteHalb, - sizeRoofFrontOverhang ! Front Ridge
hotspot2 -dUeberstandDachGaube, - sizeRoofFrontOverhang ! Front bottom eave
hotspot2 xBreite + dUeberstandDachGaube, yEcke - 0.05858 / tanDach ! Back Top eave
hotspot2 -dUeberstandDachGaube, yEcke - 0.05858 / tanDach ! Back bottom eave
 
Paste the following code at after the detailed model hotspots section of the 3D Script:
! 3D hotspots at key roof geometry points
hotspot xBreite + dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe / tanDach - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back Top eave
hotspot -dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe / tanDach - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back bottom eave
hotspot xBreiteHalb, (dUeberstandGaubeVorn + zFrontFirst + 0.5 * sizeRoofFrontOverhang + 0.0411 )/ tanDach, zFrontFirst + dzDachGaube, unID : unID = unID + 1 ! Back Ridge
hotspot xBreite + dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe / tanDach - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back Top eave
hotspot -dUeberstandDachGaube, dUeberstandGaubeVorn + zHoeheTraufe - 0.05850 / tanDach, zFirstVorne - yAbschnitt + 0.0707, unID : unID = unID + 1 ! Back bottom eave
 
See video tip below on how to do it yourself:
Or subscribe to our airc.digital community and download the object for free:
https://airc.digital/community/
Archicad 28 ARM, MacBook Pro M3 Max 128Gb, macOS Sonoma.
/Operations Director /BIM Lead /Architect @ www.airc.digital ltd ™
M Architecture & Urbanism ARB
Niranjan Das Sharma
Enthusiast

Thank you verymuch! that really helped 😊..

Didn't find the answer?

Check other topics in this Forum

Back to Forum

Read the latest accepted solutions!

Accepted Solutions

Start a new conversation!