美文网首页
SuperMap iMobile for iOS 三维入门开发教

SuperMap iMobile for iOS 三维入门开发教

作者: SuperMap技术控 | 来源:发表于2021-12-15 11:13 被阅读0次

     >作者:为梦齐舞

          伴随移动互联网的快速发展,移动客户端的使用数据量正在的逐步的逼近PC端,当移动端遇到三维GIS会绽放出如何的光彩? SuperMap iMobile for iOS是基于iOS智能终端系统的专业移动GIS开发平台,用于快速开发、定制面向行业领域和公众服务的移动GIS应用系统,功能囊括二维和三维,本文主要介绍三维的开发功能。
    首先来看下显示的效果吧
    精模数据效果:

    倾斜摄影数据效果:

          如何才能开发出如上的效果呢?我们将本文的教程分为数据制作和程序开发两部分。
    一、 数据制作
          本文将使用超图自带的MaSai倾斜摄影数据作为示范数据打开。
          1、 下载SuperMap iDesktop 8C 下载地址:http://support.supermap.com.cn/product/iDesktop.aspx
          2、 安装软件并打开示范数据.\SampleData\3D\OSGB\MaSai.smwu


          3、 选择倾斜摄影功能菜单下的压缩纹理选项,选择压缩类型为iOS系列设备,点击确定。

          4、 使用iDesktop重新配置一个工作空间,以上数据就配置完成了。这里只是配置了一个倾斜摄影的数据,如果需要使用其他数据,可以使用iDesktop配置。

    二、 程序开发
          1、 下载SuperMap iMobile 8C for iOS,解压后双击pkg文件进行安装,如果遇到权限问题不能安装,可以设置安全性与隐私,设置允许被认可的开发者。
    SuperMap iMobile 8C for iOS下载地址:http://support.supermap.com.cn/product/iMobile.aspx
          2、 安装完后,可以打开Xcode帮助,查看iMobile联机帮助

          3、 新建工程,按照联机帮助中的说明,进行工程的环境配置。

          4、 设置工程环境,开启iTunes文件共享,以方便后续传入示范数据。

          5、 设置开启多点触摸,否则无法操作三维球。

          6、 运行一次工程,然后打开iTunes,传入步骤一中制作的数据,以及许可,说明一点,如果不传入许可,可以打开三维球,但是不能打开数据。
    试用许可申请地址:http://www.supermapol.com/web/pricing/triallicense

          7、 编写代码,打开数据。
    点击ViewController.h文件,在其中添加以下代码:

    #import <UIKit/UIKit.h>
    #import <SuperMap/SuperMap.h>

    @interface ViewController : UIViewController

    {
        SceneControl *sceneControl;
        Workspace *workspace;
    }
    @property (strong, nonatomic) IBOutlet SceneControl *sceneControl;
    @end

    点击ViewController.m文件,在其中添加以下代码:

    #import "ViewController.h"

    @interface ViewController ()

    @end
    @implementation ViewController
    @synthesize sceneControl=sceneControl;
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        [sceneControl initSceneControl:self];
    -(void)viewDidAppear:(BOOL)animated
    {
        [self OpenOSGBdata];
    }
    -(void)OpenOSGBdata
    {
        @try {
           
            if (workspace==nil) {
                workspace=[[Workspace alloc]init];
            }
          
            sceneControl.scene.workspace=workspace;
            NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
            NSString *filePath=[[paths objectAtIndex:0] stringByAppendingPathComponent:@"masai.smwu"];
            WorkspaceConnectionInfo *wsinfo=[[WorkspaceConnectionInfo alloc]initWithFile:filePath];
            wsinfo.type=SM_SMWU;
            if ([workspace open:wsinfo])
            {
                NSString *name=[workspace.scenes get:0];
                [sceneControl.scene open:name];
            }
           
        } @catch (NSException *exception) {
           
        }
       
       
    }

    8、 重新编译程序,运行结果如下图所示。

     

    PS:源码下载地址:链接:http://pan.baidu.com/s/1i5oju3z 密码:bkc0

    相关文章

      网友评论

          本文标题:SuperMap iMobile for iOS 三维入门开发教

          本文链接:https://www.haomeiwen.com/subject/hboufrtx.html