<?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 FloorPlan6 — open-source apartment layout generator looking for contributors in Parametric design</title>
    <link>https://community.graphisoft.com/t5/Parametric-design/FloorPlan6-open-source-apartment-layout-generator-looking-for/m-p/701647#M2276</link>
    <description>&lt;P&gt;Update — FloorPlan6 is now on GitHub (open-source, AGPL-3.0)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P data-unlink="true"&gt;Following up on my earlier thread about a floor-plan generator:&amp;nbsp;&lt;SPAN&gt;https://community.graphisoft.com/t5/Parametric-design/Floor-plan-generator/m-p/699587#M2271&lt;/SPAN&gt;&amp;nbsp; is now public and looking for contributors.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P data-unlink="true"&gt;Repo:&amp;nbsp;&lt;SPAN&gt;https://github.com/poolpet/floorplan6&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What it does&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;A 4-stage pipeline from a plot polygon (drawn in ArchiCAD) to a complete apartment layout — every output enforces the Polish Building Code (WT 2002, amended 2024-08-01):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Plot subdivision&amp;nbsp;— placeholder, open for contributors&lt;/P&gt;&lt;P&gt;2. Volumetric generator&amp;nbsp;— placeholder, open for contributors&lt;/P&gt;&lt;P&gt;3. Floor layout&amp;nbsp;MVP — divides a floor into apartments with a&amp;nbsp;compliant stairwell, 1.4 m corridor and ≤ 40 m walking distance to the&amp;nbsp;nearest stairwell, validated by Dijkstra&lt;/P&gt;&lt;P&gt;4. Apartment layout&amp;nbsp;stable — CP-SAT solver places rooms inside an outline read from ArchiCAD; 7 templates M1–M5; bathroom hard-capped at&amp;nbsp;5 m²; living room takes 80 % of the excess area; export back to AC as native Zones via Tapir&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tech&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P data-unlink="true"&gt;Python 3.10+, OR-Tools CP-SAT, Shapely 2, PyQt5, ArchiCAD bridge via [Tapir Add-On](&lt;SPAN&gt;https://github.com/ENZYME-APD/tapir-archicad-automation&lt;/SPAN&gt;&amp;nbsp;).&lt;/P&gt;&lt;P&gt;Works with AC 27 / 28 / 29.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How to help&lt;/P&gt;&lt;P data-unlink="true"&gt;The biggest help-wanted areas are listed in&amp;nbsp;[CONTRIBUTING.md]&lt;SPAN&gt;https://github.com/poolpet/floorplan6/blob/main/CONTRIBUTING.md&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Stage 1&amp;nbsp;— plot subdivision (MPZP zoning). Architectural questions&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; Q1–Q5 in `docs/OPEN_QUESTIONS.md` are still open&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Stage 2&amp;nbsp;— volumetric generator (storeys + roof to AC slabs)&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Stage 3&amp;nbsp;— L-shape / U-shape support (current MVP is rectangular)&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Walls + doors export to AC&amp;nbsp;(currently zones only)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;License is AGPL-3.0 — feel free to fork, learn from it, or run it on a real project. If you ship a derivative, your modifications stay open-source under the same license.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Happy to mentor anyone who wants to get involved — open a GitHub Discussion, comment here, or DM me.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.29.40 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100755i7C8C5C7A67D8DCF1/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.29.40 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.29.40 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.26.42 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100753i885D8096FAA75DC7/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.26.42 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.26.42 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.27.37 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100742iB19D71B3DD7A6565/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.27.37 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.27.37 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.27.03 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100743i04920903D7BD2E55/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.27.03 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.27.03 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.30.15 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100749iD5DF2DD59D415FA2/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.30.15 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.30.15 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.30.21 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100750i52038328E5D425BA/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.30.21 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.30.21 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;      &lt;/P&gt;</description>
    <pubDate>Tue, 05 May 2026 13:44:02 GMT</pubDate>
    <dc:creator>Dawid</dc:creator>
    <dc:date>2026-05-05T13:44:02Z</dc:date>
    <item>
      <title>FloorPlan6 — open-source apartment layout generator looking for contributors</title>
      <link>https://community.graphisoft.com/t5/Parametric-design/FloorPlan6-open-source-apartment-layout-generator-looking-for/m-p/701647#M2276</link>
      <description>&lt;P&gt;Update — FloorPlan6 is now on GitHub (open-source, AGPL-3.0)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P data-unlink="true"&gt;Following up on my earlier thread about a floor-plan generator:&amp;nbsp;&lt;SPAN&gt;https://community.graphisoft.com/t5/Parametric-design/Floor-plan-generator/m-p/699587#M2271&lt;/SPAN&gt;&amp;nbsp; is now public and looking for contributors.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P data-unlink="true"&gt;Repo:&amp;nbsp;&lt;SPAN&gt;https://github.com/poolpet/floorplan6&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What it does&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;A 4-stage pipeline from a plot polygon (drawn in ArchiCAD) to a complete apartment layout — every output enforces the Polish Building Code (WT 2002, amended 2024-08-01):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Plot subdivision&amp;nbsp;— placeholder, open for contributors&lt;/P&gt;&lt;P&gt;2. Volumetric generator&amp;nbsp;— placeholder, open for contributors&lt;/P&gt;&lt;P&gt;3. Floor layout&amp;nbsp;MVP — divides a floor into apartments with a&amp;nbsp;compliant stairwell, 1.4 m corridor and ≤ 40 m walking distance to the&amp;nbsp;nearest stairwell, validated by Dijkstra&lt;/P&gt;&lt;P&gt;4. Apartment layout&amp;nbsp;stable — CP-SAT solver places rooms inside an outline read from ArchiCAD; 7 templates M1–M5; bathroom hard-capped at&amp;nbsp;5 m²; living room takes 80 % of the excess area; export back to AC as native Zones via Tapir&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tech&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P data-unlink="true"&gt;Python 3.10+, OR-Tools CP-SAT, Shapely 2, PyQt5, ArchiCAD bridge via [Tapir Add-On](&lt;SPAN&gt;https://github.com/ENZYME-APD/tapir-archicad-automation&lt;/SPAN&gt;&amp;nbsp;).&lt;/P&gt;&lt;P&gt;Works with AC 27 / 28 / 29.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How to help&lt;/P&gt;&lt;P data-unlink="true"&gt;The biggest help-wanted areas are listed in&amp;nbsp;[CONTRIBUTING.md]&lt;SPAN&gt;https://github.com/poolpet/floorplan6/blob/main/CONTRIBUTING.md&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Stage 1&amp;nbsp;— plot subdivision (MPZP zoning). Architectural questions&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; Q1–Q5 in `docs/OPEN_QUESTIONS.md` are still open&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Stage 2&amp;nbsp;— volumetric generator (storeys + roof to AC slabs)&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Stage 3&amp;nbsp;— L-shape / U-shape support (current MVP is rectangular)&lt;/P&gt;&lt;P&gt;&amp;nbsp; - Walls + doors export to AC&amp;nbsp;(currently zones only)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;License is AGPL-3.0 — feel free to fork, learn from it, or run it on a real project. If you ship a derivative, your modifications stay open-source under the same license.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Happy to mentor anyone who wants to get involved — open a GitHub Discussion, comment here, or DM me.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.29.40 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100755i7C8C5C7A67D8DCF1/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.29.40 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.29.40 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.26.42 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100753i885D8096FAA75DC7/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.26.42 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.26.42 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.27.37 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100742iB19D71B3DD7A6565/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.27.37 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.27.37 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.27.03 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100743i04920903D7BD2E55/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.27.03 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.27.03 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.30.15 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100749iD5DF2DD59D415FA2/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.30.15 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.30.15 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zrzut ekranu 2026-05-05 o 14.30.21 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/100750i52038328E5D425BA/image-size/large?v=v2&amp;amp;px=999" role="button" title="Zrzut ekranu 2026-05-05 o 14.30.21 PM.png" alt="Zrzut ekranu 2026-05-05 o 14.30.21 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;      &lt;/P&gt;</description>
      <pubDate>Tue, 05 May 2026 13:44:02 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Parametric-design/FloorPlan6-open-source-apartment-layout-generator-looking-for/m-p/701647#M2276</guid>
      <dc:creator>Dawid</dc:creator>
      <dc:date>2026-05-05T13:44:02Z</dc:date>
    </item>
  </channel>
</rss>

