diff --git a/AGENTS.md b/AGENTS.md index 3c8063f..f9c733d 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2,7 +2,7 @@ Read README.md, docs/PROJECT-CONTEXT.md, docs/REQUEST-HISTORY.md and the latest decision record before editing. -- Current model: blender/samford-solarpunk-container-water-tour.blend, version 005. +- Current model: blender/samford-solarpunk-buddha-garden-tour.blend, version 006. - The table-tennis deck was explicitly removed. Do not restore it from older scenes. - Future child/dwelling pavilions remain ghost outlines. The one built small pavilion is a meditation room. - Preserve the detailed kitchen, reading library, bedroom sleep setup, sauna, shower, solar, tanks, Starlink, homelab, Tesla garage, training and food-growing features. @@ -16,3 +16,5 @@ Read README.md, docs/PROJECT-CONTEXT.md, docs/REQUEST-HISTORY.md and the latest - No need to create Linear issues unless Marcus explicitly asks. - Current water storage is a container-style enclosure with two sealed internal tanks. Do not restore the old exposed cylinders from earlier scene files. + +- Preserve the garden Buddha north of the meditation room and its chapter 31 tour stop. Latest scene is version 006. diff --git a/README.md b/README.md index 7e1c375..1185c06 100644 --- a/README.md +++ b/README.md @@ -12,10 +12,10 @@ Clone using `git clone ssh://git@git.rehbock.xyz:2222/marcus/samford-valley-home ## Open the current work -- **Blender 5.2.1:** `blender/samford-solarpunk-container-water-tour.blend`. Includes the entire homestead, reading chair and 163 books. Its camera tour has 30 chapters and lasts 2 minutes 30 seconds. Hover over the 3D view and press Space to play; Shift + Left Arrow returns to the start. It opens at the container water-storage chapter. Earlier bedroom and reading-tour files remain as previous versions. +- **Blender 5.2.1:** `blender/samford-solarpunk-buddha-garden-tour.blend`. Includes the entire homestead, reading chair and 163 books. Its camera tour has 31 chapters and lasts 2 minutes 35 seconds. Hover over the 3D view and press Space to play; Shift + Left Arrow returns to the start. It opens at the garden Buddha chapter. Earlier bedroom and reading-tour files remain as previous versions. - **Unreal Engine 5.8.2:** `unreal/SamfordMeditation/SamfordMeditation.uproject`. The saved meditation room includes 152 meshes, 14 materials, lighting and a camera. The Unreal work currently covers this room only; an interactive whole-home walkthrough is future work. - **Images:** `renders/` contains the latest compound, detailed kitchen, training terrace and outdoor dining, plus earlier bedroom, reading corner, garage and actual Unreal room studies. -- **Concept layout:** `plans/concept/container-water-plan.svg`. Current version 005 includes the container water-storage module and replaces the table-tennis deck with flowers, aligns the pavilions and adds curved paths and a central garden court. +- **Concept layout:** `plans/concept/buddha-garden-plan.svg`. Current version 006 includes the container water-storage module and replaces the table-tennis deck with flowers, aligns the pavilions and adds curved paths and a central garden court. - **Animation instructions:** `walkthroughs/UNREAL-CAMERA-ANIMATION.md`. ## Working in Blender @@ -78,3 +78,7 @@ The full conversation context and decision history are now preserved in docs/. S ## Container water-storage revision — 10 September 2026, v005 Marcus asked to make the water tanks a shipping container. Replaced the exposed cylinders with a dark-green 20-foot container-style module (approximately 6.06 × 2.44 × 2.59 m), retaining two sealed water tanks inside. Added corrugated walls, cargo doors and locking bars, corner castings, inlet/outlet manifolds, pump and a first-flush component concept. The container enclosure is not itself the water-retaining vessel. The west end is a transparent inspection cutaway. The garden service path reaches the east cargo doors. Updated tour chapter 13, the plan and exterior/cutaway/overview renders. Product selection, structural/loading checks and hydraulic sizing remain future design work. + +## Garden Buddha — version 006, 10 September 2026 + +Added a seated weathered-limestone Buddha on a low stone plinth north of the meditation pavilion, facing east into the shared garden court. The statue has a draped robe, folded hands, lowered eyes, elongated earlobes and a carved topknot. Position (-12.4, 15.35), clear of both the room and curved walking route. Added a lightweight viewport proxy and chapter 31 to the Play tour (2 min 35 sec total). The scene opens on the statue. Existing house, container water module, future shadows and landscaping remain intact. diff --git a/blender/buddha-garden-layout.json b/blender/buddha-garden-layout.json new file mode 100644 index 0000000..2cccea3 --- /dev/null +++ b/blender/buddha-garden-layout.json @@ -0,0 +1,5451 @@ +{ + "version": 6, + "main": [ + 0, + 0, + 12, + 6 + ], + "parents": [ + -11.8, + -4.9, + 8, + 5 + ], + "meditation": [ + -11.8, + 12, + 4.5, + 4.8 + ], + "future": [ + [ + 11.8, + 12, + 4.5, + 4.8 + ], + [ + 0, + 24, + 4.5, + 4.8 + ] + ], + "garage": [ + 0, + -19, + 8, + 7 + ], + "training": [ + -9.4, + -19, + 4.8, + 5.4 + ], + "solar": [ + 9.4, + -19, + 7.3, + 5.2 + ], + "sauna": [ + -23, + 4.2 + ], + "outdoor_table": [ + 10, + 3.5, + 6, + 5.8 + ], + "court": [ + 0, + 13.2, + 8.5, + 5.3 + ], + "paths": [ + { + "name": "GARDEN COURT - continuous oval gravel walk", + "points": [ + [ + 8.5, + 13.2 + ], + [ + 8.489761377743966, + 13.460058673935315 + ], + [ + 8.459070176713674, + 13.719490843746671 + ], + [ + 8.408000334700638, + 13.977671514613416 + ], + [ + 8.33667488342746, + 14.233978706685479 + ], + [ + 8.245265652153623, + 14.487794953487297 + ], + [ + 8.133992853723775, + 14.73850878944865 + ], + [ + 8.003124554055677, + 14.985516222978765 + ], + [ + 7.852976026345937, + 15.228222191534975 + ], + [ + 7.683908991549268, + 15.466041995180493 + ], + [ + 7.496330746961018, + 15.698402705177786 + ], + [ + 7.290693185002313, + 15.924744544224074 + ], + [ + 7.067491704571634, + 16.14452223500389 + ], + [ + 6.827264017585482, + 16.357206313809897 + ], + [ + 6.570588853583264, + 16.56228440606732 + ], + [ + 6.298084565517153, + 16.759262460689197 + ], + [ + 6.0104076400856545, + 16.9476659402887 + ], + [ + 5.708251116199656, + 17.127040964381283 + ], + [ + 5.392342915390986, + 17.296955402822505 + ], + [ + 5.063444088185684, + 17.456999916847415 + ], + [ + 4.72234698066662, + 17.60678894520349 + ], + [ + 4.369873325642384, + 17.745961633001443 + ], + [ + 4.006872263020981, + 17.87418270104628 + ], + [ + 3.6342182941573986, + 17.99114325355425 + ], + [ + 3.2528091751032635, + 18.09656152230982 + ], + [ + 2.8635637538338705, + 18.19018354547001 + ], + [ + 2.4674197566629297, + 18.271783779380705 + ], + [ + 2.065331529177744, + 18.34116564193108 + ], + [ + 1.6582677371370909, + 18.39816198613712 + ], + [ + 1.247209032870575, + 18.44263550281334 + ], + [ + 0.8331456928012666, + 18.474479051362643 + ], + [ + 0.41707523178305406, + 18.49361591788741 + ], + [ + 5.204748896376251e-16, + 18.5 + ], + [ + -0.41707523178305306, + 18.49361591788741 + ], + [ + -0.8331456928012655, + 18.474479051362643 + ], + [ + -1.2472090328705738, + 18.44263550281334 + ], + [ + -1.6582677371370895, + 18.39816198613712 + ], + [ + -2.065331529177743, + 18.34116564193108 + ], + [ + -2.4674197566629283, + 18.271783779380705 + ], + [ + -2.8635637538338696, + 18.19018354547001 + ], + [ + -3.2528091751032626, + 18.09656152230982 + ], + [ + -3.634218294157396, + 17.99114325355425 + ], + [ + -4.0068722630209805, + 17.87418270104628 + ], + [ + -4.369873325642384, + 17.745961633001443 + ], + [ + -4.722346980666616, + 17.60678894520349 + ], + [ + -5.063444088185683, + 17.456999916847415 + ], + [ + -5.392342915390985, + 17.296955402822505 + ], + [ + -5.708251116199657, + 17.127040964381283 + ], + [ + -6.010407640085654, + 16.9476659402887 + ], + [ + -6.298084565517151, + 16.759262460689197 + ], + [ + -6.570588853583264, + 16.56228440606732 + ], + [ + -6.827264017585481, + 16.357206313809897 + ], + [ + -7.067491704571635, + 16.14452223500389 + ], + [ + -7.290693185002312, + 15.924744544224074 + ], + [ + -7.496330746961017, + 15.698402705177788 + ], + [ + -7.683908991549268, + 15.466041995180493 + ], + [ + -7.852976026345937, + 15.228222191534975 + ], + [ + -8.003124554055676, + 14.985516222978767 + ], + [ + -8.133992853723775, + 14.73850878944865 + ], + [ + -8.245265652153623, + 14.487794953487299 + ], + [ + -8.33667488342746, + 14.23397870668548 + ], + [ + -8.408000334700638, + 13.977671514613418 + ], + [ + -8.459070176713674, + 13.719490843746671 + ], + [ + -8.489761377743966, + 13.460058673935315 + ], + [ + -8.5, + 13.2 + ], + [ + -8.489761377743966, + 12.939941326064686 + ], + [ + -8.459070176713674, + 12.680509156253327 + ], + [ + -8.408000334700638, + 12.422328485386583 + ], + [ + -8.33667488342746, + 12.166021293314518 + ], + [ + -8.245265652153623, + 11.912205046512701 + ], + [ + -8.133992853723775, + 11.66149121055135 + ], + [ + -8.003124554055677, + 11.414483777021234 + ], + [ + -7.852976026345938, + 11.171777808465023 + ], + [ + -7.683908991549269, + 10.933958004819505 + ], + [ + -7.496330746961018, + 10.701597294822212 + ], + [ + -7.290693185002314, + 10.475255455775926 + ], + [ + -7.067491704571636, + 10.255477764996108 + ], + [ + -6.827264017585482, + 10.042793686190103 + ], + [ + -6.570588853583265, + 9.83771559393268 + ], + [ + -6.2980845655171525, + 9.640737539310802 + ], + [ + -6.010407640085655, + 9.452334059711298 + ], + [ + -5.7082511161996585, + 9.272959035618717 + ], + [ + -5.39234291539099, + 9.103044597177494 + ], + [ + -5.0634440881856815, + 8.94300008315258 + ], + [ + -4.722346980666618, + 8.79321105479651 + ], + [ + -4.369873325642385, + 8.654038366998558 + ], + [ + -4.006872263020982, + 8.525817298953719 + ], + [ + -3.634218294157401, + 8.40885674644575 + ], + [ + -3.252809175103268, + 8.30343847769018 + ], + [ + -2.8635637538338696, + 8.209816454529989 + ], + [ + -2.4674197566629306, + 8.128216220619294 + ], + [ + -2.065331529177745, + 8.058834358068918 + ], + [ + -1.6582677371370937, + 8.00183801386288 + ], + [ + -1.2472090328705796, + 7.957364497186661 + ], + [ + -0.8331456928012638, + 7.925520948637356 + ], + [ + -0.4170752317830532, + 7.906384082112586 + ], + [ + -1.5614246689128753e-15, + 7.8999999999999995 + ], + [ + 0.4170752317830501, + 7.906384082112586 + ], + [ + 0.8331456928012607, + 7.925520948637356 + ], + [ + 1.2472090328705765, + 7.957364497186661 + ], + [ + 1.6582677371370906, + 8.001838013862878 + ], + [ + 2.065331529177742, + 8.058834358068918 + ], + [ + 2.4674197566629275, + 8.128216220619292 + ], + [ + 2.8635637538338665, + 8.209816454529989 + ], + [ + 3.252809175103265, + 8.30343847769018 + ], + [ + 3.634218294157398, + 8.40885674644575 + ], + [ + 4.00687226302098, + 8.525817298953719 + ], + [ + 4.369873325642383, + 8.654038366998556 + ], + [ + 4.722346980666615, + 8.793211054796508 + ], + [ + 5.06344408818568, + 8.94300008315258 + ], + [ + 5.392342915390987, + 9.103044597177494 + ], + [ + 5.708251116199657, + 9.272959035618715 + ], + [ + 6.010407640085653, + 9.452334059711298 + ], + [ + 6.29808456551715, + 9.6407375393108 + ], + [ + 6.570588853583262, + 9.837715593932677 + ], + [ + 6.827264017585483, + 10.042793686190103 + ], + [ + 7.067491704571634, + 10.255477764996108 + ], + [ + 7.290693185002312, + 10.475255455775923 + ], + [ + 7.496330746961016, + 10.70159729482221 + ], + [ + 7.683908991549266, + 10.933958004819502 + ], + [ + 7.852976026345935, + 11.17177780846502 + ], + [ + 8.003124554055677, + 11.414483777021234 + ], + [ + 8.133992853723775, + 11.661491210551349 + ], + [ + 8.245265652153623, + 11.9122050465127 + ], + [ + 8.336674883427458, + 12.166021293314516 + ], + [ + 8.408000334700638, + 12.42232848538658 + ], + [ + 8.459070176713674, + 12.68050915625333 + ], + [ + 8.489761377743966, + 12.939941326064684 + ], + [ + 8.5, + 13.199999999999998 + ] + ], + "width": 1.35, + "kind": "gravel" + }, + { + "name": "CURVED BREEZEWAY - timber deck", + "points": [ + [ + -3.0, + 5.400000095367432 + ], + [ + -3.0241127014160156, + 5.433875560760498 + ], + [ + -3.0469000339508057, + 5.474999904632568 + ], + [ + -3.069037437438965, + 5.522624969482422 + ], + [ + -3.0911998748779297, + 5.576000213623047 + ], + [ + -3.1140623092651367, + 5.634375095367432 + ], + [ + -3.1383001804351807, + 5.697000026702881 + ], + [ + -3.1645874977111816, + 5.763125419616699 + ], + [ + -3.1935999393463135, + 5.831999778747559 + ], + [ + -3.2260122299194336, + 5.902874946594238 + ], + [ + -3.262500047683716, + 5.97499942779541 + ], + [ + -3.3037376403808594, + 6.0476250648498535 + ], + [ + -3.350399971008301, + 6.12000036239624 + ], + [ + -3.403162717819214, + 6.191374778747559 + ], + [ + -3.4626998901367188, + 6.261000633239746 + ], + [ + -3.5296874046325684, + 6.328125 + ], + [ + -3.604800224304199, + 6.392000198364258 + ], + [ + -3.6887125968933105, + 6.45187520980835 + ], + [ + -3.782099962234497, + 6.50700044631958 + ], + [ + -3.8856372833251953, + 6.556624889373779 + ], + [ + -4.0, + 6.599999904632568 + ], + [ + -4.127774715423584, + 6.637455940246582 + ], + [ + -4.270199775695801, + 6.670149803161621 + ], + [ + -4.425925254821777, + 6.698568820953369 + ], + [ + -4.593599796295166, + 6.723199844360352 + ], + [ + -4.771874904632568, + 6.74453067779541 + ], + [ + -4.959400177001953, + 6.763049602508545 + ], + [ + -5.154825210571289, + 6.7792439460754395 + ], + [ + -5.356800079345703, + 6.793600082397461 + ], + [ + -5.563974857330322, + 6.806606292724609 + ], + [ + -5.775000095367432, + 6.818749904632568 + ], + [ + -5.988524913787842, + 6.83051872253418 + ], + [ + -6.203199863433838, + 6.842399597167969 + ], + [ + -6.417674541473389, + 6.854881286621094 + ], + [ + -6.630600452423096, + 6.868449687957764 + ], + [ + -6.840624809265137, + 6.8835930824279785 + ], + [ + -7.04640007019043, + 6.90079927444458 + ], + [ + -7.246574878692627, + 6.920555591583252 + ], + [ + -7.4397993087768555, + 6.943349361419678 + ], + [ + -7.624724388122559, + 6.969667911529541 + ], + [ + -7.800000190734863, + 7.0 + ], + [ + -7.970425605773926, + 7.032768249511719 + ], + [ + -8.141400337219238, + 7.066150188446045 + ], + [ + -8.31247615814209, + 7.100256443023682 + ], + [ + -8.483201026916504, + 7.135200500488281 + ], + [ + -8.653125762939453, + 7.171093463897705 + ], + [ + -8.821800231933594, + 7.208049774169922 + ], + [ + -8.988774299621582, + 7.246181011199951 + ], + [ + -9.153599739074707, + 7.285600662231445 + ], + [ + -9.315824508666992, + 7.326418399810791 + ], + [ + -9.475000381469727, + 7.368749618530273 + ], + [ + -9.630675315856934, + 7.41270637512207 + ], + [ + -9.782401084899902, + 7.458400249481201 + ], + [ + -9.929725646972656, + 7.505943775177002 + ], + [ + -10.072200775146484, + 7.555449962615967 + ], + [ + -10.209375381469727, + 7.607031345367432 + ], + [ + -10.340801239013672, + 7.660799980163574 + ], + [ + -10.466025352478027, + 7.716869354248047 + ], + [ + -10.584601402282715, + 7.775350093841553 + ], + [ + -10.696075439453125, + 7.8363566398620605 + ], + [ + -10.800000190734863, + 7.900000095367432 + ], + [ + -10.896313667297363, + 7.968968868255615 + ], + [ + -10.985499382019043, + 8.045249938964844 + ], + [ + -11.067937850952148, + 8.12790584564209 + ], + [ + -11.143999099731445, + 8.215999603271484 + ], + [ + -11.214062690734863, + 8.30859375 + ], + [ + -11.2785005569458, + 8.40475082397461 + ], + [ + -11.337687492370605, + 8.503531455993652 + ], + [ + -11.392000198364258, + 8.604000091552734 + ], + [ + -11.441812515258789, + 8.705220222473145 + ], + [ + -11.487500190734863, + 8.80625057220459 + ], + [ + -11.529438018798828, + 8.906156539916992 + ], + [ + -11.567999839782715, + 9.003999710083008 + ], + [ + -11.60356330871582, + 9.098844528198242 + ], + [ + -11.636499404907227, + 9.189750671386719 + ], + [ + -11.667187690734863, + 9.275781631469727 + ], + [ + -11.696001052856445, + 9.356000900268555 + ], + [ + -11.723312377929688, + 9.429469108581543 + ], + [ + -11.749500274658203, + 9.495250701904297 + ], + [ + -11.774937629699707, + 9.552406311035156 + ], + [ + -11.800000190734863, + 9.600000381469727 + ] + ], + "width": 1.35, + "kind": "roofed walk" + }, + { + "name": "Garden court east future threshold", + "points": [ + [ + 8.5, + 13.199999809265137 + ], + [ + 8.53005599975586, + 13.199999809265137 + ], + [ + 8.56719970703125, + 13.199999809265137 + ], + [ + 8.61064338684082, + 13.199999809265137 + ], + [ + 8.659599304199219, + 13.199999809265137 + ], + [ + 8.713281631469727, + 13.199999809265137 + ], + [ + 8.77090072631836, + 13.199999809265137 + ], + [ + 8.831668853759766, + 13.199999809265137 + ], + [ + 8.894800186157227, + 13.199999809265137 + ], + [ + 8.959506034851074, + 13.199999809265137 + ], + [ + 9.024999618530273, + 13.199999809265137 + ], + [ + 9.090493202209473, + 13.199999809265137 + ], + [ + 9.155200958251953, + 13.199999809265137 + ], + [ + 9.218331336975098, + 13.199999809265137 + ], + [ + 9.27910041809082, + 13.199999809265137 + ], + [ + 9.336718559265137, + 13.199999809265137 + ], + [ + 9.390399932861328, + 13.199999809265137 + ], + [ + 9.439355850219727, + 13.199999809265137 + ], + [ + 9.482799530029297, + 13.199999809265137 + ], + [ + 9.519942283630371, + 13.199999809265137 + ], + [ + 9.550000190734863, + 13.199999809265137 + ] + ], + "width": 1.35, + "kind": "gravel" + }, + { + "name": "Northern axial future path", + "points": [ + [ + 0.0, + 18.5 + ], + [ + 0.0, + 18.541038513183594 + ], + [ + 0.0, + 18.58880043029785 + ], + [ + 0.0, + 18.64276123046875 + ], + [ + 0.0, + 18.70240020751953 + ], + [ + 0.0, + 18.767189025878906 + ], + [ + 0.0, + 18.83660125732422 + ], + [ + 0.0, + 18.910114288330078 + ], + [ + 0.0, + 18.987199783325195 + ], + [ + 0.0, + 19.067337036132812 + ], + [ + 0.0, + 19.149999618530273 + ], + [ + 0.0, + 19.234663009643555 + ], + [ + 0.0, + 19.32080078125 + ], + [ + 0.0, + 19.407886505126953 + ], + [ + 0.0, + 19.495399475097656 + ], + [ + 0.0, + 19.58281135559082 + ], + [ + 0.0, + 19.669599533081055 + ], + [ + 0.0, + 19.755237579345703 + ], + [ + 0.0, + 19.83919906616211 + ], + [ + 0.0, + 19.920961380004883 + ], + [ + 0.0, + 20.0 + ], + [ + 0.0, + 20.07964324951172 + ], + [ + 0.0, + 20.163150787353516 + ], + [ + 0.0, + 20.249881744384766 + ], + [ + 0.0, + 20.33919906616211 + ], + [ + 0.0, + 20.430469512939453 + ], + [ + 0.0, + 20.52305030822754 + ], + [ + 0.0, + 20.61630630493164 + ], + [ + 0.0, + 20.70960235595703 + ], + [ + 0.0, + 20.802295684814453 + ], + [ + 0.0, + 20.893749237060547 + ], + [ + 0.0, + 20.983333587646484 + ], + [ + 0.0, + 21.07040023803711 + ], + [ + 0.0, + 21.154319763183594 + ], + [ + 0.0, + 21.234451293945312 + ], + [ + 0.0, + 21.310155868530273 + ], + [ + 0.0, + 21.38079833984375 + ], + [ + 0.0, + 21.445743560791016 + ], + [ + 0.0, + 21.504348754882812 + ], + [ + 0.0, + 21.555980682373047 + ], + [ + 0.0, + 21.600000381469727 + ] + ], + "width": 1.35, + "kind": "gravel" + }, + { + "name": "Wellness garden curve", + "points": [ + [ + -7.0, + 16.200000762939453 + ], + [ + -7.137187480926514, + 16.224088668823242 + ], + [ + -7.297500133514404, + 16.255701065063477 + ], + [ + -7.479062557220459, + 16.29386329650879 + ], + [ + -7.679999828338623, + 16.337600708007812 + ], + [ + -7.8984375, + 16.38593864440918 + ], + [ + -8.132499694824219, + 16.43790054321289 + ], + [ + -8.3803129196167, + 16.49251365661621 + ], + [ + -8.640000343322754, + 16.548799514770508 + ], + [ + -8.909687042236328, + 16.605789184570312 + ], + [ + -9.1875, + 16.662500381469727 + ], + [ + -9.471562385559082, + 16.71796226501465 + ], + [ + -9.760000228881836, + 16.77120018005371 + ], + [ + -10.05093765258789, + 16.821239471435547 + ], + [ + -10.342499732971191, + 16.86709976196289 + ], + [ + -10.6328125, + 16.907814025878906 + ], + [ + -10.920000076293945, + 16.942401885986328 + ], + [ + -11.202187538146973, + 16.96988868713379 + ], + [ + -11.477499008178711, + 16.989303588867188 + ], + [ + -11.744062423706055, + 16.999664306640625 + ], + [ + -12.0, + 17.0 + ], + [ + -12.25475025177002, + 16.996551513671875 + ], + [ + -12.518000602722168, + 16.995399475097656 + ], + [ + -12.788249969482422, + 16.995351791381836 + ], + [ + -13.064000129699707, + 16.99519920349121 + ], + [ + -13.34375, + 16.993751525878906 + ], + [ + -13.62600040435791, + 16.98979949951172 + ], + [ + -13.909250259399414, + 16.98215103149414 + ], + [ + -14.191999435424805, + 16.9695987701416 + ], + [ + -14.472749710083008, + 16.950950622558594 + ], + [ + -14.75, + 16.924999237060547 + ], + [ + -15.022249221801758, + 16.890548706054688 + ], + [ + -15.288000106811523, + 16.84640121459961 + ], + [ + -15.54574966430664, + 16.791349411010742 + ], + [ + -15.793999671936035, + 16.724201202392578 + ], + [ + -16.03125, + 16.643749237060547 + ], + [ + -16.256000518798828, + 16.548799514770508 + ], + [ + -16.46674919128418, + 16.438148498535156 + ], + [ + -16.661998748779297, + 16.31060028076172 + ], + [ + -16.84025001525879, + 16.164949417114258 + ], + [ + -17.0, + 16.0 + ], + [ + -17.139062881469727, + 15.807705879211426 + ], + [ + -17.25749969482422, + 15.583149909973145 + ], + [ + -17.357189178466797, + 15.329818725585938 + ], + [ + -17.440000534057617, + 15.051199913024902 + ], + [ + -17.5078125, + 14.750782012939453 + ], + [ + -17.562498092651367, + 14.432049751281738 + ], + [ + -17.60593605041504, + 14.098492622375488 + ], + [ + -17.64000129699707, + 13.753600120544434 + ], + [ + -17.666563034057617, + 13.400856018066406 + ], + [ + -17.6875, + 13.043749809265137 + ], + [ + -17.704687118530273, + 12.685768127441406 + ], + [ + -17.719999313354492, + 12.330399513244629 + ], + [ + -17.735313415527344, + 11.981131553649902 + ], + [ + -17.752500534057617, + 11.641449928283691 + ], + [ + -17.7734375, + 11.31484317779541 + ], + [ + -17.80000114440918, + 11.004799842834473 + ], + [ + -17.834062576293945, + 10.714805603027344 + ], + [ + -17.877500534057617, + 10.44835090637207 + ], + [ + -17.932186126708984, + 10.208918571472168 + ], + [ + -18.0, + 10.0 + ], + [ + -18.076250076293945, + 9.81619930267334 + ], + [ + -18.154998779296875, + 9.649099349975586 + ], + [ + -18.236249923706055, + 9.497649192810059 + ], + [ + -18.31999969482422, + 9.360799789428711 + ], + [ + -18.40625, + 9.237500190734863 + ], + [ + -18.4950008392334, + 9.126700401306152 + ], + [ + -18.58625030517578, + 9.027350425720215 + ], + [ + -18.68000030517578, + 8.938400268554688 + ], + [ + -18.776248931884766, + 8.858799934387207 + ], + [ + -18.875, + 8.78749942779541 + ], + [ + -18.97625160217285, + 8.72344970703125 + ], + [ + -19.079999923706055, + 8.665599822998047 + ], + [ + -19.186250686645508, + 8.612900733947754 + ], + [ + -19.295000076293945, + 8.564300537109375 + ], + [ + -19.40625, + 8.518750190734863 + ], + [ + -19.520000457763672, + 8.475199699401855 + ], + [ + -19.636249542236328, + 8.432600021362305 + ], + [ + -19.755001068115234, + 8.389899253845215 + ], + [ + -19.876249313354492, + 8.346050262451172 + ], + [ + -20.0, + 8.300000190734863 + ], + [ + -20.131000518798828, + 8.256869316101074 + ], + [ + -20.272998809814453, + 8.221949577331543 + ], + [ + -20.42449951171875, + 8.194456100463867 + ], + [ + -20.583999633789062, + 8.173601150512695 + ], + [ + -20.75, + 8.158594131469727 + ], + [ + -20.92099952697754, + 8.148650169372559 + ], + [ + -21.09549903869629, + 8.14298152923584 + ], + [ + -21.27199935913086, + 8.140800476074219 + ], + [ + -21.44900131225586, + 8.141319274902344 + ], + [ + -21.625, + 8.143750190734863 + ], + [ + -21.798500061035156, + 8.147306442260742 + ], + [ + -21.968000411987305, + 8.151200294494629 + ], + [ + -22.131999969482422, + 8.154644966125488 + ], + [ + -22.288999557495117, + 8.15684986114502 + ], + [ + -22.4375, + 8.15703296661377 + ], + [ + -22.576000213623047, + 8.154401779174805 + ], + [ + -22.702999114990234, + 8.148170471191406 + ], + [ + -22.816999435424805, + 8.137551307678223 + ], + [ + -22.916500091552734, + 8.121757507324219 + ], + [ + -23.0, + 8.100000381469727 + ], + [ + -23.06768798828125, + 8.072588920593262 + ], + [ + -23.121498107910156, + 8.04069995880127 + ], + [ + -23.16256332397461, + 8.004862785339355 + ], + [ + -23.191997528076172, + 7.96560001373291 + ], + [ + -23.2109375, + 7.92343807220459 + ], + [ + -23.220500946044922, + 7.878900051116943 + ], + [ + -23.221811294555664, + 7.832512855529785 + ], + [ + -23.216001510620117, + 7.7848005294799805 + ], + [ + -23.204187393188477, + 7.736288070678711 + ], + [ + -23.1875, + 7.687500476837158 + ], + [ + -23.167064666748047, + 7.638962745666504 + ], + [ + -23.143999099731445, + 7.591200351715088 + ], + [ + -23.11943817138672, + 7.544738292694092 + ], + [ + -23.094499588012695, + 7.500100612640381 + ], + [ + -23.0703125, + 7.457812786102295 + ], + [ + -23.04800033569336, + 7.418400287628174 + ], + [ + -23.028688430786133, + 7.382387638092041 + ], + [ + -23.013500213623047, + 7.3503007888793945 + ], + [ + -23.00356101989746, + 7.322662830352783 + ], + [ + -23.0, + 7.300000190734863 + ] + ], + "width": 1.4, + "kind": "gravel" + }, + { + "name": "Rainwater container service garden path", + "points": [ + [ + -23.0, + 8.100000381469727 + ], + [ + -23.1564884185791, + 8.111412048339844 + ], + [ + -23.348400115966797, + 8.138800621032715 + ], + [ + -23.57191276550293, + 8.179388046264648 + ], + [ + -23.823198318481445, + 8.230400085449219 + ], + [ + -24.098438262939453, + 8.2890625 + ], + [ + -24.393802642822266, + 8.35260009765625 + ], + [ + -24.705461502075195, + 8.418238639831543 + ], + [ + -25.029600143432617, + 8.483200073242188 + ], + [ + -25.36238670349121, + 8.544713020324707 + ], + [ + -25.69999885559082, + 8.600000381469727 + ], + [ + -26.03861427307129, + 8.64628791809082 + ], + [ + -26.374399185180664, + 8.680800437927246 + ], + [ + -26.70353889465332, + 8.700762748718262 + ], + [ + -27.022199630737305, + 8.703400611877441 + ], + [ + -27.326560974121094, + 8.685937881469727 + ], + [ + -27.61280059814453, + 8.645601272583008 + ], + [ + -27.877086639404297, + 8.57961368560791 + ], + [ + -28.1156005859375, + 8.485201835632324 + ], + [ + -28.324512481689453, + 8.359588623046875 + ], + [ + -28.5, + 8.199999809265137 + ], + [ + -28.64723014831543, + 8.003281593322754 + ], + [ + -28.774850845336914, + 7.770249843597412 + ], + [ + -28.884244918823242, + 7.504093170166016 + ], + [ + -28.97679901123047, + 7.2079997062683105 + ], + [ + -29.053905487060547, + 6.885156154632568 + ], + [ + -29.1169490814209, + 6.538749694824219 + ], + [ + -29.16731834411621, + 6.17196798324585 + ], + [ + -29.20639991760254, + 5.787999629974365 + ], + [ + -29.235580444335938, + 5.390030860900879 + ], + [ + -29.256250381469727, + 4.981249809265137 + ], + [ + -29.269794464111328, + 4.56484317779541 + ], + [ + -29.277599334716797, + 4.1439995765686035 + ], + [ + -29.281057357788086, + 3.7219061851501465 + ], + [ + -29.281551361083984, + 3.3017494678497314 + ], + [ + -29.280467987060547, + 2.8867177963256836 + ], + [ + -29.27920150756836, + 2.479999542236328 + ], + [ + -29.279130935668945, + 2.0847809314727783 + ], + [ + -29.28165054321289, + 1.7042491436004639 + ], + [ + -29.28814697265625, + 1.3415923118591309 + ], + [ + -29.299999237060547, + 1.0 + ], + [ + -29.31232261657715, + 0.6735186576843262 + ], + [ + -29.31960105895996, + 0.35364997386932373 + ], + [ + -29.322275161743164, + 0.03975624218583107 + ], + [ + -29.320798873901367, + -0.2688000500202179 + ], + [ + -29.315624237060547, + -0.5726562142372131 + ], + [ + -29.307199478149414, + -0.8724499940872192 + ], + [ + -29.29597282409668, + -1.168818712234497 + ], + [ + -29.282400131225586, + -1.4624000787734985 + ], + [ + -29.266923904418945, + -1.7538310289382935 + ], + [ + -29.249998092651367, + -2.043750047683716 + ], + [ + -29.232074737548828, + -2.332793951034546 + ], + [ + -29.213598251342773, + -2.6215999126434326 + ], + [ + -29.195022583007812, + -2.910806179046631 + ], + [ + -29.176799774169922, + -3.201050043106079 + ], + [ + -29.159372329711914, + -3.4929685592651367 + ], + [ + -29.14319610595703, + -3.7872002124786377 + ], + [ + -29.12872314453125, + -4.084381103515625 + ], + [ + -29.116397857666016, + -4.3851494789123535 + ], + [ + -29.106670379638672, + -4.690144062042236 + ], + [ + -29.100000381469727, + -5.0 + ], + [ + -29.100357055664062, + -5.320843696594238 + ], + [ + -29.110349655151367, + -5.656749725341797 + ], + [ + -29.12837028503418, + -6.005281448364258 + ], + [ + -29.152799606323242, + -6.363999843597412 + ], + [ + -29.182031631469727, + -6.73046875 + ], + [ + -29.214448928833008, + -7.102250099182129 + ], + [ + -29.248443603515625, + -7.4769062995910645 + ], + [ + -29.28240203857422, + -7.8520002365112305 + ], + [ + -29.314706802368164, + -8.225093841552734 + ], + [ + -29.343751907348633, + -8.59375 + ], + [ + -29.367919921875, + -8.955531120300293 + ], + [ + -29.385601043701172, + -9.308000564575195 + ], + [ + -29.395179748535156, + -9.64871883392334 + ], + [ + -29.395050048828125, + -9.975250244140625 + ], + [ + -29.383594512939453, + -10.28515625 + ], + [ + -29.359201431274414, + -10.57599925994873 + ], + [ + -29.32025909423828, + -10.845343589782715 + ], + [ + -29.26515007019043, + -11.090749740600586 + ], + [ + -29.192270278930664, + -11.309782028198242 + ], + [ + -29.100000381469727, + -11.5 + ], + [ + -28.987979888916016, + -11.661681175231934 + ], + [ + -28.857851028442383, + -11.797950744628906 + ], + [ + -28.710994720458984, + -11.910642623901367 + ], + [ + -28.548799514770508, + -12.001599311828613 + ], + [ + -28.372655868530273, + -12.072656631469727 + ], + [ + -28.183950424194336, + -12.125649452209473 + ], + [ + -27.984067916870117, + -12.162418365478516 + ], + [ + -27.77440071105957, + -12.184800148010254 + ], + [ + -27.55632972717285, + -12.19463062286377 + ], + [ + -27.33125114440918, + -12.19374942779541 + ], + [ + -27.100543975830078, + -12.183993339538574 + ], + [ + -26.8656005859375, + -12.167200088500977 + ], + [ + -26.627805709838867, + -12.145206451416016 + ], + [ + -26.3885498046875, + -12.119850158691406 + ], + [ + -26.149219512939453, + -12.09296989440918 + ], + [ + -25.91120147705078, + -12.066400527954102 + ], + [ + -25.67588233947754, + -12.04198169708252 + ], + [ + -25.444652557373047, + -12.021550178527832 + ], + [ + -25.218894958496094, + -12.006943702697754 + ], + [ + -25.0, + -12.0 + ], + [ + -24.778682708740234, + -11.998144149780273 + ], + [ + -24.545949935913086, + -11.997150421142578 + ], + [ + -24.30364227294922, + -11.996381759643555 + ], + [ + -24.053598403930664, + -11.995200157165527 + ], + [ + -23.79765510559082, + -11.992969512939453 + ], + [ + -23.537649154663086, + -11.989048957824707 + ], + [ + -23.275419235229492, + -11.982806205749512 + ], + [ + -23.012800216674805, + -11.973600387573242 + ], + [ + -22.751632690429688, + -11.960793495178223 + ], + [ + -22.493749618530273, + -11.943750381469727 + ], + [ + -22.24099349975586, + -11.921831130981445 + ], + [ + -21.99519920349121, + -11.894400596618652 + ], + [ + -21.75820541381836, + -11.860818862915039 + ], + [ + -21.531850814819336, + -11.820449829101562 + ], + [ + -21.317968368530273, + -11.772656440734863 + ], + [ + -21.118398666381836, + -11.716800689697266 + ], + [ + -20.934980392456055, + -11.652243614196777 + ], + [ + -20.769548416137695, + -11.578350067138672 + ], + [ + -20.623943328857422, + -11.494481086730957 + ], + [ + -20.5, + -11.399999618530273 + ], + [ + -20.396724700927734, + -11.28913688659668 + ], + [ + -20.311134338378906, + -11.158100128173828 + ], + [ + -20.24209976196289, + -11.009212493896484 + ], + [ + -20.188480377197266, + -10.844799995422363 + ], + [ + -20.149141311645508, + -10.667186737060547 + ], + [ + -20.12294578552246, + -10.478699684143066 + ], + [ + -20.10875701904297, + -10.281662940979004 + ], + [ + -20.105440139770508, + -10.078398704528809 + ], + [ + -20.111858367919922, + -9.871236801147461 + ], + [ + -20.126874923706055, + -9.66249942779541 + ], + [ + -20.149354934692383, + -9.454511642456055 + ], + [ + -20.178159713745117, + -9.24959945678711 + ], + [ + -20.212154388427734, + -9.050086975097656 + ], + [ + -20.25020408630371, + -8.858299255371094 + ], + [ + -20.29117202758789, + -8.67656135559082 + ], + [ + -20.333919525146484, + -8.507198333740234 + ], + [ + -20.3773136138916, + -8.35253620147705 + ], + [ + -20.420215606689453, + -8.214899063110352 + ], + [ + -20.461488723754883, + -8.096611022949219 + ], + [ + -20.5, + -8.0 + ], + [ + -20.54207992553711, + -7.923287391662598 + ], + [ + -20.594079971313477, + -7.862299919128418 + ], + [ + -20.6549015045166, + -7.815762519836426 + ], + [ + -20.723438262939453, + -7.782400131225586 + ], + [ + -20.798593521118164, + -7.760937213897705 + ], + [ + -20.87925910949707, + -7.7500996589660645 + ], + [ + -20.964336395263672, + -7.748612880706787 + ], + [ + -21.05272102355957, + -7.755200386047363 + ], + [ + -21.143308639526367, + -7.768587589263916 + ], + [ + -21.235000610351562, + -7.787499904632568 + ], + [ + -21.326690673828125, + -7.810662746429443 + ], + [ + -21.417280197143555, + -7.836800575256348 + ], + [ + -21.50566291809082, + -7.864637851715088 + ], + [ + -21.590740203857422, + -7.892899990081787 + ], + [ + -21.67140769958496, + -7.920312404632568 + ], + [ + -21.746559143066406, + -7.9456000328063965 + ], + [ + -21.81509780883789, + -7.967487812042236 + ], + [ + -21.875919342041016, + -7.9847002029418945 + ], + [ + -21.927921295166016, + -7.995962619781494 + ], + [ + -21.969999313354492, + -8.0 + ] + ], + "width": 1.15, + "kind": "gravel" + }, + { + "name": "Eastern garden promenade", + "points": [ + [ + 7.0, + 16.200000762939453 + ], + [ + 7.137187480926514, + 16.224088668823242 + ], + [ + 7.297500133514404, + 16.255701065063477 + ], + [ + 7.479062557220459, + 16.29386329650879 + ], + [ + 7.679999828338623, + 16.337600708007812 + ], + [ + 7.8984375, + 16.38593864440918 + ], + [ + 8.132499694824219, + 16.43790054321289 + ], + [ + 8.3803129196167, + 16.49251365661621 + ], + [ + 8.640000343322754, + 16.548799514770508 + ], + [ + 8.909687042236328, + 16.605789184570312 + ], + [ + 9.1875, + 16.662500381469727 + ], + [ + 9.471562385559082, + 16.71796226501465 + ], + [ + 9.760000228881836, + 16.77120018005371 + ], + [ + 10.05093765258789, + 16.821239471435547 + ], + [ + 10.342499732971191, + 16.86709976196289 + ], + [ + 10.6328125, + 16.907814025878906 + ], + [ + 10.920000076293945, + 16.942401885986328 + ], + [ + 11.202187538146973, + 16.96988868713379 + ], + [ + 11.477499008178711, + 16.989303588867188 + ], + [ + 11.744062423706055, + 16.999664306640625 + ], + [ + 12.0, + 17.0 + ], + [ + 12.252374649047852, + 16.994768142700195 + ], + [ + 12.508999824523926, + 16.988649368286133 + ], + [ + 12.769124984741211, + 16.981006622314453 + ], + [ + 13.031999588012695, + 16.97119903564453 + ], + [ + 13.296875, + 16.958595275878906 + ], + [ + 13.562999725341797, + 16.942550659179688 + ], + [ + 13.829625129699707, + 16.92243194580078 + ], + [ + 14.095999717712402, + 16.897600173950195 + ], + [ + 14.36137580871582, + 16.867420196533203 + ], + [ + 14.625, + 16.831249237060547 + ], + [ + 14.886124610900879, + 16.788455963134766 + ], + [ + 15.144000053405762, + 16.738401412963867 + ], + [ + 15.39787483215332, + 16.680444717407227 + ], + [ + 15.64699935913086, + 16.613950729370117 + ], + [ + 15.890625, + 16.53828239440918 + ], + [ + 16.128000259399414, + 16.452800750732422 + ], + [ + 16.358375549316406, + 16.35686683654785 + ], + [ + 16.58099937438965, + 16.24985122680664 + ], + [ + 16.79512596130371, + 16.131105422973633 + ], + [ + 17.0, + 16.0 + ], + [ + 17.197500228881836, + 15.853968620300293 + ], + [ + 17.389999389648438, + 15.691750526428223 + ], + [ + 17.57750129699707, + 15.514656066894531 + ], + [ + 17.759998321533203, + 15.323999404907227 + ], + [ + 17.9375, + 15.12109375 + ], + [ + 18.110000610351562, + 14.90725040435791 + ], + [ + 18.27750015258789, + 14.683781623840332 + ], + [ + 18.440000534057617, + 14.45199966430664 + ], + [ + 18.59749984741211, + 14.213218688964844 + ], + [ + 18.75, + 13.96875 + ], + [ + 18.89750099182129, + 13.719905853271484 + ], + [ + 19.03999900817871, + 13.468000411987305 + ], + [ + 19.177499771118164, + 13.214343070983887 + ], + [ + 19.309999465942383, + 12.960249900817871 + ], + [ + 19.4375, + 12.70703125 + ], + [ + 19.560001373291016, + 12.456000328063965 + ], + [ + 19.677499771118164, + 12.208468437194824 + ], + [ + 19.790000915527344, + 11.965749740600586 + ], + [ + 19.897499084472656, + 11.729156494140625 + ], + [ + 20.0, + 11.5 + ], + [ + 20.0963134765625, + 11.27678108215332 + ], + [ + 20.185501098632812, + 11.056750297546387 + ], + [ + 20.26793670654297, + 10.839344024658203 + ], + [ + 20.3439998626709, + 10.624000549316406 + ], + [ + 20.4140625, + 10.41015625 + ], + [ + 20.478500366210938, + 10.197249412536621 + ], + [ + 20.537687301635742, + 9.984719276428223 + ], + [ + 20.591999053955078, + 9.77199935913086 + ], + [ + 20.641813278198242, + 9.558530807495117 + ], + [ + 20.6875, + 9.34375 + ], + [ + 20.72943687438965, + 9.127093315124512 + ], + [ + 20.76799964904785, + 8.908000946044922 + ], + [ + 20.803560256958008, + 8.685905456542969 + ], + [ + 20.836498260498047, + 8.460250854492188 + ], + [ + 20.8671875, + 8.23046875 + ], + [ + 20.895999908447266, + 7.995999336242676 + ], + [ + 20.92331314086914, + 7.75628137588501 + ], + [ + 20.949499130249023, + 7.510749816894531 + ], + [ + 20.974937438964844, + 7.258843898773193 + ], + [ + 21.0, + 7.0 + ], + [ + 21.02256202697754, + 6.73384428024292 + ], + [ + 21.040498733520508, + 6.460750102996826 + ], + [ + 21.054189682006836, + 6.181281089782715 + ], + [ + 21.06399917602539, + 5.895999908447266 + ], + [ + 21.0703125, + 5.60546875 + ], + [ + 21.07349967956543, + 5.3102498054504395 + ], + [ + 21.073936462402344, + 5.010906219482422 + ], + [ + 21.07200050354004, + 4.7079997062683105 + ], + [ + 21.068063735961914, + 4.402093410491943 + ], + [ + 21.0625, + 4.09375 + ], + [ + 21.055686950683594, + 3.783531427383423 + ], + [ + 21.047998428344727, + 3.4719998836517334 + ], + [ + 21.039812088012695, + 3.1597187519073486 + ], + [ + 21.0314998626709, + 2.84725022315979 + ], + [ + 21.0234375, + 2.53515625 + ], + [ + 21.016000747680664, + 2.2239997386932373 + ], + [ + 21.00956153869629, + 1.9143435955047607 + ], + [ + 21.004501342773438, + 1.6067501306533813 + ], + [ + 21.001188278198242, + 1.3017815351486206 + ], + [ + 21.0, + 1.0 + ], + [ + 20.996200561523438, + 0.6926375031471252 + ], + [ + 20.985599517822266, + 0.37209999561309814 + ], + [ + 20.96940040588379, + 0.04071246087551117 + ], + [ + 20.948801040649414, + -0.29920005798339844 + ], + [ + 20.924999237060547, + -0.6453125476837158 + ], + [ + 20.899198532104492, + -0.9953001141548157 + ], + [ + 20.872600555419922, + -1.3468374013900757 + ], + [ + 20.846399307250977, + -1.6976001262664795 + ], + [ + 20.821800231933594, + -2.045262336730957 + ], + [ + 20.80000114440918, + -2.387500047683716 + ], + [ + 20.782201766967773, + -2.721987724304199 + ], + [ + 20.76959991455078, + -3.0464000701904297 + ], + [ + 20.763399124145508, + -3.358412265777588 + ], + [ + 20.764799118041992, + -3.6556999683380127 + ], + [ + 20.775001525878906, + -3.9359371662139893 + ], + [ + 20.79520034790039, + -4.196800231933594 + ], + [ + 20.826601028442383, + -4.435962677001953 + ], + [ + 20.87040138244629, + -4.651099681854248 + ], + [ + 20.927799224853516, + -4.839887619018555 + ], + [ + 21.0, + -5.0 + ], + [ + 21.091598510742188, + -5.129650115966797 + ], + [ + 21.20479965209961, + -5.230199813842773 + ], + [ + 21.337200164794922, + -5.304049968719482 + ], + [ + 21.486398696899414, + -5.353600025177002 + ], + [ + 21.649999618530273, + -5.381249904632568 + ], + [ + 21.825597763061523, + -5.389400005340576 + ], + [ + 22.010799407958984, + -5.3804497718811035 + ], + [ + 22.20319938659668, + -5.356800079345703 + ], + [ + 22.400400161743164, + -5.320849895477295 + ], + [ + 22.600000381469727, + -5.275000095367432 + ], + [ + 22.79960060119629, + -5.221650123596191 + ], + [ + 22.996801376342773, + -5.163200378417969 + ], + [ + 23.189199447631836, + -5.102050304412842 + ], + [ + 23.374401092529297, + -5.040599822998047 + ], + [ + 23.55000114440918, + -4.981250286102295 + ], + [ + 23.713600158691406, + -4.926400184631348 + ], + [ + 23.8627986907959, + -4.8784499168396 + ], + [ + 23.99519920349121, + -4.839799880981445 + ], + [ + 24.1083984375, + -4.812849998474121 + ], + [ + 24.200000762939453, + -4.800000190734863 + ] + ], + "width": 1.4, + "kind": "gravel" + }, + { + "name": "Orchard quiet loop", + "points": [ + [ + 20.0, + 11.5 + ], + [ + 20.19443702697754, + 11.531593322753906 + ], + [ + 20.425500869750977, + 11.575250625610352 + ], + [ + 20.68981170654297, + 11.629281044006348 + ], + [ + 20.98400115966797, + 11.692000389099121 + ], + [ + 21.3046875, + 11.76171875 + ], + [ + 21.64849853515625, + 11.836750030517578 + ], + [ + 22.012062072753906, + 11.915406227111816 + ], + [ + 22.392000198364258, + 11.995999336242676 + ], + [ + 22.784936904907227, + 12.076844215393066 + ], + [ + 23.1875, + 12.15625 + ], + [ + 23.596311569213867, + 12.23253059387207 + ], + [ + 24.007999420166016, + 12.303999900817871 + ], + [ + 24.419185638427734, + 12.36896800994873 + ], + [ + 24.826499938964844, + 12.425750732421875 + ], + [ + 25.2265625, + 12.47265625 + ], + [ + 25.615999221801758, + 12.507999420166016 + ], + [ + 25.991437911987305, + 12.530094146728516 + ], + [ + 26.349498748779297, + 12.537249565124512 + ], + [ + 26.686813354492188, + 12.527780532836914 + ], + [ + 27.0, + 12.5 + ], + [ + 27.29987335205078, + 12.459311485290527 + ], + [ + 27.599000930786133, + 12.41200065612793 + ], + [ + 27.896625518798828, + 12.357687950134277 + ], + [ + 28.192001342773438, + 12.296000480651855 + ], + [ + 28.484375, + 12.2265625 + ], + [ + 28.772998809814453, + 12.148999214172363 + ], + [ + 29.057125091552734, + 12.06293773651123 + ], + [ + 29.336000442504883, + 11.968000411987305 + ], + [ + 29.608875274658203, + 11.863812446594238 + ], + [ + 29.875, + 11.75 + ], + [ + 30.133625030517578, + 11.626187324523926 + ], + [ + 30.384000778198242, + 11.492000579833984 + ], + [ + 30.62537384033203, + 11.347062110900879 + ], + [ + 30.85700035095215, + 11.190999984741211 + ], + [ + 31.078125, + 11.0234375 + ], + [ + 31.288000106811523, + 10.843999862670898 + ], + [ + 31.48587417602539, + 10.652313232421875 + ], + [ + 31.671001434326172, + 10.447999954223633 + ], + [ + 31.842626571655273, + 10.230688095092773 + ], + [ + 32.0, + 10.0 + ], + [ + 32.14143753051758, + 9.756280899047852 + ], + [ + 32.26649856567383, + 9.500249862670898 + ], + [ + 32.376312255859375, + 9.232094764709473 + ], + [ + 32.47200012207031, + 8.95199966430664 + ], + [ + 32.5546875, + 8.66015625 + ], + [ + 32.62550354003906, + 8.356749534606934 + ], + [ + 32.68556213378906, + 8.04196834564209 + ], + [ + 32.736000061035156, + 7.716000080108643 + ], + [ + 32.77793502807617, + 7.379031658172607 + ], + [ + 32.8125, + 7.03125 + ], + [ + 32.84081268310547, + 6.6728434562683105 + ], + [ + 32.8640022277832, + 6.303999423980713 + ], + [ + 32.8831901550293, + 5.9249067306518555 + ], + [ + 32.899497985839844, + 5.535750389099121 + ], + [ + 32.9140625, + 5.13671875 + ], + [ + 32.928001403808594, + 4.727999687194824 + ], + [ + 32.94243621826172, + 4.309781074523926 + ], + [ + 32.958499908447266, + 3.8822500705718994 + ], + [ + 32.97731018066406, + 3.445594072341919 + ], + [ + 33.0, + 3.0 + ], + [ + 33.028499603271484, + 2.530750036239624 + ], + [ + 33.0629997253418, + 2.0260000228881836 + ], + [ + 33.10200119018555, + 1.4902499914169312 + ], + [ + 33.14400100708008, + 0.9279998540878296 + ], + [ + 33.1875, + 0.34375 + ], + [ + 33.23099899291992, + -0.25800007581710815 + ], + [ + 33.27299880981445, + -0.872749924659729 + ], + [ + 33.31200408935547, + -1.4960001707077026 + ], + [ + 33.34649658203125, + -2.1232495307922363 + ], + [ + 33.375, + -2.75 + ], + [ + 33.39600372314453, + -3.3717503547668457 + ], + [ + 33.40800094604492, + -3.9840002059936523 + ], + [ + 33.40950012207031, + -4.582249641418457 + ], + [ + 33.39899826049805, + -5.161999702453613 + ], + [ + 33.375, + -5.71875 + ], + [ + 33.336002349853516, + -6.248000144958496 + ], + [ + 33.28050231933594, + -6.7452497482299805 + ], + [ + 33.207000732421875, + -7.205999374389648 + ], + [ + 33.11399841308594, + -7.625750541687012 + ], + [ + 33.0, + -8.0 + ], + [ + 32.8640022277832, + -8.335249900817871 + ], + [ + 32.707000732421875, + -8.641999244689941 + ], + [ + 32.53049850463867, + -8.92175006866455 + ], + [ + 32.33599853515625, + -9.175999641418457 + ], + [ + 32.125, + -9.40625 + ], + [ + 31.89900016784668, + -9.61400032043457 + ], + [ + 31.659500122070312, + -9.800749778747559 + ], + [ + 31.408000946044922, + -9.968000411987305 + ], + [ + 31.145999908447266, + -10.117249488830566 + ], + [ + 30.875, + -10.25 + ], + [ + 30.596500396728516, + -10.36775016784668 + ], + [ + 30.31199836730957, + -10.472001075744629 + ], + [ + 30.023000717163086, + -10.564249038696289 + ], + [ + 29.731000900268555, + -10.645999908447266 + ], + [ + 29.4375, + -10.71875 + ], + [ + 29.143999099731445, + -10.784000396728516 + ], + [ + 28.852001190185547, + -10.843250274658203 + ], + [ + 28.562999725341797, + -10.89799976348877 + ], + [ + 28.278499603271484, + -10.949749946594238 + ], + [ + 28.0, + -11.0 + ], + [ + 27.71781349182129, + -11.045000076293945 + ], + [ + 27.422500610351562, + -11.079999923706055 + ], + [ + 27.115938186645508, + -11.104999542236328 + ], + [ + 26.799999237060547, + -11.119999885559082 + ], + [ + 26.4765625, + -11.125 + ], + [ + 26.147499084472656, + -11.119999885559082 + ], + [ + 25.814687728881836, + -11.105000495910645 + ], + [ + 25.479999542236328, + -11.079999923706055 + ], + [ + 25.14531135559082, + -11.045000076293945 + ], + [ + 24.8125, + -11.0 + ], + [ + 24.48343849182129, + -10.944999694824219 + ], + [ + 24.160001754760742, + -10.880000114440918 + ], + [ + 23.84406089782715, + -10.804999351501465 + ], + [ + 23.537500381469727, + -10.720000267028809 + ], + [ + 23.2421875, + -10.625 + ], + [ + 22.96000099182129, + -10.520000457763672 + ], + [ + 22.692813873291016, + -10.405000686645508 + ], + [ + 22.4424991607666, + -10.279999732971191 + ], + [ + 22.2109375, + -10.144999504089355 + ], + [ + 22.0, + -10.0 + ], + [ + 21.80618667602539, + -9.841438293457031 + ], + [ + 21.624500274658203, + -9.666500091552734 + ], + [ + 21.454561233520508, + -9.476312637329102 + ], + [ + 21.296001434326172, + -9.27199935913086 + ], + [ + 21.1484375, + -9.0546875 + ], + [ + 21.011499404907227, + -8.82550048828125 + ], + [ + 20.88481330871582, + -8.585562705993652 + ], + [ + 20.76799964904785, + -8.335999488830566 + ], + [ + 20.660688400268555, + -8.077937126159668 + ], + [ + 20.5625, + -7.8125 + ], + [ + 20.47306251525879, + -7.540812969207764 + ], + [ + 20.392000198364258, + -7.2639994621276855 + ], + [ + 20.318937301635742, + -6.983187675476074 + ], + [ + 20.253501892089844, + -6.69950008392334 + ], + [ + 20.1953125, + -6.4140625 + ], + [ + 20.143999099731445, + -6.127999782562256 + ], + [ + 20.09918785095215, + -5.842436790466309 + ], + [ + 20.06049919128418, + -5.558500289916992 + ], + [ + 20.027563095092773, + -5.277312278747559 + ], + [ + 20.0, + -5.0 + ], + [ + 19.983501434326172, + -4.715437412261963 + ], + [ + 19.982999801635742, + -4.41349983215332 + ], + [ + 19.996999740600586, + -4.096812725067139 + ], + [ + 20.023998260498047, + -3.7680001258850098 + ], + [ + 20.0625, + -3.4296875 + ], + [ + 20.111000061035156, + -3.0844998359680176 + ], + [ + 20.167999267578125, + -2.735062599182129 + ], + [ + 20.231998443603516, + -2.383999824523926 + ], + [ + 20.30150032043457, + -2.033937692642212 + ], + [ + 20.375, + -1.6875 + ], + [ + 20.451000213623047, + -1.3473124504089355 + ], + [ + 20.52800178527832, + -1.0159997940063477 + ], + [ + 20.60449981689453, + -0.6961877346038818 + ], + [ + 20.678998947143555, + -0.39050018787384033 + ], + [ + 20.75, + -0.1015625 + ], + [ + 20.81599998474121, + 0.1680002212524414 + ], + [ + 20.875499725341797, + 0.41556262969970703 + ], + [ + 20.926998138427734, + 0.6384997367858887 + ], + [ + 20.9689998626709, + 0.8341872692108154 + ], + [ + 21.0, + 1.0 + ] + ], + "width": 1.25, + "kind": "gravel" + }, + { + "name": "Dining terrace to food garden", + "points": [ + [ + 15.0, + 3.5 + ], + [ + 15.06740665435791, + 3.537212371826172 + ], + [ + 15.144250869750977, + 3.583199977874756 + ], + [ + 15.229969024658203, + 3.6369874477386475 + ], + [ + 15.324000358581543, + 3.6976001262664795 + ], + [ + 15.42578125, + 3.7640624046325684 + ], + [ + 15.534749984741211, + 3.835400104522705 + ], + [ + 15.650343894958496, + 3.910637378692627 + ], + [ + 15.77199935913086, + 3.988800048828125 + ], + [ + 15.899155616760254, + 4.068912506103516 + ], + [ + 16.03125, + 4.150000095367432 + ], + [ + 16.1677188873291, + 4.231087684631348 + ], + [ + 16.307998657226562, + 4.311200141906738 + ], + [ + 16.45153045654297, + 4.389362335205078 + ], + [ + 16.597749710083008, + 4.464600086212158 + ], + [ + 16.74609375, + 4.535937786102295 + ], + [ + 16.895999908447266, + 4.602399826049805 + ], + [ + 17.046905517578125, + 4.663012504577637 + ], + [ + 17.19824981689453, + 4.716800212860107 + ], + [ + 17.349468231201172, + 4.762787818908691 + ], + [ + 17.5, + 4.800000190734863 + ], + [ + 17.656593322753906, + 4.829330921173096 + ], + [ + 17.82524871826172, + 4.852650165557861 + ], + [ + 18.004281997680664, + 4.870443820953369 + ], + [ + 18.192001342773438, + 4.883200168609619 + ], + [ + 18.38671875, + 4.891406059265137 + ], + [ + 18.586750030517578, + 4.89555025100708 + ], + [ + 18.790407180786133, + 4.896119117736816 + ], + [ + 18.996002197265625, + 4.8936004638671875 + ], + [ + 19.201845169067383, + 4.888481616973877 + ], + [ + 19.40625, + 4.881250381469727 + ], + [ + 19.60753059387207, + 4.87239408493042 + ], + [ + 19.803998947143555, + 4.862400054931641 + ], + [ + 19.993968963623047, + 4.851757049560547 + ], + [ + 20.175750732421875, + 4.840950012207031 + ], + [ + 20.34765625, + 4.830469131469727 + ], + [ + 20.507999420166016, + 4.820800304412842 + ], + [ + 20.655094146728516, + 4.812431812286377 + ], + [ + 20.78725242614746, + 4.805850982666016 + ], + [ + 20.902780532836914, + 4.801544666290283 + ], + [ + 21.0, + 4.800000190734863 + ] + ], + "width": 1.4, + "kind": "gravel" + }, + { + "name": "Kitchen garden harvest access", + "points": [ + [ + 28.799999237060547, + 4.800000190734863 + ], + [ + 28.857009887695312, + 4.780068874359131 + ], + [ + 28.927099227905273, + 4.760050296783447 + ], + [ + 29.00883674621582, + 4.7396063804626465 + ], + [ + 29.100799560546875, + 4.718400001525879 + ], + [ + 29.201560974121094, + 4.696094036102295 + ], + [ + 29.3096981048584, + 4.6723504066467285 + ], + [ + 29.423786163330078, + 4.646831512451172 + ], + [ + 29.54239845275879, + 4.619200229644775 + ], + [ + 29.664112091064453, + 4.5891194343566895 + ], + [ + 29.787498474121094, + 4.556250095367432 + ], + [ + 29.911134719848633, + 4.520256519317627 + ], + [ + 30.033597946166992, + 4.480800151824951 + ], + [ + 30.153459548950195, + 4.4375433921813965 + ], + [ + 30.26930046081543, + 4.39015007019043 + ], + [ + 30.379684448242188, + 4.338281631469727 + ], + [ + 30.483198165893555, + 4.281599998474121 + ], + [ + 30.578411102294922, + 4.21976900100708 + ], + [ + 30.663896560668945, + 4.1524505615234375 + ], + [ + 30.738235473632812, + 4.079306602478027 + ], + [ + 30.799999237060547, + 4.0 + ], + [ + 30.85179901123047, + 3.9103875160217285 + ], + [ + 30.89739990234375, + 3.8076000213623047 + ], + [ + 30.937101364135742, + 3.6932125091552734 + ], + [ + 30.97119903564453, + 3.5687999725341797 + ], + [ + 31.0, + 3.4359376430511475 + ], + [ + 31.0237979888916, + 3.2961997985839844 + ], + [ + 31.042898178100586, + 3.1511623859405518 + ], + [ + 31.057600021362305, + 3.0023999214172363 + ], + [ + 31.068199157714844, + 2.851487398147583 + ], + [ + 31.074996948242188, + 2.700000047683716 + ], + [ + 31.078298568725586, + 2.5495123863220215 + ], + [ + 31.078397750854492, + 2.401599884033203 + ], + [ + 31.075599670410156, + 2.2578375339508057 + ], + [ + 31.07019805908203, + 2.119799852371216 + ], + [ + 31.062498092651367, + 1.9890623092651367 + ], + [ + 31.052799224853516, + 1.8671998977661133 + ], + [ + 31.041397094726562, + 1.7557873725891113 + ], + [ + 31.028594970703125, + 1.6564000844955444 + ], + [ + 31.014698028564453, + 1.5706124305725098 + ], + [ + 31.0, + 1.5 + ], + [ + 30.981613159179688, + 1.4435937404632568 + ], + [ + 30.956899642944336, + 1.3987499475479126 + ], + [ + 30.926538467407227, + 1.3645312786102295 + ], + [ + 30.89120101928711, + 1.340000033378601 + ], + [ + 30.8515625, + 1.32421875 + ], + [ + 30.808300018310547, + 1.316249966621399 + ], + [ + 30.762088775634766, + 1.3151562213897705 + ], + [ + 30.71360206604004, + 1.3199999332427979 + ], + [ + 30.663511276245117, + 1.3298436403274536 + ], + [ + 30.612499237060547, + 1.34375 + ], + [ + 30.561237335205078, + 1.3607813119888306 + ], + [ + 30.510398864746094, + 1.380000114440918 + ], + [ + 30.460662841796875, + 1.4004687070846558 + ], + [ + 30.412700653076172, + 1.4212499856948853 + ], + [ + 30.3671875, + 1.44140625 + ], + [ + 30.324798583984375, + 1.4599997997283936 + ], + [ + 30.286212921142578, + 1.4760937690734863 + ], + [ + 30.252099990844727, + 1.4887499809265137 + ], + [ + 30.223134994506836, + 1.4970312118530273 + ], + [ + 30.200000762939453, + 1.5 + ] + ], + "width": 1.0, + "kind": "gravel" + }, + { + "name": "Arrival garden promenade", + "points": [ + [ + 3.200000047683716, + -13.800000190734863 + ], + [ + 3.267868757247925, + -13.711831092834473 + ], + [ + 3.350450038909912, + -13.612650871276855 + ], + [ + 3.4462063312530518, + -13.50294303894043 + ], + [ + 3.5535998344421387, + -13.383200645446777 + ], + [ + 3.671093702316284, + -13.25390625 + ], + [ + 3.797149896621704, + -13.115550994873047 + ], + [ + 3.9302308559417725, + -12.968619346618652 + ], + [ + 4.06879997253418, + -12.813600540161133 + ], + [ + 4.211318492889404, + -12.650981903076172 + ], + [ + 4.356249809265137, + -12.481250762939453 + ], + [ + 4.502056121826172, + -12.304893493652344 + ], + [ + 4.647200107574463, + -12.122400283813477 + ], + [ + 4.7901434898376465, + -11.934256553649902 + ], + [ + 4.929349899291992, + -11.740949630737305 + ], + [ + 5.063281059265137, + -11.54296875 + ], + [ + 5.190400123596191, + -11.340801239013672 + ], + [ + 5.309168815612793, + -11.134931564331055 + ], + [ + 5.4180498123168945, + -10.925849914550781 + ], + [ + 5.515506744384766, + -10.714044570922852 + ], + [ + 5.599999904632568, + -10.5 + ], + [ + 5.669793605804443, + -10.277631759643555 + ], + [ + 5.7253499031066895, + -10.041549682617188 + ], + [ + 5.768431186676025, + -9.793292999267578 + ], + [ + 5.80079984664917, + -9.534400939941406 + ], + [ + 5.82421875, + -9.266406059265137 + ], + [ + 5.840449810028076, + -8.990850448608398 + ], + [ + 5.851255893707275, + -8.709268569946289 + ], + [ + 5.858399868011475, + -8.423199653625488 + ], + [ + 5.863643646240234, + -8.134181022644043 + ], + [ + 5.868749618530273, + -7.843750476837158 + ], + [ + 5.875481128692627, + -7.553443908691406 + ], + [ + 5.885599613189697, + -7.264800071716309 + ], + [ + 5.900868892669678, + -6.97935676574707 + ], + [ + 5.9230499267578125, + -6.698649883270264 + ], + [ + 5.9539055824279785, + -6.424219131469727 + ], + [ + 5.995199203491211, + -6.157599925994873 + ], + [ + 6.048693656921387, + -5.900331497192383 + ], + [ + 6.116149425506592, + -5.6539506912231445 + ], + [ + 6.199330806732178, + -5.419994354248047 + ], + [ + 6.300000190734863, + -5.199999809265137 + ], + [ + 6.415769100189209, + -4.990955829620361 + ], + [ + 6.542649745941162, + -4.788649559020996 + ], + [ + 6.680006504058838, + -4.592818737030029 + ], + [ + 6.827199935913086, + -4.403200149536133 + ], + [ + 6.983593940734863, + -4.219531059265137 + ], + [ + 7.148550033569336, + -4.0415496826171875 + ], + [ + 7.321431636810303, + -3.8689935207366943 + ], + [ + 7.50160026550293, + -3.7015998363494873 + ], + [ + 7.688418865203857, + -3.5391061305999756 + ], + [ + 7.881250381469727, + -3.3812496662139893 + ], + [ + 8.07945728302002, + -3.2277684211730957 + ], + [ + 8.282401084899902, + -3.078399658203125 + ], + [ + 8.4894437789917, + -2.9328811168670654 + ], + [ + 8.699950218200684, + -2.790949583053589 + ], + [ + 8.913281440734863, + -2.652343273162842 + ], + [ + 9.128801345825195, + -2.5167994499206543 + ], + [ + 9.345869064331055, + -2.3840558528900146 + ], + [ + 9.563851356506348, + -2.253849506378174 + ], + [ + 9.78210735321045, + -2.12591814994812 + ], + [ + 10.0, + -2.0 + ], + [ + 10.226605415344238, + -1.8806687593460083 + ], + [ + 10.469850540161133, + -1.7718499898910522 + ], + [ + 10.727368354797363, + -1.6723062992095947 + ], + [ + 10.996800422668457, + -1.58079993724823 + ], + [ + 11.27578067779541, + -1.49609375 + ], + [ + 11.56195068359375, + -1.416949987411499 + ], + [ + 11.852943420410156, + -1.3421311378479004 + ], + [ + 12.14639949798584, + -1.270400047302246 + ], + [ + 12.439955711364746, + -1.2005187273025513 + ], + [ + 12.731249809265137, + -1.131250023841858 + ], + [ + 13.017918586730957, + -1.0613563060760498 + ], + [ + 13.297600746154785, + -0.9895999431610107 + ], + [ + 13.567930221557617, + -0.9147436618804932 + ], + [ + 13.826549530029297, + -0.8355499505996704 + ], + [ + 14.071093559265137, + -0.750781238079071 + ], + [ + 14.299199104309082, + -0.6592000722885132 + ], + [ + 14.508506774902344, + -0.5595687627792358 + ], + [ + 14.696650505065918, + -0.4506499767303467 + ], + [ + 14.86126708984375, + -0.33120620250701904 + ], + [ + 15.0, + -0.20000000298023224 + ], + [ + 15.112812995910645, + -0.05347499996423721 + ], + [ + 15.202499389648438, + 0.10970000177621841 + ], + [ + 15.270936965942383, + 0.28742504119873047 + ], + [ + 15.320000648498535, + 0.47760000824928284 + ], + [ + 15.3515625, + 0.6781250238418579 + ], + [ + 15.367500305175781, + 0.8869000673294067 + ], + [ + 15.3696870803833, + 1.1018249988555908 + ], + [ + 15.359999656677246, + 1.3207999467849731 + ], + [ + 15.340312957763672, + 1.5417249202728271 + ], + [ + 15.3125, + 1.7624999284744263 + ], + [ + 15.278437614440918, + 1.981024980545044 + ], + [ + 15.239999771118164, + 2.195199966430664 + ], + [ + 15.19906234741211, + 2.4029247760772705 + ], + [ + 15.157500267028809, + 2.602099895477295 + ], + [ + 15.1171875, + 2.7906248569488525 + ], + [ + 15.079999923706055, + 2.966399908065796 + ], + [ + 15.047812461853027, + 3.1273250579833984 + ], + [ + 15.022500991821289, + 3.2712998390197754 + ], + [ + 15.005937576293945, + 3.3962249755859375 + ], + [ + 15.0, + 3.5 + ] + ], + "width": 1.5, + "kind": "gravel" + }, + { + "name": "Training arrival link", + "points": [ + [ + -5.900000095367432, + -18.0 + ], + [ + -5.889499664306641, + -17.924482345581055 + ], + [ + -5.878000259399414, + -17.83835220336914 + ], + [ + -5.865499973297119, + -17.742244720458984 + ], + [ + -5.8520002365112305, + -17.636798858642578 + ], + [ + -5.837500095367432, + -17.522655487060547 + ], + [ + -5.822000026702881, + -17.400449752807617 + ], + [ + -5.805500030517578, + -17.27081871032715 + ], + [ + -5.788000106811523, + -17.1343994140625 + ], + [ + -5.769499778747559, + -16.991830825805664 + ], + [ + -5.75, + -16.84375 + ], + [ + -5.729499816894531, + -16.690792083740234 + ], + [ + -5.708000183105469, + -16.533599853515625 + ], + [ + -5.685499668121338, + -16.372806549072266 + ], + [ + -5.6620001792907715, + -16.20905113220215 + ], + [ + -5.637499809265137, + -16.042970657348633 + ], + [ + -5.612000465393066, + -15.875199317932129 + ], + [ + -5.585500240325928, + -15.706380844116211 + ], + [ + -5.558000564575195, + -15.537150382995605 + ], + [ + -5.529500484466553, + -15.368144035339355 + ], + [ + -5.5, + -15.199999809265137 + ], + [ + -5.472468376159668, + -15.026968955993652 + ], + [ + -5.449250221252441, + -14.84375 + ], + [ + -5.42940616607666, + -14.651656150817871 + ], + [ + -5.411999702453613, + -14.45199966430664 + ], + [ + -5.396093845367432, + -14.24609375 + ], + [ + -5.3807501792907715, + -14.035249710083008 + ], + [ + -5.3650312423706055, + -13.820781707763672 + ], + [ + -5.347999572753906, + -13.603999137878418 + ], + [ + -5.328718662261963, + -13.386219024658203 + ], + [ + -5.306249618530273, + -13.168749809265137 + ], + [ + -5.279656410217285, + -12.952905654907227 + ], + [ + -5.247999668121338, + -12.739998817443848 + ], + [ + -5.210343837738037, + -12.531343460083008 + ], + [ + -5.165749549865723, + -12.328248977661133 + ], + [ + -5.113280773162842, + -12.132030487060547 + ], + [ + -5.052000045776367, + -11.943998336791992 + ], + [ + -4.980968475341797, + -11.76546859741211 + ], + [ + -4.899250030517578, + -11.597748756408691 + ], + [ + -4.805906295776367, + -11.442155838012695 + ], + [ + -4.699999809265137, + -11.300000190734863 + ], + [ + -4.583874702453613, + -11.168237686157227 + ], + [ + -4.4604997634887695, + -11.042900085449219 + ], + [ + -4.329874515533447, + -10.92391300201416 + ], + [ + -4.191999912261963, + -10.811200141906738 + ], + [ + -4.046875, + -10.70468807220459 + ], + [ + -3.8944995403289795, + -10.604299545288086 + ], + [ + -3.734874963760376, + -10.509963035583496 + ], + [ + -3.5679996013641357, + -10.421600341796875 + ], + [ + -3.3938751220703125, + -10.33913803100586 + ], + [ + -3.2124998569488525, + -10.262500762939453 + ], + [ + -3.023874521255493, + -10.19161319732666 + ], + [ + -2.8279998302459717, + -10.1264009475708 + ], + [ + -2.6248745918273926, + -10.066786766052246 + ], + [ + -2.4144999980926514, + -10.012700080871582 + ], + [ + -2.1968746185302734, + -9.964062690734863 + ], + [ + -1.9719994068145752, + -9.92080020904541 + ], + [ + -1.7398747205734253, + -9.882837295532227 + ], + [ + -1.5004998445510864, + -9.850101470947266 + ], + [ + -1.2538745403289795, + -9.82251262664795 + ], + [ + -1.0, + -9.800000190734863 + ], + [ + -0.727593719959259, + -9.78619384765625 + ], + [ + -0.42775002121925354, + -9.784050941467285 + ], + [ + -0.1040312647819519, + -9.792481422424316 + ], + [ + 0.23999999463558197, + -9.81040096282959 + ], + [ + 0.6007811427116394, + -9.836718559265137 + ], + [ + 0.9747499227523804, + -9.870349884033203 + ], + [ + 1.3583436012268066, + -9.910205841064453 + ], + [ + 1.7480000257492065, + -9.9552001953125 + ], + [ + 2.1401560306549072, + -10.004242897033691 + ], + [ + 2.531249761581421, + -10.05625057220459 + ], + [ + 2.9177184104919434, + -10.11013126373291 + ], + [ + 3.2960000038146973, + -10.164800643920898 + ], + [ + 3.6625304222106934, + -10.219168663024902 + ], + [ + 4.013749599456787, + -10.272150993347168 + ], + [ + 4.34609317779541, + -10.322656631469727 + ], + [ + 4.656000137329102, + -10.369601249694824 + ], + [ + 4.939906120300293, + -10.411894798278809 + ], + [ + 5.194249629974365, + -10.44845199584961 + ], + [ + 5.415468215942383, + -10.478182792663574 + ], + [ + 5.599999904632568, + -10.5 + ] + ], + "width": 1.25, + "kind": "gravel" + }, + { + "name": "VEHICLE ACCESS - flowing 4m gravel driveway", + "points": [ + [ + 36.0, + -40.0 + ], + [ + 35.78049850463867, + -39.8067512512207 + ], + [ + 35.52399826049805, + -39.579002380371094 + ], + [ + 35.23350143432617, + -39.31974792480469 + ], + [ + 34.91200256347656, + -39.03200149536133 + ], + [ + 34.5625, + -38.71875 + ], + [ + 34.1879997253418, + -38.38300323486328 + ], + [ + 33.791500091552734, + -38.02775192260742 + ], + [ + 33.37600326538086, + -37.65599822998047 + ], + [ + 32.94449996948242, + -37.270748138427734 + ], + [ + 32.5, + -36.875 + ], + [ + 32.04549789428711, + -36.47175216674805 + ], + [ + 31.58399772644043, + -36.06399917602539 + ], + [ + 31.118501663208008, + -35.654747009277344 + ], + [ + 30.652000427246094, + -35.24700164794922 + ], + [ + 30.1875, + -34.84375 + ], + [ + 29.727998733520508, + -34.448001861572266 + ], + [ + 29.27649688720703, + -34.06275177001953 + ], + [ + 28.836002349853516, + -33.69099807739258 + ], + [ + 28.409502029418945, + -33.335750579833984 + ], + [ + 28.0, + -33.0 + ], + [ + 27.59429931640625, + -32.67625045776367 + ], + [ + 27.17840003967285, + -32.35499954223633 + ], + [ + 26.754098892211914, + -32.036251068115234 + ], + [ + 26.323198318481445, + -31.720001220703125 + ], + [ + 25.887500762939453, + -31.40625 + ], + [ + 25.448801040649414, + -31.094999313354492 + ], + [ + 25.008899688720703, + -30.786251068115234 + ], + [ + 24.569599151611328, + -30.479999542236328 + ], + [ + 24.132699966430664, + -30.176250457763672 + ], + [ + 23.69999885559082, + -29.875 + ], + [ + 23.273300170898438, + -29.576250076293945 + ], + [ + 22.854400634765625, + -29.280000686645508 + ], + [ + 22.445098876953125, + -28.986249923706055 + ], + [ + 22.047199249267578, + -28.69500160217285 + ], + [ + 21.662498474121094, + -28.40625 + ], + [ + 21.292800903320312, + -28.119998931884766 + ], + [ + 20.93990135192871, + -27.83625030517578 + ], + [ + 20.60559844970703, + -27.55500030517578 + ], + [ + 20.29170036315918, + -27.2762508392334 + ], + [ + 20.0, + -27.0 + ], + [ + 19.728849411010742, + -26.72862434387207 + ], + [ + 19.47480010986328, + -26.464000701904297 + ], + [ + 19.236949920654297, + -26.20537567138672 + ], + [ + 19.0143985748291, + -25.95199966430664 + ], + [ + 18.806251525878906, + -25.703125 + ], + [ + 18.61159896850586, + -25.45800018310547 + ], + [ + 18.429548263549805, + -25.21587562561035 + ], + [ + 18.259201049804688, + -24.97599983215332 + ], + [ + 18.09964942932129, + -24.73762321472168 + ], + [ + 17.950000762939453, + -24.5 + ], + [ + 17.809349060058594, + -24.26237678527832 + ], + [ + 17.676799774169922, + -24.024002075195312 + ], + [ + 17.551450729370117, + -23.78412437438965 + ], + [ + 17.43239974975586, + -23.54199981689453 + ], + [ + 17.318748474121094, + -23.296875 + ], + [ + 17.2096004486084, + -23.048002243041992 + ], + [ + 17.104049682617188, + -22.794626235961914 + ], + [ + 17.001197814941406, + -22.535999298095703 + ], + [ + 16.900150299072266, + -22.27137565612793 + ], + [ + 16.799999237060547, + -22.0 + ], + [ + 16.70964813232422, + -21.719831466674805 + ], + [ + 16.63719940185547, + -21.430150985717773 + ], + [ + 16.580549240112305, + -21.13219451904297 + ], + [ + 16.537599563598633, + -20.827199935913086 + ], + [ + 16.506248474121094, + -20.516407012939453 + ], + [ + 16.484399795532227, + -20.2010498046875 + ], + [ + 16.469947814941406, + -19.882369995117188 + ], + [ + 16.460800170898438, + -19.561599731445312 + ], + [ + 16.454849243164062, + -19.239980697631836 + ], + [ + 16.44999885559082, + -18.91874885559082 + ], + [ + 16.444149017333984, + -18.599143981933594 + ], + [ + 16.435197830200195, + -18.282400131225586 + ], + [ + 16.421049118041992, + -17.969755172729492 + ], + [ + 16.399599075317383, + -17.662450790405273 + ], + [ + 16.368749618530273, + -17.361719131469727 + ], + [ + 16.326396942138672, + -17.068801879882812 + ], + [ + 16.270448684692383, + -16.784931182861328 + ], + [ + 16.19879722595215, + -16.511348724365234 + ], + [ + 16.109350204467773, + -16.249292373657227 + ], + [ + 16.0, + -16.0 + ], + [ + 15.8745756149292, + -15.758712768554688 + ], + [ + 15.73859977722168, + -15.520200729370117 + ], + [ + 15.592524528503418, + -15.284987449645996 + ], + [ + 15.436800003051758, + -15.05359935760498 + ], + [ + 15.27187442779541, + -14.826562881469727 + ], + [ + 15.098199844360352, + -14.604399681091309 + ], + [ + 14.91622543334961, + -14.3876371383667 + ], + [ + 14.726399421691895, + -14.176800727844238 + ], + [ + 14.5291748046875, + -13.972413063049316 + ], + [ + 14.324999809265137, + -13.774999618530273 + ], + [ + 14.114324569702148, + -13.585088729858398 + ], + [ + 13.897600173950195, + -13.403200149536133 + ], + [ + 13.675274848937988, + -13.229862213134766 + ], + [ + 13.447800636291504, + -13.06559944152832 + ], + [ + 13.215625762939453, + -12.910937309265137 + ], + [ + 12.979199409484863, + -12.766399383544922 + ], + [ + 12.738974571228027, + -12.632512092590332 + ], + [ + 12.495399475097656, + -12.50979995727539 + ], + [ + 12.24892520904541, + -12.398786544799805 + ], + [ + 12.0, + -12.300000190734863 + ], + [ + 11.745124816894531, + -12.216519355773926 + ], + [ + 11.480999946594238, + -12.15014934539795 + ], + [ + 11.208374977111816, + -12.099506378173828 + ], + [ + 10.928000450134277, + -12.063199996948242 + ], + [ + 10.640625, + -12.039844512939453 + ], + [ + 10.347000122070312, + -12.028050422668457 + ], + [ + 10.04787540435791, + -12.0264310836792 + ], + [ + 9.744000434875488, + -12.033600807189941 + ], + [ + 9.436124801635742, + -12.04817008972168 + ], + [ + 9.125, + -12.068750381469727 + ], + [ + 8.811375617980957, + -12.09395694732666 + ], + [ + 8.495999336242676, + -12.122401237487793 + ], + [ + 8.179625511169434, + -12.152692794799805 + ], + [ + 7.86299991607666, + -12.183449745178223 + ], + [ + 7.546875, + -12.213281631469727 + ], + [ + 7.23199987411499, + -12.240800857543945 + ], + [ + 6.919124603271484, + -12.264618873596191 + ], + [ + 6.609000205993652, + -12.283349990844727 + ], + [ + 6.302375316619873, + -12.295607566833496 + ], + [ + 6.0, + -12.300000190734863 + ], + [ + 5.692874431610107, + -12.300000190734863 + ], + [ + 5.372999668121338, + -12.300000190734863 + ], + [ + 5.0426249504089355, + -12.300000190734863 + ], + [ + 4.704000473022461, + -12.300000190734863 + ], + [ + 4.359375, + -12.300000190734863 + ], + [ + 4.01099967956543, + -12.300000190734863 + ], + [ + 3.6611249446868896, + -12.300000190734863 + ], + [ + 3.311999797821045, + -12.300000190734863 + ], + [ + 2.9658751487731934, + -12.300000190734863 + ], + [ + 2.625, + -12.300000190734863 + ], + [ + 2.2916247844696045, + -12.300000190734863 + ], + [ + 1.9679999351501465, + -12.300000190734863 + ], + [ + 1.6563751697540283, + -12.300000190734863 + ], + [ + 1.3590002059936523, + -12.300000190734863 + ], + [ + 1.078125, + -12.300000190734863 + ], + [ + 0.8159998655319214, + -12.300000190734863 + ], + [ + 0.5748746395111084, + -12.300000190734863 + ], + [ + 0.35700035095214844, + -12.300000190734863 + ], + [ + 0.1646251678466797, + -12.300000190734863 + ], + [ + 0.0, + -12.300000190734863 + ] + ], + "width": 4, + "kind": "gravel" + } + ], + "beds": [ + { + "name": "West veranda flower border", + "center": [ + -3.9, + 6.2 + ], + "radii": [ + 2.25, + 0.52 + ] + }, + { + "name": "West oval court flower crescent", + "center": [ + -4.2, + 14.1 + ], + "radii": [ + 2.1, + 1.12 + ] + }, + { + "name": "West axial future garden", + "center": [ + -3.9, + 20.9 + ], + "radii": [ + 1.35, + 0.7 + ] + }, + { + "name": "East veranda flower border", + "center": [ + 3.9, + 6.2 + ], + "radii": [ + 2.25, + 0.52 + ] + }, + { + "name": "East oval court flower crescent", + "center": [ + 4.2, + 14.1 + ], + "radii": [ + 2.1, + 1.12 + ] + }, + { + "name": "East axial future garden", + "center": [ + 3.9, + 20.9 + ], + "radii": [ + 1.35, + 0.7 + ] + }, + { + "name": "FORMER PLAY AREA - flowering kitchen garden", + "center": [ + 10.9, + -6.8 + ], + "radii": [ + 3.1, + 2.7 + ] + }, + { + "name": "Dining garden soft edge", + "center": [ + 16, + 7.3 + ], + "radii": [ + 2.3, + 1.0 + ] + }, + { + "name": "Sauna aromatic flower garden", + "center": [ + -18.8, + 4.8 + ], + "radii": [ + 1.3, + 1.55 + ] + }, + { + "name": "Quiet room west native garden", + "center": [ + -15.8, + 12.0 + ], + "radii": [ + 1.0, + 2.0 + ] + }, + { + "name": "Arrival flowering island", + "center": [ + 2.1, + -7.1 + ], + "radii": [ + 2.1, + 1.05 + ] + }, + { + "name": "Food garden pollinator border", + "center": [ + 29.8, + 6.7 + ], + "radii": [ + 2.1, + 0.6 + ] + }, + { + "name": "Quiet bench flower garden", + "center": [ + 30, + 13.9 + ], + "radii": [ + 2.1, + 0.8 + ] + } + ], + "table_tennis": false, + "future_basketball": [ + 13, + -36, + 10, + 10 + ], + "water_container": [ + -25, + -8, + 6.06, + 2.44, + 2.59 + ], + "buddha": [ + -12.4, + 15.35, + -0.28763878087193495 + ], + "buddha_facing": "east" +} \ No newline at end of file diff --git a/blender/buddha-garden-verification.json b/blender/buddha-garden-verification.json new file mode 100644 index 0000000..8424407 --- /dev/null +++ b/blender/buddha-garden-verification.json @@ -0,0 +1,16 @@ +{ + "buddha_collection_objects": 281, + "viewport_proxy": true, + "tour_chapters": 31, + "caption_issues": [], + "path_clearance_m": 0.165, + "statue_outside_room": true, + "internal_water_tanks": 2, + "kitchen_preserved": true, + "no_table_tennis": true, + "render_size": [ + 2560, + 1440, + 100 + ] +} \ No newline at end of file diff --git a/blender/samford-solarpunk-buddha-garden-tour.blend b/blender/samford-solarpunk-buddha-garden-tour.blend new file mode 100644 index 0000000..1f85bbe Binary files /dev/null and b/blender/samford-solarpunk-buddha-garden-tour.blend differ diff --git a/blender/tour-chapters-buddha-garden.json b/blender/tour-chapters-buddha-garden.json new file mode 100644 index 0000000..674bfe0 --- /dev/null +++ b/blender/tour-chapters-buddha-garden.json @@ -0,0 +1,188 @@ +[ + { + "title": "01 / ONE CONNECTED GARDEN HOMESTEAD", + "start": 1, + "end": 120, + "seconds": 5 + }, + { + "title": "02 / LIVING PAVILION & VERANDA", + "start": 121, + "end": 240, + "seconds": 5 + }, + { + "title": "03 / KITCHEN & EXPOSED STRUCTURE", + "start": 241, + "end": 360, + "seconds": 5 + }, + { + "title": "04 / DINING & OPEN LIVING", + "start": 361, + "end": 480, + "seconds": 5 + }, + { + "title": "05 / ONE SERVER - LOCAL AI", + "start": 481, + "end": 600, + "seconds": 5 + }, + { + "title": "06 / SHORT CORRIDOR TO PRIVATE ROOMS", + "start": 601, + "end": 720, + "seconds": 5 + }, + { + "title": "07 / ADJACENT BEDROOM WING", + "start": 721, + "end": 840, + "seconds": 5 + }, + { + "title": "08 / ENCLOSED BEDROOM", + "start": 841, + "end": 960, + "seconds": 5 + }, + { + "title": "09 / BATHROOM - SEPARATE LOBBY DOOR", + "start": 961, + "end": 1080, + "seconds": 5 + }, + { + "title": "10 / FINNISH SAUNA & OUTDOOR SHOWER", + "start": 1081, + "end": 1200, + "seconds": 5 + }, + { + "title": "11 / SAUNA BENCHES & STONE HEATER", + "start": 1201, + "end": 1320, + "seconds": 5 + }, + { + "title": "12 / OUTDOOR SHOWER", + "start": 1321, + "end": 1440, + "seconds": 5 + }, + { + "title": "13 / CONTAINER RAINWATER STORAGE", + "start": 1441, + "end": 1560, + "seconds": 5 + }, + { + "title": "14 / ROOFTOP SOLAR & STARLINK", + "start": 1561, + "end": 1680, + "seconds": 5 + }, + { + "title": "15 / SOLAR ARRAY & ENERGY STORAGE", + "start": 1681, + "end": 1800, + "seconds": 5 + }, + { + "title": "16 / FOOD GARDEN & GREENHOUSE", + "start": 1801, + "end": 1920, + "seconds": 5 + }, + { + "title": "17 / INSIDE THE GREENHOUSE", + "start": 1921, + "end": 2040, + "seconds": 5 + }, + { + "title": "18 / QUIET MEDITATION ROOM", + "start": 2041, + "end": 2160, + "seconds": 5 + }, + { + "title": "19 / CUSHION, CANDLES & STILLNESS", + "start": 2161, + "end": 2280, + "seconds": 5 + }, + { + "title": "20 / GRAVEL ROAD & GARAGE", + "start": 2281, + "end": 2400, + "seconds": 5 + }, + { + "title": "21 / TESLA, SOLAR CHARGING & WORKSHOP", + "start": 2401, + "end": 2520, + "seconds": 5 + }, + { + "title": "22 / BALANCED FUTURE PAVILIONS", + "start": 2521, + "end": 2640, + "seconds": 5 + }, + { + "title": "23 / RECTANGLES AND GARDEN CURVES", + "start": 2641, + "end": 2760, + "seconds": 5 + }, + { + "title": "24 / BOOKS & A QUIET READING CORNER", + "start": 2761, + "end": 2880, + "seconds": 5 + }, + { + "title": "25 / TRAINING & STRENGTH", + "start": 2881, + "end": 3000, + "seconds": 5 + }, + { + "title": "26 / OUTDOOR TABLE & MATCHA", + "start": 3001, + "end": 3120, + "seconds": 5 + }, + { + "title": "27 / FLOWERING GARDEN - ROOM TO BREATHE", + "start": 3121, + "end": 3240, + "seconds": 5 + }, + { + "title": "28 / FLOWING WALKS AND GARDEN COURT", + "start": 3241, + "end": 3360, + "seconds": 5 + }, + { + "title": "29 / EASY EVERYDAY FOOD", + "start": 3361, + "end": 3480, + "seconds": 5 + }, + { + "title": "30 / COPPER & MARBLE KITCHEN", + "start": 3481, + "end": 3600, + "seconds": 5 + }, + { + "title": "31 / QUIET GARDEN BUDDHA", + "start": 3601, + "end": 3720, + "seconds": 5 + } +] \ No newline at end of file diff --git a/decisions/2026-09-10-v006-buddha-garden.md b/decisions/2026-09-10-v006-buddha-garden.md new file mode 100644 index 0000000..2e78fcc --- /dev/null +++ b/decisions/2026-09-10-v006-buddha-garden.md @@ -0,0 +1,5 @@ +# Garden Buddha + +Added a seated weathered-limestone Buddha on a low stone plinth north of the meditation pavilion, facing east into the shared garden court. The statue has a draped robe, folded hands, lowered eyes, elongated earlobes and a carved topknot. Position (-12.4, 15.35), clear of both the room and curved walking route. Added a lightweight viewport proxy and chapter 31 to the Play tour (2 min 35 sec total). The scene opens on the statue. Existing house, container water module, future shadows and landscaping remain intact. + +Verified the saved Blender file, all 31 captions, full 2560 × 1440 render settings, path clearance and retained kitchen/container features. Inspected a Cycles preview of the finished sculpture. diff --git a/docs/PROJECT-CONTEXT.md b/docs/PROJECT-CONTEXT.md index c8af07f..04a6f01 100644 --- a/docs/PROJECT-CONTEXT.md +++ b/docs/PROJECT-CONTEXT.md @@ -2,11 +2,11 @@ This is Marcus Rehbock's long-term personal homestead design project. The aim is to refine the design over several years, choose a real site, add survey and LiDAR information, coordinate construction plans, and eventually create a full Unreal Engine 5 walkthrough. The design is a working concept, not an approved or engineered building proposal. -## Current state: version 005, 10 September 2026 +## Current state: version 006, 10 September 2026 -Open `blender/samford-solarpunk-container-water-tour.blend` in Blender 5.2.1. This is the current model. It includes the detailed kitchen and bedroom upgrades, a garden-centred arrangement, 13 flowering beds, and a 30-chapter camera tour lasting 2 minutes 30 seconds at 24 fps. The former table-tennis platform and its equipment have been removed. Earlier dated scene files are historical versions. +Open `blender/samford-solarpunk-buddha-garden-tour.blend` in Blender 5.2.1. This is the current model. It includes the detailed kitchen and bedroom upgrades, a garden-centred arrangement, 13 flowering beds, and a 31-chapter camera tour lasting 2 minutes 35 seconds at 24 fps. The former table-tennis platform and its equipment have been removed. Earlier dated scene files are historical versions. -The latest plan is `plans/concept/container-water-plan.svg`. It is generated from the same `container-water-layout.json` coordinates used by the Blender revision. Latest images are `renders/container-water-overview.png`, `container-water.png` and `container-water-cutaway.png`. The preceding garden revision also has courtyard, planting, dining and training detail renders. +The latest plan is `plans/concept/buddha-garden-plan.svg`. It is generated from the same `buddha-garden-layout.json` coordinates used by the Blender revision. The Buddha close-up is `renders/buddha-garden.png`. Other current images are `renders/container-water-overview.png`, `container-water.png` and `container-water-cutaway.png`. The preceding garden revision also has courtyard, planting, dining and training detail renders. ## Philosophy and values @@ -64,7 +64,7 @@ Keep rooftop solar, a separate ground array (current conceptual footprint centre Blender has full editable geometry and Cycles materials. Saved render settings are 2560 × 1440 at 100%; web preview renders are made at 60% (1536 × 864). The user previously reported low playback FPS. `00 FAST TOUR - lightweight viewport` is a static simplified display; `DETAIL - full geometry for renders` is disabled only in the viewport. Cycles renders exclude FAST and use DETAIL automatically. For detailed editing, enable DETAIL and disable FAST. After moving or removing geometry, refresh the affected fast copies as well. -The tour contains 30 five-second chapters. Space plays/pauses with the pointer over the 3D view; Shift+Left Arrow returns to frame 1. The current scene opens at chapter 13, container rainwater storage. Update camera positions and captions whenever a subject moves. +The tour contains 31 five-second chapters. Space plays/pauses with the pointer over the 3D view; Shift+Left Arrow returns to frame 1. The current scene opens at chapter 31, the garden Buddha. Update camera positions and captions whenever a subject moves. The **actual Unreal work covers only the meditation room**. `unreal/SamfordMeditation/SamfordMeditation.uproject` is the UE 5.8.2 project, with room geometry, materials, light and camera. It is not a complete Unreal homestead. FBX/GLB exports and textures are retained. Camera animation instructions are in `walkthroughs/UNREAL-CAMERA-ANIMATION.md`. A complete interactive home/site walkthrough remains future work. @@ -79,3 +79,7 @@ Read `REQUEST-HISTORY.md`, the decisions folder and `AGENTS.md` before making fu ## Version 005 water module Marcus requested that the water tanks become a shipping container. The visible module is a roughly 20-foot corrugated-steel container at (-25, -8), 6.06 × 2.44 × 2.59 m. Two separate sealed tanks fit inside; the steel shell is an enclosure, not the water-retaining vessel. The cargo doors are at the east end and the west end is a transparent inspection cutaway. Plumbing is kept off the door faces, and the service path approaches the east end. Current renders: container-water.png, container-water-overview.png and container-water-cutaway.png. Exact tank products/capacities, water quality treatment, hydraulic sizing and container support design are not resolved by the concept model. + +## Garden Buddha — version 006, 10 September 2026 + +Added a seated weathered-limestone Buddha on a low stone plinth north of the meditation pavilion, facing east into the shared garden court. The statue has a draped robe, folded hands, lowered eyes, elongated earlobes and a carved topknot. Position (-12.4, 15.35), clear of both the room and curved walking route. Added a lightweight viewport proxy and chapter 31 to the Play tour (2 min 35 sec total). The scene opens on the statue. Existing house, container water module, future shadows and landscaping remain intact. diff --git a/docs/REQUEST-HISTORY.md b/docs/REQUEST-HISTORY.md index a0c4a8a..3617e15 100644 --- a/docs/REQUEST-HISTORY.md +++ b/docs/REQUEST-HISTORY.md @@ -44,3 +44,7 @@ Marcus explicitly authorised making the repository public: “You can make it pu ## Version 005 request Marcus asked: “Can you make my water tanks a shipping container?” Implemented as a container-style enclosure with two separate sealed tanks inside, with updated plumbing, service access, plan, camera chapter and rendered views. + +## Version 006 request + +Marcus asked: “Ok nice, can you also put a statue of hte buddha somewhere and open in blender”. Added a seated weathered-limestone Buddha on a low stone plinth north of the meditation pavilion, facing east into the shared garden court. The statue has a draped robe, folded hands, lowered eyes, elongated earlobes and a carved topknot. Position (-12.4, 15.35), clear of both the room and curved walking route. Added a lightweight viewport proxy and chapter 31 to the Play tour (2 min 35 sec total). The scene opens on the statue. Existing house, container water module, future shadows and landscaping remain intact. diff --git a/plans/concept/buddha-garden-plan.svg b/plans/concept/buddha-garden-plan.svg new file mode 100644 index 0000000..00578bb --- /dev/null +++ b/plans/concept/buddha-garden-plan.svg @@ -0,0 +1 @@ +A home held together by its garden.SAMFORD VALLEY / Aligned pavilions, soft garden curves and room to grow · Concept 006VERANDAMAIN HOUSEKitchen · diningLiving / readingPARENTSBedroom + bathMEDITATIONROOMFUTUREPAVILION 1FUTUREPAVILION 2SHAREDGARDEN COURTONE CENTRAL AXISCurved coveredtimber breezewayTABLE FOR TENTea + matchaGARAGEWorkshopBikesTRAININGBar + ringsWeights + matsGROUND SOLARAligned garage, training and energy zoneSAUNAOutdoor showerCONTAINER WATER2 enclosed tanksGREENHOUSEFOOD GARDENHarvest benchQuiet benchFLOWERGARDENFUTUREBASKETBALLUnbuilt reserve4 m gravel accessN10 metres13 planted garden beds · Smooth pedestrian routes · Future pavilions remain shadows · Table-tennis deck removedConcept only: illustrative terrain, no surveyed boundary. Plant forms and structural connections require site-specific design development.Buddha \ No newline at end of file diff --git a/renders/buddha-garden.png b/renders/buddha-garden.png new file mode 100644 index 0000000..46ce505 Binary files /dev/null and b/renders/buddha-garden.png differ diff --git a/repository-files-sha256.json b/repository-files-sha256.json index cb3b8b1..1a9840d 100644 --- a/repository-files-sha256.json +++ b/repository-files-sha256.json @@ -1,11 +1,13 @@ { - "milestone": "2026-09-10-v005-container-water", + "milestone": "2026-09-10-v006-buddha-garden", "files": { ".gitattributes": "d4f9cc15aed223cff7a906452370117fc93992272828cb1efbdd94c61422ad19", ".gitignore": "d38c3a1d58416906185c4c7695ea24f9401be3b610fcce0e624f41dff9fe1675", - "AGENTS.md": "b4c5ed43cf84a524961fa81babcd3f83a33506edf0b3cb1f9abd56afc9dcf933", - "README.md": "7ae06d8f50612a0a50249be16be4f636846763ffc9b8aa15ed703aa3248153bf", + "AGENTS.md": "8dbbdcbbddb316d81e86d2a7ea65e35d8ab1283a79734d6ef747d96e04af1cac", + "README.md": "977bd1623e2ebc4884c66a9a3b134c2621d6fc88ecaf94333f849adefa9456d1", "blender/bedroom-sleep-checks.json": "4f28426b4c23e55c956a4c5bc94947706da63e35de455cfaedd8e90e330f1114", + "blender/buddha-garden-layout.json": "c24aabd04146d6e30c6d855ca43dc668881e65df2e2aab4af5b15668337bfe50", + "blender/buddha-garden-verification.json": "f030aa32bf883cd85d2c820846d78ad84e3ff0a6f8623878a6e0bda641712fcd", "blender/container-water-checks.json": "59f1a2c3cdf921de280cb8931e26511c6502fb3618b9bad10021619863c0ae37", "blender/container-water-layout.json": "d13666a791378cf826b56d69f2dc48cbbdf33ac0db339b944f69c45b8dcb7c50", "blender/container-water-verification.json": "04aa76751f9310ffb2bfda90742e5907bcb09d2159003d837fbbaf7b439344e9", @@ -17,6 +19,7 @@ "blender/garden-flow-verification.json": "7f35c643afbc61152eb211a6c34a29b4edb98aefa261426ed0d5e99e9f296c70", "blender/reading-corner-checks.json": "e6cf3b9b895888b4c20c95a9612070064067100d881da7e26b4d5f69bf4db50a", "blender/samford-solarpunk-bedroom-tour.blend": "5c967f65d9e3f680bcf9e1da3f2d3d82bd4ab313fe030c0b0a284c2aca5d58b7", + "blender/samford-solarpunk-buddha-garden-tour.blend": "ac72bd7588c1802cd5029b93eab456c80887de3d4020ffd628b9074e6bb456a3", "blender/samford-solarpunk-container-water-tour.blend": "bbf12b85e7d5373bbebfba7eeb30f5fc2a5fc06a339f314676c74d2ceea1dd33", "blender/samford-solarpunk-daily-life-tour.blend": "445db0cc7b4647dd45ae899632e3de5a2aaf1bfabdc2aa8ffc77d11c6a70ad74", "blender/samford-solarpunk-garden-flow-tour.blend": "b2bf1e7556f75b3ad3d96dbf340feac0fecfaf0865fcbeb838b1c417bb62ae2b", @@ -25,6 +28,7 @@ "blender/scripts/create_site_plan.py": "7e7c566e960e37b5a8225157750ba11c06afe72d86fdceea7d73b2e6e0b03a24", "blender/scripts/enhance_kitchen.py": "2ac50b24427210f00f6bd4ba492ddaffef22ee3835c20f3ec72d41b97081f1f3", "blender/scripts/verify_daily_life.py": "7241568d786cd9d78fad97af24b14fd487cad1357bfac19fc1c800cbafeef8fb", + "blender/tour-chapters-buddha-garden.json": "f695157b58947bc494bddc4689365f784c8d825e8e263ed89dbfd7877c06d3aa", "blender/tour-chapters-container-water.json": "acd9bfcb805fa6bc22a8521e5c0d3fe06bd32b1f947dbff0cd43b521568fcef5", "blender/tour-chapters-daily-life.json": "d6eb5ff0406a5e3b54fd088ef3e050f876a0b922c2b94350770900bca3d6a587", "blender/tour-chapters-garden-flow.json": "7a6807925630812188acad57afab5c46671b0d0c4fe6c8b90763f5f80353cea6", @@ -35,15 +39,18 @@ "decisions/2026-09-10-v003-daily-life-kitchen.md": "396ad405df9e7c10d1c71753ecc76cc9889c661e352533d601c666213f065c98", "decisions/2026-09-10-v004-garden-flow.md": "55ed1e2e222941a9ab9dde5d0d18f6f979528d15e0e3fe988a340744f459b9bc", "decisions/2026-09-10-v005-container-water.md": "5fc937e7231a6b3d1856a0f7db2a998c81e4b51afb31fa4222a8d3e931de53fc", - "docs/PROJECT-CONTEXT.md": "c283ab1c20e78cec8cfdd27998505fd1db5b4c9e5c859cc07dad6a7a8a963324", - "docs/REQUEST-HISTORY.md": "1c2797c29a437091a359e199343c7f9bbeb7c039b00736097769aedc93dccb58", + "decisions/2026-09-10-v006-buddha-garden.md": "aa14fcca78e225563b19ed4a98e335b2f465ed27e12904665c3c654de77b950c", + "docs/PROJECT-CONTEXT.md": "80b4ae47ac54712241070f53ed80d5f96ecc78a7fa4e18fc806d64724afe5020", + "docs/REQUEST-HISTORY.md": "f5e4bf3f1194efdac3390f4822ab8ebf2cb7f6743b25358de780c11993b82b42", "plans/architectural/.gitkeep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "plans/concept/buddha-garden-plan.svg": "62f622647732bf9556e7d351c06c9dc8576f68e8e0044f91232401972e43e466", "plans/concept/container-water-plan.svg": "5cf52ea84ae8e222f64881b46807ca869728845c9e1a5b5c80ecfdbfbc3d5fe3", "plans/concept/garden-flow-plan.svg": "95c7309d44143ebb3f11a7e0f6b4cee8b076c17a423ab14c8288f450b54ae4db", "plans/concept/retreat-garage-plan.svg": "225985399ed62625b0280ef9e6a802e276e3c6aad6c35e47c744628868c8022e", "plans/engineering/.gitkeep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "references/UNREAL-PROJECT-SCOPE.md": "9727e4447a772756fae2456465f4677d63772858d3433e68c901adbd3a2a5632", "renders/bedroom-sleep-setup.png": "5e12a5303615695093b61ef70111ee3d75c41ebe119c9efe0645f70725fbb707", + "renders/buddha-garden.png": "8b6f6658e17aac9f681191be2d02a1acb9387b0f94695489250d8ebf05acdb63", "renders/container-water-cutaway.png": "720e0d03c6839e54b181edfe63515d0e11179d9f2767ea3ac41f3b1ebaafa447", "renders/container-water-overview.png": "5c03c9e7d447a4847b227be4e76ce5fc03328b6635b840e5927f3404805d9323", "renders/container-water.png": "279e52861b2557e79eeaed6dbbe5f96e4d81aaa273494bd4b6a6f6903a405c8f", @@ -76,6 +83,7 @@ "source/samford-retreat-garage/README.md": "ea463e21ea71158e75a17eea6ee0c4e666663ef18dd58ae74d64c2b09f201a0f", "source/samford-retreat-garage/UNREAL-PROJECT-SCOPE.md": "9727e4447a772756fae2456465f4677d63772858d3433e68c901adbd3a2a5632", "source/samford-retreat-garage/add_daily_life.py": "701f246fe963124b04ef86512ff1465dd51bec335ca0059d6b966b653563be47", + "source/samford-retreat-garage/add_garden_buddha.py": "6606a677bf529565fd3fa206bcd48657bb4a25982d2f5a6b63f0c4935f1a99ff", "source/samford-retreat-garage/add_reading_corner.py": "95a5223670ae53343f6fe7e435c0955dcb0c7d05dea3804b2b3cca356c02feb9", "source/samford-retreat-garage/bedroom-sleep-checks.json": "4f28426b4c23e55c956a4c5bc94947706da63e35de455cfaedd8e90e330f1114", "source/samford-retreat-garage/bedroom_sleep_setup.py": "584ea23c5fc9e7b1651025776d25c9ba18fe4b8482a539f9e84cde397cdc2e08", @@ -103,6 +111,7 @@ "source/samford-retreat-garage/tour-chapters-garden-flow.json": "7a6807925630812188acad57afab5c46671b0d0c4fe6c8b90763f5f80353cea6", "source/samford-retreat-garage/tour-chapters-reading.json": "53d17d81ab55528240e6453c19fc7e45721c1ecfcf610e90e21644da509d42ab", "source/samford-retreat-garage/tour-chapters.json": "7ba0647e7c9102e1f9cf87ed35979b1a110f335ab0439bfbac9280d1d826de49", + "source/samford-retreat-garage/verify_buddha_garden.py": "6869e5e386b160cd6b48ebce230715957581c755d057b59be1a66b8edeab7f51", "source/samford-retreat-garage/verify_container_water.py": "74ac1a851660bde1c098b10dfbed1f92a1d5251c6b1a3303d7d506f6f344fa8a", "source/samford-retreat-garage/verify_daily_life.py": "7241568d786cd9d78fad97af24b14fd487cad1357bfac19fc1c800cbafeef8fb", "source/samford-retreat-garage/verify_garden_flow.py": "b48c25116eb7f3cd56914a4f53601427207c387dd59d48fbd3b8cb692a9e46c0", diff --git a/source/samford-retreat-garage/add_garden_buddha.py b/source/samford-retreat-garage/add_garden_buddha.py new file mode 100644 index 0000000..feb3a40 --- /dev/null +++ b/source/samford-retreat-garage/add_garden_buddha.py @@ -0,0 +1,154 @@ +import bpy,math,os,json +from mathutils import Vector,Matrix +from math import sin,cos,pi +O=os.path.dirname(__file__);s=bpy.context.scene +c=bpy.data.collections.new('36 Buddha - meditation garden');bpy.data.collections['DETAIL - full geometry for renders'].children.link(c);COL={'new':c};active='new' +src=open(O+'/../samford-modular/build_scene.py').read();exec(src[src.index('def mesh('):src.index('timber=textured(')]) +cubefs=[tuple(reversed(f)) for f in cubefs] +stone=textured('Buddha - warm weathered limestone',(.31,.285,.235),(.49,.46,.38),(42,42,42),.83,.0018) +shade=mat('Buddha - fine carved recess',(.18,.16,.125),.94) +def ell(n,p,sz,ma=stone,rot=0,nu=40,nv=24): + vs=[];fs=[] + for j in range(nv+1): + a=pi*j/nv + for i in range(nu): + b=2*pi*i/nu;x=sz[0]*sin(a)*cos(b);y=sz[1]*sin(a)*sin(b) + vs.append((p[0]+x*cos(rot)-y*sin(rot),p[1]+x*sin(rot)+y*cos(rot),p[2]+sz[2]*cos(a))) + for j in range(nv): + for i in range(nu):k=j*nu+i;l=j*nu+(i+1)%nu;fs.append((k,l,l+nu,k+nu)) + ob=mesh('BUDDHA - '+n,vs,[tuple(reversed(f)) for f in fs],ma) + for f in ob.data.polygons:f.use_smooth=True + return ob +def tube(n,points,r,ma=stone): + # Catmull-Rom smooth carved lines / rounded limbs. + pts=[];p=[Vector(q) for q in points] + for i in range(len(p)-1): + a=p[max(0,i-1)];b=p[i];cc=p[i+1];d=p[min(i+2,len(p)-1)] + for j in range(8): + t=j/8;pts.append(.5*(2*b+(-a+cc)*t+(2*a-5*b+4*cc-d)*t*t+(-a+3*b-3*cc+d)*t*t*t)) + pts.append(p[-1]);vs=[];fs=[] + for i,v in enumerate(pts): + q=(pts[min(i+1,len(pts)-1)]-pts[max(0,i-1)]).to_track_quat('Z','Y') + rr=r*(.65+.35*sin(pi*i/(len(pts)-1))) + for j in range(10):vs.append(tuple(v+q@Vector((rr*cos(j*2*pi/10),rr*sin(j*2*pi/10),0)))) + for i in range(len(pts)-1): + for j in range(10):k=i*10+j;l=i*10+(j+1)%10;fs.append((k,l,l+10,k+10)) + fs.extend([tuple(reversed(range(10))),tuple(range(len(vs)-10,len(vs)))]) + ob=mesh('BUDDHA - '+n,vs,fs,ma) + for f in ob.data.polygons:f.use_smooth=True + return ob +box('BUDDHA - low stone plinth',(0,0,.13),(1.5,1.12,.26),stone,.04) +box('BUDDHA - plinth cap',(0,0,.285),(1.56,1.18,.075),stone,.025) +ell('oval seat',(0,0,.37),(.65,.43,.075)) +ell('left folded robe knee',(-.30,-.075,.52),(.39,.32,.16),rot=-.22) +ell('right folded robe knee',(.30,-.075,.52),(.39,.32,.16),rot=.22) +ell('crossed shin left',(-.13,-.25,.555),(.40,.145,.13),rot=.23) +ell('crossed shin right',(.15,-.22,.585),(.39,.14,.12),rot=-.24) +ell('left resting foot',(.30,-.25,.655),(.19,.09,.075),rot=.25) +ell('right resting foot',(-.29,-.28,.64),(.18,.09,.072),rot=-.20) +# Sculpted torso profile narrows at waist and neck, rounded shoulders. +vs=[];fs=[];profiles=[(.53,.26,.18),(.68,.235,.185),(.86,.24,.175),(1.05,.30,.16),(1.16,.30,.14),(1.23,.20,.12),(1.25,.105,.095)] +for z,rx,ry in profiles: + for i in range(48):a=i*2*pi/48;vs.append((rx*cos(a),.02+ry*sin(a),z)) +for j in range(len(profiles)-1): + for i in range(48):k=j*48+i;l=j*48+(i+1)%48;fs.append((k,l,l+48,k+48)) +fs.extend([tuple(reversed(range(48))),tuple(range(len(vs)-48,len(vs)))]) +ob=mesh('BUDDHA - draped torso',vs,fs,stone) +for f in ob.data.polygons:f.use_smooth=True +mod=ob.modifiers.new('Soft carved robe','SUBSURF');mod.levels=2;mod.render_levels=2 +ell('neck',(0,.015,1.265),(.10,.10,.13)) +for sign in [-1,1]: + ell('rounded robe shoulder',(sign*.265,0,1.135),(.095,.091,.107)) + tube('relaxed arm',[(sign*.265,0,1.15),(sign*.32,-.015,.99),(sign*.34,-.08,.80),(sign*.22,-.255,.725),(sign*.085,-.30,.715)],.075) + ell('hand in meditation',(sign*.052,-.325,.73+sign*.012),(.13,.073,.037),rot=sign*.08) + for i in range(3):tube('finger crease',[(sign*.015,-.375-i*.008,.734+sign*.012),(sign*.11,-.365-i*.008,.728+sign*.012)],.0014,shade) +tube('touching thumbs',[(-.09,-.30,.755),(-.035,-.29,.79),(0,-.30,.785),(.035,-.29,.79),(.09,-.30,.755)],.014) +# A serene face, lowered eyelids, elongated earlobes and ushnisha. +ell('head',(0,0,1.48),(.157,.136,.21)) +ell('chin',(0,-.033,1.355),(.100,.088,.067)) +for sign in [-1,1]: + ell('ear',(sign*.157,.002,1.46),(.037,.050,.104)) + ell('elongated earlobe',(sign*.158,-.002,1.365),(.026,.028,.055)) + tube('ear carving',[(sign*.168,-.036,1.52),(sign*.181,-.042,1.47),(sign*.171,-.037,1.40)],.004,shade) + tube('gentle brow',[(sign*.022,-.127,1.527),(sign*.068,-.127,1.545),(sign*.113,-.105,1.53)],.009) + tube('lowered eyelid',[(sign*.026,-.131,1.497),(sign*.061,-.133,1.486),(sign*.102,-.112,1.493)],.0035,shade) +ell('nose bridge',(0,-.133,1.46),(.024,.029,.064)) +ell('nose tip',(0,-.155,1.423),(.029,.024,.017)) +tube('calm closed mouth',[(-.047,-.116,1.387),(-.022,-.130,1.392),(0,-.133,1.389),(.022,-.130,1.392),(.047,-.116,1.387)],.0028,shade) +ell('lower lip',(0,-.123,1.378),(.037,.010,.009)) +ell('ushnisha topknot',(0,.022,1.723),(.087,.086,.092)) +for j in range(7): + a=.16+j*.14;num=max(9,int(36*sin(a))) + for i in range(num): + b=2*pi*(i+.5*(j%2))/num + ell('carved hair curl',(.161*sin(a)*cos(b),.143*sin(a)*sin(b),1.48+.214*cos(a)),(.018,.018,.015),nu=10,nv=6) +for j in range(6): + a=.20+j*.29;num=max(6,int(24*sin(a))) + for i in range(num): + b=2*pi*(i+.5*(j%2))/num + ell('topknot carving',(.087*sin(a)*cos(b),.022+.086*sin(a)*sin(b),1.723+.092*cos(a)),(.013,.013,.011),nu=8,nv=6) +# Robe seam and restrained shallow folds. +tube('robe diagonal edge',[(-.18,-.095,1.20),(-.11,-.16,1.10),(.02,-.174,.97),(.15,-.15,.86),(.20,-.13,.77)],.013) +for j in range(5): + z=.61+j*.075;tube('robe fold',[(-.18,-.13,z+.04),(-.05,-.173,z),(.11,-.155,z-.008)],.0045) +for sign in [-1,1]: + for j in range(3):tube('knee robe fold',[(sign*.22,-.37,.57+j*.022),(sign*.42,-.30,.57+j*.025),(sign*.55,-.17,.55+j*.027)],.005) +# Fuse the neck, shoulders and arms into one continuous stone carving. +detail=bpy.data.collections['DETAIL - full geometry for renders'];was_hidden=detail.hide_viewport;detail.hide_viewport=False;bpy.context.view_layer.update() +parts=[ob for ob in c.objects if any(k in ob.name for k in ['draped torso','rounded robe shoulder','relaxed arm',' - neck'])] +vs=[];fs=[];dg=bpy.context.evaluated_depsgraph_get() +for ob in parts: + ev=ob.evaluated_get(dg);me=ev.to_mesh();off=len(vs);vs.extend(tuple(v.co) for v in me.vertices);fs.extend(tuple(off+i for i in p.vertices) for p in me.polygons);ev.to_mesh_clear() +body=mesh('BUDDHA - continuous carved upper body',vs,fs,stone) +bpy.context.view_layer.objects.active=body +rem=body.modifiers.new('Joined limestone carving','REMESH');rem.mode='VOXEL';rem.voxel_size=.007;rem.use_smooth_shade=True +bpy.ops.object.modifier_apply(modifier=rem.name) +sm=body.modifiers.new('Stone carving finish','SMOOTH');sm.factor=.65;sm.iterations=5;bpy.ops.object.modifier_apply(modifier=sm.name) +for ob in parts:bpy.data.objects.remove(ob,do_unlink=True) +detail.hide_viewport=was_hidden +# Rotate east to look toward shared court; north of meditation room, south of garden path. +cx,cy=-12.4,15.35 +def ground(x,y):return -.024*y+.004*x+.12*sin(x*.19)*cos(y*.14)+.055*sin(x*.72+y*.32) +zbase=max(ground(cx+x,cy+y) for x in [-.6,.6] for y in [-.8,.8])+.025 +T=Matrix.Translation((cx,cy,zbase))@Matrix.Rotation(pi/2,4,'Z') +for ob in c.objects:ob.matrix_world=T@Matrix.LocRotScale(ob.location,ob.rotation_euler.to_quaternion(),ob.scale) +# Single smooth lightweight viewport proxy, no object overhead from small carving details. +vs=[];fs=[];inds=[];smooth=[];mats=[] +for ob in c.objects: + mw=Matrix.LocRotScale(ob.location,ob.rotation_euler.to_quaternion(),ob.scale);off=len(vs);vs.extend(tuple(mw@v.co) for v in ob.data.vertices) + for m in ob.data.materials: + if m not in mats:mats.append(m) + for p in ob.data.polygons:fs.append(tuple(off+i for i in p.vertices));inds.append(mats.index(ob.data.materials[p.material_index]));smooth.append(p.use_smooth) +me=bpy.data.meshes.new('Buddha garden viewport');me.from_pydata(vs,[],fs);me.update() +for m in mats:me.materials.append(m) +me.polygons.foreach_set('material_index',inds);me.polygons.foreach_set('use_smooth',smooth) +proxy=bpy.data.objects.new('FAST | Garden Buddha statue',me);bpy.data.collections['00 FAST TOUR - lightweight viewport'].objects.link(proxy) +chapters=json.load(open(O+'/tour-chapters-container-water.json'));title='31 / QUIET GARDEN BUDDHA';chapters.append(dict(title=title,start=3601,end=3720,seconds=5)) +cam=bpy.data.objects['PLAY TOUR camera'];s.frame_end=3720 +for f,p in [(3601,(-7.5,18.2,2.6)),(3720,(-7.8,17.7,2.35))]: + s.frame_set(f);cam.location=p;cam.rotation_euler=(Vector((cx,cy,zbase+.95))-cam.location).to_track_quat('-Z','Y').to_euler();cam.keyframe_insert('location',frame=f);cam.keyframe_insert('rotation_euler',frame=f);cam.data.lens=49;cam.data.keyframe_insert('lens',frame=f) +coll=bpy.data.collections['22 PLAY - guided camera tour'];fonts=[o for o in coll.objects if o.type=='FONT'] +ref=next(o for o in fonts if o.data.body.startswith('30 /')) +ref.scale=(0,0,0);ref.keyframe_insert('scale',frame=3601) +caption=ref.copy();caption.data=ref.data.copy();caption.animation_data_clear();coll.objects.link(caption);caption.name='Tour caption 31 - garden Buddha';caption.data.body=title;caption.location=(-36/49*.91,36/49*9/16*.84,-2) +for f,k in [(1,0),(3600,0),(3601,1),(3720,1)]:caption.scale=(k,k,k);caption.keyframe_insert('scale',frame=f) +for ob in [ref,caption]: + for layer in ob.animation_data.action.layers: + for strip in layer.strips: + for bag in strip.channelbags: + for fc in bag.fcurves: + for key in fc.keyframe_points:key.interpolation='CONSTANT' +s.timeline_markers.new(title,frame=3601);s['PLAY THE TOUR']='Hover over the 3D view and press Space. 31 chapters, 2 min 35 sec. Shift+Left Arrow restarts.' +s['Garden Buddha']='Weathered limestone seated Buddha on a low stone plinth, north of the meditation pavilion, facing east into the shared garden court. Version 006.' +text=bpy.data.texts.get('START HERE - PRESS PLAY') +if text:text.clear();text.write(s['PLAY THE TOUR']+'\n\n'+s['Garden Buddha']) +layout=json.load(open(O+'/container-water-layout.json'));layout.update(version=6,buddha=[cx,cy,zbase],buddha_facing='east') +json.dump(layout,open(O+'/buddha-garden-layout.json','w'),indent=2);json.dump(chapters,open(O+'/tour-chapters-buddha-garden.json','w'),indent=2) +s.frame_set(3601);s.render.resolution_percentage=100;s.camera=cam +bpy.ops.wm.save_as_mainfile(filepath=O+'/samford-solarpunk-buddha-garden-tour.blend') +for o in fonts+[caption]:o.hide_render=True +s.render.resolution_percentage=60;s.cycles.samples=48;s.cycles.use_denoising=True +prefs=bpy.context.preferences.addons['cycles'].preferences;prefs.compute_device_type='METAL';prefs.get_devices() +for d in prefs.devices:d.use=d.type=='METAL' +s.cycles.device='GPU';s.render.filepath=O+'/buddha-garden.png';bpy.ops.render.render(write_still=True) +print('BUDDHA_READY',len(c.objects),len(fs),flush=True) diff --git a/source/samford-retreat-garage/verify_buddha_garden.py b/source/samford-retreat-garage/verify_buddha_garden.py new file mode 100644 index 0000000..74b15e4 --- /dev/null +++ b/source/samford-retreat-garage/verify_buddha_garden.py @@ -0,0 +1,19 @@ +import bpy,json,os,math +from mathutils import Vector +O=os.path.dirname(__file__);s=bpy.context.scene;chapters=json.load(open(O+'/tour-chapters-buddha-garden.json'));fonts=[o for o in bpy.data.collections['22 PLAY - guided camera tour'].objects if o.type=='FONT'];issues=[] +for ch in chapters: + s.frame_set(ch['start']+30);shown=[o.data.body for o in fonts if o.scale.length>.5] + if shown!=[ch['title']]:issues.append([ch['title'],shown]) +names=[o.name for o in s.objects];layout=json.load(open(O+'/buddha-garden-layout.json'));x,y,z=layout['buddha'] +# Actual rotated rectangular plinth lies outside the pavilion and walking-path ribbon. +mx,my,mw,md=layout['meditation'];assert y-.78>my+md/2 +clearance=999 +for path in layout['paths']: + if path['kind']=='roofed walk':continue + for q in path['points']: + dist=math.hypot(max(abs(q[0]-x)-.59,0),max(abs(q[1]-y)-.78,0))-path['width']/2 + clearance=min(clearance,dist) +assert clearance>.05,clearance +report={'buddha_collection_objects':len(bpy.data.collections['36 Buddha - meditation garden'].objects),'viewport_proxy':'FAST | Garden Buddha statue' in names,'tour_chapters':len(chapters),'caption_issues':issues,'path_clearance_m':round(clearance,3),'statue_outside_room':True,'internal_water_tanks':sum(n.startswith('INTERNAL RAINWATER TANK') for n in names),'kitchen_preserved':'ISLAND - honed marble countertop' in names,'no_table_tennis':not any('table tennis' in n.lower() for n in names),'render_size':[s.render.resolution_x,s.render.resolution_y,s.render.resolution_percentage]} +assert len(chapters)==31 and s.frame_end==3720 and not issues and report['viewport_proxy'] and report['internal_water_tanks']==2 and report['kitchen_preserved'] and report['no_table_tennis'] and report['render_size']==[2560,1440,100] +json.dump(report,open(O+'/buddha-garden-verification.json','w'),indent=2);print('VERIFIED '+json.dumps(report),flush=True)