Ejemplo n.º 1
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oDAPbuilder"></param>
        internal GIS(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
            : base(oDAPbuilder)
        {
            InitializeComponent();

            cbOptions.DataSource    = Options.GIS.OMDownloadOptionStrings;
            cbOptions.SelectedIndex = 0;
            tbGroupName.Text        = oDAPbuilder.Title;
            tbFilename.Text         = System.IO.Path.ChangeExtension(oDAPbuilder.Title, MAP_EXT);

            if (MainForm.Client == Options.Client.ClientType.MapInfo)
            {
                cbOptions.SelectedIndex = SAVE_AS_TAB_IMPORT;
                lOptions.Visible        = false;
                cbOptions.Visible       = false;
                cbOptions.Enabled       = false;
            }

            if (MainForm.Client == Options.Client.ClientType.ArcMAP)
            {
                cbOptions.SelectedIndex = SAVE_AS_SHP_IMPORT;
                lOptions.Visible        = false;
                cbOptions.Visible       = false;
                cbOptions.Enabled       = false;
            }

            ConfigureDialog();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oDAPbuilder"></param>
        internal ArcGIS(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
            : base(oDAPbuilder)
        {
            InitializeComponent();

            tbFilename.Text = oDAPbuilder.Title;

            cbDownload.DataSource    = Options.ArcGIS.DownloadOptionStrings;
            cbDownload.SelectedIndex = 0;
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Default constructor
 /// </summary>
 /// <param name="oMainForm"></param>
 /// <param name="oDAPLayer"></param>
 internal DownloadOptions(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPLayer)
     : this()
 {
     m_oDAPLayer = oDAPLayer;
      m_oViewedAoi = WorldWind.GeographicBoundingBox.FromQuad(MainForm.WorldWindowSingleton.CurrentAreaOfInterest);
      m_oMapAoi = MainForm.MapAoi;
      m_strMapProjection = MainForm.MapAoiCoordinateSystem;
     if (oDAPLayer != null)
         m_strLayerProjection = MainForm.MontajInterface.GetProjection(m_oDAPLayer.ServerURL, m_oDAPLayer.DatasetName);
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oDAPbuilder"></param>
        internal Voxel(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
            : base(oDAPbuilder)
        {
            InitializeComponent();

            tbFilename.Text  = System.IO.Path.ChangeExtension(oDAPbuilder.Title, MAP_EXT);
            tbGroupName.Text = oDAPbuilder.Title;

            oResolution.SetDownloadOptions(this);
            SetDefaultResolution();
        }
Ejemplo n.º 5
0
 /// <summary>
 /// Default constructor
 /// </summary>
 /// <param name="oMainForm"></param>
 /// <param name="oDAPLayer"></param>
 internal DownloadOptions(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPLayer) : this()
 {
     m_oDAPLayer        = oDAPLayer;
     m_oViewedAoi       = WorldWind.GeographicBoundingBox.FromQuad(MainForm.WorldWindowSingleton.CurrentAreaOfInterest);
     m_oMapAoi          = MainForm.MapAoi;
     m_strMapProjection = MainForm.MapAoiCoordinateSystem;
     if (oDAPLayer != null)
     {
         m_strLayerProjection = MainForm.MontajInterface.GetProjection(m_oDAPLayer.ServerURL, m_oDAPLayer.DatasetName);
     }
 }
Ejemplo n.º 6
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oDAPbuilder"></param>
        internal SectionGrid(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
            : base(oDAPbuilder)
        {
            InitializeComponent();
            tbFilename.Text = System.IO.Path.ChangeExtension(oDAPbuilder.Title, GRD_EXT);

            cbDisplayOptions.DataSource    = Options.SectionGrid.DisplayOptionStrings;
            cbDisplayOptions.SelectedIndex = 0;

            oResolution.SetDownloadOptions(this);
            SetDefaultResolution();
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oDAPbuilder"></param>
        internal Document(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
            : base(oDAPbuilder)
        {
            InitializeComponent();

            MainForm.MontajInterface.GetDocumentExtension(m_oDAPLayer.ServerURL, m_oDAPLayer.DatasetName, out m_szExtension);

            tbFilename.Text = System.IO.Path.ChangeExtension(oDAPbuilder.Title, m_szExtension);

            cbDownload.DataSource    = Options.Document.DownloadOptionStrings;
            cbDownload.SelectedIndex = 0;
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oDAPbuilder"></param>
        internal HyperMAP(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
            : base(oDAPbuilder)
        {
            InitializeComponent();

            if (MainForm.MontajInterface.HostHasOpenMap() && !string.IsNullOrEmpty(MainForm.MapFileName))
            {
                tbFilename.Text    = System.IO.Path.GetFileName(MainForm.MapFileName);
                tbFilename.Enabled = false;
            }
            else
            {
                tbFilename.Text = System.IO.Path.ChangeExtension(oDAPbuilder.Title, MAP_EXT);
            }
            tbGroupName.Text = oDAPbuilder.Title;

            oResolution.SetDownloadOptions(this);
            SetDefaultResolution();
        }
Ejemplo n.º 9
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="oDAPbuilder"></param>
 internal Database(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
     : base(oDAPbuilder)
 {
     InitializeComponent();
     tbFilename.Text = System.IO.Path.ChangeExtension(oDAPbuilder.Title, DATABASE_EXT);
 }
Ejemplo n.º 10
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="oDAPbuilder"></param>
 internal Generic(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
     : base(oDAPbuilder)
 {
     InitializeComponent();
 }
Ejemplo n.º 11
0
 /// <summary>
 /// Default constructor
 /// </summary>
 /// <param name="oDAPbuilder"></param>
 internal HyperXYZ(Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder)
     : base(oDAPbuilder)
 {
     InitializeComponent();
     tbFilename.Text = System.IO.Path.ChangeExtension(oDAPbuilder.Title, ExtensionForHXYZ);
 }
Ejemplo n.º 12
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oLayersToDownload"></param>
        internal DownloadSettings(List <Dapple.LayerGeneration.LayerBuilder> oLayersToDownload)
        {
            InitializeComponent();

            m_oLayersToDownload = oLayersToDownload;

            if (MainForm.Client == Options.Client.ClientType.OasisMontaj)
            {
                rbCSNative.Enabled  = true;
                rbReproject.Enabled = MainForm.MontajInterface.HostHasOpenMap();
                rbCSNative.Checked  = true;
            }
            else
            {
                rbReproject.Enabled = MainForm.MontajInterface.HostHasOpenMap();
                rbCSNative.Enabled  = !rbReproject.Enabled;
                if (rbReproject.Enabled)
                {
                    rbReproject.Checked = true;
                }
                else
                {
                    rbCSNative.Checked = true;
                }
            }

            String strBaseDirectory = MainForm.MontajInterface.BaseDirectory();

            if (String.IsNullOrEmpty(strBaseDirectory))
            {
                cFolderControl.Value = String.Empty;
            }
            else
            {
                cFolderControl.Value = System.IO.Path.GetDirectoryName(strBaseDirectory);
            }


            lvDatasets.SmallImageList = MainForm.DataTypeImageList;
            lvDatasets.LargeImageList = MainForm.DataTypeImageList;

            bDownload.Enabled = false;

            foreach (Dapple.LayerGeneration.LayerBuilder oBuilder in oLayersToDownload)
            {
                int iImageIndex = 0;

                if (oBuilder is Dapple.LayerGeneration.DAPQuadLayerBuilder)
                {
                    Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder = (Dapple.LayerGeneration.DAPQuadLayerBuilder)oBuilder;

                    iImageIndex = MainForm.ImageIndex(oDAPbuilder.DAPType);
                    if (iImageIndex == -1)
                    {
                        MainForm.ImageListIndex(MainForm.LayerIconKey);
                    }
                }
                else if (oBuilder is Dapple.LayerGeneration.VEQuadLayerBuilder)
                {
                    iImageIndex = MainForm.ImageListIndex(MainForm.LiveMapsIconKey);
                }
                else if (oBuilder is Dapple.LayerGeneration.GeorefImageLayerBuilder)
                {
                    iImageIndex = MainForm.ImageListIndex(MainForm.GeorefImageIconKey);
                }
                else
                {
                    iImageIndex = MainForm.ImageListIndex(MainForm.LayerIconKey);
                }

                // --- create the user control ---
                DownloadOptions oControl = CreateUserControl(oBuilder);

                if (oControl is Disabled)
                {
                    iImageIndex = MainForm.ImageListIndex(MainForm.ErrorIconKey);
                }
                else
                {
                    bDownload.Enabled = true;
                }

                ListViewItem oItem = new ListViewItem(oBuilder.Title);
                oItem.ImageIndex = iImageIndex;
                oItem.Tag        = oBuilder;

                if (oControl != null)
                {
                    // --- no errors, add this dataset to the list ---

                    lvDatasets.Items.Add(oItem);
                    m_oDownloadSettings.Add(oControl);

                    oControl.Visible = false;
                    oControl.Dock    = DockStyle.Fill;
                    pSettings.Controls.Add(oControl);
                }
            }

            if (lvDatasets.Items.Count > 0)
            {
                lvDatasets.Items[0].Selected = true;
            }
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Create the correct control for this dataset
        /// </summary>
        /// <param name="oContainer"></param>
        /// <returns></returns>
        private DownloadOptions CreateUserControl(Dapple.LayerGeneration.LayerBuilder oBuilder)
        {
            if (!WorldWind.GeographicBoundingBox.FromQuad(MainForm.WorldWindowSingleton.CurrentAreaOfInterest).Intersects(oBuilder.Extents))
            {
                return(new Disabled("This data layer cannot be " + GetExtractionVerb(oBuilder) + "ed. View the data layer extents within the currently viewed area and try again."));
            }

            DownloadOptions oControl = null;

            if (oBuilder is Dapple.LayerGeneration.DAPQuadLayerBuilder)
            {
                Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder = (Dapple.LayerGeneration.DAPQuadLayerBuilder)oBuilder;

                double dummy1 = 0, dummy2 = 0, dummy3 = 0, dummy4 = 0;
                if (MainForm.MontajInterface.GetExtents(oDAPbuilder.ServerURL, oDAPbuilder.DatasetName, out dummy1, out dummy2, out dummy3, out dummy4) == false)
                {
                    return(new Disabled("This data layer will not be extracted because its metadata could not be accessed.  This usually indicates that you do not have the required permissions to access it."));
                }

                if (oDAPbuilder.IsFromPersonalDapServer)
                {
                    if (MainForm.Client == Options.Client.ClientType.ArcMAP &&
                        oDAPbuilder.DAPType.Equals("spf", StringComparison.OrdinalIgnoreCase) &&
                        oDAPbuilder.LocalFilename.EndsWith("(TAB)", StringComparison.OrdinalIgnoreCase))
                    {
                        return(new Disabled("This data layer will not be opened because TAB files are not supported in ArcMap."));
                    }

                    oControl = new PersonalDataset(oDAPbuilder);
                    oControl.ErrorProvider = cErrorProvider;
                    return(oControl);
                }

                if (oDAPbuilder.DAPType.ToLower() == "map")
                {
                    oControl = new HyperMAP(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "grid")
                {
                    oControl = new Grid(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "picture")
                {
                    oControl = new Picture(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "point")
                {
                    oControl = new HyperXYZ(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "database")
                {
                    oControl = new Database(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "document")
                {
                    oControl = new Document(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "spf")
                {
                    oControl = new GIS(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "generic")
                {
                    if (MainForm.Client != Options.Client.ClientType.MapInfo)
                    {
                        oControl = new Generic(oDAPbuilder);
                    }
                    else
                    {
                        oControl = new Disabled("This data layer will not be extracted as acQuire connections are not a supported format in MapInfo.");
                    }
                }
                else if (oDAPbuilder.DAPType.ToLower() == "voxel")
                {
                    if (MainForm.Client != Options.Client.ClientType.MapInfo)
                    {
                        oControl = new Voxel(oDAPbuilder);
                    }
                    else
                    {
                        oControl = new Disabled("This data layer will not be extracted as voxel is not a supported format in MapInfo.");
                    }
                }
                else if (oDAPbuilder.DAPType.ToLower() == "arcgis")
                {
                    if (MainForm.Client != Options.Client.ClientType.MapInfo)
                    {
                        oControl = new ArcGIS(oDAPbuilder);
                    }
                    else
                    {
                        oControl = new Disabled("This data layer will not be extracted as LYR is not a supported format in MapInfo.");
                    }
                }
                else if (oDAPbuilder.DAPType.ToLower() == "imageserver")
                {
                    oControl = new PictureWithoutResolution(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "picturesection")
                {
                    oControl = new SectionPicture(oDAPbuilder);
                }
                else if (oDAPbuilder.DAPType.ToLower() == "gridsection")
                {
                    oControl = new SectionGrid(oDAPbuilder);
                }
            }
            else if (oBuilder is KML.KMLLayerBuilder)
            {
                oControl = new Disabled("This data layer will not be extracted as KML extraction is not currently supported.");
            }
            else
            {
                oControl = new PictureWithoutResolution(oBuilder);
            }

            if (oControl != null)
            {
                oControl.ErrorProvider = cErrorProvider;
            }
            return(oControl);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Default constructor
        /// </summary>
        /// <param name="oLayersToDownload"></param>
        internal DatasetDisclaimer(List <Dapple.LayerGeneration.LayerBuilder> oLayersToDownload, System.Xml.XmlDocument oDownload)
        {
            InitializeComponent();

            string strTempFile = System.IO.Path.GetTempFileName();

            System.Xml.XmlReader oReader = null;

            foreach (Dapple.LayerGeneration.LayerBuilder oBuilder in oLayersToDownload)
            {
                if (oBuilder is Dapple.LayerGeneration.DAPQuadLayerBuilder && ((Dapple.LayerGeneration.DAPQuadLayerBuilder)oBuilder).ServerMajorVersion >= 11)
                {
                    Dapple.LayerGeneration.DAPQuadLayerBuilder oDAPbuilder = (Dapple.LayerGeneration.DAPQuadLayerBuilder)oBuilder;

                    Geosoft.Dap.Command        oCommand = new Geosoft.Dap.Command(oDAPbuilder.ServerURL, false, Geosoft.Dap.Command.Version.GEOSOFT_XML_1_1, WorldWind.Net.WebDownload.DownloadTimeout);
                    Geosoft.Dap.Common.DataSet oDataset = new Geosoft.Dap.Common.DataSet();
                    oDataset.Name = oDAPbuilder.DatasetName;
                    oDataset.Url  = oDAPbuilder.ServerURL;

                    System.Xml.XmlDocument oDoc = null;
                    try
                    {
                        oDoc = oCommand.GetDisclaimer(oDataset);
                    }
                    catch (System.Net.WebException ex)
                    {
                        ex.Data["dataset"] = oBuilder.Title;
                        throw;
                    }
                    oDoc.Save(strTempFile);
                    oReader = System.Xml.XmlReader.Create(strTempFile);

                    if (oReader.ReadToFollowing("disclaimer"))
                    {
                        if (string.Compare(oReader.GetAttribute("value"), "true", true) == 0)
                        {
                            // --- read the base 64 encoded text into a temporary file ---

                            string strTempHtmFile = System.IO.Path.GetTempFileName();
                            System.IO.FileStream oOutputStream = new System.IO.FileStream(strTempHtmFile, System.IO.FileMode.Create);

                            byte[] bBuffer = new byte[65536];
                            int    iCount  = 0;

                            do
                            {
                                iCount = oReader.ReadElementContentAsBase64(bBuffer, 0, 65536);
                                oOutputStream.Write(bBuffer, 0, iCount);
                            } while (iCount != 0);


                            // --- close the output stream ---

                            if (oOutputStream != null)
                            {
                                oOutputStream.Close();
                            }
                            oOutputStream = null;

                            ListViewItem oItem = new ListViewItem();
                            oItem.Name = oDAPbuilder.DatasetName;
                            oItem.Text = oDAPbuilder.Title;
                            oItem.Tag  = strTempHtmFile;
                            lvDatasets.Items.Add(oItem);
                        }
                    }
                    oReader.Close();
                }
            }
            System.IO.File.Delete(strTempFile);

            if (lvDatasets.Items.Count > 0)
            {
                lvDatasets.Items[0].Selected = true;
                wbDisclaimer.Navigate(lvDatasets.Items[0].Tag as string);
            }
        }