Skip to content

Commit

Permalink
ArcGIS Pro 3.2 SDK for .NET
Browse files Browse the repository at this point in the history
  • Loading branch information
Wolf-K committed Nov 6, 2023
1 parent 5ee6213 commit 70f8c0c
Show file tree
Hide file tree
Showing 1,507 changed files with 42,015 additions and 18,901 deletions.
63 changes: 63 additions & 0 deletions 3DAnalyst/GetLineOfSight/Config.daml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2023 Esri
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<ArcGIS defaultAssembly="GetLineOfSight.dll" defaultNamespace="GetLineOfSight" xmlns="http://schemas.esri.com/DADF/Registry" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.esri.com/DADF/Registry file:///C:/Program%20Files/ArcGIS/Pro/bin/ArcGIS.Desktop.Framework.xsd">
<AddInInfo id="{d818e029-5152-42d2-afc8-3ad78f5c6c2d}" version="1.0" desktopVersion="3.2.48335">
<Name>GetLineOfSight</Name>
<Description>GetLineOfSight description</Description>
<Image>Images\AddinDesktop32.png</Image>
<Author>uma2526</Author>
<Company>Acme</Company>
<Date>5/16/2023 12:36:14 PM</Date>
<Subject>Framework</Subject>
<!-- Note subject can be one or more of these topics:
Content, Framework, Editing, Geodatabase, Geometry, Geoprocessing, Layouts, Map Authoring, Map Exploration -->
</AddInInfo>
<modules>
<insertModule id="GetLineOfSight_Module" className="Module1" autoLoad="false" caption="Module1">
<!-- uncomment to have the control hosted on a separate tab-->
<tabs>
<!--<tab id="GetLineOfSight_Tab1" caption="New Tab">
<group refID="GetLineOfSight_Group1"/>
</tab>-->
</tabs>
<groups>
<!-- comment this out if you have no controls on the Addin tab to avoid
an empty group-->
<group id="GetLineOfSight_Group1" caption="Group 1" appearsOnAddInTab="true">
<!-- host controls within groups -->
</group>
</groups>
<controls>
<tool id="GetLineOfSight_LoSTool" categoryRefID="esri_editing_construction_polyline" caption="Line of Sight" className="LoSTool" loadOnClick="true" smallImage="LOSLinear16" largeImage="LOSLinear32">
<!--note: use esri_editing_construction_polyline, esri_editing_construction_polygon for categoryRefID as needed-->
<tooltip heading="Line of sight">Gets the line of sight components.<disabledText /></tooltip>
<content guid="468c3f18-3e38-4ae6-b1ba-6c643c38caaf" toolOptionsID="GetLineOfSight_LoSToolOptionsView" />
</tool>
</controls>
</insertModule>
</modules>
<categories>
<updateCategory refID="esri_editing_tool_options">
<insertComponent id="GetLineOfSight_LoSToolOptionsView" className="LoSToolOptionsViewViewModel">
<content className="LoSToolOptionsViewView" />
</insertComponent>
</updateCategory>
</categories>
</ArcGIS>
59 changes: 59 additions & 0 deletions 3DAnalyst/GetLineOfSight/GetLineOfSight (C#).md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
## GetLineOfSight

<!-- TODO: Write a brief abstract explaining this sample -->
This sample illustrates how to calculate the line of sight between an observer point and a target point. The line of sight is calculated based on a TIN dataset.



<a href="https://pro.arcgis.com/en/pro-app/sdk/" target="_blank">View it live</a>

<!-- TODO: Fill this section below with metadata about this sample-->
```
Language: C#
Subject: Framework
Contributor: ArcGIS Pro SDK Team <arcgisprosdk@esri.com>
Organization: Esri, https://www.esri.com
Date: 10/01/2023
ArcGIS Pro: 3.2
Visual Studio: 2022
.NET Target Framework: net6.0-windows
```

## Resources

[Community Sample Resources](https://github.com/Esri/arcgis-pro-sdk-community-samples#resources)

### Samples Data

* Sample data for ArcGIS Pro SDK Community Samples can be downloaded from the [Releases](https://github.com/Esri/arcgis-pro-sdk-community-samples/releases) page.

## How to use the sample
<!-- TODO: Explain how this sample can be used. To use images in this section, create the image file in your sample project's screenshots folder. Use relative url to link to this image using this syntax: ![My sample Image](FacePage/SampleImage.png) -->
1. Download the Community Sample data (see under the 'Resources' section for downloading sample data)
2. Make sure that the Sample data is unzipped in c:\data
3. The project used for this sample is 'C:\Data\3DAnalyst\_3DLayersMap.ppkx'
4. In Visual Studio click the Build menu.Then select Build Solution.
5. Launch the debugger to open ArcGIS Pro.
6. ArcGIS Pro will open, select the 3DLayersMap.ppkx project package.
7. Activate the LineOfSight scene.
8. This scene has the following layers in the TOC:
* squaw_tin: TIN Dataset
* LosResults_Input: Line feature layer input for the Line of Sight calculation.
* LosResults: Line Feature Layer that will store the Line of sight result in two components - Visible and Invisible(if there is an obstruction point) sections. Visible section is symbolized in red and Invisible section is symbolized in green.
* LosObstructionPoints: Point feature layer that represents the obstruction points detected in the line of sight.
9. Select the 'Edit' tab on the ArcGIS Pro ribbon and 'Create' new features
10. On the 'Create Features' pane select the LosResults_Input feature layer to see the 'Line of Sight' tool
![UI](Screenshots/LineOfSightTool.png)
11. Select and activate the tool and see the Options page displaying the various parameters for the Line of Sight Tool.
![UI](Screenshots/LineOfSightOptions.png)
12. Enter the parameters you require.
13. Sketch a line on the TIN in the Scene.
14. See a "Line of Sight" profile created for the sketched line. If there is an obstruction, you will also see this point symbolized in red. In this case, the line of sight will have two components - Visible section is symbolized in red and Invisible section is symbolized in green.
![UI](Screenshots/LineOfSightAndObstructionPoint.png)


<!-- End -->

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://esri.github.io/arcgis-pro-sdk/images/ArcGISPro.png" alt="ArcGIS Pro SDK for Microsoft .NET Framework" height = "20" width = "20" align="top" >
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[Home](https://github.com/Esri/arcgis-pro-sdk/wiki) | <a href="https://pro.arcgis.com/en/pro-app/latest/sdk/api-reference" target="_blank">API Reference</a> | [Requirements](https://github.com/Esri/arcgis-pro-sdk/wiki#requirements) | [Download](https://github.com/Esri/arcgis-pro-sdk/wiki#installing-arcgis-pro-sdk-for-net) | <a href="https://github.com/esri/arcgis-pro-sdk-community-samples" target="_blank">Samples</a>
98 changes: 98 additions & 0 deletions 3DAnalyst/GetLineOfSight/GetLineOfSight.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<UseWPF>true</UseWPF>
<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<NoWarn>CA1416</NoWarn>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
</PropertyGroup>
<ItemGroup>
<Content Include="Config.daml" />
<Content Include="Images\AddInDesktop16.png" />
<Content Include="Images\AddInDesktop32.png" />
<Content Include="DarkImages\AddInDesktop16.png" />
<Content Include="DarkImages\AddInDesktop32.png" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Extended.Wpf.Toolkit" Version="4.5.1" />
</ItemGroup>
<ItemGroup>
<Reference Include="ArcGIS.Desktop.Framework">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Framework.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Core">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Core.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Core">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Core\ArcGIS.Desktop.Core.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Mapping">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Mapping\ArcGIS.Desktop.Mapping.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Catalog">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Catalog\ArcGIS.Desktop.Catalog.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Editing">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Editing\ArcGIS.Desktop.Editing.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Extensions">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\DesktopExtensions\ArcGIS.Desktop.Extensions.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.GeoProcessing">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\GeoProcessing\ArcGIS.Desktop.GeoProcessing.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Layouts">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Layout\ArcGIS.Desktop.Layouts.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Shared.Wpf">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Shared.Wpf.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Ribbon.Wpf">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Ribbon.Wpf.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.DataGrid.Contrib.Wpf">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.DataGrid.Contrib.Wpf.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Resources">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Resources.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.ItemIndex">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ESRI.ArcGIS.ItemIndex.dll</HintPath>
<CopyLocal>False</CopyLocal>
<Private>False</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<Folder Include="Screenshots\" />
</ItemGroup>
<Import Project="C:\Program Files\ArcGIS\Pro\bin\Esri.ProApp.SDK.Desktop.targets" Condition="Exists('C:\Program Files\ArcGIS\Pro\bin\Esri.ProApp.SDK.Desktop.targets') AND !Exists('Esri.ArcGISPro.Extensions.targets')" />
</Project>
25 changes: 25 additions & 0 deletions 3DAnalyst/GetLineOfSight/GetLineOfSight.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.4.33213.308
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GetLineOfSight", "GetLineOfSight.csproj", "{6C0505A7-88DB-40E7-A911-EE72649063C8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6C0505A7-88DB-40E7-A911-EE72649063C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6C0505A7-88DB-40E7-A911-EE72649063C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6C0505A7-88DB-40E7-A911-EE72649063C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6C0505A7-88DB-40E7-A911-EE72649063C8}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {D189D1C2-C0B4-4994-8230-5E87854DC8F6}
EndGlobalSection
EndGlobal
Loading

0 comments on commit 70f8c0c

Please sign in to comment.