<< Click to Display Table of Contents >> Navigation: 3D API 說明範例 > 功能 > 索引圖 > 索引圖工具 |
<說明>
在本範例中,我們將示範如何使用索引圖控制項,說明如下:
<範例>
function documentLoad() { SuperGIS.Initialize("/ServerGate/", function () { SuperGIS.ServerEarth.Initialize(InitEarth); }); }
function InitEarth() { var pBody = new SuperGIS.Windows.HTMLContainer(document.body);
var sHost = location.href; var idx = sHost.indexOf("/", 8); if (idx >= 0) sHost = sHost.substring(0, idx);
var pSGServer = new SuperGIS.Server.SGServer(sHost + "/ServerGate/SGSGate.ashx", false); pSGServer.GetApp("8fd8b63a-100b-4a96-b77f-f3eded5f30e7", function (pApp) { // GUID 值取自所建 3D 網站中的 Application.xml 內容 CreateHTML5Earth(pBody, function (pEarth) { EarthLoaded(pEarth, pApp); }); });
function EarthLoaded(pEarth, pApp) { var sHost = location.href; var idx = sHost.indexOf("/", 8); if (idx >= 0) sHost = sHost.substring(0, idx);
var sHref = location.href; idx = sHref.lastIndexOf("/"); if (idx >= 0) sHref = sHref.substring(0, idx);
var IsCube = true; if (pApp != null) IsCube = pApp.getIsCube(); if (IsCube) { pEarth.Scene.BackgroundColor = pEarth.CreateColor(1, 1, 1, 1); pEarth.SetupSystem(false, null); } else { pEarth.Scene.BackgroundColor = pEarth.CreateColor(0, 0, 0, 1); pEarth.SetupSystem(true, s_WGS84); pEarth.SetupSkin(pEarth.CreateEnvelope(-180, 180, -90, 90, s_WGS84), sHost + "/ServerGate/Skin1.jpg"); if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function (pos) { var pGlobe = pEarth.GetGlobe(); var dSMA = pGlobe.GetSemiMajorAxis() var dRadius = pos.coords.accuracy / dSMA; var dAltitude = dSMA * (Math.sin(dRadius) / Math.tan(Math.PI / 8.0) + Math.cos(dRadius) - 1) * 4; var pTour = pEarth.CreateTourAction(); pTour.AddTourPoint(5, pEarth.CreateLatLonAlt(pos.coords.latitude, pos.coords.longitude, dAltitude), 0, 0, 0); pEarth.StartNavigate(pTour, 0); }); } } var pGlobe = pEarth.GetGlobe();
var pTPnl = pEarth.CreateToolbarPanel(0, 0, 0); pEarth.AddPanel(pTPnl);
if (pApp != null) { pTPnl.Visible = pApp.getToolbar();
pTPnl.SetBackgroundImage(sHref + "/images/Tool_01.png", "", sHref + "/images/Tool_08.png"); if (pApp.getIndexMap()) pTPnl.AddTool(pEarth.CreateIndexview(), sHref + "/images/Tool_02.png", sHref + "/images/Tool2_02.png"); } pEarth.SetCurrentViewExtent(pEarth.GetFullExtent()); pEarth.Invalidate(); } }
|
© 2017 Supergeo Technologies Inc.