PageSourceSearch

https://pt.mxrap.workers.dev/assets/js/3afdb40f.5512ef0d.js

js pt.mxrap.workers.dev collected 2026-10-03 08:12:18 UTC 22,943 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkmxrap_com=self.webpackChunkmxrap_com||[]).push([["40354"],{65898(e,i,t){t.r(i),t.d(i,{metadata:()=>n,default:()=>h,frontMatter:()=>o,contentTitle:()=>r,toc:()=>d,assets:()=>a});var n=JSON.parse('{"id":"documentation/modules/inspections/levels/setup","title":"Level setup","description":"Create or update levels","source":"@site/docs/documentation/modules/inspections/levels/setup.mdx","sourceDirName":"documentation/modules/inspections/levels","slug":"/documentation/modules/inspections/levels/setup","permalink":"/documentation/modules/inspections/levels/setup","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"Inspections","permalink":"/tags/inspections","description":"Underground inspections, condition assessments, and monitoring procedures."}],"version":"current","lastUpdatedAt":1787788800000,"sidebarPosition":10,"frontMatter":{"title":"Level setup","description":"Create or update levels","draft":false,"unlisted":false,"hide_title":false,"hide_table_of_contents":false,"sidebar_position":10,"sidebar_custom_props":{"myEmoji":"\u{1F4C4}"},"tags":["inspections"],"keywords":["levels","level management","inspection levels"],"last_update":{"date":"2026-08-27"}},"sidebar":"docs_inspectionsSidebar","previous":{"title":"Levels","permalink":"/documentation/modules/inspections/levels/"},"next":{"title":"Updating levels","permalink":"/documentation/modules/inspections/levels/updating"}}'),s=t(11684),l=t(77025);let o={title:"Level setup",description:"Create or update levels",draft:!1,unlisted:!1,hide_title:!1,hide_table_of_contents:!1,sidebar_position:10,sidebar_custom_props:{myEmoji:"\u{1F4C4}"},tags:["inspections"],keywords:["levels","level management","inspection levels"],last_update:{date:"2026-08-27"}},r,a={},d=[{value:"Steps",id:"steps",level:2},{value:"1 - Creating a new level",id:"1---creating-a-new-level",level:3},{value:"2 - Setting the level name",id:"2---setting-the-level-name",level:3},{value:"3 - Selecting level surveys",id:"3---selecting-level-surveys",level:3},{value:"4 - Setting clipping",id:"4---setting-clipping",level:3},{value:"5 - Setting decimation",id:"5---setting-decimation",level:3},{value:"6 - Set level rotation",id:"6---set-level-rotation",level:3},{value:"7 - Save level",id:"7---save-level",level:3},{value:"Video",id:"video",level:2}];function c(e){let i={a:"a",admonition:"admonition",em:"em",figcaption:"figcaption",figure:"figure",h2:"h2",h3:"h3",img:"img",li:"li",ol:"ol",p:"p",strong:"strong",...(0,l.R)(),...e.components},{MxVideo:n}=i;return n||function(e,i){throw Error("Expected "+(i?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}("MxVideo",!0),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(i.p,{children:["This window is used to ",(0,s.jsx)(i.strong,{children:"create a new level"})," or to ",(0,s.jsx)(i.strong,{children:"manually update"})," an existing level.\r\nManual updates may be required in some cases, or you may choose to manually update if you wish to adjust some properties of the level (e.g. the clipping range)."]}),"\n",(0,s.jsxs)(i.p,{children:["Learn more about ",(0,s.jsx)(i.a,{href:"/documentation/modules/inspections/levels/updating",children:"updating existing levels here"}),"."]}),"\n",(0,s.jsx)(i.admonition,{type:"tip",children:(0,s.jsxs)(i.p,{children:["Before starting to create a new level, look if you could do a ",(0,s.jsx)(i.a,{href:"/documentation/modules/inspections/levels/batch",children:"Batch Level Creation"})]})}),"\n",(0,s.jsx)(i.admonition,{type:"info",children:(0,s.jsxs)(i.p,{children:[(0,s.jsx)(i.strong,{children:"Manually updating a level"})," and ",(0,s.jsx)(i.strong,{children:"creating a level"})," follow the same sequential process,\r\nbut where you would set a level name, you would instead rename your existing level."]})}),"\n",(0,s.jsx)(i.h2,{id:"steps",children:"Steps"}),"\n",(0,s.jsx)(i.h3,{id:"1---creating-a-new-level",children:"1 - Creating a new level"}),"\n",(0,s.jsxs)(i.p,{children:["To start with, we will click on the ",(0,s.jsx)(i.em,{children:"Create a new level"})," button."]}),"\n",(0,s.jsx)(i.figure,{children:(0,s.jsx)(i.img,{src:t(4289).A+"",width:"1920",height:"1040"})}),"\n",(0,s.jsx)(i.admonition,{type:"note",children:(0,s.jsx)(i.p,{children:"You will see the control panel on the left of the screen update. It will proceed to do so as you go through each step of the process."})}),"\n",(0,s.jsx)(i.p,{children:'If you were editing an existing level, tick your selected level and click "Edit ticked level" instead.'}),"\n",(0,s.jsx)(i.admonition,{type:"note",children:(0,s.jsx)(i.p,{children:'If you do not see your existing level, make sure both "Show Levels Needing Update" and "Show Levels Not Needing Update" checkboxes are both ticked'})}),"\n",(0,s.jsx)(i.h3,{id:"2---setting-the-level-name",children:"2 - Setting the level name"}),"\n",(0,s.jsxs)(i.p,{children:["Next we will enter a name for the level, and click the ",(0,s.jsx)(i.em,{children:"Continue"})," button."]}),"\n",(0,s.jsxs)(i.figure,{children:[(0,s.jsx)(i.img,{alt:"Setting the Level Name",src:t(32396).A+"",width:"290",height:"166"}),(0,s.jsx)(i.figcaption,{children:"Setting the Level Name"})]}),"\n",(0,s.jsx)(i.h3,{id:"3---selecting-level-surveys",children:"3 - Selecting level surveys"}),"\n",(0,s.jsx)(i.p,{children:"Now we must select the surveys to use for this level.\r\nIf you tick a folder then all surveys in that folder, and subfolders, will be used in the level."}),"\n",(0,s.jsx)(i.admonition,{type:"best",children:(0,s.jsxs)(i.p,{children:[(0,s.jsx)(i.strong,{children:"Updating levels"})," :\r\nThe system will remember which survey names we ticked,\r\nand it will look for those exact survey names when trying to automatically update levels in the future.\r\nFor this reason, it is ideal if we can tick ",(0,s.jsx)(i.strong,{children:"names which will not change"}),"."]})}),"\n",(0,s.jsxs)(i.p,{children:["The system will also check if the contents of the ",(0,s.jsx)(i.em,{children:"used"})," (not limited to ticked) surveys have changed,\r\nin order to identify when a level requires updates."]}),"\n",(0,s.jsx)(i.admonition,{type:"best",children:(0,s.jsxs)(i.p,{children:["This works best if your ",(0,s.jsx)(i.strong,{children:"levels are divided into individual surveys"})," as shown in the image below.\r\nWhile it is possible to use a single survey containing all of your development,\r\nand then use clipping to create a particular level,\r\nwhenever this single survey is changed it will trigger an update for all of the levels created from it."]})}),"\n",(0,s.jsxs)(i.p,{children:["There are two tables for ticking surveys: the top is for ",(0,s.jsx)(i.strong,{children:"development"}),", and the bottom is for ",(0,s.jsx)(i.strong,{children:"other surveys (e.g. faults, stopes)"}),"."]}),"\n",(0,s.jsx)(i.p,{children:"The surveys used in the top table (development) will also be used to create the Z-value map for this level,\r\nwhich is used to calculate Z-values for the lines and points that you create in the inspections system."}),"\n",(0,s.jsxs)(i.figure,{children:[(0,s.jsx)(i.img,{alt:"Ticking Surveys",src:t(64119).A+"",width:"1920",height:"1040"}),(0,s.jsx)(i.figcaption,{children:"Ticking Surveys"})]}),"\n",(0,s.jsxs)(i.admonition,{type:"tip",children:[(0,s.jsx)(i.p,{children:"If you do not see your surveys in these tables or your surveys look out-of-date, make sure:"}),(0,s.jsxs)(i.ol,{children:["\n",(0,s.jsxs)(i.li,{children:["The cache of these surveys are ",(0,s.jsx)(i.a,{href:"/documentation/base/survey-setup#rebuild-cache",children:"built/rebuilt"})," (Survey Setup / Basics site surveys)"]}),"\n",(0,s.jsxs)(i.li,{children:['Adjust the "',(0,s.jsx)(i.em,{children:"Display Depth"}),'" to higher number to see what is inside the folders']}),"\n"]})]}),"\n",(0,s.jsx)(i.h3,{id:"4---setting-clipping",children:"4 - Setting clipping"}),"\n",(0,s.jsx)(i.p,{children:"In the next step you can choose to apply clipping to the level."}),"\n",(0,s.jsx)(i.p,{children:"The clipping settings will be remembered,\r\nand the same clipping settings will be restored when this level is updated in the future."}),"\n",(0,s.jsx)(i.admonition,{type:"note",children:(0,s.jsx)(i.p,{children:"The clipping option is limited to axis-aligned boun
1ding box (AABB) clipping;\r\nclipping volumes that use volume set definitions will not work."})}),"\n",(0,s.jsx)(i.admonition,{type:"caution",children:(0,s.jsxs)(i.p,{children:["If you use the ",(0,s.jsx)(i.strong,{children:"dynamic clipping"}),' options at the top of the panel,\r\nensure that you also tick the "#Dynamic Clipping" volume in the clipping volumes table.']})}),"\n",(0,s.jsx)(i.admonition,{type:"tip",children:(0,s.jsxs)(i.p,{children:['Even if your survey levels are already saved "',(0,s.jsx)(i.em,{children:"per level"}),'", clipping is still useful for your other surveys (e.g. faults)']})}),"\n",(0,s.jsxs)(i.figure,{children:[(0,s.jsx)(i.img,{alt:"Clipping Levels",src:t(40416).A+"",width:"1920",height:"1040"}),(0,s.jsx)(i.figcaption,{children:"Clipping Levels"})]}),"\n",(0,s.jsxs)(i.p,{children:["At this stage you might also start to see points appear in the ",(0,s.jsx)(i.em,{children:"Bad Level Z Maximum"}),"\r\nand ",(0,s.jsx)(i.em,{children:"Bad Level Z Minimum"})," series.\r\nThese points indicate areas where there might be overlapping development surveys."]}),"\n",(0,s.jsx)(i.figure,{children:(0,s.jsx)(i.img,{src:t(45976).A+"",width:"1920",height:"1040"})}),"\n",(0,s.jsx)(i.p,{children:"Overlapping development is a problem because of how the Z-value map is used to calculate the Z-values for lines.\r\nIf we draw a line on the lower level in the inspections system\r\nbut one end of the line is in the higher level of the Z-value map,\r\nthen the line will go between two levels when viewed in 3D in mXrap,\r\nas shown in the image below."}),"\n",(0,s.jsx)(i.figure,{children:(0,s.jsx)(i.img,{src:t(6600).A+"",width:"663",height:"603"})}),"\n",(0,s.jsxs)(i.p,{children:["The line Z values are calculated dynamically when using the inspections app in mXrap.\r\nSo, if you notice that some lines are showing up incorrectly then you can fix them by fixing the Z-value maps for their corresponding level.\r\nWhen you update a level the existing Z-value map for that level is completely replaced,\r\nso you just need to adjust the clipping or input surveys for that level to ensure that no bad level Z-values are generated during the update.\r\nYou can investigate existing levels with bad Z-values using the ",(0,s.jsx)(i.a,{href:"/documentation/modules/inspections/levels/check-z-values",children:"Check Z-values window"}),"."]}),"\n",(0,s.jsx)(i.h3,{id:"5---setting-decimation",children:"5 - Setting decimation"}),"\n",(0,s.jsxs)(i.p,{children:["The next step is to set decimation options for the level.\r\nThe surface simplification option works differently to the regular survey import tool decimation.\r\nRather than choosing a percentage of triangles to remove,\r\nyou ",(0,s.jsx)(i.strong,{children:"specify a median triangle area that you want to target"}),".\r\nThe system will then simplify the surface until the median triangle area is equal to or greater than your target.\r\n",(0,s.jsx)(i.strong,{children:"This is intended to produce consistent results despite varying density across different input surveys"}),"."]}),"\n",(0,s.jsx)(i.admonition,{type:"info",children:(0,s.jsx)(i.p,{children:"The default values usually works pretty well and you do not need to adjust anything"})}),"\n",(0,s.jsx)(i.p,{children:"The resulting surface and lines will be downloaded by the inspections webform,\r\nand then rendered in real time on your device.\r\nEnsuring that the surfaces and lines are not overly complex is important\r\nso that the webform loads quickly and works smoothly when you are\r\ninteracting with the level plans."}),"\n",(0,s.jsx)(i.figure,{children:(0,s.jsx)(i.img,{src:t(97343).A+"",width:"1920",height:"1040"})}),"\n",(0,s.jsx)(i.h3,{id:"6---set-level-rotation",children:"6 - Set level rotation"}),"\n",(0,s.jsx)(i.p,{children:"In this stage you can set a rotation for the level,\r\nthis determines the orientation of the plan view for this level in the webform.\r\nA green arrow will appear in the 3D view to indicate which direction will\r\npoint towards the top of the screen when viewed in the webform."}),"\n",(0,s.jsx)(i.admonition,{type:"note",children:(0,s.jsxs)(i.p,{children:["Setting the rotation is optional and is ",(0,s.jsx)(i.strong,{children:"only"})," for visualisation purposes."]})}),"\n",(0,s.jsx)(i.figure,{children:(0,s.jsx)(i.img,{src:t(50404).A+"",width:"1920",height:"1040"})}),"\n",(0,s.jsx)(i.h3,{id:"7---save-level",children:"7 - Save level"}),"\n",(0,s.jsxs)(i.p,{children:["When you are finished, ",(0,s.jsxs)(i.strong,{children:["click the ",(0,s.jsx)(i.em,{children:"Save Level"})," button"]}),".\r\nAll of the new level information will be written to the database.\r\nThe 3D view should clear,\r\nand the control panel should return to its initial state."]}),"\n",(0,s.jsx)(i.figure,{children:(0,s.jsx)(i.img,{src:t(4289).A+"",width:"1920",height:"1040"})}),"\n",(0,s.jsx)(i.h2,{id:"video",children:"Video"}),"\n",(0,s.jsx)(n,{collapse:!0,id:"260822013852"})]})}function h(e={}){let{wrapper:i}={...(0,l.R)(),...e.components};return i?(0,s.jsx)(i,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},4289(e,i,t){t.d(i,{A:()=>n});let n=t.p+"assets/images/blank-start-f59016b88511cd5c6afe7e0a891ff68c.png"},40416(e,i,t){t.d(i,{A:()=>n});let n=t.p+"assets/images/clipping-93dd9c1e2b51abb0a508c075f093fc56.png"},97343(e,i,t){t.d(i,{A:()=>n});
1let n=t.p+"assets/images/decimation-42c7df647b04148a9cd4d09bbe449c6e.png"},32396(e,i,t){t.d(i,{A:()=>n});let n="data:image/png;base64,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"},6600(e,i,t){t.d(i,{A:()=>n});let n=t.p+"assets/images/line-with-bad-z-d68e1728e09d8acdbe2acaa38316d8bc.png"},45976(e,i,t){t.d(i,{A:()=>n});let n=t.p+"assets/images/overlapping-z-cde3d584edad9b738066942af4292d1c.png"},50404(e,i,t){t.d(i,{A:()=>n});let n=t.p+"assets/images/rotation-1fb1e7131edfc8089bf526a35836c94a.png"},64119(e,i,t){t.d(i,{A:()=>n});let n=t.p+"assets/images/tick-surveys-53129ed84bcf9ec33dbaa33fbb2b366e.png"},77025(e,i,t){t.d(i,{R:()=>o,x:()=>r});var n=t(12888);let s={},l=n.createContext(s);function o(e){let i=n.useContext(l);return n.useMemo(function(){return"function"==typeof e?e(i):{...i,...e}},[i,e])}function r(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),n.createElement(l.Provider,{value:i},e.children)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.