1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144 |
- <!DOCTYPE html>
- <html lang="fr">
- <head>
- <meta charset="utf-8" />
- <title>四维时代</title>
- <meta http-equiv="content-type" content="text/html; charset=UTF8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />
- <link rel="stylesheet" href="css/wanaplan.min.css" />
- <style>
- .notFound {
- text-align:center;
- font-size:18px;
- width:100%;
- margin-top:100px;
- margin-left: 50px;
- }
- div.planItem {
- cursor : pointer;
- background:#fafafa;
- margin:10px;
- border:1px solid #CCC;
- position: relative;
- }
- div.planItem img {
- width:288px
- }
- div.planItem p {
- border-top:1px solid #CCC;
- padding: 5px;
- margin: 0px;
- color: #333;
- background: #FFF;
- }
- div.planItem div.toolbarPlan {
- display: none;
- background: #CCC;
- position: absolute;
- right: 0px;
- top: 0px;
- color: #222;
- opacity: 0.9;
- z-index: 9999;
- }
- div.planItem div.toolbarPlan .fa {
- padding: 5px;
- }
- div.planItem div.toolbarPlan .fa-times {
- padding-left: 15px;
- }
- div.planItem:hover div.toolbarPlan {
- display: block;
- }
- div.planItem div.overall{
- background: #222;
- opacity: 0.8;
- width:100%;
- height:100%;
- color:#FFF;
- top: 0px;
- position:absolute;
- text-align:center;
- vertical-align:middle;
- }
- div.planItem div.editForm{
- width:100%;
- height:100%;
- color:#FFF;
- top: 60px;
- position:absolute;
- text-align:center;
- vertical-align:middle;
- }
- div.planItem .editPlanInput{
- height:30px;
- width:90%;
- font-size: 15px;
- border: 1px solid #999;
- }
- div.planItem div.overall span{
- font-size:16px;
- }
- div.planItem .overall-cercle{
- opacity: 1;
- padding-left: 0;
- padding-right: 0;
- margin-left: auto;
- margin-right: auto;
- bottom: 25px;
- width:100%;
- position:absolute;
- }
- div.planItem div.editForm .window-action-bar{
- margin-top:10px;
- text-align: right;
- }
- </style>
- </head>
- <body>
- <img src='images/pattern.png' style='display:none' id='imgWall' />
- <img src='images/pattern_tmp.png' style='display:none' id='imgTempWall' />
- <img src='images/grid2.jpg' style='display:none' id='img' />
- <div id="subMenuContainer">
- <div id="subMenu">
- <ul id="subMenuList">
- <li class="menu-item hidden" id="lock-icon"><span class="menu-icon"><i class="fa fa-unlock"></i></span><span class="menu-title">锁/解锁</span></li>
- <!--
- <li class="menu-item" id="item25"><span class="menu-icon"><i class="fa fa-reply"></i></span><span class="menu-title">Undo</span></li>
- <li class="menu-item" id="item26"><span class="menu-icon"><i class="fa fa-share"></i></span><span class="menu-title">Redo</span></li>
- -->
- <li class="menu-item hidden" id="transparencyButton"><span class="menu-icon"><img src="images/icon-transparency.png" /></span><span
- class="menu-title">墙体透明</span></li>
- <li class="menu-item" id="toolbarScreenshot"><span class="menu-icon"><i class="fa fa-camera"></i></span><span class="menu-title">拍照</span></li>
- <li class="menu-item" id="fullscreen-btn"><span class="menu-icon"><i class="fa fa-arrows-alt"></i></span><span
- class="menu-title">全屏</span></li>
- </ul>
- </div>
- </div>
- <section id="main-ui" class="show">
- <div id="toolbar">
- <div id="toolbar-bar">
- <ul id="toolbarMenu">
- <li class="menu-item" id="toolbarNew"><span class="menu-icon"><i class="fa fa-file"></i></span><span class="menu-title">新建</span></li>
- <li class="menu-item" id="toolbarSave"><span class="menu-icon"><img src="images/save_icon.png" /></span><span
- class="menu-title">保存</span></li>
- <li class="menu-item menu-subitem" id="toolbarOption"><span class="menu-icon"><i class="fa fa-cog"></i></span><span
- class="menu-title">配置</span>
- <ul class="undefined">
- <li class="menu-item" id="item27"><span class="menu-title">Increase performances</span></li>
- <li class="menu-item" id="2D-options"><span class="menu-title">2D options</span></li>
- <li class="menu-item" id="toolbarChangeLanguage"><span class="menu-title">Change language</span></li>
- <li class="menu-item" id="item19"><span class="menu-title">
- <hr /></span></li>
- <li class="menu-item" id="toolbarAbout"><span class="menu-title">About Wanaplan</span></li>
- </ul>
- </li>
- <li class="menu-item menu-subitem" id="userOption"><span class="menu-icon"><i class="fa fa-user"></i></span><span
- class="menu-title">用户</span>
- <ul class="undefined">
- <li class="menu-item" id="user"><span class="menu-title">login</span></li>
- </ul>
- </li>
- </ul>
- </div>
- </div>
- <section id="mainMenu">
- <div id="mainMenuTabsContainer">
- <ul id="mainMenuTabs">
- <li class="menu-item label-2D selected" id="draw2D"><span class="menu-icon"><img src="images/dessiner.png" /></span><span
- class="menu-title">设计</span></li>
- <li class="menu-item label-3D" id="furnishing3D"><span class="menu-icon"><img src="images/meubler.png" /></span><span
- class="menu-title">家具</span></li>
- <li class="menu-item label-3D" id="decorate3D"><span class="menu-icon"><img src="images/decorer.png" /></span><span
- class="menu-title">装修</span></li>
- </ul>
- </div>
- <h3 id="mainMenuTitle">绘图</h3>
- <div id="mainMenuContent">
- <ul id="mainMenuContentList" class="mainList layout-list">
- </ul>
- </div>
- </section>
- </section>
- <!-- Splashscreen -->
- <div style="display: none;" id="splashscreen">
- <div id="custom-splash" style="display:none" class="splash-text">
- <img src="images/3D.png" style="width:50px;vertical-align:-20px;" /> Kazaplan
- <div class="splash-bar">
- <div style="animation-duration: 1s;" class="splash-bar-inner"></div>
- </div>
- <a style="color:black;display:block;text-decoration:none;margin:20px 0 0 0;text-align:right;font-size:14px" href="http://www.wanadev.com">
- by <span style="color:#07656D">Wana</span><span style="color:black">dev</span> </a>
- </div>
- <div id="stock-splash" style="display: block;" class="splash-text">
- <img src="images/wanaplan-logo.png" style="width:50px;vertical-align:-15px;" /> Wanaplan
- <div class="splash-bar">
- <div style="animation-duration: 1s;" class="splash-bar-inner"></div>
- </div>
- </div>
- </div>
- <!-- Screenshot Flash -->
- <div style="display: none;" id="screenshot-flash"></div>
- <!-- Help Bubble -->
- <div id="helpbubble" class="">
- <div id="helpbubble-close" class="close"></div>
- <div class="wrapper">
- <div class="image">
- <img src="" alt="" id="helpbubble-image" />
- </div>
- <div id="helpbubble-content" class="content"></div>
- </div>
- </div>
- <!-- Debug view -->
- <div id="debugArea"></div>
- <!-- Plan2D Area -->
- <div style="display:block;z-index: -10;" class="drawableSurface with-menu" id="container2d">
- <canvas height="413" width="1180" id="backgroundcanvas2d" style="position: absolute; z-index: 0"></canvas>
- <canvas height="413" width="1180" id="selectcanvas2d" style="position: absolute; z-index: 2"></canvas>
- <canvas height="413" width="1180" id="dynamiccanvas2d" style="position: absolute; z-index: 1 ; opacity: 1;"></canvas>
- </div>
- <!-- Plan3D Area -->
- <div style="display:none" class="drawableSurface with-menu" id="container3d">
- <canvas height="413" width="1180" id="canvas3d"></canvas>
- </div>
- <div id="waiter" class="hidden">
- Computing, please wait...
- </div>
- <section id="modalWidgets">
- <div class="window window-with-button" id="aboutWindow" style="display: none; position: absolute; top: 96.5px; left: 476.5px;">
- <header class="window-title">
- <span class="window-close">
- </span>
- <h1>关于四维时代</h1>
- </header>
- <div class="window-content">
- <div class="tabbed horizontal">
- <ul class="tabbed-tabs">
- <li rel="tab-0" class="active">
- <span class="tab-text">关于</span>
- </li>
- <li rel="tab-1" class="">
- <span class="tab-text">Credits</span>
- </li>
- </ul>
- <div class="tabbed-tabcontent">
- <section class="tab-content-0 active">
- <div style="width: 432px; text-align: center;">
- <img src="./images/wanaplan-logo.png" alt="Wanaplan">
- </div>
- <div style="text-align: center; font-size: 16pt; font-weight: bold; margin-top: 15px; color: #333;">四维时代家具展示</div>
- <div style="text-align: center; margin-top: 30px; color: #555;">版权归四维时代所有
- </div>
- <div style="text-align: center; margin-top: 10px;">
- <a href="http://www.4dage.com/" target="_blank">www.4dage.com</a>
- </div>
- </section>
- <section class="tab-content-1">
- <div class="scrollable-content" style="width: 410px; max-height: 300px; min-height: 100px; font-size: 9pt;">
- <ul>
- <li>
- <strong>"seamless" textures:</strong>
- <dl>
- <dt>Author:</dt>
- <dd>~hhh316 Giles</dd>
- <dt>License:</dt>
- <dd>cc-by 3.0</dd>
- <dt>Downloaded from:</dt>
- <dd><a href="http://seamless-pixels.blogspot.fr/"> http://seamless-pixels.blogspot.fr/</a></dd>
- </dl>
- </li>
- <li>
- <strong>Babylonjs engine:</strong>
- <dl>
- <dt>Authors:</dt>
- <dd>David Catuhe & David Rousset</dd>
- <dt>Licence:</dt>
- <dd>Apache License 2.0</dd>
- <dt>Homepage:</dt>
- <dd><a href="http://www.babylonjs.com">http://www.babylonjs.com</a></dd>
- </dl>
- </li>
- </ul>
- </div>
- </section>
- </div>
- </div>
- </div>
- <div class="window-action-bar">
- <button rel="">关闭</button>
- </div>
- </div>
- <div style="position: absolute; top: 50px; left: 10px; height: 300px; width: 50px;">
- <div style="width: 50px; height: 210px; position: relative; background-image: url("images/remote-controller/bg.png");"
- id="remoteController">
- <div style="width:20px;height:150px;position:absolute;top:57px;left:15px;">
- <div style="width: 20px; height: 7px; background: none repeat scroll 0% 0% rgb(138, 184, 8); border-radius: 2px; cursor: pointer; border: 1px solid rgb(110, 145, 15); margin-top: 85px;"
- id="mark"></div>
- </div>
- <div style="width: 18px; height: 18px; position: absolute; background-size: cover; top: 16px; left: 16px; border-radius: 7px; display: none; background-image: url("images/remote-controller/green_man.png");"
- id="camera-swap-btn"></div>
- <div style="width:50px;height:50px;cursor:pointer;position:absolute;"></div>
- </div>
- </div>
- <div class="window" id="productList" style="width: 1062px; height: 652.666666666667px; display: none; position: absolute; top: 1.16666666666669px; left: 265.5px;">
- <header class="window-title" id="addModelTitle"><span class="window-close" id="closeproduct"></span>
- <h1><img class="window-title-icon" src="images/productIconTitle.png"><span class="window-title-text">产品列表 > 卧室</span></h1>
- </header>
- <div class="window-content">
- <div class="tabbed vertical">
- <ul class="tabbed-tabs">
- <li rel="tab-0">
- <span class="tab-text"></span>
- </li>
- <li rel="tab-1" class="active">
- <span class="tab-text">所有</span>
- </li>
- </ul>
- <div class="tabbed-tabcontent">
- <section class="tab-content-1 active">
- <div id="productItems">
- </div>
- </section>
- </div>
- </div>
- </div>
- <div class="window-action-bar">
- </div>
- </div>
- <div class="window window-with-button horizontal" id="editFloor" style="width: 420px; height: 205px; display: none; top: -206px; left: -3px; margin-top: 300px; margin-left: 200px;">
- <div class="window-title" id="addfloorTitle"><span class="window-close"></span>
- <h1>添加楼层</h1>
- </div>
- <div class="photonui-container photonui-window-content photonui-container-expand-child-horizontal" style="width: 350px; height: 130px; min-width: 0px; min-height: 0px; padding: 0px;">
- <div class="photonui-widget photonui-boxlayout photonui-layout-orientation-vertical" id="widget-e12b4e6c-cbc2-4592-8d89-511bf47fbf9c"
- style="padding: 5px;">
- <div class="photonui-container photonui-boxlayout-item photonui-layout-align-stretch" style="margin-bottom: 5px;">
- <label class="photonui-widget photonui-label photonui-widget-fixed-height" id="widget-645b3d66-1700-453f-ad37-b41d2031d8ad"
- style="text-align: left;">下面的元素将被复制</label>
- </div>
- <div class="photonui-container photonui-boxlayout-item photonui-layout-align-stretch">
- <div class="photonui-widget photonui-gridlayout" id="widget-24fe82d8-f9b2-4cf7-936e-ffb435753bcf">
- <table>
- <tbody>
- <tr>
- <td class="photonui-gridlayout-cell photonui-layout-verticalalign-center photonui-layout-horizontalalign-center"
- style="padding-right: 5px; padding-bottom: 5px;">
- <div class="photonui-container photonui-gridlayout-wrapper">
- <div class="photonui-widget photonui-checkbox photonui-widget-fixed-width photonui-widget-fixed-height" id="wnp-floor-controller_walls">
- <input type="checkbox" name="wnp-floor-controller_walls" id="wnp-floor-controller_walls-input">
- <span tabindex="0"></span>
- </div>
- </div>
- </td>
- <td class="photonui-gridlayout-cell photonui-gridlayout-lastcol photonui-layout-verticalalign-center photonui-layout-horizontalalign-stretch"
- style="padding-right: 5px; padding-bottom: 5px;">
- <div class="photonui-container photonui-gridlayout-wrapper">
- <label class="photonui-widget photonui-label photonui-widget-fixed-height" id="widget-130b3f6d-94e8-4cf0-b37f-57d87809af35"
- style="text-align: left;">Walls</label>
- </div>
- </td>
- </tr>
- <tr>
- <td class="photonui-gridlayout-cell photonui-layout-verticalalign-center photonui-layout-horizontalalign-center"
- style="padding-right: 5px; padding-bottom: 5px;">
- <div class="photonui-container photonui-gridlayout-wrapper">
- <div class="photonui-widget photonui-checkbox photonui-widget-fixed-width photonui-widget-fixed-height" id="wnp-floor-controller_overtures">
- <input type="checkbox" name="wnp-floor-controller_overtures" id="wnp-floor-controller_overtures-input">
- <span tabindex="0"></span>
- </div>
- </div>
- </td>
- <td class="photonui-gridlayout-cell photonui-gridlayout-lastcol photonui-layout-verticalalign-center photonui-layout-horizontalalign-stretch"
- style="padding-right: 5px; padding-bottom: 5px;">
- <div class="photonui-container photonui-gridlayout-wrapper">
- <label class="photonui-widget photonui-label photonui-widget-fixed-height" id="widget-1f2cc0c1-7cb3-4901-bcba-6fee502530f3"
- style="text-align: left;">Doors & Windows</label>
- </div>
- </td>
- </tr>
- <tr>
- <td class="photonui-gridlayout-cell photonui-layout-verticalalign-center photonui-layout-horizontalalign-center"
- style="padding-right: 5px; padding-bottom: 5px;">
- <div class="photonui-container photonui-gridlayout-wrapper">
- <div class="photonui-widget photonui-checkbox photonui-widget-fixed-width photonui-widget-fixed-height" id="wnp-floor-controller_stairways">
- <input type="checkbox" name="wnp-floor-controller_stairways" id="wnp-floor-controller_stairways-input">
- <span tabindex="0"></span>
- </div>
- </div>
- </td>
- <td class="photonui-gridlayout-cell photonui-gridlayout-lastcol photonui-layout-verticalalign-center photonui-layout-horizontalalign-stretch"
- style="padding-right: 5px; padding-bottom: 5px;">
- <div class="photonui-container photonui-gridlayout-wrapper">
- <label class="photonui-widget photonui-label photonui-widget-fixed-height" id="widget-4a4985d1-8ed2-425f-8728-43cb578e3b4f"
- style="text-align: left;">Stairways</label>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
- </div>
- </div>
- <div class="photonui-dialog-buttons">
- <button class="photonui-widget photonui-button">
- <span class="photonui-button-text" id="widget-cancelfloor">取消</span>
- </button>
- <button class="photonui-widget photonui-button photonui-button-color-green">
- <span class="photonui-button-text" id="widget-createfloor">创建</span>
- </button>
- </div>
- </div>
- <div class="window window-with-button horizontal" id="configuratorWindow" style="width: 420px; height: 425px; display: none; top: 70px; left: 1346px;margin-top: 300px;margin-left: 200px;">
- <div class="window-title" id="editproducttitle"><span class="window-close"></span>
- <h1>产品编辑界面</h1>
- </div>
- <div class="window-content">
- <div class="tabbed horizontal">
- <ul class="tabbed-tabs">
- <li rel="tab-0" class="active" id="editsize"><span class="tab-text">大小设置</span></li>
- <li rel="tab-1" class="" id="editptrot"><span class="tab-text">位置和角度</span></li>
- </ul>
- <div class="tabbed-tabcontent">
- <section class="tab-content-0 active" id="tabSize">
- <ul>
- <li class="separator" id="item-0"><label>桌子</label><span class="field">
- <hr></span></li>
- <li class="param-item" id="params-width"><label>宽度</label><span class="field"><input type="number" step="1"
- value="" event-params="{"eventName":"wnp.contextMenu.propertyChanged","property":"params.mattress.width"}"
- rel="wnp.contextMenu.propertyChanged"><span class="unit">cm</span></span></li>
- <li class="param-item" id="params-length"><label>长度</label><span class="field"><input type="number" step="1"
- value="" event-params="{"eventName":"wnp.contextMenu.propertyChanged","property":"params.mattress.length"}"
- rel="wnp.contextMenu.propertyChanged"><span class="unit">cm</span></span></li>
- <li class="param-item" id="params-height"><label>高度</label><span class="field"><input type="number" step="1"
- value="" event-params="{"eventName":"wnp.contextMenu.propertyChanged","property":"params.mattress.thickness"}"
- rel="wnp.contextMenu.propertyChanged"><span class="unit">cm</span></span></li>
- </ul>
- </section>
- <section class="tab-content-1" id="tabPtRot">
- <ul>
- <li class="separator" id="item-1"><label>角度</label><span class="field">
- <hr></span></li>
- <li class="param-item" id="rotation-y"><label>绕Y轴</label><span class="field"><input id="rangeAngle" type="range"
- min="0" max="360" step="1" value="" class=" input-range unit"><input id="angleValue" type="number" class="unit"
- min="0" max="360" value="" step="1" readonly><span class="unit">°</span></span></li>
- <li class="separator" id="item-2"><label>位置</label><span class="field">
- <hr></span></li>
- <li class="param-item" id="position-x"><label>X:(左/右)</label><span class="field"><input type="number" min="-10000"
- max="10000" step="10" value="" event-params="{"eventName":"wnp.contextMenu.transformChanged","property":"position.x"}"
- rel="wnp.contextMenu.transformChanged" class=" unit"></span></li>
- <li class="param-item" id="position-y"><label>Y:(上/下)</label><span class="field"><input type="number" min="-10000"
- max="10000" step="10" value="" event-params="{"eventName":"wnp.contextMenu.transformChanged","property":"position.y"}"
- rel="wnp.contextMenu.transformChanged" class=" unit"></span></li>
- <li class="param-item" id="position-z"><label>Z:(前/后)</label><span class="field"><input type="number" min="-10000"
- max="10000" step="10" value="" event-params="{"eventName":"wnp.contextMenu.transformChanged","property":"position.z"}"
- rel="wnp.contextMenu.transformChanged" class=" unit"></span></li>
- </ul>
- </section>
- </div>
- </div>
- </div>
- <div class="window-action-bar">
- <button id="removeMesh" class="remove">移除</button>
- <button id="editMesh">提交</button>
- </div>
- </div>
- </section>
- <!-- Scripts -->
- <section id="scripts">
- <script>"use strict"</script>
- </section>
- <div style="width: 80px; opacity: 0.9; cursor: pointer; position: absolute; bottom: 28px; left: 0px; z-index: 99999; display: none;"
- id="stats">
- <div style="padding: 0px 0px 3px 3px; text-align: left; background-color: rgb(0, 0, 34);" id="fps">
- <div style="color: rgb(0, 255, 255); font-family: Helvetica,Arial,sans-serif; font-size: 9px; font-weight: bold; line-height: 15px;"
- id="fpsText">
- FPS
- </div>
- <div style="position: relative; width: 74px; height: 30px; background-color: rgb(0, 255, 255);" id="fpsGraph">
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span>
- </div>
- </div>
- <div style="padding: 0px 0px 3px 3px; text-align: left; background-color: rgb(0, 34, 0); display: none;" id="ms">
- <div style="color: rgb(0, 255, 0); font-family: Helvetica,Arial,sans-serif; font-size: 9px; font-weight: bold; line-height: 15px;"
- id="msText">
- MS
- </div>
- <div style="position: relative; width: 74px; height: 30px; background-color: rgb(0, 255, 0);" id="msGraph">
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- <span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 51, 17);"></span>
- </div>
- </div>
- </div>
- <div class="photonui-widget wnp-infocomponent2D-container" id="widget-d850d988-aeb6-4390-a68c-699898070cfd">
- <label class="photonui-widget photonui-label photonui-widget-fixed-height" id="subsubMenuContainer" style="text-align: left;">
- 79.73 m2
- </label>
- </div>
- <!--
- <div id="widget-2a02e7a5-c96f-40c1-ad45-b14f5db768c2" style="left: 72px; top: 20.65px; display: none; z-index: 2001;" class="photonui-widget photonui-basewindow photonui-window photonui-active window photonui-window-have-button">
- <div class="photonui-window-title">
- <button style="display: block;" title="Close" class="photonui-window-title-close-button"></button>
- <span class="photonui-window-title-text">Surfaces</span>
- </div>
- <div style="width: 1152px; height: 330.4px; padding: 0px; min-width: 0px; min-height: 0px;" class="photonui-container photonui-window-content photonui-container-expand-child">
- <div id="widget-43a4e730-6d4c-446d-99e8-6ff2cc4aa2d6" style="padding: 5px; overflow: auto;" class="photonui-widget photonui-viewport photonui-container"></div>
- </div>
- </div>
- -->
- <div id="loaddiv" style="display:none;opacity: 0.6; z-index: 10000; position: absolute; background-color: rgb(255, 255, 255);">
- <img src="images/load.png" style="position: absolute; z-index: 10000;" id="loadimg">
- </div>
- <div id="wnp-floor-controller-node" class="wnp-floor-controller" style="position: absolute; top: 10px; left: 10px; max-width: 1264px;z-index: 100;">
- <a rel="1" class="photonui-wnpfloorcontrollerbutton photonui-widget deletable" id="floorAdd">
- <span>+ 添加楼层</span>
- </a>
- </div>
- <!--设置二维部分的墙 -->
- <div class="window window-with-button horizontal" id="configuratorWindow2" style="z-index: 2001; left: 829px; top: 289px;display: none;">
- <div class="window-title" id="edit2DTitle">
- <span class="window-close"></span>
- <h1>设置</h1>
- </div>
- <div class="tabbed-tabcontent">
- <section>
- <ul id="edit2Dcontent">
- <li class="param-item">
- <label>厚度</label>
- <span class="field">
- <input id="edit2D1" type="range" min="3" max="100" step="1" value="" class=" input-range unit">
- <input id="edit2D11" type="number" min="3" max="100" value="" step="1">
- </span>
- </li>
- <li class="param-item">
- <label>高度</label>
- <span class="field">
- <input id="edit2D2" type="range" min="0" max="250" step="1" value="" class=" input-range unit">
- <input id="edit2D22" type="number" min="0" max="250" value="" step="1">
- </span>
- </li>
- </ul>
- </section>
- </div>
- <div class="photonui-dialog-buttons">
- <button class="photonui-widget photonui-button photonui-button-color-green remove" id="widget-28471e0d-6ee5-4129-924c-9d564cdaf4d5">
- <span class="photonui-button-text" id="deleteWall">删除</span>
- </button>
- <button class="photonui-widget photonui-button photonui-button-color-green" id="widget-3334b64a-8f43-4525-ac5f-34d5313a1d4a">
- <span class="photonui-button-text" id="changeWall">确定</span>
- </button>
- </div>
- </div>
- <!--<script src="js/wanaplan.min.js"></script>-->
- <script src="libs/CanvasSketch.js"></script>
- <script type="text/javascript">
- var TESTREFRESH = 0;
- //var circleStyle = {fillColor:"blue", fill:true, stroke:true, fillOpacity:1, strokeOpacity:1};
- var div = document.getElementById("container2d");
- var width = window.outerWidth - 260;
- var height = window.outerHeight;
- var stepx = 50;
- var stepy = 50;
- var backgroundSize = 50;
- var startx = -stepx * backgroundSize;
- //var starty=-parseInt(stepy*backgroundSize*height/width);
- var starty = -stepx * backgroundSize;
- var MixZoom = 20;
- var MixMark = -1;
- var MaxMark = 139;
- var startMarkX = -width / 2 + 150;
- var startMarkY = -height / 2 + 150;
- var wallleftX = -500;
- var wallleftY = 400;
- var wallrightX = 500;
- var wallrightY = -400;
- var wallThickness = 30;
- var partitionThickness = 15;
- var door = 80;
- var window = 50;
- var meter = width / 20;
- var meterpositionX = 100;
- var redrawCount = 0;
- var backgroundcanvasMax = 5000;
- var Sector_r = 70;
- var slid_r = 10;
- var point_r = 5;
- var sysmbolCircleR = 10;
- var symbolMinLen = 10;
- var show3D = false;
- var three3D;
- var center;
- var my3DEngine = null;
- var wallId = null;
- var Overlay;
- var vectors = [];
- var layer;
- var initMesh = 0;
- var one2d = false;
- var one3d = false;
- var TESTCOUNT = 0;
- function init() {
- layer = new Layer(width, height);
- layer.renderer.drawBackGround();
- wallThickness = layer.parameter.wallThickness;
- partitionThickness = layer.parameter.partitionThickness;
- door = 80;
- window = 50;
- addWall();
- //layer.addSymbol2D.wallIds.push(wallId);
- if (!one2d) {
- //initRoom();
- one2d = true;
- }
- initLoad();
- }
- init();
- window.requestAnimationFrame || (window.requestAnimationFrame = function () {
- return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (a) {
- window.setTimeout(a, 1e3 / 60);
- };
- }());
- window.cancelRequestAnimationFrame || (window.cancelRequestAnimationFrame = function () {
- return window.cancelAnimationFrame || window.webkitCancelRequestAnimationFrame || window.mozCancelRequestAnimationFrame || window.oCancelRequestAnimationFrame || window.msCancelRequestAnimationFrame || clearTimeout
- }());
- //document.getElementById("closeproduct").addEventListener("click",layer.menu.closeProduct);
- window.onresize = function () {
- width = window.outerWidth - 260;
- height = window.outerHeight;
- startMarkX = -width / 2 + 50;
- startMarkY = -height / 2 + 50;
- layer.size = new CanvasSketch.Size(parseInt(width), parseInt(height));
- //layer.renderer.setSize(layer.size);
- layer.maxBounds = new CanvasSketch.Bounds(-layer.size.w / 2, -layer.size.h / 2, layer.size.w / 2, layer.size.h / 2);
- layer.bounds = new CanvasSketch.Bounds(-layer.size.w / 2, -layer.size.h / 2, layer.size.w / 2, layer.size.h / 2);
- //layer.renderer.redraw(0);
- //layer.renderer.drawBackGround();
- layer.control.refreshCanvas = true;
- layer.control.refreshBackgroundCanvas = true;
- layer.control.refreshSelectCanvas = true;
- layer.renderer.autoRedraw();
- };
- document.getElementById("aboutWindow").addEventListener("click", function (e) {
- //console.log("aboutWindow");
- if (document.getElementById("aboutWindow").style.display == "block") {
- if (e.target.className == "window-close" || e.target.innerText == "关闭") {
- document.getElementById("aboutWindow").style.display = "none";
- }
- }
- });
- document.getElementById("subMenuContainer").addEventListener("click", function (e) {
- if (e.target.parentElement.parentElement.id == "toolbarScreenshot") {
- var saveAsLocalImage = function (canvasid, type) {
- var canvas = document.getElementById(canvasid);
- // 图片导出为 png 格式
- var type = 'png';
- var imgData = canvas.toDataURL(type);
- // 加工image data,替换mime type
- imgData = imgData.replace(_fixType(type), 'image/octet-stream');
- // 下载后的图片名
- var filename = '4dage_' + (new Date()).getTime() + '.' + type;
- // download
- saveFile(imgData, filename);
- };
- /**
- * 获取mimeType
- * @param {String} type the old mime-type
- * @return the new mime-type
- */
- var _fixType = function (type) {
- type = type.toLowerCase().replace(/jpg/i, 'jpeg');
- var r = type.match(/png|jpeg|bmp|gif/)[0];
- return 'image/' + r;
- };
- /**
- * 在本地进行文件保存
- * @param {String} data 要保存到本地的图片数据
- * @param {String} filename 文件名
- */
- var saveFile = function (data, filename) {
- var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
- save_link.href = data;
- save_link.download = filename;
- var event = document.createEvent('MouseEvents');
- event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
- save_link.dispatchEvent(event);
- };
- if (show3D) {
- BABYLON.Tools.CreateScreenshot(my3DEngine.scene3D.engine, my3DEngine.scene3D.camera, { width: my3DEngine.scene3D.canvas.width, height: my3DEngine.scene3D.canvas.height });
- }
- else {
- saveAsLocalImage("dynamiccanvas2d", "png");
- }
- }
- else if (e.target.parentElement.parentElement.id == "fullscreen-btn") {
- var element = document.documentElement;
- var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen;
- if (requestMethod) {
- requestMethod.call(element);
- }
- else if (typeof window.ActiveXObject !== "undefined") {
- var wscript = new ActiveXObject("WScript.Shell");
- if (wscript !== null) {
- wscript.SendKeys("{F11}");
- }
- }
- }
- else if (e.target.parentElement.parentElement.id == "transparencyButton") {
- //alert("透明");
- if (e.target.src.indexOf("icon-transparency.png") > -1) {
- /*
- for(var i=0;i<my3DEngine.decorate3D.roomWallMeshes.length;++i)
- {
- if(my3DEngine.decorate3D.roomWallMeshes[i].name=="wall"||my3DEngine.decorate3D.roomWallMeshes[i].name=="walltop")
- {
- my3DEngine.decorate3D.roomWallMeshes[i].visibility=0.1;
- }
- }
- */
- my3DEngine.decorate3D.transparentWall(0.05);
- e.target.src = e.target.src.replace("icon-transparency.png", "icon-opacity.png");
- }
- else if (e.target.src.indexOf("icon-opacity.png") > -1) {
- /*
- for(var i=0;i<my3DEngine.decorate3D.roomWallMeshes.length;++i)
- {
- if(my3DEngine.decorate3D.roomWallMeshes[i].name=="wall"||my3DEngine.decorate3D.roomWallMeshes[i].name=="walltop")
- {
- my3DEngine.decorate3D.roomWallMeshes[i].visibility=1;
- }
- }
- */
- my3DEngine.decorate3D.transparentWall(1);
- e.target.src = e.target.src.replace("icon-opacity.png", "icon-transparency.png");
- }
- }
- else if (e.target.parentElement.parentElement.id == "lock-icon") {
- //alert("锁");
- if (e.target.className == "fa fa-unlock") {
- my3DEngine.action3D.lock = true;
- e.target.className = "fa fa-lock";
- }
- else if (e.target.className == "fa fa-lock") {
- my3DEngine.action3D.lock = false;
- e.target.className = "fa fa-unlock";
- }
- }
- });
- // Grid..........................................................
- function initLoad() {
- var div = document.getElementById("loaddiv");
- var img = document.getElementById("loadimg");
- var width = window.innerWidth;
- var height = window.innerHeight;
- var imgwidth = img.width;
- var imgheight = img.height;
- var ptwidth = (width - imgwidth) / 2 + "px";
- var ptheight = (height - imgheight) / 2 + "px";
- div.style.width = width + "px";
- div.style.height = height + "px";
- div.width = width;
- div.height = height;
- img.style.marginLeft = ptwidth;
- img.style.marginTop = ptheight;
- }
- function showPicture() {
- if (my3DEngine == null) {
- my3DEngine = layer.layer3D;
- my3DEngine.initialize();
- }
- var src = this.id.replace("product", "") + ".babylon";
- layer.menu.closeProduct();
- my3DEngine.modelLoader.showPicture(src);
- }
- function showPhoFrame() {
- if (my3DEngine == null) {
- my3DEngine = layer.layer3D;
- my3DEngine.initialize();
- }
- var src = this.id.replace("product", "") + ".obj";
- layer.menu.closeProduct();
- my3DEngine.modelLoader.showPhoFrame(src);
- }
- function showProduct3D() {
- if (my3DEngine == null) {
- my3DEngine = new Symbol3D();
- my3DEngine.initialize();
- }
- var src;
- var src = this.id.replace("product", "") + ".babylon";
- layer.menu.closeProduct();
- my3DEngine.modelLoader.showProduct(src);
- }
- function drawGrid(stepx, stepy) {
- layer.renderer.addGrid();
- }
- function addWall() {
- var vectors = [];
- var points = [];
- var point1 = new Point(wallleftX, wallleftY);
- points.push(point1);
- var point2 = new Point(wallrightX, wallleftY);
- points.push(point2);
- var point3 = new Point(wallrightX, wallrightY);
- points.push(point3);
- var point4 = new Point(wallleftX, wallrightY);
- points.push(point4);
- var wall = new Wall(points, document.getElementById("imgWall"));
- var vector = new Vector(wall, wallStyle);
- wallId = vector.id;
- layer.data2d.wallIds.push(wallId);
- vectors.push(vector);
- layer.addVectors(vectors);
- }
- function Show3DBase() {
- if (!show3D) {
- if (my3DEngine == null) {
- my3DEngine = layer.layer3D;
- my3DEngine.initialize();
- }
- //my3DEngine.clearSymbol();
- my3DEngine.decorate3D.deleteRoomMeshes();
- GetWallPoints(layer);
- if (!one3d) {
- //initRoom3D();
- one3d = true;
- }
- my3DEngine.scene3D.render();
- }
- show3D = true;
- }
- function GetWallPoints(layer) {
- var wallIds = layer.data2d.wallIds;
- var calculateLine = layer.calculateLine;
- for (var i = 0; i < wallIds.length; ++i) {
- var id = wallIds[i];
- var points = layer.vectors[id].geometry.points;
- var syms = [];
- for (var key in layer.vectors[id].symbol2Ds) {
- var symbol2d = layer.vectors[id].symbol2Ds[key];
- var line = calculateLine.createLine(symbol2d.geometry.point1, symbol2d.geometry.point2);
- var sym = {};
- if (line.a != 0) {
- sym.angle = Math.atan(line.a);
- }
- else if (line.hasOwnProperty('x')) {
- sym.angle = Math.PI / 2;
- }
- else if (line.hasOwnProperty('y')) {
- sym.angle = 0;
- }
- sym.point = { x: (symbol2d.geometry.point1.x + symbol2d.geometry.point2.x) / 2, y: (symbol2d.geometry.point1.y + symbol2d.geometry.point2.y) / 2 };
- //sym.type=symbol2d.geoType;
- sym.id = id;
- sym.type = symbol2d.geometry.geoType;
- sym.len = BABYLON.Vector2.Distance(symbol2d.geometry.point1, symbol2d.geometry.point2);
- sym.index = Math.min(symbol2d.attributes.wallstartindex, symbol2d.attributes.wallendindex);
- syms.push(sym);
- }
- if (i == 0) {
- //var inout=calculateLine.divisionBuildUseWall(layer.vectors[id].geometry.border1,layer.vectors[id].geometry.border2);
- var inout = calculateLine.divisionBuildUseWall(layer.vectors[id].geometry.wallInfo);
- var inline = inout.use;
- var outline = inout.build;
- var height = inout.height;
- //my3DEngine.decorate3D.drawFloor(layer.vectors[id].geometry.points,layer.vectors[id].geometry.floor);
- my3DEngine.decorate3D.drawFloor(id);
- my3DEngine.decorate3D.drawCloseWallSymbols(outline, inline, height, syms, layer.vectors[id].geometry.wallType, id, layer.vectors[id].geometry.floor);
- }
- else {
- if (layer.vectors[id].geometry.state == 0) {
- //var inout=calculateLine.divisionBuildUseWall(layer.vectors[id].geometry.border1,layer.vectors[id].geometry.border2);
- var inout = calculateLine.divisionBuildUseWall(layer.vectors[id].geometry.wallInfo);
- var inline = inout.use;
- var outline = inout.build;
- var height = inout.height;
- //my3DEngine.decorate3D.drawFloor(layer.vectors[id].geometry.points,layer.vectors[id].geometry.floor);
- my3DEngine.decorate3D.drawFloor(id);
- if (calculateLine.isClockWise(outline) > 0) {
- outline.reverse();
- inline.reverse();
- }
- my3DEngine.decorate3D.drawCloseWallSymbols(outline, inline, height, syms, layer.vectors[id].geometry.wallType, id, layer.vectors[id].geometry.floor);
- }
- else {
- var clockpoints = [];
- //var floorpoints=calculateLine.outinwallside(points,layer.vectors[id].geometry.wallType);
- //var floorpoints=calculateLine.outinwallside(layer.vectors[id].geometry);
- var floorpoints = calculateLine.divisionBuildUseWall(layer.vectors[id].geometry.wallInfo);
- var height = floorpoints.height;
- if (floorpoints.use.length == 2) {
- var temp1 = [];
- var temp2 = [];
- temp1[0] = floorpoints.use[0];
- temp1[1] = floorpoints.build[0];
- temp2[0] = floorpoints.use[1];
- temp2[1] = floorpoints.build[1];
- floorpoints.use = temp1;
- floorpoints.build = temp2;
- clockpoints.push(temp1[0]);
- clockpoints.push(temp1[1]);
- clockpoints.push(temp2[1]);
- clockpoints.push(temp2[0]);
- }
- else {
- //var line1= calculateLine.createLine(floorpoints.side1[0], floorpoints.side1[1]);
- //var line2= calculateLine.createLine(floorpoints.side1[floorpoints.side1.length-2], floorpoints.side1[floorpoints.side1.length-1]);
- for (var n = 0; n < floorpoints.use.length; ++n) {
- clockpoints.push(floorpoints.use[n]);
- }
- for (var n = floorpoints.build.length - 1; n > -1; --n) {
- clockpoints.push(floorpoints.build[n]);
- }
- }
- if (calculateLine.isClockWise(clockpoints) > 0) {
- floorpoints.use.reverse();
- floorpoints.build.reverse();
- height.reverse();
- }
- my3DEngine.decorate3D.drawOpenWallSymbols(floorpoints, height, syms, layer.vectors[id].geometry.wallType, id, layer.vectors[id].geometry.floor);
- }
- }
- }
- my3DEngine.decorate3D.hideFloors(parseInt(layer.selectFloor));
- }
- </script>
- </body>
- </html>
|