Home › Forums › Problems and solutions in GDL › Informations from the environment › Railing Panel info
Tagged: RAILINGPANEL, panel
- This topic has 7 replies, 2 voices, and was last updated 5 years, 6 months ago by Péter Baksa.
-
AuthorPosts
-
-
May 7, 2019 at 19:32 #4730James MurrayParticipant
I’m trying to make a railing panel consisting of horizontal wires. All I need is the height of the railing, the length of the segment, and the slope if the railing is not level. It looks like the length and delta Z info should be in RAIL_POLYLINE_GEOMETRY, but that array contains nothing but ten zeroes (when inspected via PRINT). Or am I looking in the right place? Any help appreciated.
James M
-
May 8, 2019 at 08:03 #4731Péter BaksaKeymaster
Hi, the stair and railing globals don’t contain useful data in the libpart editor, you have to place the element.
Péter Baksa
Library Platform, Software Engineer
GRAPHISOFT SE -
May 8, 2019 at 13:21 #4732James MurrayParticipant
I’m getting an array of all zeroes in the report via PRINT for a placed railing.
Can you tell me if RAIL_POLYLINE_GEOMETRY is the correct way to go?
James M
-
May 8, 2019 at 13:40 #4733James MurrayParticipant
This:
railNodeQ = VARDIM1 (RAIL_POLYLINE_GEOMETRY) PRINT 'railNodeQ=', railNodeQ panelLen = RAIL_POLYLINE_GEOMETRY[2][1] - RAIL_POLYLINE_GEOMETRY[1][1] PRINT 'panelLen=', panelLen
…gives this report for a placed railing with a zig zag geometry, where I count 5 nodes in the polyline:
railNodeQ= 2 () panelLen= 0 () railNodeQ= 2 () panelLen= 0 ()
Attachments:
James M
-
May 8, 2019 at 15:59 #4735Péter BaksaKeymaster
Sorry, I didn’t notice the name of the global. It’s the set of global variables starting with RAILINGPANEL_ that you need.
With somewhat custom settings, it is possible that a panel has more than four sides (panels connecting with different heights at a landing, or columns offset from the end of the landing: the corners might be cut off with horizontal planes). To handle these cases too, there is RAILINGPANEL_GEOMETRY that is the contour polygon, and RAILINGPANEL_UNCUT_GEOMETRY that is a four-sided polygon before the cuts.
RAILINGPANEL_FLAGS[i][2] tells which side of the panel is the i-th edge (1 – bottom, 2 – end, 3 – top, 4 – start) You can derive the height from RAILINGPANEL_UNCUT_GEOMETRY start/end edge.
The slope can vary on a winding stair. RAILINGPANEL_GEOMETRY can have multiple segments on the top/bottom sides. For wires, the average slope can be computed from the first point of the bottom side and the first point of the end side of RAILINGPANEL_UNCUT_GEOMETRY.
Slanted/skewed railings (RAILINGPANEL_SLANT_ANGLE, RAILINGPANEL_SKEW_ANGLE) need to be handled carefully.
Curved panels are also special: RAILINGPANEL_TYPE tells the overall shape of the railing. You might not want to handle curved panels at all.
Curves are given in a format similar to PolyOperations: start x, y, central angle.Péter Baksa
Library Platform, Software Engineer
GRAPHISOFT SE -
May 8, 2019 at 19:24 #4736James MurrayParticipant
Thanks Peter, with the right globals it wasn’t too hard. Since wires don’t curve I thankfully can stay out of that area for now.
James M
-
May 9, 2019 at 16:28 #4737James MurrayParticipant
It seems that the RAILINGPANEL_GEOMETRY polygon goes to the top of the segment (assuming the offset is zero). This makes the panel coincide with the top of the top rail. Is there a global or parameter that represents the top rail thickness, so I can lower the panel top automatically?
James M
-
May 9, 2019 at 16:51 #4738Péter BaksaKeymaster
No, there isn’t. Use the offset settings of the panel, and it will be automatically smaller.
Péter Baksa
Library Platform, Software Engineer
GRAPHISOFT SE
-
-
AuthorPosts
- The forum ‘Informations from the environment’ is closed to new topics and replies.