lambdaway
::
stairs
5
|
list
|
login
|
load
|
|
_h1 sliding stairs in a 3'/6' hopper {macro __STATIC__ to false} ;; true -> stops animation _h2 1) principle _p Idea of a group of mobile steps sliding vertically in a programmable way, passing from the classic flight serving two landings to the lift platform according to the needs, person with normal or reduced mobility. _p The model presented includes : _ul a 90/240 hopper, ({b the minimum would be 90/180 = 3'/6'}) _ul three landings at -120, 000, +120, or more on request _ul 8 ({b minimum 6}) mobile steps sliding on vertical racks in 2 configurations: _ul20 - 1) in flights of stairs linking levels -120 to 000 and 000 to +120 _ul20 - 2) as a horizontal platform linking levels -120, 000 and +120 _ul security is provided by glass doors. _h2 2) sequence _p The objective for the man on level -120 is to go up to level +120 and bring down a wheelchair from that level to level -120. ;; _p Click on arrows {b ←} and {b →} to move the man. Here the hopper is {b 240cm = 8'} long but could be {b 6'}. {slideshow {A.new {A.new {PATH}/escalier301.jpg xxx} {A.new {PATH}/escalier302.jpg xxx} {A.new {PATH}/escalier303.jpg xxx} {A.new {PATH}/escalier304.jpg xxx} {A.new {PATH}/escalier305.jpg xxx} {A.new {PATH}/escalier306.jpg xxx} {A.new {PATH}/escalier307.jpg xxx} {A.new {PATH}/escalier308.jpg xxx} {A.new {PATH}/escalier309.jpg xxx} {A.new {PATH}/escalier310.jpg xxx} {A.new {PATH}/escalier311.jpg xxx} {A.new {PATH}/escalier312.jpg xxx} {A.new {PATH}/escalier313.jpg xxx} {A.new {PATH}/escalier314.jpg xxx} {A.new {PATH}/escalier315.jpg xxx} {A.new {PATH}/escalier316.jpg xxx} {A.new {PATH}/escalier317.jpg xxx} {A.new {PATH}/escalier318.jpg xxx} {A.new {PATH}/escalier319.jpg xxx} {A.new {PATH}/escalier320.jpg xxx} {A.new {PATH}/escalier321.jpg xxx} {A.new {PATH}/escalier322.jpg xxx} {A.new {PATH}/escalier323.jpg xxx} {A.new {PATH}/escalier324.jpg xxx} {A.new {PATH}/escalier325.jpg xxx} {A.new {PATH}/escalier326.jpg xxx} {A.new {PATH}/escalier327.jpg xxx} {A.new {PATH}/escalier328.jpg xxx} {A.new {PATH}/escalier329.jpg xxx} {A.new {PATH}/escalier330.jpg xxx} {A.new {PATH}/escalier331.jpg xxx} {A.new {PATH}/escalier332.jpg xxx} }} _h2 3) licence _p Assuming that this idea has not already germinated in someone's head, it is proposed under the [[GPL|http://www.linux-france.org/article/these/gpl.html]] licence, in other words anyone who might find an interest in it can do what they want with it, but without exclusivity. It is interesting to read the GPL license on this subject. _p {i Alain Marty 2008, update 2021/11/21} _p [[HN|https://news.ycombinator.com/item?id=29293106]] | [[HN|https://news.ycombinator.com/item?id=29296233]] _img http://lambdaway.free.fr/lambdaspeech/data/escalier_ACM.jpg {center This system could be installed in this context..} {{hide} {def PATH http://epsilonwiki.free.fr/portail/data/escalier} the platform begins its transformation into a flight of steps linking -120 to 000 the flight of stairs links -120 to 000 the man begins to climb from -120 to 000 the man is at 000, he turns back the flight of steps begins its transformation to link 000 to +120 the man begins to climb from 000 to +120 the man is at +120 the flight of stairs begins its transformation to a platform at +120 the man pulls the wheelchair onto the platform the platform begins its descent to level -120 the man pushes the wheelchair off the platform at level -120 {def A.toS {lambda {:a} {if {A.empty? :a} then else {A.first :a} {A.toS {A.rest :a}} }}} {def slideshow {lambda {:arr} {div {@ class="slideshow-container"} {slideshow.dots :arr} {slideshow.blocs :arr} {slideshow.prevnext} }}} {def slideshow.dots {lambda {:arr} {div {@ style="text-align:center"} {S.map {lambda {:i} {span {@ class="dot" onclick="SLIDESHOW.currentSlide(:i)"}} } {S.serie 1 {A.length :arr}} }}}} {def slideshow.blocs {lambda {:arr} {S.map {{lambda {:arr :i} {div {@ class="mySlides fade"} {div {@ class="numbertext"}:i / {A.length :arr}} {let { {:item {A.get {- :i 1} :arr}} } {img {@ src="{A.first :item}" style="width:100%"}} {div {@ class="text"} {A.toS {A.rest :item} }}} }} :arr} {S.serie 1 {A.length :arr}} }}} {def slideshow.prevnext {a {@ class="prev" onclick="SLIDESHOW.plusSlides(-1)"}←} {a {@ class="next" onclick="SLIDESHOW.plusSlides(1)"}→} } } {script var SLIDESHOW = (function() { var STATIC = __STATIC__; // true|false via the macro var slideIndex = 1; var plusSlides = function(n) { showSlides(slideIndex += n); }; var currentSlide = function(n) { showSlides(slideIndex = n); }; var showSlides = function(n) { var slides = document.getElementsByClassName("mySlides"); var dots = document.getElementsByClassName("dot"); if (STATIC) { if (n > slides.length) {slideIndex = 1} if (n < 1) {slideIndex = slides.length} } for (var i = 0; i < slides.length; i++) slides[i].style.display = "none"; if (!STATIC) { slideIndex++; if (slideIndex> slides.length) {slideIndex = 1} } for (var i = 0; i < dots.length; i++) dots[i].className = dots[i].className.replace(" active", ""); slides[slideIndex-1].style.display = "block"; dots[slideIndex-1].className += " active"; }; return { plusSlides:plusSlides, currentSlide:currentSlide, showSlides:showSlides, STATIC:STATIC } })(); setTimeout( SLIDESHOW.showSlides, 1, 1 ); if (!SLIDESHOW.STATIC) setInterval(SLIDESHOW.showSlides, 200); } {style * {box-sizing:border-box} .mySlides {display:none} .slideshow-container { max-width: 1000px; position: relative; margin: auto; } .prev, .next { cursor: pointer; position: absolute; top: 30px; /* 50% */ width: auto; padding: 16px; margin-top: -22px; color: white; font-weight: bold; font-size: 28px; ;; transition: 0.6s ease; border-radius: 0 3px 3px 0; } /* Position the "next button" to the right */ .next { right: 0; border-radius: 3px 0 0 3px; } a { text-decoration:none; } /* Caption text */ .text { font-size: 15px; padding: 8px 0px; position: absolute; bottom: 10px; width: 100%; text-align: center; background:#fff; color: #000; opacity:0.7; } /* Number text (1/3 etc) */ .numbertext { color: #fff; font-size: 12px; position: absolute; top: 30px; left:50%; margin-left:-12px; } /* The dots/bullets/indicators */ .dot { cursor:pointer; height: 13px; width: 13px; margin: 0 2px; background-color: #bbb; border-radius: 50%; display: inline-block; ;; transition: background-color 0.6s ease; } .active, .dot:hover { background-color: #888; } /* .fade { -webkit-animation-name: fade; -webkit-animation-duration: 0.1s; animation-name: fade; animation-duration: 0.1s; } @-webkit-keyframes fade { from {opacity: 0.1} to {opacity: 1} } @keyframes fade { from {opacity: 0.1} to {opacity: 1} } */ body { background:#444; } #page_frame { border:0; background:#444; width:600px; } #page_content { background:transparent; color:#fff; border:0; box-shadow:0 0 0; font-family:papyrus, optima; } .page_menu { background:transparent; color:#fff; } a { color:#f80; } pre { box-shadow:0 0 8px #000; padding:5px; background:#444; color:#fff; font:normal 1.0em courier; } b { color:cyan; } }
lambdaway v.20211111