<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Railing - Diagonal Rails in GDL</title>
    <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294717#M5499</link>
    <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;
The zipped object is attached.&lt;BR /&gt;
&lt;BR /&gt;
PS - Pens, line types materials etc. will be set to use my template defaults so may be a bit strange when you use them in another template.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Barry.
&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
Works like a charm. Thank you so much!&lt;BR /&gt;
&lt;BR /&gt;
/Kaj</description>
    <pubDate>Mon, 05 Oct 2020 08:40:04 GMT</pubDate>
    <dc:creator>kajnorberg</dc:creator>
    <dc:date>2020-10-05T08:40:04Z</dc:date>
    <item>
      <title>Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294696#M5478</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;Hi all,&lt;BR /&gt;&lt;BR /&gt;How would you go about creating diagonal rails within your handrail? I am wanting to create some cross braces and thought I could use a custom panel, but it doesn't stretch to fit...&lt;BR /&gt;The distance between posts varies at different points around the building, so is there a way to make them stretch to fit?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Ling.&lt;/DIV&gt;</description>
      <pubDate>Mon, 26 Sep 2022 20:57:16 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294696#M5478</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2022-09-26T20:57:16Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294697#M5479</link>
      <description>No ideas? Looks like I might need to resort to scripting one... T_T</description>
      <pubDate>Tue, 12 Jun 2018 08:45:36 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294697#M5479</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2018-06-12T08:45:36Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294698#M5480</link>
      <description>Yes, you would probably have to script it so that it will stretch properly. If you model it and save it as a Railing Panel, it will be static, it will probably not stretch (I think, I have not tried this).&lt;BR /&gt;
I would try to create a custom Railing Panel, not a custom Post.</description>
      <pubDate>Sun, 17 Jun 2018 08:55:41 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294698#M5480</guid>
      <dc:creator>Laszlo Nagy</dc:creator>
      <dc:date>2018-06-17T08:55:41Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294699#M5481</link>
      <description>I just tried saving a custom railing panel.&lt;BR /&gt;
Seems you will have to get the exact size for both horizontal and raking railings and also any different heights and widths of panels..&lt;BR /&gt;
The custom panel does not stretch to suit the actual panel extents.&lt;BR /&gt;
&lt;BR /&gt;
Or you need to figure out the script of a panel object and base your diagonals on the extents of the panel.&lt;BR /&gt;
Just had a look at the "Built-in Panel' and typically the script is very difficult to follow.&lt;BR /&gt;
It seems there is more to this basic object than just a flat panel with 4 bounding corner points.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Mon, 18 Jun 2018 03:04:32 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294699#M5481</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2018-06-18T03:04:32Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294700#M5482</link>
      <description>I have managed to figure out the node co-ordinates for the corners of the panel in the built-in panel macro.&lt;BR /&gt;
These are PUT in the script just before the CPRISM{2} that creates the panel (actually there are 2 half thickness panels - not sure why exactly).&lt;BR /&gt;
In the attached image you can see I have spheres at these points.&lt;BR /&gt;



Then with a bit of maths I have calculated the railing angle and some x and y offsets that would be required for the nodes of a diagonal prism.&lt;BR /&gt;
I have just added some lines at this point to get the width of the diagonal rail.&lt;BR /&gt;
&lt;BR /&gt;
But it doesn't work when the railing is angled up a stair.&lt;BR /&gt;



It seems I need to take into account the ROT of the panel in another way other than just calculating the angle of the railing.&lt;BR /&gt;
&lt;BR /&gt;
So I am sure something is possible.&lt;BR /&gt;
I will have more of a play later when I get some more free time.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Mon, 18 Jun 2018 07:25:04 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294700#M5482</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2018-06-18T07:25:04Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294701#M5483</link>
      <description>I have moved this entire post to Libraries/GDL section, as that is really what it has turned into.&lt;BR /&gt;
&lt;BR /&gt;
It is possible to create a stretchy X panel.&lt;BR /&gt;



Unfortunately I can not post the object here as I have simply modified the 'Built-in Panel' object by Graphisoft, and licensing requirements say I can not distribute a modified object.&lt;BR /&gt;
Read here ...&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="https://archicad-talk.graphisoft.com/viewtopic.php?f=6&amp;amp;t=47320" target="_blank"&gt;&lt;LINK_TEXT text="https://archicad-talk.graphisoft.com/vi ... =6&amp;amp;t=47320"&gt;https://archicad-talk.graphisoft.com/viewtopic.php?f=6&amp;amp;t=47320&lt;/LINK_TEXT&gt;&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
However I can give instructions on how to modify the object for your own use.&lt;BR /&gt;
So stay tuned.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Wed, 20 Jun 2018 02:42:05 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294701#M5483</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2018-06-20T02:42:05Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294702#M5484</link>
      <description>This is what you will need to do to create a X panel.&lt;BR /&gt;
&lt;BR /&gt;
The 'Built-in Panel' object is not in the library as it is part of the Archicad program itself.&lt;BR /&gt;
So to open it, create a railing using it, select it then CTRL+SHIFT+O.&lt;BR /&gt;
Close all the other objects that open as they aren't needed.&lt;BR /&gt;
&lt;BR /&gt;
'SAVE AS' with a new name - something like 'Cross panel'.&lt;BR /&gt;
&lt;BR /&gt;
Create a new length parameter called ... rail_hgt&lt;BR /&gt;
&lt;BR /&gt;
In the 3D script find and comment out this section (starting at line 263).&lt;BR /&gt;

&lt;PRE&gt;!!!!				group lowergroup
!!!!					for nSide = 1 to nTransformedPoly
!!!!						if segmentCutFlag[nSide] then
!!!!							_cutangle = segmentCutAngle[nSide]
!!!!						else
!!!!							_cutangle = 0
!!!!							if segmentContinueFlag[nSide] then
!!!!								if segmentSideFlag[nSide] = SIDE_END then _cutangle = _cutright
!!!!								if segmentSideFlag[nSide] = SIDE_START then _cutangle = _cutleft
!!!!							endif
!!!!						endif
!!!!						put transformedPoly[nSide][1], transformedPoly[nSide][2],
!!!!							_cutangle, transformedPoly[nSide][TRPOLY_STATUS], _matPanel
!!!!					next nSide
!!!!
!!!!					cprism_{2} _matPanel, _matPanel, _matPanel,
!!!!						nTransformedPoly, ac_panelThickness / 2,
!!!!						get(nsp - 2), -1, _matPanel
!!!!					gosub "flushBuffer"
!!!!				endgroup
!!!!
!!!!				group uppergroup
!!!!					for nSide = 1 to nTransformedPoly
!!!!						if segmentCutFlag[nSide] then
!!!!							_cutangle = segmentCutAngle[nSide]
!!!!						else
!!!!							_cutangle = 0
!!!!							if segmentContinueFlag[nSide] then
!!!!								if segmentSideFlag[nSide] = SIDE_END then _cutangle = _cutright
!!!!								if segmentSideFlag[nSide] = SIDE_START then _cutangle = _cutleft
!!!!							endif
!!!!						endif
!!!!						put transformedPoly[nSide][1], transformedPoly[nSide][2],	! [nSide][3] should be all the same
!!!!							-_cutangle, transformedPoly[nSide][TRPOLY_STATUS], _matPanel
!!!!					next nSide
!!!!
!!!!					addz ac_panelThickness
!!!!					mulz -1
!!!!					cprism_{2} _matPanel, _matPanel, _matPanel,
!!!!						nTransformedPoly, ac_panelThickness / 2,
!!!!						get(nsp - 2), -1, _matPanel
!!!!					gosub "flushBuffer"
!!!!					del 2
!!!!				endgroup&lt;/PRE&gt;

Directly after that add this ...&lt;BR /&gt;

&lt;PRE&gt;!!!The geometry for all the corner points
horiz_panel = (transformedPoly[2][1]-transformedPoly[1][1])*COS(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE])

vert_panel = (transformedPoly[3][2]-transformedPoly[2][2])/COS(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE])

end_rise = (transformedPoly[2][1]-transformedPoly[1][1])*SIN(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE])

cross_angle = ATN((vert_panel+end_rise)/horiz_panel)

panel_cross_angle_1 = cross_angle-panelSegmentData[iSegment][SEGMENT_SLOPEANGLE]

cross_x_rad_1 = (rail_hgt*0.5)/SIN(panel_cross_angle_1)

cross_y_rad_1 = (rail_hgt*0.5)/SIN(90-panel_cross_angle_1-panelSegmentData[iSegment][SEGMENT_SLOPEANGLE])

y_reduction_1 = cross_y_rad_1-(cross_y_rad_1*COS(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE]))

if panelSegmentData[iSegment][SEGMENT_SLOPEANGLE] &amp;lt;&amp;gt; 0 then
	x_reduction_1 = y_reduction_1/TAN(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE]*0.5)
else
	x_reduction_1 = 0
endif

panel_cross_angle_2 = ATN((vert_panel-end_rise)/horiz_panel)+panelSegmentData[iSegment][SEGMENT_SLOPEANGLE]

cross_x_rad_2 = (rail_hgt*0.5)/SIN(panel_cross_angle_2)

cross_y_rad_2 = (rail_hgt*0.5)/COS(panel_cross_angle_2-panelSegmentData[iSegment][SEGMENT_SLOPEANGLE])

y_reduction_2 = cross_y_rad_2-(cross_y_rad_2*COS(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE]))

if panelSegmentData[iSegment][SEGMENT_SLOPEANGLE] &amp;lt;&amp;gt; 0 then
	x_reduction_2 = y_reduction_2/TAN(panelSegmentData[iSegment][SEGMENT_SLOPEANGLE]*0.5)
else
	x_reduction_2 = 0
endif


				group lowergroup

						put transformedPoly[1][1], transformedPoly[1][2],
							0, 15, _matPanel
						put transformedPoly[1][1]+cross_x_rad_1, transformedPoly[1][2],
							0, 15, _matPanel
						put transformedPoly[3][1]-x_reduction_1, transformedPoly[3][2]-cross_y_rad_1+y_reduction_1,
							0, 15, _matPanel
						put transformedPoly[3][1], transformedPoly[3][2],
							0, 15, _matPanel
						put transformedPoly[3][1]-cross_x_rad_1, transformedPoly[3][2],
							0, 15, _matPanel
						put transformedPoly[1][1]+x_reduction_1, transformedPoly[1][2]+cross_y_rad_1-y_reduction_1,
							0, 15, _matPanel
						put transformedPoly[1][1], transformedPoly[1][2],
							0, 15, _matPanel


					cprism_{2} _matPanel, _matPanel, _matPanel,
						7, ac_panelThickness / 2,
						get(nsp - 2), -1, _matPanel

					gosub "flushBuffer"


						put transformedPoly[2][1], transformedPoly[2][2],
							0, 15, _matPanel
						put transformedPoly[2][1]+x_reduction_2, transformedPoly[2][2]+cross_y_rad_2-y_reduction_2,
							0, 15, _matPanel
						put transformedPoly[4][1]+cross_x_rad_2, transformedPoly[4][2],
							0, 15, _matPanel
						put transformedPoly[4][1], transformedPoly[4][2],
							0, 15, _matPanel
						put transformedPoly[4][1]-x_reduction_2, transformedPoly[4][2]-cross_y_rad_2+y_reduction_2,
							0, 15, _matPanel
						put transformedPoly[2][1]-cross_x_rad_2, transformedPoly[2][2],
							0, 15, _matPanel
						put transformedPoly[2][1], transformedPoly[2][2],
							0, 15, _matPanel

					cprism_{2} _matPanel, _matPanel, _matPanel,
						7, ac_panelThickness / 2,
						get(nsp - 2), -1, _matPanel

					gosub "flushBuffer"

				endgroup


				group uppergroup
					addz ac_panelThickness
					mulz -1

						put transformedPoly[1][1], transformedPoly[1][2],
							_cutangle, 15, _matPanel
						put transformedPoly[1][1]+cross_x_rad_1, transformedPoly[1][2],
							_cutangle, 15, _matPanel
						put transformedPoly[3][1]-x_reduction_1, transformedPoly[3][2]-cross_y_rad_1+y_reduction_1,
							_cutangle, 15, _matPanel
						put transformedPoly[3][1], transformedPoly[3][2],
							_cutangle, 15, _matPanel
						put transformedPoly[3][1]-cross_x_rad_1, transformedPoly[3][2],
							_cutangle, 15, _matPanel
						put transformedPoly[1][1]+x_reduction_1, transformedPoly[1][2]+cross_y_rad_1-y_reduction_1,
							_cutangle, 15, _matPanel
						put transformedPoly[1][1], transformedPoly[1][2],
							_cutangle, 15, _matPanel


					cprism_{2} _matPanel, _matPanel, _matPanel,
						7, ac_panelThickness / 2,
						get(nsp - 2), -1, _matPanel

					gosub "flushBuffer"


						put transformedPoly[2][1], transformedPoly[2][2],
							0, 15, _matPanel
						put transformedPoly[2][1]+x_reduction_2, transformedPoly[2][2]+cross_y_rad_2-y_reduction_2,
							0, 15, _matPanel
						put transformedPoly[4][1]+cross_x_rad_2, transformedPoly[4][2],
							0, 15, _matPanel
						put transformedPoly[4][1], transformedPoly[4][2],
							0, 15, _matPanel
						put transformedPoly[4][1]-x_reduction_2, transformedPoly[4][2]-cross_y_rad_2+y_reduction_2,
							0, 15, _matPanel
						put transformedPoly[2][1]-cross_x_rad_2, transformedPoly[2][2],
							0, 15, _matPanel
						put transformedPoly[2][1], transformedPoly[2][2],
							0, 15, _matPanel

					cprism_{2} _matPanel, _matPanel, _matPanel,
						7, ac_panelThickness / 2,
						get(nsp - 2), -1, _matPanel

					gosub "flushBuffer"
					del 2
				endgroup&lt;/PRE&gt;

&lt;BR /&gt;
In the interface script (edit: not parameter script) find these line starting at line 62 and comment them out.&lt;BR /&gt;

&lt;PRE&gt;!!!!	_yCurr = _pageStartY + 37
!!!!	ui_infield{3} ac_panelThickness, _x2, _yCurr, _infWidth, _infHeight&lt;/PRE&gt;

Then add ...&lt;BR /&gt;

&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;	_yCurr = _pageStartY + 37
	ui_infield{3} ac_panelThickness, _x2, _yCurr, _infWidth, _infHeight UI_TOOLTIP "Rail Width"

	ui_infield{3} rail_hgt, 380, 130, 50, _infHeight UI_TOOLTIP "Rail Height"
&lt;/PRE&gt;

&lt;BR /&gt;
&lt;BR /&gt;
Now re-save and you should find it available as a panel type in your railing.&lt;BR /&gt;
Of course you will need this in your loaded library or your embedded library.&lt;BR /&gt;
&lt;BR /&gt;
I can't guarantee it will work in all situations (I haven't tried leaning the railing on an angle), but it seems to work for flat and rising (stair) railings.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Wed, 20 Jun 2018 03:00:04 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294702#M5484</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2018-06-20T03:00:04Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294703#M5485</link>
      <description>Wow, thanks Barry.&lt;BR /&gt;
&lt;BR /&gt;
I had a separate post within the GDL sub-forum regarding programming a custom panel, so it should probably be merged or removed...&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ling.</description>
      <pubDate>Fri, 22 Jun 2018 04:07:41 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294703#M5485</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2018-06-22T04:07:41Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294704#M5486</link>
      <description>&lt;BLOCKQUOTE&gt;In the parameter script find these line starting at line 62 and comment them out.
&lt;PRE&gt;_yCurr = _pageStartY + 37
ui_infield{3} ac_panelThickness, _x2, _yCurr, _infWidth, _infHeight&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
Could not find this line in my Parameter Script, there was actually very little in it at all... Found it in the Interface Script which I'm assuming is what you meant given the &lt;B&gt;_yCurr&lt;/B&gt;.</description>
      <pubDate>Tue, 26 Jun 2018 08:26:58 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294704#M5486</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2018-06-26T08:26:58Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294705#M5487</link>
      <description>Yes, sorry I meant the interface script.&lt;BR /&gt;
&lt;BR /&gt;
I think it should also be...&lt;BR /&gt;
&lt;BR /&gt;
_yCurr = _pageStartY + 37&lt;BR /&gt;
 ui_infield{3} ac_panelThickness, _x2, _yCurr, _infWidth, _infHeight UI_TOOLTIP "Rail Width"&lt;BR /&gt;
 ui_infield{3} rail_hgt, 380, 130, 50, _infHeight UI_TOOLTIP "Rail Height"]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
I think the formatting got messed up - seems it gets messed up when I tag it as code.&lt;BR /&gt;
At least it is for me on this machine - not my regular machine.&lt;BR /&gt;
&lt;BR /&gt;
It is just adding the rail height parameter and adding some tool tips.&lt;BR /&gt;
&lt;BR /&gt;
I will fix the original post.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Tue, 26 Jun 2018 13:05:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294705#M5487</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2018-06-26T13:05:43Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294706#M5488</link>
      <description>Yeah... the code BB seems to be removing the page returns... Reasonably easy to spot where it breaks using Sublime.</description>
      <pubDate>Wed, 27 Jun 2018 01:22:39 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294706#M5488</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2018-06-27T01:22:39Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294707#M5489</link>
      <description>Hi!&lt;BR /&gt;
&lt;BR /&gt;
After struggling with the custom panel and failing, I checked the forum and found this, which is exactly what I need! However, the coding of the built-in panel seems to have changed from the time this was made until now. I tried to edit it myself, but I just don't have the knowledge to do that. Does anyone know how to update the code so it works for Archicad 23?&lt;BR /&gt;
&lt;BR /&gt;
Thank you!</description>
      <pubDate>Tue, 11 Aug 2020 08:09:50 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294707#M5489</guid>
      <dc:creator>kajnorberg</dc:creator>
      <dc:date>2020-08-11T08:09:50Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294708#M5490</link>
      <description>&lt;BLOCKQUOTE&gt;kajnorberg wrote:&lt;BR /&gt;
Does anyone know how to update the code so it works for Archicad 23?
&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
Please don't wait for me on this one.&lt;BR /&gt;
I would love to help but I just don't have the time at the moment to go back through it all again and see what is different in 23.&lt;BR /&gt;
The bits I wrote before are still working in 23 for me and I don't remember changing anything.&lt;BR /&gt;
&lt;BR /&gt;
If I can look at it next week maybe I will try, but as i say, what ever i did before is still working for me now in 23.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Tue, 11 Aug 2020 09:17:12 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294708#M5490</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2020-08-11T09:17:12Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294709#M5491</link>
      <description>Hi Barry!&lt;BR /&gt;
&lt;BR /&gt;
Thanks for your fast reply! I'll try to tinker with it myself, do you remember which version of Archicad you created the object in? Maybe I can open up an old version and make the changes there.&lt;BR /&gt;
&lt;BR /&gt;
/Kaj</description>
      <pubDate>Tue, 11 Aug 2020 09:25:12 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294709#M5491</guid>
      <dc:creator>kajnorberg</dc:creator>
      <dc:date>2020-08-11T09:25:12Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294710#M5492</link>
      <description>&lt;BLOCKQUOTE&gt;kajnorberg wrote:&lt;BR /&gt;Hi Barry!&lt;BR /&gt;
&lt;BR /&gt;
Thanks for your fast reply! I'll try to tinker with it myself, do you remember which version of Archicad you created the object in? Maybe I can open up an old version and make the changes there.&lt;BR /&gt;
&lt;BR /&gt;
/Kaj&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
I believe it was in AC22 as we were &lt;A href="https://archicad-talk.graphisoft.com/viewtopic.php?f=20&amp;amp;t=61547&amp;amp;hilit=railing" target="_blank"&gt;figuring out what other things&lt;/A&gt; you could do with railings at the same time.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ling.</description>
      <pubDate>Tue, 11 Aug 2020 09:52:44 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294710#M5492</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2020-08-11T09:52:44Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294711#M5493</link>
      <description>Great, thanks!&lt;BR /&gt;
&lt;BR /&gt;
/Kaj</description>
      <pubDate>Tue, 11 Aug 2020 10:15:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294711#M5493</guid>
      <dc:creator>kajnorberg</dc:creator>
      <dc:date>2020-08-11T10:15:43Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294712#M5494</link>
      <description>Hi all,&lt;BR /&gt;
&lt;BR /&gt;
Without trying to give a legal advice, the licensing of Graphisoft's library parts has changed to &lt;A href="https://creativecommons.org/licenses/by/4.0/" target="_blank"&gt;https://creativecommons.org/licenses/by/4.0/&lt;/A&gt; from Archicad 23. I think that allows uploading modifications to this forum.</description>
      <pubDate>Fri, 14 Aug 2020 07:56:45 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294712#M5494</guid>
      <dc:creator>Peter Baksa</dc:creator>
      <dc:date>2020-08-14T07:56:45Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294713#M5495</link>
      <description>I can share an excerpt from a documentation in progress, hope this helps:&lt;BR /&gt;
&lt;BR /&gt;
A panel is meant to be an object bounded by neighboring axial objects, described by a 3D polygon. Some care needs to be taken to connect nicely to neighboring panels when the pattern is cut by a post. Information is given about offsets to neighbors to allow modeling fixings.&lt;BR /&gt;
&lt;BR /&gt;
&lt;B&gt;Fix-named parameters&lt;/B&gt;&lt;BR /&gt;
Read by ArchiCAD for listing and MVO – simplified display.&lt;BR /&gt;

&lt;UL&gt;&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;ac_panelThickness&lt;E&gt;&lt;/E&gt;&lt;BR /&gt;
        The thickness of the panel section, assumed to be symmetrical to the surface defined by the 3D polygon.&lt;BR /&gt;
        This parameter should be kept conclusive with the model size.&lt;/LI&gt; 
&lt;/UL&gt;

&lt;B&gt;Global variables&lt;/B&gt;&lt;BR /&gt;

&lt;UL&gt;&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILING_REFLINE_DISTANCE[2]&lt;E&gt;&lt;/E&gt;&lt;BR /&gt;
            [1] Horizontal offset of the Segment reference line from the Railing reference line.&lt;BR /&gt;
            [2] Horizontal offset of the Panel from the Segment reference line.&lt;BR /&gt;
        Distances are perpendicular to the reference line, + to the right side looking in the direction of the reference line, and without the effects of slanting.&lt;/LI&gt; 

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_TYPE&lt;E&gt;&lt;/E&gt;&lt;BR /&gt;
        The overall geometry of the panel surface. Depends on segment rise, skew and slant settings. This data could be mined from RAILINGPANEL_GEOMETRY, this offers an easier way to decide whether you want to model these cases.&lt;BR /&gt;
            1: Plane&lt;BR /&gt;
            2: Cylindrical (vertical axis)&lt;BR /&gt;
            3: Conical (vertical axis)&lt;BR /&gt;
            4: Screw surface (not foldable to plane)&lt;/LI&gt;

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_SKEW_ANGLE&lt;E&gt;&lt;/E&gt;&lt;BR /&gt;
        The skew angle. For curved segments measured on the start tangential plane of the segment (before slanting). Range -90° + 90° exclusive, 0° is vertical.&lt;/LI&gt; 

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_SLANT_ANGLE&lt;E&gt;&lt;/E&gt;&lt;BR /&gt;
        The slant angle. For curved segments measured on plane perpendicular to the start tangential plane of the segment (before skewing). Range -90° + 90° exclusive, 0° is vertical.&lt;/LI&gt; 

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_UNCUT_GEOMETRY&lt;N&gt;[4]&lt;E&gt;&lt;/E&gt;        n &amp;gt;= 4&lt;BR /&gt;
        The 3D polygon of the boundary of the whole panel. Given as if the panel would end normally at a full pattern length, and not cut by posts and connections to other segments. This might be important for the layout of fixings, and the continuation of the panel’s inner pattern when the Continue Pattern option is set at a Node. The last point of the boundary is the same as the first, it is a closed polygon.&lt;BR /&gt;
            [][1] Coordinate X&lt;BR /&gt;
            [][2] Coordinate Y&lt;BR /&gt;
            [][3] Coordinate Z&lt;BR /&gt;
            [][4] For curved segments the polar coordinate rotation difference of the horizontal projection of the edge starting from this vertex. Degrees, + direction counterclockwise. 0 for straight segments.&lt;BR /&gt;
        The origin and orientation of the coordinate system doesn’t have any meaning other than Z is always vertical. The order of the points in the polygon is the same as in RAILINGPANEL_SIDE_OFFSETS: bottom, end, top, start sides.&lt;BR /&gt;
        It can have more than 4 corners when placed on a winding stair. In such cases the lower boundary’s horizontal projection is always a straight line or a continuous arc. The edges belonging to the lower boundary define sub-segments of the panel. Different sub-segments can have diferent rise angle.&lt;/N&gt;&lt;/LI&gt; 

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_GEOMETRY&lt;N&gt;[5]&lt;E&gt;&lt;/E&gt;        n &amp;gt;= 4&lt;BR /&gt;
        The 3D polygon of the boundary of the cut panel. Cuts can happen at railing segment boundaries (posts) and at connections to other segments that have different height or rise.&lt;BR /&gt;
            [][1] Coordinate X&lt;BR /&gt;
            [][2] Coordinate Y&lt;BR /&gt;
            [][3] Coordinate Z&lt;BR /&gt;
            [][4] For curved segments the polar coordinate rotation difference of the horizontal projection of the edge starting from this vertex. Degrees, + direction counterclockwise. 0 for straight segments.&lt;BR /&gt;
            [][5] For cut edges the angle between the cutting plane and the plane perpendicular to the panel (for curved panels perpendicular to the tangential plane of the panel) at the edge. 0° means a perpendicular cut, + values tilt towards the inside of the panel (side at which a Right Side handrail is placed).&lt;BR /&gt;
        When there are no cuts, the data is the same as in RAILINGPANEL_UNCUT_GEOMETRY.&lt;/N&gt;&lt;/LI&gt; 

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_FLAGS&lt;N&gt;[3]&lt;E&gt;&lt;/E&gt;        n &amp;gt;= 4&lt;BR /&gt;
        Information about the edges of the cut boundary. Indexed the same way as RAILINGPANEL_GEOMETRY.&lt;BR /&gt;
            [][1] The sub-segment index of the edge starting from this point. Uncut panel sub-segment indexes start from 1, it is possible that one or more sub-segments are cut off.&lt;BR /&gt;
            [][2] Which side of the panel is the edge starting from this point?&lt;BR /&gt;
                1: bottom&lt;BR /&gt;
                2: end&lt;BR /&gt;
                3: top&lt;BR /&gt;
                4: start&lt;BR /&gt;
            [][3] Edge status bitfield: j1 + 2 * j2&lt;BR /&gt;
                j1: Does the edge starting from this point connect to another panel? Edges having this flag should be modeled as if the panel continued through them.&lt;BR /&gt;
                j2: Is the edge starting from this point a cut edge? Cut edges should use RAILINGPANEL_GEOMETRY[][5] to connect to other panels without overlap at corners.&lt;/N&gt;&lt;/LI&gt;

&lt;LI&gt;&lt;S&gt;&lt;/S&gt;&lt;/LI&gt;&lt;LI&gt;    &lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;RAILINGPANEL_SIDE_OFFSETS[4]&lt;E&gt;&lt;/E&gt;&lt;BR /&gt;
        The side offsets of the panel, distance to the neighboring sub-element’s axis.&lt;BR /&gt;
            [1] bottom&lt;BR /&gt;
            [2] end&lt;BR /&gt;
            [3] top&lt;BR /&gt;
            [4] start&lt;BR /&gt;
        The distances are as set in the settings dialog for a vertical panel, without the effect of slanting and skewing.&lt;/LI&gt; 
&lt;/UL&gt;</description>
      <pubDate>Fri, 14 Aug 2020 08:35:39 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294713#M5495</guid>
      <dc:creator>Peter Baksa</dc:creator>
      <dc:date>2020-08-14T08:35:39Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294714#M5496</link>
      <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;
&lt;BR /&gt;
Please don't wait for me on this one.&lt;BR /&gt;
I would love to help but I just don't have the time at the moment to go back through it all again and see what is different in 23.&lt;BR /&gt;
The bits I wrote before are still working in 23 for me and I don't remember changing anything.&lt;BR /&gt;
&lt;BR /&gt;
If I can look at it next week maybe I will try, but as i say, what ever i did before is still working for me now in 23.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Barry.
&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
Hey, since Péter mentioned it's now okay to upload modifications to the forum, can I ask you to upload your railing panel? I've been trying to fix it myself, but have yet to succeed. Thank you!&lt;BR /&gt;
&lt;BR /&gt;
/Kaj</description>
      <pubDate>Fri, 02 Oct 2020 12:36:11 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294714#M5496</guid>
      <dc:creator>kajnorberg</dc:creator>
      <dc:date>2020-10-02T12:36:11Z</dc:date>
    </item>
    <item>
      <title>Re: Railing - Diagonal Rails</title>
      <link>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294715#M5497</link>
      <description>Is the licencing change retroactive?</description>
      <pubDate>Mon, 05 Oct 2020 01:31:32 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Railing-Diagonal-Rails/m-p/294715#M5497</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2020-10-05T01:31:32Z</dc:date>
    </item>
  </channel>
</rss>

