async void AddScene_Click(object sender, RoutedEventArgs e) { SceneSettingsDlg settingsDlg = new SceneSettingsDlg(); settingsDlg.Owner = this.Parent as Window; settingsDlg.ShowDialog(); if (!settingsDlg.DialogResult.HasValue || !settingsDlg.DialogResult.Value) { return; } ReCapPhotosceneOptionsBuilder options = new ReCapPhotosceneOptionsBuilder( settingsDlg.MeshQuality, settingsDlg.MeshFormat); var id = await CreateNewPhotoscene( settingsDlg.SceneName, options); if (id != string.Empty) { ShowProgressDlg(settingsDlg.SceneName, id); } }
async void NewScene_Click(object sender, EventArgs e) { SceneSettingsForm settingsForm = new SceneSettingsForm( "ADN - " + GetTimeStamp()); if (settingsForm.ShowDialog() != System.Windows.Forms.DialogResult.OK) { return; } ReCapPhotosceneOptionsBuilder options = new ReCapPhotosceneOptionsBuilder( settingsForm.MeshQuality, settingsForm.MeshFormat); var id = await CreateNewPhotoscene( settingsForm.SceneName, options); if (id != string.Empty) { var sceneWithInfo = await RetrieveSceneInfo(id); if (sceneWithInfo != null) { var root = _TreeViewScenes.Nodes[0]; TreeNode node = root.Nodes.Add( sceneWithInfo.PhotosceneId, sceneWithInfo.SceneName, 2, 2); node.Tag = sceneWithInfo; } ShowProgressForm(settingsForm.SceneName, id); } }
async void AddScene_Click(object sender, RoutedEventArgs e) { SceneSettingsDlg settingsDlg = new SceneSettingsDlg(); settingsDlg.Owner = this.Parent as Window; settingsDlg.ShowDialog(); if (!settingsDlg.DialogResult.HasValue || !settingsDlg.DialogResult.Value) { return; } ReCapPhotosceneOptionsBuilder options = new ReCapPhotosceneOptionsBuilder( settingsDlg.MeshQuality, settingsDlg.MeshFormat); var id = await CreateNewPhotoscene( settingsDlg.SceneName, options); if (id != string.Empty) { var sceneWithInfo = await RetrieveSceneInfo(id); if (sceneWithInfo != null) { RootNode.AddNode( new ReCapTreeItem( sceneWithInfo, Properties.Resources.file)); } ShowProgressDlg(settingsDlg.SceneName, id); } }
CreatePhotosceneAsync( string sceneName, ReCapPhotosceneOptionsBuilder options) { var request = new RestRequest("photoscene", Method.POST); request.AddParameter("clientID", _clientId); request.AddParameter("scenename", sceneName); request.AddParameter("json", 1); if (options != null) { var opts = options.ToPhotosceneOptions(); foreach (var entry in opts) { request.AddParameter(entry.Key, entry.Value); } } return(_restClient.ExecuteAsync <ReCapPhotosceneResponse>( request)); }
async Task <string> CreateNewPhotoscene( string sceneName, ReCapPhotosceneOptionsBuilder options) { string[] files = UIHelper.FileSelect( "Select Pictures", "(*.jpg)|*.jpg", true); if (files == null) { return(string.Empty); } // Step 1 - Create a new Photoscene var createResult = await _reCapClient.CreatePhotosceneAsync( sceneName, options); if (!createResult.IsOk()) { OnLogReCapError(createResult.Error); return(string.Empty); } OnLogMessage("New scene created: " + sceneName + " [Id: " + createResult.Photoscene.PhotosceneId + "]"); var sceneWithInfo = await RetrieveSceneInfo( createResult.Photoscene.PhotosceneId); if (sceneWithInfo != null) { RootNode.AddNode( new ReCapTreeItem( sceneWithInfo, Properties.Resources.file)); } // Step 2 - Upload pictures OnLogMessage("Uploading " + files.Length + " images for scene: " + sceneName); string photosceneId = createResult.Photoscene.PhotosceneId; var uploadResultArray = await _reCapClient.UploadFilesAsync( photosceneId, files); foreach (var uploadResult in uploadResultArray) { if (!uploadResult.IsOk()) { OnLogReCapError(uploadResult.Error); //return; } } OnLogMessage("Files uploaded for scene: " + sceneName); // Step 3 - start processing the Photoscene var processResult = await _reCapClient.ProcessPhotosceneAsync( photosceneId); if (!processResult.IsOk()) { OnLogReCapError(processResult.Error); return(photosceneId); } OnLogMessage("Start processing for scene: " + sceneName); return(photosceneId); }
async Task <string> CreateNewPhotoscene( string sceneName, ReCapPhotosceneOptionsBuilder options) { string[] files = UIHelper.FileSelect( "Select Pictures", "(*.jpg)|*.jpg", true); if (files == null) { return(string.Empty); } // Step 1 - Create a new Photoscene var createResult = await _reCapClient.CreatePhotosceneAsync( sceneName, options); if (!createResult.IsOk()) { OnLogReCapError(createResult.Error); return(string.Empty); } OnLogMessage("New scene created: " + sceneName); // Step 2 - Upload pictures string photosceneId = createResult.Photoscene.PhotosceneId; var uploadResult = await _reCapClient.UploadFilesAsync( photosceneId, files); if (!uploadResult.IsOk()) { OnLogReCapError(uploadResult.Error); return(string.Empty); } OnLogMessage("Files uploaded for scene: " + sceneName); // Step 3 - start processing the Photoscene var processResult = await _reCapClient.ProcessPhotosceneAsync( photosceneId); if (!processResult.IsOk()) { OnLogReCapError(processResult.Error); return(string.Empty); } OnLogMessage("Start processing for scene: " + sceneName); return(photosceneId); }