Skip to content

Commit ca2f53f

Browse files
committed
Add Java Communications demo.
1 parent 1df5966 commit ca2f53f

20 files changed

Lines changed: 9054 additions & 0 deletions

Java/CommunicationsDemo/.classpath

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<classpath>
3+
<classpathentry kind="src" path="src" />
4+
<classpathentry including="LeapSecond.dat|Textures/OverlayToolbar/" kind="src" output="Data" path="commonData" />
5+
<classpathentry including="agi/examples/Insight3DHelper.java|agi/examples/LeapSecondsFacetHelper.java|agi/examples/OverlayToolbar.java|agi/examples/TwoLineElementSetHelper.java" kind="src" path="commonSrc" />
6+
<classpathentry kind="src" output="Data" path="projectData" />
7+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8" />
8+
<classpathentry kind="lib" path="jars/agi.foundation.communications-2019r3.jar">
9+
<attributes>
10+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
11+
</attributes>
12+
</classpathentry>
13+
<classpathentry kind="lib" path="jars/agi.foundation.core-2019r3.jar">
14+
<attributes>
15+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
16+
</attributes>
17+
</classpathentry>
18+
<classpathentry kind="lib" path="jars/agi.foundation.graphics-2019r3.jar">
19+
<attributes>
20+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
21+
<attribute name="org.eclipse.jdt.launching.CLASSPATH_ATTR_LIBRARY_PATH_ENTRY" value="CommunicationsDemo/jars" />
22+
</attributes>
23+
</classpathentry>
24+
<classpathentry kind="lib" path="jars/agi.foundation.models-2019r3.jar">
25+
<attributes>
26+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
27+
</attributes>
28+
</classpathentry>
29+
<classpathentry kind="lib" path="jars/agi.foundation.platforms-2019r3.jar">
30+
<attributes>
31+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
32+
</attributes>
33+
</classpathentry>
34+
<classpathentry kind="lib" path="jars/agi.foundation.platforms.graphics-2019r3.jar">
35+
<attributes>
36+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
37+
</attributes>
38+
</classpathentry>
39+
<classpathentry kind="lib" path="jars/agi.foundation.terrainreaders-2019r3.jar">
40+
<attributes>
41+
<attribute name="javadoc_location" value="jar:platform:/resource/CommunicationsDemo/doc/agi.foundation.javadoc-2019r3.zip!/" />
42+
</attributes>
43+
</classpathentry>
44+
<classpathentry kind="output" path="bin" />
45+
</classpath>

Java/CommunicationsDemo/.project

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>CommunicationsDemo</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.jdt.core.javabuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
13+
</buildSpec>
14+
<natures>
15+
<nature>org.eclipse.jdt.core.javanature</nature>
16+
</natures>
17+
<linkedResources>
18+
<link>
19+
<name>commonData</name>
20+
<type>2</type>
21+
<locationURI>$%7BPARENT-1-PROJECT_LOC%7D/Common/Data</locationURI>
22+
</link>
23+
<link>
24+
<name>commonSrc</name>
25+
<type>2</type>
26+
<locationURI>$%7BPARENT-1-PROJECT_LOC%7D/Common/src</locationURI>
27+
</link>
28+
<link>
29+
<name>doc</name>
30+
<type>2</type>
31+
<locationURI>$%7BPARENT-2-PROJECT_LOC%7D/Documentation</locationURI>
32+
</link>
33+
<link>
34+
<name>jars</name>
35+
<type>2</type>
36+
<locationURI>$%7BPARENT-2-PROJECT_LOC%7D/Jars</locationURI>
37+
</link>
38+
</linkedResources>
39+
<filteredResources>
40+
<filter>
41+
<id>1497896520584</id>
42+
<name></name>
43+
<type>10</type>
44+
<matcher>
45+
<id>org.eclipse.ui.ide.multiFilter</id>
46+
<arguments>1.0-name-matches-false-false-ant</arguments>
47+
</matcher>
48+
</filter>
49+
<filter>
50+
<id>1497896520587</id>
51+
<name></name>
52+
<type>10</type>
53+
<matcher>
54+
<id>org.eclipse.ui.ide.multiFilter</id>
55+
<arguments>1.0-name-matches-false-false-dist</arguments>
56+
</matcher>
57+
</filter>
58+
</filteredResources>
59+
</projectDescription>

Java/CommunicationsDemo/.settings/org.eclipse.jdt.core.prefs

Lines changed: 326 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
cleanup.add_default_serial_version_id=true
2+
cleanup.add_generated_serial_version_id=false
3+
cleanup.add_missing_annotations=true
4+
cleanup.add_missing_deprecated_annotations=true
5+
cleanup.add_missing_methods=false
6+
cleanup.add_missing_nls_tags=false
7+
cleanup.add_missing_override_annotations=true
8+
cleanup.add_missing_override_annotations_interface_methods=true
9+
cleanup.add_serial_version_id=false
10+
cleanup.always_use_blocks=true
11+
cleanup.always_use_parentheses_in_expressions=false
12+
cleanup.always_use_this_for_non_static_field_access=false
13+
cleanup.always_use_this_for_non_static_method_access=false
14+
cleanup.convert_functional_interfaces=true
15+
cleanup.convert_to_enhanced_for_loop=true
16+
cleanup.correct_indentation=false
17+
cleanup.format_source_code=false
18+
cleanup.format_source_code_changes_only=false
19+
cleanup.insert_inferred_type_arguments=false
20+
cleanup.make_local_variable_final=false
21+
cleanup.make_parameters_final=false
22+
cleanup.make_private_fields_final=true
23+
cleanup.make_type_abstract_if_missing_method=false
24+
cleanup.make_variable_declarations_final=true
25+
cleanup.never_use_blocks=false
26+
cleanup.never_use_parentheses_in_expressions=true
27+
cleanup.organize_imports=true
28+
cleanup.qualify_static_field_accesses_with_declaring_class=false
29+
cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
30+
cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
31+
cleanup.qualify_static_member_accesses_with_declaring_class=true
32+
cleanup.qualify_static_method_accesses_with_declaring_class=false
33+
cleanup.remove_private_constructors=true
34+
cleanup.remove_redundant_type_arguments=true
35+
cleanup.remove_trailing_whitespaces=true
36+
cleanup.remove_trailing_whitespaces_all=true
37+
cleanup.remove_trailing_whitespaces_ignore_empty=false
38+
cleanup.remove_unnecessary_casts=true
39+
cleanup.remove_unnecessary_nls_tags=true
40+
cleanup.remove_unused_imports=true
41+
cleanup.remove_unused_local_variables=false
42+
cleanup.remove_unused_private_fields=true
43+
cleanup.remove_unused_private_members=false
44+
cleanup.remove_unused_private_methods=true
45+
cleanup.remove_unused_private_types=true
46+
cleanup.sort_members=false
47+
cleanup.sort_members_all=false
48+
cleanup.use_anonymous_class_creation=false
49+
cleanup.use_blocks=false
50+
cleanup.use_blocks_only_for_return_and_throw=false
51+
cleanup.use_lambda=true
52+
cleanup.use_parentheses_in_expressions=true
53+
cleanup.use_this_for_non_static_field_access=true
54+
cleanup.use_this_for_non_static_field_access_only_if_necessary=true
55+
cleanup.use_this_for_non_static_method_access=true
56+
cleanup.use_this_for_non_static_method_access_only_if_necessary=true
57+
cleanup_profile=_demos
58+
cleanup_settings_version=2
59+
eclipse.preferences.version=1
60+
formatter_profile=_demo settings
61+
formatter_settings_version=14
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2+
<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3+
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4+
<listEntry value="/CommunicationsDemo/src/agi/examples/communicationsdemo/Main.java"/>
5+
</listAttribute>
6+
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7+
<listEntry value="1"/>
8+
</listAttribute>
9+
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
10+
<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
11+
<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
12+
</listAttribute>
13+
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
14+
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="agi.examples.communicationsdemo.Main"/>
15+
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="CommunicationsDemo"/>
16+
</launchConfiguration>
395 KB
Loading

Java/CommunicationsDemo/README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Communications Demo
2+
3+
This application uses the **Communications Library** to setup a call between two locations and visualize the scenario and link budget results. Using [SimpleDigitalTransmitter](http://help.agi.com/AGIComponentsJava/Javadoc/agi-foundation-communications-SimpleDigitalTransmitter.html), [Transceiver](http://help.agi.com/AGIComponentsJava/Javadoc/agi-foundation-communications-Transceiver.html) and [SimpleReceiver](http://help.agi.com/AGIComponentsJava/Javadoc/agi-foundation-communications-SimpleReceiver.html), the application looks at the link budget for the call, allowing the user to vary the transmission power of the calling phone, and on which links to report the link budget parameters. The application also shows how visualization can be incorporated into an analysis scenario, bringing in Insight3D and its various platforms, markers and models. For more information on the Communications Library, see the [Communications](http://help.agi.com/AGIComponentsJava/html/Communications.htm) topic.
4+
5+
![Communications Demo](Images/ExampleCommunicationsDemoJava.png)
6+
7+
## Compilation
8+
9+
To compile this sample application with Ant:
10+
* Copy your AGI.Foundation.lic file into the src directory.
11+
* Run "ant package".
12+
13+
The application will be compiled, packaged into a jar, and placed in the dist
14+
directory. You can then double-click the CommunicationsDemo.jar file to run the
15+
application, or, simply run "ant run".

Java/CommunicationsDemo/build.xml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
<project name="CommunicationsDemo" basedir="." default="package">
2+
<property name="jar.name" value="CommunicationsDemo.jar" />
3+
4+
<property name="output.dir" value="ant" />
5+
<property name="bin.dir" value="${output.dir}/bin" />
6+
<property name="dist.dir" value="dist" />
7+
<property name="jars.dir" value="../../Jars" />
8+
9+
<target name="clean" description="Clean all generated output.">
10+
<delete dir="${output.dir}" />
11+
<delete dir="${dist.dir}" />
12+
</target>
13+
14+
<target name="prepare">
15+
<mkdir dir="${bin.dir}" />
16+
<mkdir dir="${dist.dir}" />
17+
<path id="project.classpath">
18+
<fileset dir="${jars.dir}">
19+
<include name="agi.foundation.core-*.jar" />
20+
<include name="agi.foundation.models-*.jar" />
21+
<include name="agi.foundation.platforms-*.jar" />
22+
<include name="agi.foundation.platforms.graphics-*.jar" />
23+
<include name="agi.foundation.communications-*.jar" />
24+
<include name="agi.foundation.graphics-*.jar" />
25+
<include name="agi.foundation.terrainreaders-*.jar" />
26+
</fileset>
27+
</path>
28+
</target>
29+
30+
<target name="compile" depends="prepare" description="Compile source code.">
31+
<fail message="License not present. Copy your STK Components license file, AGI.Foundation.lic, into the src folder.">
32+
<condition>
33+
<not>
34+
<available file="src/AGI.Foundation.lic" />
35+
</not>
36+
</condition>
37+
</fail>
38+
39+
<javac source="1.8" target="1.8" destdir="${bin.dir}" classpathref="project.classpath" includeantruntime="no">
40+
<src path="src" />
41+
<src path="../Common/src/" />
42+
<include name="agi/examples/communicationsdemo/**" />
43+
</javac>
44+
</target>
45+
46+
<target name="package" depends="compile" description="Package the application into a jar, and copy all needed resources to the dist directory.">
47+
<!-- Copy library jars to the dist directory -->
48+
<copy todir="${dist.dir}" flatten="true">
49+
<path refid="project.classpath" />
50+
</copy>
51+
52+
<!-- Build the jar file containing the application itself -->
53+
<copy todir="${bin.dir}">
54+
<fileset dir="src" excludes="**/*.java" />
55+
</copy>
56+
57+
<pathconvert property="manifest.classpath" pathsep=" ">
58+
<path refid="project.classpath" />
59+
<flattenmapper />
60+
</pathconvert>
61+
62+
<jar destfile="${dist.dir}/${jar.name}">
63+
<fileset dir="${bin.dir}" />
64+
<manifest>
65+
<attribute name="Class-Path" value="${manifest.classpath}" />
66+
<attribute name="Main-Class" value="agi.examples.communicationsdemo.Main" />
67+
</manifest>
68+
</jar>
69+
70+
<!-- Copy other resources to the dist directory -->
71+
<copy todir="${dist.dir}/Data">
72+
<fileset dir="../Common/Data">
73+
<include name="LeapSecond.dat" />
74+
<include name="Textures/OverlayToolbar/**" />
75+
</fileset>
76+
<fileset dir="projectData" includes="**" />
77+
</copy>
78+
<copy todir="${dist.dir}">
79+
<fileset dir="${jars.dir}">
80+
<include name="**/*.dll" />
81+
<include name="**/*.manifest" />
82+
</fileset>
83+
</copy>
84+
</target>
85+
86+
<target name="run" depends="package" description="Build and run the demo application.">
87+
<java fork="true" spawn="true" jar="${dist.dir}/${jar.name}" dir="${dist.dir}" />
88+
</target>
89+
</project>
349 Bytes
Loading
336 Bytes
Loading

0 commit comments

Comments
 (0)