We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

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

A "Smart" roof label

Anonymous
Not applicable
I've searched this forum and can't find anything.

I want to make/get a label object that can be used in the following manner:

Click on a roof then click on the desired location for the label. The label needs to display the rise and run of the 'clicked on' roof.

Is this possible? and How?
82 REPLIES 82
TomWaltz
Participant
sirduncan wrote:
I've searched this forum and can't find anything.

I want to make/get a label object that can be used in the following manner:

Click on a roof then click on the desired location for the label. The label needs to display the rise and run of the 'clicked on' roof.

Is this possible? and How?
The Label Tool could do this, if you change the "mode" on the Info Box from "independent" to "associative".

I do not believe any of the Archicad label objects to that. I know I've made a couple custom label objects that do that, but they are not perfect. (they almost nevr face the right direction when they are first placed and need mirrored/flipped.).
Tom Waltz
Aussie John
Newcomer
I've been able to get a roof label to show the roof angle but not the slope direction and have an arrow that I can spin around to face the right way. This works fairly well as generally the direction of the slope doesnt change whereas the angle can easily change during a design.
Cheers John
John Hyland : ARINA : www.arina.biz
User ver 4 to 12 - Jumped to v22 - so many options and settings!!!
OSX 10.15.6 [Catalina] : Archicad 22 : 15" MacBook Pro 2019
[/size]
Anonymous
Not applicable
sirduncan wrote:
I've searched this forum and can't find anything.

I want to make/get a label object that can be used in the following manner:

Click on a roof then click on the desired location for the label. The label needs to display the rise and run of the 'clicked on' roof.

Is this possible? and How?
OK guys you gotta "think outside the box" on this one...Below I'll share with you something from my bag o' tricks. Please don't get greedy on me and sell it. Follow the steps and you'll get a "smart" roof slope symbol that always points in the right direction and always indicates the correct slope!...It's actually pretty fun to place by clicking the desired locations all around your roof plan.

Please note: this is a skylight object and must be placed as such to work. There are a couple of small caveats like the tiny 1/4" hole it cuts through the roof showing up in bldg sections and the sometimes strange behavior of skylights warning they need to be fixed.

1.) create an object with "Roof Opening" as the subtype
2.) create a length type variable called "SL" and default the value to something like 4'
3.) create a text type variable called "CT" and leave the default value blank (you can use this to add custom text to the symbol later)
4.) Set the A & B values both to 1/4"
5.) lock the A & B values in the Master Script - see below

!!!Master Script
lock "a"
lock "b"
if glob_context #2 then end !!!this might not be necessary


6.) Add the following into the 2D script

!!!2D Script
!!!--- Standard Settings----------------------------!!!
FS1=16' !!!Font Size for Slope Text
FS2=16' !!!Font Size for Custom Text
FST1=0 !!!Font Style for Slope Text
FST2=2 !!!Font Style for Custom Text
FN="Arial Western" !!!Font Name

ARR=6" !!!Size of Arrow
PCLRT=2 !!!Pen color for Text
PCLRL=2 !!!Pen color for Lines
!!!-------------------------------------------------!!!

DEFINE STYLE "auto" FN, FS1,9,FST1
DEFINE STYLE "auto2" FN, FS1,7,FST1
DEFINE STYLE "text" FN, FS2,2,FST2

pen PCLRT

rslope=(tan(AC_roofang))*12
rot2 90

if W~>0 and W~<=180 then ROT2 180
SET STYLE "auto"
text2 0,0,rslope

!!!make slope text
SET STYLE "auto2"
text2 0,0,":12"

!!!make custom text
SET STYLE "text"
text2 0,0,CT

!!!Determines width of text and adjusts slope arrow length
CT2=STW(CT)/1000*a_
IF CT2>SL THEN
SL=12"+STW(CT)/1000*a_
ELSE
SL=SL
ENDIF

!!!makes arrow lines
pen PCLRL
if W~>0 and W~<=180 then DEL 1

LINE2 -SL/2,0, -SL/2+ARR,ARR
LINE2 -SL/2,0, -SL/2+ARR,-ARR
LINE2 -SL/2,0, SL/2,0

HOTSPOT2 0,0
!HOTSPOT2 -SL/2,0
!HOTSPOT2 SL/2,0


Ok you're done...now just go click and place, click and place, click and place....

HTH,
Dan Kunschik
TomWaltz
Participant
Dan

what do you do if you want to hide this on a drawing? Say you have a roof plan being shown at multiple scales, and want it to show up at 1/8" scale, but not at 1/4"?
Tom Waltz
Anonymous
Not applicable
TomWaltz wrote:
Dan

what do you do if you want to hide this on a drawing? Say you have a roof plan being shown at multiple scales, and want it to show up at 1/8" scale, but not at 1/4"?
The roof slope symbol lives on whatever layer you want...so you can turn it off as needed.

...or you could script it to "not" display at cetain scales...

HTH,
Dan K
TomWaltz
Participant
Didn't you say this was a skylight, not a label?
Tom Waltz
Anonymous
Not applicable
TomWaltz wrote:
Didn't you say this was a skylight, not a label?
Tom,
Yes, it is a skylight type of object.("...thinking outside the box...") I know it doesn't sound rational but it does exactly what it needs to do. Give the script a go and you'll love playing/placing it...as you drag it around the roof plan, it will update and rotate automatically...pretty cool.
TomWaltz
Participant
OK, dumb question: Is a skylight an independent object, or embedded in the roof, like a window is in a wall? (you can tell I do not use them!)
Tom Waltz
Anonymous
Not applicable
TomWaltz wrote:
OK, dumb question: Is a skylight an independent object, or embedded in the roof, like a window is in a wall? (you can tell I do not use them!)
Tom,
A skylight is an independent object but it does cut a hole in the roof like a wdw cuts a hole in a wall. Basically the skylight object senses the roof as you drag it over it and locates itself accordingly. Kinda hard to describe but you'll see what I mean when you try to actually place one.

Note: In this object I'm locking the hole size "A" & "B" down to about a 1/4" so you really dont see it. I tried making it infinitely small but it caused errors to occur in ArchiCAD.

Dan K