├── .github
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ ├── config.yml
│ └── documentation-report.md
└── workflows
│ ├── build-test.yml
│ └── build.yml
├── .gitignore
├── CHANGELOG.md
├── LICENSE.txt
├── README.md
├── docs
├── docs
│ └── api
│ │ ├── META-INF
│ │ └── MANIFEST.MF
│ │ ├── allclasses-index.html
│ │ ├── allclasses.html
│ │ ├── allpackages-index.html
│ │ ├── constant-values.html
│ │ ├── deprecated-list.html
│ │ ├── element-list
│ │ ├── help-doc.html
│ │ ├── index-all.html
│ │ ├── index.html
│ │ ├── jquery
│ │ ├── external
│ │ │ └── jquery
│ │ │ │ └── jquery.js
│ │ ├── images
│ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png
│ │ │ ├── ui-bg_glass_65_dadada_1x400.png
│ │ │ ├── ui-bg_glass_75_dadada_1x400.png
│ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png
│ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png
│ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png
│ │ │ ├── ui-icons_222222_256x240.png
│ │ │ ├── ui-icons_2e83ff_256x240.png
│ │ │ ├── ui-icons_454545_256x240.png
│ │ │ ├── ui-icons_888888_256x240.png
│ │ │ └── ui-icons_cd0a0a_256x240.png
│ │ ├── jquery-3.5.1.js
│ │ ├── jquery-ui.css
│ │ ├── jquery-ui.js
│ │ ├── jquery-ui.min.css
│ │ ├── jquery-ui.min.js
│ │ ├── jquery-ui.structure.css
│ │ ├── jquery-ui.structure.min.css
│ │ ├── jszip-utils
│ │ │ └── dist
│ │ │ │ ├── jszip-utils-ie.js
│ │ │ │ ├── jszip-utils-ie.min.js
│ │ │ │ ├── jszip-utils.js
│ │ │ │ └── jszip-utils.min.js
│ │ └── jszip
│ │ │ └── dist
│ │ │ ├── jszip.js
│ │ │ └── jszip.min.js
│ │ ├── member-search-index.js
│ │ ├── member-search-index.zip
│ │ ├── mil
│ │ └── nga
│ │ │ └── sf
│ │ │ └── wkb
│ │ │ ├── GeometryCodes.html
│ │ │ ├── GeometryReader.html
│ │ │ ├── GeometryTypeInfo.html
│ │ │ ├── GeometryWriter.html
│ │ │ ├── class-use
│ │ │ ├── GeometryCodes.html
│ │ │ ├── GeometryReader.html
│ │ │ ├── GeometryTypeInfo.html
│ │ │ └── GeometryWriter.html
│ │ │ ├── package-summary.html
│ │ │ ├── package-tree.html
│ │ │ └── package-use.html
│ │ ├── overview-tree.html
│ │ ├── package-search-index.js
│ │ ├── package-search-index.zip
│ │ ├── resources
│ │ ├── glass.png
│ │ └── x.png
│ │ ├── script.js
│ │ ├── search.js
│ │ ├── stylesheet.css
│ │ ├── type-search-index.js
│ │ └── type-search-index.zip
├── index.html
└── stylesheets
│ ├── github-light.css
│ ├── normalize.css
│ └── stylesheet.css
├── pom.xml
└── src
├── main
└── java
│ └── mil
│ └── nga
│ └── sf
│ └── wkb
│ ├── GeometryCodes.java
│ ├── GeometryReader.java
│ ├── GeometryTypeInfo.java
│ └── GeometryWriter.java
└── test
└── java
└── mil
└── nga
└── sf
└── wkb
├── ReadmeTest.java
├── WKBTest.java
└── WKBTestUtils.java
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Report an issue
4 | title: ''
5 | labels: bug
6 | assignees: ''
7 |
8 | ---
9 |
10 | Please fill out as much known and relevant information as possible.
11 |
12 | #### Version Information:
13 |
14 | * SF WKB Java Version:
15 | * SF WKB Java Source: (e.g. Central Repository, Release, Source Code Build)
16 | * IDE Name & Version:
17 | * Maven Version: (mvn -version)
18 | * Java Version: (java -version)
19 | * Platform & OS:
20 | * Other Relevant Libraries:
21 |
22 | #### Expected Results:
23 |
24 | * What did you expect to happen?
25 |
26 | #### Observed Results:
27 |
28 | * What happened instead?
29 | * How often does this occur?
30 |
31 | #### Output:
32 |
33 | * Any logs, errors, or output messages?
34 |
35 | #### Steps to Reproduce:
36 |
37 | 1. Step One
38 | 2. Step Two
39 | 3. ...
40 |
41 | #### Relevant Code:
42 |
43 | ```java
44 | // Code to reproduce the problem?
45 | ```
46 |
47 | #### Test Files:
48 |
49 | * Links to any files needed for testing?
50 |
51 | #### Additional Information:
52 |
53 | * Any additional configuration, data, or information that might help with the issue?
54 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 |
2 | blank_issues_enabled: false
3 | contact_links:
4 | - name: Discussions
5 | url: https://github.com/ngageoint/simple-features-wkb-java/discussions
6 | about: Questions, Feature Requests, Feedback, Conversations
7 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/documentation-report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Documentation report
3 | about: Report a documentation issue
4 | title: ''
5 | labels: documentation
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Describe the documentation issue**
11 | A clear and concise description of what the issue is.
12 |
13 | **Additional context**
14 | Add any other context about the issue here.
15 |
--------------------------------------------------------------------------------
/.github/workflows/build-test.yml:
--------------------------------------------------------------------------------
1 | name: Build & Test
2 |
3 | on:
4 | push:
5 | branches:
6 | - master
7 | pull_request:
8 |
9 | jobs:
10 |
11 | build:
12 |
13 | runs-on: ubuntu-latest
14 |
15 | steps:
16 | - name: Checkout Repository
17 | uses: actions/checkout@v3
18 | - name: Set up JDK 11
19 | uses: actions/setup-java@v3
20 | with:
21 | distribution: 'temurin'
22 | java-version: 11
23 | - name: Build & Test
24 | run: mvn clean package
25 | - name: Copy Release Artifacts
26 | run: |
27 | mkdir target/release
28 | cp pom.xml target/*.jar target/release/
29 | - name: Upload Artifacts
30 | uses: actions/upload-artifact@v1
31 | with:
32 | name: simple-features-wkb
33 | path: target/release
34 |
--------------------------------------------------------------------------------
/.github/workflows/build.yml:
--------------------------------------------------------------------------------
1 | name: Build
2 |
3 | on:
4 | push:
5 | branches-ignore:
6 | - master
7 |
8 | jobs:
9 |
10 | build:
11 |
12 | runs-on: ubuntu-latest
13 |
14 | steps:
15 | - name: Determine Simple Features Repository
16 | uses: frabert/replace-string-action@master
17 | id: sf-repository
18 | with:
19 | pattern: 'wkb-'
20 | string: "${{ github.repository }}"
21 | replace-with: ''
22 | - name: Checkout Simple Features Repository
23 | uses: actions/checkout@v3
24 | with:
25 | repository: ${{ steps.sf-repository.outputs.replaced }}
26 | ref: ${{ github.ref }}
27 | path: simple-features-java
28 | - name: set up JDK 11
29 | uses: actions/setup-java@v3
30 | with:
31 | distribution: 'temurin'
32 | java-version: 11
33 | - name: Build & Install Simple Features
34 | run: mvn -f simple-features-java clean install -DskipTests
35 | - name: Checkout Repository
36 | uses: actions/checkout@v3
37 | - name: Build
38 | run: mvn clean package -DskipTests
39 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /target/
2 | /bin/
3 |
4 | # IntelliJ
5 | .idea
6 | *.iml
7 |
8 | # Eclipse Core
9 | .project
10 | .settings/
11 |
12 | # JDT-specific (Eclipse Java Development Tools)
13 | .classpath
14 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Change Log
2 | All notable changes to this project will be documented in this file.
3 | Adheres to [Semantic Versioning](http://semver.org/).
4 |
5 | ---
6 |
7 | ## 2.2.4 (TBD)
8 |
9 | * TBD
10 |
11 | ## [2.2.3](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.2.3) (04-03-2024)
12 |
13 | * simple-features-java version 2.2.2
14 |
15 | ## [2.2.2](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.2.2) (01-20-2023)
16 |
17 | * simple-features-java version 2.2.1
18 |
19 | ## [2.2.1](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.2.1) (01-13-2023)
20 |
21 | * MultiLineString with CircularStrings byte encoding fix to use MultiCurve
22 |
23 | ## [2.2.0](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.2.0) (09-21-2022)
24 |
25 | * simple-features-java version 2.2.0
26 |
27 | ## [2.1.0](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.1.0) (07-11-2022)
28 |
29 | * simple-features-java version 2.1.0
30 |
31 | ## [2.0.6](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.6) (04-18-2022)
32 |
33 | * simple-features-java version 2.0.6
34 |
35 | ## [2.0.5](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.5) (02-03-2022)
36 |
37 | * simple-features-java version 2.0.5
38 | * Java 11
39 |
40 | ## [2.0.4](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.4) (03-03-2021)
41 |
42 | * simple-features-java version 2.0.4
43 | * Geometry reader/writer instance methods
44 |
45 | ## [2.0.3](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.3) (07-13-2020)
46 |
47 | * simple-features-java version 2.0.3
48 | * Geometry reader/writer shortcut support directly between bytes and geometries
49 | * Geometry Filter support
50 | * Geometry Code retrieval method by geometry type, has z, and has m
51 |
52 | ## [2.0.2](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.2) (07-08-2019)
53 |
54 | * simple-features-java version 2.0.2
55 |
56 | ## [2.0.1](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.1) (04-01-2019)
57 |
58 | * simple-features-java version 2.0.1
59 | * Eclipse project cleanup
60 |
61 | ## [2.0.0](https://github.com/ngageoint/simple-features-wkb-java/releases/tag/2.0.0) (05-17-2018)
62 |
63 | * Simple Features refactor, geopackage-wkb-java refactored to be simple-features-wkb-java
64 | * "Wkb" prefix dropped from the Geometry Reader and Writer classes
65 | * Common simple features code moved to new dependency, [simple-features-java](https://github.com/ngageoint/simple-features-java). Requires package name changes.
66 | * Geometry Codes WKB utility class
67 |
68 | ## [1.0.6](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.6) (05-02-2018)
69 |
70 | * MultiCurve and MultiSurface read support
71 | * MultiCurve and MultiSurface write support as Extended Geometry Collections
72 | * Geometry Collection utility methods for collection type checks and conversions
73 | * Handle reading 2.5D geometry type codes
74 |
75 | ## [1.0.5](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.5) (02-13-2018)
76 |
77 | * Additional Curve Polygon support
78 | * Geometry utilities: pointInPolygon, pointOnPolygonEdge, closedPolygon, pointOnLine, and pointOnPath
79 | * Shamos-Hoey simple polygon detection
80 |
81 | ## [1.0.4](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.4) (11-20-2017)
82 |
83 | * Douglas Peucker algorithm for geometry simplification
84 | * maven-gpg-plugin version 1.6
85 |
86 | ## [1.0.3](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.3) (06-12-2017)
87 |
88 | * Shortcut default constructors for Geometry objects without z or m values
89 | * Geometry utilities including centroid, minimize for antimeridian support, and normalize
90 | * Geometry copy methods and constructors
91 |
92 | ## [1.0.2](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.2) (04-18-2016)
93 |
94 | * Geometry to JSON Compatible object utility
95 |
96 | ## [1.0.1](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.1) (11-20-2015)
97 |
98 | * Added tests - [Issue #6](https://github.com/ngageoint/geopackage-wkb-java/issues/6)
99 |
100 | ## [1.0.0](https://github.com/ngageoint/geopackage-wkb-java/releases/tag/1.0.0) (09-15-2015)
101 |
102 | * Initial Release
103 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 Bit Systems
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Simple Features WKB Java
2 |
3 | #### Simple Features Well Known Binary Lib ####
4 |
5 | The Simple Features Libraries were developed at the [National Geospatial-Intelligence Agency (NGA)](http://www.nga.mil/) in collaboration with [BIT Systems](https://www.caci.com/bit-systems/). The government has "unlimited rights" and is releasing this software to increase the impact of government investments by providing developers with the opportunity to take things in new directions. The software use, modification, and distribution rights are stipulated within the [MIT license](http://choosealicense.com/licenses/mit/).
6 |
7 | ### Pull Requests ###
8 | If you'd like to contribute to this project, please make a pull request. We'll review the pull request and discuss the changes. All pull request contributions to this project will be released under the MIT license.
9 |
10 | Software source code previously released under an open source license and then modified by NGA staff is considered a "joint work" (see 17 USC § 101); it is partially copyrighted, partially public domain, and as a whole is protected by the copyrights of the non-government authors and must be released according to the terms of the original open source license.
11 |
12 | ### About ###
13 |
14 | [Simple Features WKB](http://ngageoint.github.io/simple-features-wkb-java/) is a Java library for writing and reading [Simple Feature](https://github.com/ngageoint/simple-features-java) Geometries to and from Well-Known Binary.
15 |
16 | ### Usage ###
17 |
18 | View the latest [Javadoc](http://ngageoint.github.io/simple-features-wkb-java/docs/api/)
19 |
20 | #### Read ####
21 |
22 | ```java
23 |
24 | // byte[] bytes = ...
25 |
26 | Geometry geometry = GeometryReader.readGeometry(bytes);
27 | GeometryType geometryType = geometry.getGeometryType();
28 |
29 | ```
30 |
31 | #### Write ####
32 |
33 | ```java
34 |
35 | // Geometry geometry = ...
36 |
37 | byte[] bytes = GeometryWriter.writeGeometry(geometry);
38 |
39 | ```
40 |
41 | ### Installation ###
42 |
43 | Pull from the [Maven Central Repository](http://search.maven.org/#artifactdetails|mil.nga.sf|sf-wkb|2.2.3|jar) (JAR, POM, Source, Javadoc)
44 |
45 | ```xml
46 |
47 |
48 | mil.nga.sf
49 | sf-wkb
50 | 2.2.3
51 |
52 |
53 | ```
54 |
55 | ### Build ###
56 |
57 | [](https://github.com/ngageoint/simple-features-wkb-java/actions/workflows/build-test.yml)
58 |
59 | Build this repository using Eclipse and/or Maven:
60 |
61 | mvn clean install
62 |
63 | ### Remote Dependencies ###
64 |
65 | * [Simple Features](https://github.com/ngageoint/simple-features-java) (The MIT License (MIT)) - Simple Features Lib
66 |
--------------------------------------------------------------------------------
/docs/docs/api/META-INF/MANIFEST.MF:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 | Created-By: Maven Javadoc Plugin 3.6.3
3 | Build-Jdk-Spec: 11
4 |
5 |
--------------------------------------------------------------------------------
/docs/docs/api/allclasses-index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | All Classes (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 |
99 |
100 |
101 |
102 | Class Summary
103 |
104 | Class
105 | Description
106 |
107 |
108 | GeometryCodes
109 |
110 | Geometry Code utilities to convert between geometry attributes and geometry
111 | codes
112 |
113 |
114 |
115 | GeometryReader
116 |
117 | Well Known Binary reader
118 |
119 |
120 |
121 | GeometryTypeInfo
122 |
123 | Geometry type info
124 |
125 |
126 |
127 | GeometryWriter
128 |
129 | Well Known Binary writer
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
183 |
184 |
185 |
--------------------------------------------------------------------------------
/docs/docs/api/allclasses.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | All Classes (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 | All Classes
22 |
23 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/docs/docs/api/allpackages-index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | All Packages (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 |
99 |
100 |
101 |
102 | Package Summary
103 |
104 | Package
105 | Description
106 |
107 |
108 |
109 | mil.nga.sf.wkb
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
164 |
165 |
166 |
--------------------------------------------------------------------------------
/docs/docs/api/constant-values.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Constant Field Values (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
101 |
102 |
148 |
149 |
150 |
--------------------------------------------------------------------------------
/docs/docs/api/deprecated-list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Deprecated List (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
99 |
100 |
146 |
147 |
148 |
--------------------------------------------------------------------------------
/docs/docs/api/element-list:
--------------------------------------------------------------------------------
1 | mil.nga.sf.wkb
2 |
--------------------------------------------------------------------------------
/docs/docs/api/help-doc.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | API Help (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
99 |
100 |
101 |
102 |
103 | Package
104 | Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain six categories:
105 |
106 | Interfaces
107 | Classes
108 | Enums
109 | Exceptions
110 | Errors
111 | Annotation Types
112 |
113 |
114 |
115 |
116 |
117 | Class or Interface
118 | Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:
119 |
120 | Class Inheritance Diagram
121 | Direct Subclasses
122 | All Known Subinterfaces
123 | All Known Implementing Classes
124 | Class or Interface Declaration
125 | Class or Interface Description
126 |
127 |
128 |
129 | Nested Class Summary
130 | Field Summary
131 | Property Summary
132 | Constructor Summary
133 | Method Summary
134 |
135 |
136 |
137 | Field Detail
138 | Property Detail
139 | Constructor Detail
140 | Method Detail
141 |
142 | Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
143 |
144 |
145 |
146 |
147 | Annotation Type
148 | Each annotation type has its own separate page with the following sections:
149 |
150 | Annotation Type Declaration
151 | Annotation Type Description
152 | Required Element Summary
153 | Optional Element Summary
154 | Element Detail
155 |
156 |
157 |
158 |
159 |
160 | Enum
161 | Each enum has its own separate page with the following sections:
162 |
163 | Enum Declaration
164 | Enum Description
165 | Enum Constant Summary
166 | Enum Constant Detail
167 |
168 |
169 |
170 |
171 |
172 | Use
173 | Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its "Use" page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
174 |
175 |
176 |
177 |
178 | Tree (Class Hierarchy)
179 | There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object
. Interfaces do not inherit from java.lang.Object
.
180 |
181 | When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
182 | When viewing a particular package, class or interface page, clicking on "Tree" displays the hierarchy for only that package.
183 |
184 |
185 |
186 |
187 |
188 | Deprecated API
189 | The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
190 |
191 |
192 |
193 |
194 | Index
195 | The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields, as well as lists of all packages and all classes.
196 |
197 |
198 |
199 |
200 | All Classes
201 | The All Classes link shows all classes and interfaces except non-static nested types.
202 |
203 |
204 |
205 |
206 | Serialized Form
207 | Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.
208 |
209 |
210 |
211 |
212 | Constant Field Values
213 | The Constant Field Values page lists the static final fields and their values.
214 |
215 |
216 |
217 |
218 | Search
219 | You can search for definitions of modules, packages, types, fields, methods and other terms defined in the API, using some or all of the name. "Camel-case" abbreviations are supported: for example, "InpStr" will find "InputStream" and "InputStreamReader".
220 |
221 |
222 |
223 |
224 |
This help file applies to API documentation generated by the standard doclet.
225 |
226 |
272 |
273 |
274 |
--------------------------------------------------------------------------------
/docs/docs/api/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Simple Features Well-Known Binary 2.2.3 API
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | JavaScript is disabled on your browser.
19 |
20 | mil/nga/sf/wkb/package-summary.html
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-bg_glass_65_dadada_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-bg_glass_65_dadada_1x400.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-bg_glass_75_dadada_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-bg_glass_75_dadada_1x400.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-bg_glass_95_fef1ec_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-bg_glass_95_fef1ec_1x400.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-icons_222222_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-icons_222222_256x240.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-icons_2e83ff_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-icons_2e83ff_256x240.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-icons_454545_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-icons_454545_256x240.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-icons_888888_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-icons_888888_256x240.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/images/ui-icons_cd0a0a_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/jquery/images/ui-icons_cd0a0a_256x240.png
--------------------------------------------------------------------------------
/docs/docs/api/jquery/jquery-ui.min.css:
--------------------------------------------------------------------------------
1 | /*! jQuery UI - v1.12.1 - 2018-12-06
2 | * http://jqueryui.com
3 | * Includes: core.css, autocomplete.css, menu.css, theme.css
4 | * To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=custom-theme&bgImgOpacityError=95&bgImgOpacityHighlight=55&bgImgOpacityActive=65&bgImgOpacityHover=75&bgImgOpacityDefault=75&bgImgOpacityContent=75&bgImgOpacityHeader=75&cornerRadiusShadow=8px&offsetLeftShadow=-8px&offsetTopShadow=-8px&thicknessShadow=8px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=%23aaaaaa&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=%23aaaaaa&iconColorError=%23cd0a0a&fcError=%23cd0a0a&borderColorError=%23cd0a0a&bgTextureError=glass&bgColorError=%23fef1ec&iconColorHighlight=%232e83ff&fcHighlight=%23363636&borderColorHighlight=%23fcefa1&bgTextureHighlight=glass&bgColorHighlight=%23fbf9ee&iconColorActive=%23454545&fcActive=%23212121&borderColorActive=%23aaaaaa&bgTextureActive=glass&bgColorActive=%23dadada&iconColorHover=%23454545&fcHover=%23212121&borderColorHover=%23999999&bgTextureHover=glass&bgColorHover=%23dadada&iconColorDefault=%23888888&fcDefault=%23555555&borderColorDefault=%23d3d3d3&bgTextureDefault=glass&bgColorDefault=%23e6e6e6&iconColorContent=%23222222&fcContent=%23222222&borderColorContent=%23aaaaaa&bgTextureContent=flat&bgColorContent=%23ffffff&iconColorHeader=%23222222&fcHeader=%23222222&borderColorHeader=%23aaaaaa&bgTextureHeader=highlight_soft&bgColorHeader=%23cccccc&cornerRadius=4px&fwDefault=normal&fsDefault=1.1em&ffDefault=Verdana%2CArial%2Csans-serif
5 | * Copyright jQuery Foundation and other contributors; Licensed MIT */
6 |
7 | .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #d3d3d3}.ui-widget-content{border:1px solid #aaa;background:#fff;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #d3d3d3;background:#e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #999;background:#dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#212121;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #aaa;background:#dadada url("images/ui-bg_glass_65_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-icon-background,.ui-state-active .ui-icon-background{border:#aaa;background-color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;color:#363636}.ui-state-checked{border:1px solid #fcefa1;background:#fbf9ee}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_2e83ff_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_888888_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:-8px -8px 8px #aaa;box-shadow:-8px -8px 8px #aaa}
--------------------------------------------------------------------------------
/docs/docs/api/jquery/jquery-ui.structure.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * jQuery UI CSS Framework 1.12.1
3 | * http://jqueryui.com
4 | *
5 | * Copyright jQuery Foundation and other contributors
6 | * Released under the MIT license.
7 | * http://jquery.org/license
8 | *
9 | * http://api.jqueryui.com/category/theming/
10 | */
11 | /* Layout helpers
12 | ----------------------------------*/
13 | .ui-helper-hidden {
14 | display: none;
15 | }
16 | .ui-helper-hidden-accessible {
17 | border: 0;
18 | clip: rect(0 0 0 0);
19 | height: 1px;
20 | margin: -1px;
21 | overflow: hidden;
22 | padding: 0;
23 | position: absolute;
24 | width: 1px;
25 | }
26 | .ui-helper-reset {
27 | margin: 0;
28 | padding: 0;
29 | border: 0;
30 | outline: 0;
31 | line-height: 1.3;
32 | text-decoration: none;
33 | font-size: 100%;
34 | list-style: none;
35 | }
36 | .ui-helper-clearfix:before,
37 | .ui-helper-clearfix:after {
38 | content: "";
39 | display: table;
40 | border-collapse: collapse;
41 | }
42 | .ui-helper-clearfix:after {
43 | clear: both;
44 | }
45 | .ui-helper-zfix {
46 | width: 100%;
47 | height: 100%;
48 | top: 0;
49 | left: 0;
50 | position: absolute;
51 | opacity: 0;
52 | filter:Alpha(Opacity=0); /* support: IE8 */
53 | }
54 |
55 | .ui-front {
56 | z-index: 100;
57 | }
58 |
59 |
60 | /* Interaction Cues
61 | ----------------------------------*/
62 | .ui-state-disabled {
63 | cursor: default !important;
64 | pointer-events: none;
65 | }
66 |
67 |
68 | /* Icons
69 | ----------------------------------*/
70 | .ui-icon {
71 | display: inline-block;
72 | vertical-align: middle;
73 | margin-top: -.25em;
74 | position: relative;
75 | text-indent: -99999px;
76 | overflow: hidden;
77 | background-repeat: no-repeat;
78 | }
79 |
80 | .ui-widget-icon-block {
81 | left: 50%;
82 | margin-left: -8px;
83 | display: block;
84 | }
85 |
86 | /* Misc visuals
87 | ----------------------------------*/
88 |
89 | /* Overlays */
90 | .ui-widget-overlay {
91 | position: fixed;
92 | top: 0;
93 | left: 0;
94 | width: 100%;
95 | height: 100%;
96 | }
97 | .ui-autocomplete {
98 | position: absolute;
99 | top: 0;
100 | left: 0;
101 | cursor: default;
102 | }
103 | .ui-menu {
104 | list-style: none;
105 | padding: 0;
106 | margin: 0;
107 | display: block;
108 | outline: 0;
109 | }
110 | .ui-menu .ui-menu {
111 | position: absolute;
112 | }
113 | .ui-menu .ui-menu-item {
114 | margin: 0;
115 | cursor: pointer;
116 | /* support: IE10, see #8844 */
117 | list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
118 | }
119 | .ui-menu .ui-menu-item-wrapper {
120 | position: relative;
121 | padding: 3px 1em 3px .4em;
122 | }
123 | .ui-menu .ui-menu-divider {
124 | margin: 5px 0;
125 | height: 0;
126 | font-size: 0;
127 | line-height: 0;
128 | border-width: 1px 0 0 0;
129 | }
130 | .ui-menu .ui-state-focus,
131 | .ui-menu .ui-state-active {
132 | margin: -1px;
133 | }
134 |
135 | /* icon support */
136 | .ui-menu-icons {
137 | position: relative;
138 | }
139 | .ui-menu-icons .ui-menu-item-wrapper {
140 | padding-left: 2em;
141 | }
142 |
143 | /* left-aligned */
144 | .ui-menu .ui-icon {
145 | position: absolute;
146 | top: 0;
147 | bottom: 0;
148 | left: .2em;
149 | margin: auto 0;
150 | }
151 |
152 | /* right-aligned */
153 | .ui-menu .ui-menu-icon {
154 | left: auto;
155 | right: 0;
156 | }
157 |
--------------------------------------------------------------------------------
/docs/docs/api/jquery/jquery-ui.structure.min.css:
--------------------------------------------------------------------------------
1 | /*! jQuery UI - v1.12.1 - 2018-12-06
2 | * http://jqueryui.com
3 | * Copyright jQuery Foundation and other contributors; Licensed MIT */
4 |
5 | .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}
--------------------------------------------------------------------------------
/docs/docs/api/jquery/jszip-utils/dist/jszip-utils-ie.js:
--------------------------------------------------------------------------------
1 | /*!
2 |
3 | JSZipUtils - A collection of cross-browser utilities to go along with JSZip.
4 |
5 |
6 | (c) 2014 Stuart Knightley, David Duponchel
7 | Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown.
8 |
9 | */
10 | ;(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o\r\n"+
18 | "\r\n";
32 |
33 | // inject VBScript
34 | document.write(IEBinaryToArray_ByteStr_Script);
35 |
36 | global.JSZipUtils._getBinaryFromXHR = function (xhr) {
37 | var binary = xhr.responseBody;
38 | var byteMapping = {};
39 | for ( var i = 0; i < 256; i++ ) {
40 | for ( var j = 0; j < 256; j++ ) {
41 | byteMapping[ String.fromCharCode( i + (j << 8) ) ] =
42 | String.fromCharCode(i) + String.fromCharCode(j);
43 | }
44 | }
45 | var rawBytes = IEBinaryToArray_ByteStr(binary);
46 | var lastChr = IEBinaryToArray_ByteStr_Last(binary);
47 | return rawBytes.replace(/[\s\S]/g, function( match ) {
48 | return byteMapping[match];
49 | }) + lastChr;
50 | };
51 |
52 | // enforcing Stuk's coding style
53 | // vim: set shiftwidth=4 softtabstop=4:
54 |
55 | },{}]},{},[1])
56 | ;
57 |
--------------------------------------------------------------------------------
/docs/docs/api/jquery/jszip-utils/dist/jszip-utils-ie.min.js:
--------------------------------------------------------------------------------
1 | /*!
2 |
3 | JSZipUtils - A collection of cross-browser utilities to go along with JSZip.
4 |
5 |
6 | (c) 2014 Stuart Knightley, David Duponchel
7 | Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown.
8 |
9 | */
10 | !function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g\r\n\r\n";document.write(b),a.JSZipUtils._getBinaryFromXHR=function(a){for(var b=a.responseBody,c={},d=0;256>d;d++)for(var e=0;256>e;e++)c[String.fromCharCode(d+(e<<8))]=String.fromCharCode(d)+String.fromCharCode(e);var f=IEBinaryToArray_ByteStr(b),g=IEBinaryToArray_ByteStr_Last(b);return f.replace(/[\s\S]/g,function(a){return c[a]})+g}},{}]},{},[1]);
11 |
--------------------------------------------------------------------------------
/docs/docs/api/jquery/jszip-utils/dist/jszip-utils.js:
--------------------------------------------------------------------------------
1 | /*!
2 |
3 | JSZipUtils - A collection of cross-browser utilities to go along with JSZip.
4 |
5 |
6 | (c) 2014 Stuart Knightley, David Duponchel
7 | Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown.
8 |
9 | */
10 | !function(e){"object"==typeof exports?module.exports=e():"function"==typeof define&&define.amd?define(e):"undefined"!=typeof window?window.JSZipUtils=e():"undefined"!=typeof global?global.JSZipUtils=e():"undefined"!=typeof self&&(self.JSZipUtils=e())}(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o
5 |
6 | (c) 2014 Stuart Knightley, David Duponchel
7 | Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown.
8 |
9 | */
10 | !function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.JSZipUtils=a():"undefined"!=typeof global?global.JSZipUtils=a():"undefined"!=typeof self&&(self.JSZipUtils=a())}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g)","url":"read(java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"read(GeometryFilter, Class)","url":"read(mil.nga.sf.util.filter.GeometryFilter,java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"read(GeometryFilter, GeometryType, Class)","url":"read(mil.nga.sf.util.filter.GeometryFilter,mil.nga.sf.GeometryType,java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"read(GeometryFilter)","url":"read(mil.nga.sf.util.filter.GeometryFilter)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCircularString(boolean, boolean)","url":"readCircularString(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCircularString(ByteReader, boolean, boolean)","url":"readCircularString(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCircularString(ByteReader, GeometryFilter, boolean, boolean)","url":"readCircularString(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCircularString(GeometryFilter, boolean, boolean)","url":"readCircularString(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCompoundCurve(boolean, boolean)","url":"readCompoundCurve(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCompoundCurve(ByteReader, boolean, boolean)","url":"readCompoundCurve(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCompoundCurve(ByteReader, GeometryFilter, boolean, boolean)","url":"readCompoundCurve(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCompoundCurve(GeometryFilter, boolean, boolean)","url":"readCompoundCurve(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCurvePolygon(boolean, boolean)","url":"readCurvePolygon(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCurvePolygon(ByteReader, boolean, boolean)","url":"readCurvePolygon(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCurvePolygon(ByteReader, GeometryFilter, boolean, boolean)","url":"readCurvePolygon(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readCurvePolygon(GeometryFilter, boolean, boolean)","url":"readCurvePolygon(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(byte[], Class)","url":"readGeometry(byte[],java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(byte[], GeometryFilter, Class)","url":"readGeometry(byte[],mil.nga.sf.util.filter.GeometryFilter,java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(byte[], GeometryFilter)","url":"readGeometry(byte[],mil.nga.sf.util.filter.GeometryFilter)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(byte[])"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(ByteReader, Class)","url":"readGeometry(mil.nga.sf.util.ByteReader,java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(ByteReader, GeometryFilter, Class)","url":"readGeometry(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(ByteReader, GeometryFilter, GeometryType, Class)","url":"readGeometry(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,mil.nga.sf.GeometryType,java.lang.Class)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(ByteReader, GeometryFilter)","url":"readGeometry(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometry(ByteReader)","url":"readGeometry(mil.nga.sf.util.ByteReader)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometryCollection(boolean, boolean)","url":"readGeometryCollection(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometryCollection(ByteReader, boolean, boolean)","url":"readGeometryCollection(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometryCollection(ByteReader, GeometryFilter, boolean, boolean)","url":"readGeometryCollection(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometryCollection(GeometryFilter, boolean, boolean)","url":"readGeometryCollection(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometryType()"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readGeometryType(ByteReader)","url":"readGeometryType(mil.nga.sf.util.ByteReader)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readLineString(boolean, boolean)","url":"readLineString(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readLineString(ByteReader, boolean, boolean)","url":"readLineString(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readLineString(ByteReader, GeometryFilter, boolean, boolean)","url":"readLineString(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readLineString(GeometryFilter, boolean, boolean)","url":"readLineString(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiLineString(boolean, boolean)","url":"readMultiLineString(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiLineString(ByteReader, boolean, boolean)","url":"readMultiLineString(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiLineString(ByteReader, GeometryFilter, boolean, boolean)","url":"readMultiLineString(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiLineString(GeometryFilter, boolean, boolean)","url":"readMultiLineString(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPoint(boolean, boolean)","url":"readMultiPoint(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPoint(ByteReader, boolean, boolean)","url":"readMultiPoint(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPoint(ByteReader, GeometryFilter, boolean, boolean)","url":"readMultiPoint(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPoint(GeometryFilter, boolean, boolean)","url":"readMultiPoint(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPolygon(boolean, boolean)","url":"readMultiPolygon(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPolygon(ByteReader, boolean, boolean)","url":"readMultiPolygon(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPolygon(ByteReader, GeometryFilter, boolean, boolean)","url":"readMultiPolygon(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readMultiPolygon(GeometryFilter, boolean, boolean)","url":"readMultiPolygon(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPoint(boolean, boolean)","url":"readPoint(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPoint(ByteReader, boolean, boolean)","url":"readPoint(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolygon(boolean, boolean)","url":"readPolygon(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolygon(ByteReader, boolean, boolean)","url":"readPolygon(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolygon(ByteReader, GeometryFilter, boolean, boolean)","url":"readPolygon(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolygon(GeometryFilter, boolean, boolean)","url":"readPolygon(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolyhedralSurface(boolean, boolean)","url":"readPolyhedralSurface(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolyhedralSurface(ByteReader, boolean, boolean)","url":"readPolyhedralSurface(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolyhedralSurface(ByteReader, GeometryFilter, boolean, boolean)","url":"readPolyhedralSurface(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readPolyhedralSurface(GeometryFilter, boolean, boolean)","url":"readPolyhedralSurface(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTIN(boolean, boolean)","url":"readTIN(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTIN(ByteReader, boolean, boolean)","url":"readTIN(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTIN(ByteReader, GeometryFilter, boolean, boolean)","url":"readTIN(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTIN(GeometryFilter, boolean, boolean)","url":"readTIN(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTriangle(boolean, boolean)","url":"readTriangle(boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTriangle(ByteReader, boolean, boolean)","url":"readTriangle(mil.nga.sf.util.ByteReader,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTriangle(ByteReader, GeometryFilter, boolean, boolean)","url":"readTriangle(mil.nga.sf.util.ByteReader,mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryReader","l":"readTriangle(GeometryFilter, boolean, boolean)","url":"readTriangle(mil.nga.sf.util.filter.GeometryFilter,boolean,boolean)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"write(Geometry)","url":"write(mil.nga.sf.Geometry)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeCircularString(ByteWriter, CircularString)","url":"writeCircularString(mil.nga.sf.util.ByteWriter,mil.nga.sf.CircularString)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeCircularString(CircularString)","url":"writeCircularString(mil.nga.sf.CircularString)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeCompoundCurve(ByteWriter, CompoundCurve)","url":"writeCompoundCurve(mil.nga.sf.util.ByteWriter,mil.nga.sf.CompoundCurve)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeCompoundCurve(CompoundCurve)","url":"writeCompoundCurve(mil.nga.sf.CompoundCurve)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeCurvePolygon(ByteWriter, CurvePolygon>)","url":"writeCurvePolygon(mil.nga.sf.util.ByteWriter,mil.nga.sf.CurvePolygon)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeCurvePolygon(CurvePolygon>)","url":"writeCurvePolygon(mil.nga.sf.CurvePolygon)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeGeometry(ByteWriter, Geometry)","url":"writeGeometry(mil.nga.sf.util.ByteWriter,mil.nga.sf.Geometry)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeGeometry(Geometry, ByteOrder)","url":"writeGeometry(mil.nga.sf.Geometry,java.nio.ByteOrder)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeGeometry(Geometry)","url":"writeGeometry(mil.nga.sf.Geometry)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeGeometryCollection(ByteWriter, GeometryCollection>)","url":"writeGeometryCollection(mil.nga.sf.util.ByteWriter,mil.nga.sf.GeometryCollection)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeGeometryCollection(GeometryCollection>)","url":"writeGeometryCollection(mil.nga.sf.GeometryCollection)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeLineString(ByteWriter, LineString)","url":"writeLineString(mil.nga.sf.util.ByteWriter,mil.nga.sf.LineString)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeLineString(LineString)","url":"writeLineString(mil.nga.sf.LineString)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeM(Point)","url":"writeM(mil.nga.sf.Point)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeMultiLineString(ByteWriter, MultiLineString)","url":"writeMultiLineString(mil.nga.sf.util.ByteWriter,mil.nga.sf.MultiLineString)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeMultiLineString(MultiLineString)","url":"writeMultiLineString(mil.nga.sf.MultiLineString)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeMultiPoint(ByteWriter, MultiPoint)","url":"writeMultiPoint(mil.nga.sf.util.ByteWriter,mil.nga.sf.MultiPoint)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeMultiPoint(MultiPoint)","url":"writeMultiPoint(mil.nga.sf.MultiPoint)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeMultiPolygon(ByteWriter, MultiPolygon)","url":"writeMultiPolygon(mil.nga.sf.util.ByteWriter,mil.nga.sf.MultiPolygon)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeMultiPolygon(MultiPolygon)","url":"writeMultiPolygon(mil.nga.sf.MultiPolygon)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writePoint(ByteWriter, Point)","url":"writePoint(mil.nga.sf.util.ByteWriter,mil.nga.sf.Point)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writePoint(Point)","url":"writePoint(mil.nga.sf.Point)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writePolygon(ByteWriter, Polygon)","url":"writePolygon(mil.nga.sf.util.ByteWriter,mil.nga.sf.Polygon)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writePolygon(Polygon)","url":"writePolygon(mil.nga.sf.Polygon)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writePolyhedralSurface(ByteWriter, PolyhedralSurface)","url":"writePolyhedralSurface(mil.nga.sf.util.ByteWriter,mil.nga.sf.PolyhedralSurface)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writePolyhedralSurface(PolyhedralSurface)","url":"writePolyhedralSurface(mil.nga.sf.PolyhedralSurface)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeTIN(ByteWriter, TIN)","url":"writeTIN(mil.nga.sf.util.ByteWriter,mil.nga.sf.TIN)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeTIN(TIN)","url":"writeTIN(mil.nga.sf.TIN)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeTriangle(ByteWriter, Triangle)","url":"writeTriangle(mil.nga.sf.util.ByteWriter,mil.nga.sf.Triangle)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeTriangle(Triangle)","url":"writeTriangle(mil.nga.sf.Triangle)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeXY(Point)","url":"writeXY(mil.nga.sf.Point)"},{"p":"mil.nga.sf.wkb","c":"GeometryWriter","l":"writeZ(Point)","url":"writeZ(mil.nga.sf.Point)"}]
--------------------------------------------------------------------------------
/docs/docs/api/member-search-index.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/member-search-index.zip
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/GeometryTypeInfo.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | GeometryTypeInfo (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
39 |
40 | JavaScript is disabled on your browser.
41 |
42 |
43 |
44 |
45 |
46 |
63 |
64 |
67 |
73 |
74 |
84 |
85 | JavaScript is disabled on your browser.
86 |
87 |
88 |
89 |
90 | Summary:
91 | Nested |
92 | Field |
93 | Constr |
94 | Method
95 |
96 |
97 | Detail:
98 | Field |
99 | Constr |
100 | Method
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
113 |
114 |
115 |
116 |
117 |
121 |
122 |
123 | java.lang.Object
124 |
125 |
126 | mil.nga.sf.wkb.GeometryTypeInfo
127 |
128 |
129 |
130 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 | Method Summary
154 |
155 | All Methods Instance Methods Concrete Methods
156 |
157 | Modifier and Type
158 | Method
159 | Description
160 |
161 |
162 | GeometryType
163 | getGeometryType ()
164 |
165 | Get the geometry type
166 |
167 |
168 |
169 | int
170 | getGeometryTypeCode ()
171 |
172 | Get the geometry type code
173 |
174 |
175 |
176 | boolean
177 | hasM ()
178 |
179 | Has m values
180 |
181 |
182 |
183 | boolean
184 | hasZ ()
185 |
186 | Has z values
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 | Methods inherited from class java.lang.Object
195 | clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 | Method Detail
213 |
214 |
215 |
216 |
227 |
228 |
229 |
230 |
241 |
242 |
243 |
244 |
245 |
246 | hasZ
247 | public boolean hasZ()
248 | Has z values
249 |
250 | Returns:
251 | true if has z values
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 | hasM
261 | public boolean hasM()
262 | Has m values
263 |
264 | Returns:
265 | true if has m values
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
339 |
340 |
341 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/class-use/GeometryCodes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Uses of Class mil.nga.sf.wkb.GeometryCodes (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 | No usage of mil.nga.sf.wkb.GeometryCodes
99 |
100 |
146 |
147 |
148 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/class-use/GeometryReader.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Uses of Class mil.nga.sf.wkb.GeometryReader (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 | No usage of mil.nga.sf.wkb.GeometryReader
99 |
100 |
146 |
147 |
148 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/class-use/GeometryTypeInfo.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Uses of Class mil.nga.sf.wkb.GeometryTypeInfo (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 |
137 |
138 |
184 |
185 |
186 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/class-use/GeometryWriter.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Uses of Class mil.nga.sf.wkb.GeometryWriter (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 | No usage of mil.nga.sf.wkb.GeometryWriter
99 |
100 |
146 |
147 |
148 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/package-summary.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | mil.nga.sf.wkb (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 |
99 |
100 |
101 |
102 | Class Summary
103 |
104 | Class
105 | Description
106 |
107 |
108 |
109 | GeometryCodes
110 |
111 | Geometry Code utilities to convert between geometry attributes and geometry
112 | codes
113 |
114 |
115 |
116 | GeometryReader
117 |
118 | Well Known Binary reader
119 |
120 |
121 |
122 | GeometryTypeInfo
123 |
124 | Geometry type info
125 |
126 |
127 |
128 | GeometryWriter
129 |
130 | Well Known Binary writer
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
185 |
186 |
187 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/package-tree.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | mil.nga.sf.wkb Class Hierarchy (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 |
99 |
100 | Class Hierarchy
101 |
102 | java.lang.Object
103 |
109 |
110 |
111 |
112 |
113 |
114 |
160 |
161 |
162 |
--------------------------------------------------------------------------------
/docs/docs/api/mil/nga/sf/wkb/package-use.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Uses of Package mil.nga.sf.wkb (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
98 |
121 |
122 |
168 |
169 |
170 |
--------------------------------------------------------------------------------
/docs/docs/api/overview-tree.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Class Hierarchy (Simple Features Well-Known Binary 2.2.3 API)
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
33 |
34 | JavaScript is disabled on your browser.
35 |
36 |
37 |
38 |
39 |
40 |
57 |
58 |
61 |
67 |
68 |
78 |
79 | JavaScript is disabled on your browser.
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
92 |
93 |
94 |
95 |
102 |
103 |
104 | Class Hierarchy
105 |
106 | java.lang.Object
107 |
113 |
114 |
115 |
116 |
117 |
118 |
164 |
165 |
166 |
--------------------------------------------------------------------------------
/docs/docs/api/package-search-index.js:
--------------------------------------------------------------------------------
1 | packageSearchIndex = [{"l":"All Packages","url":"allpackages-index.html"},{"l":"mil.nga.sf.wkb"}]
--------------------------------------------------------------------------------
/docs/docs/api/package-search-index.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/package-search-index.zip
--------------------------------------------------------------------------------
/docs/docs/api/resources/glass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/resources/glass.png
--------------------------------------------------------------------------------
/docs/docs/api/resources/x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/resources/x.png
--------------------------------------------------------------------------------
/docs/docs/api/script.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2013, 2018, Oracle and/or its affiliates. All rights reserved.
3 | * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
4 | *
5 | *
6 | *
7 | *
8 | *
9 | *
10 | *
11 | *
12 | *
13 | *
14 | *
15 | *
16 | *
17 | *
18 | *
19 | *
20 | *
21 | *
22 | *
23 | *
24 | */
25 |
26 | var moduleSearchIndex;
27 | var packageSearchIndex;
28 | var typeSearchIndex;
29 | var memberSearchIndex;
30 | var tagSearchIndex;
31 | function loadScripts(doc, tag) {
32 | createElem(doc, tag, 'jquery/jszip/dist/jszip.js');
33 | createElem(doc, tag, 'jquery/jszip-utils/dist/jszip-utils.js');
34 | if (window.navigator.userAgent.indexOf('MSIE ') > 0 || window.navigator.userAgent.indexOf('Trident/') > 0 ||
35 | window.navigator.userAgent.indexOf('Edge/') > 0) {
36 | createElem(doc, tag, 'jquery/jszip-utils/dist/jszip-utils-ie.js');
37 | }
38 | createElem(doc, tag, 'search.js');
39 |
40 | $.get(pathtoroot + "module-search-index.zip")
41 | .done(function() {
42 | JSZipUtils.getBinaryContent(pathtoroot + "module-search-index.zip", function(e, data) {
43 | JSZip.loadAsync(data).then(function(zip){
44 | zip.file("module-search-index.json").async("text").then(function(content){
45 | moduleSearchIndex = JSON.parse(content);
46 | });
47 | });
48 | });
49 | });
50 | $.get(pathtoroot + "package-search-index.zip")
51 | .done(function() {
52 | JSZipUtils.getBinaryContent(pathtoroot + "package-search-index.zip", function(e, data) {
53 | JSZip.loadAsync(data).then(function(zip){
54 | zip.file("package-search-index.json").async("text").then(function(content){
55 | packageSearchIndex = JSON.parse(content);
56 | });
57 | });
58 | });
59 | });
60 | $.get(pathtoroot + "type-search-index.zip")
61 | .done(function() {
62 | JSZipUtils.getBinaryContent(pathtoroot + "type-search-index.zip", function(e, data) {
63 | JSZip.loadAsync(data).then(function(zip){
64 | zip.file("type-search-index.json").async("text").then(function(content){
65 | typeSearchIndex = JSON.parse(content);
66 | });
67 | });
68 | });
69 | });
70 | $.get(pathtoroot + "member-search-index.zip")
71 | .done(function() {
72 | JSZipUtils.getBinaryContent(pathtoroot + "member-search-index.zip", function(e, data) {
73 | JSZip.loadAsync(data).then(function(zip){
74 | zip.file("member-search-index.json").async("text").then(function(content){
75 | memberSearchIndex = JSON.parse(content);
76 | });
77 | });
78 | });
79 | });
80 | $.get(pathtoroot + "tag-search-index.zip")
81 | .done(function() {
82 | JSZipUtils.getBinaryContent(pathtoroot + "tag-search-index.zip", function(e, data) {
83 | JSZip.loadAsync(data).then(function(zip){
84 | zip.file("tag-search-index.json").async("text").then(function(content){
85 | tagSearchIndex = JSON.parse(content);
86 | });
87 | });
88 | });
89 | });
90 | if (!moduleSearchIndex) {
91 | createElem(doc, tag, 'module-search-index.js');
92 | }
93 | if (!packageSearchIndex) {
94 | createElem(doc, tag, 'package-search-index.js');
95 | }
96 | if (!typeSearchIndex) {
97 | createElem(doc, tag, 'type-search-index.js');
98 | }
99 | if (!memberSearchIndex) {
100 | createElem(doc, tag, 'member-search-index.js');
101 | }
102 | if (!tagSearchIndex) {
103 | createElem(doc, tag, 'tag-search-index.js');
104 | }
105 | $(window).resize(function() {
106 | $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
107 | });
108 | }
109 |
110 | function createElem(doc, tag, path) {
111 | var script = doc.createElement(tag);
112 | var scriptElement = doc.getElementsByTagName(tag)[0];
113 | script.src = pathtoroot + path;
114 | scriptElement.parentNode.insertBefore(script, scriptElement);
115 | }
116 |
117 | function show(type) {
118 | count = 0;
119 | for (var key in data) {
120 | var row = document.getElementById(key);
121 | if ((data[key] & type) !== 0) {
122 | row.style.display = '';
123 | row.className = (count++ % 2) ? rowColor : altColor;
124 | }
125 | else
126 | row.style.display = 'none';
127 | }
128 | updateTabs(type);
129 | }
130 |
131 | function updateTabs(type) {
132 | for (var value in tabs) {
133 | var sNode = document.getElementById(tabs[value][0]);
134 | var spanNode = sNode.firstChild;
135 | if (value == type) {
136 | sNode.className = activeTableTab;
137 | spanNode.innerHTML = tabs[value][1];
138 | }
139 | else {
140 | sNode.className = tableTab;
141 | spanNode.innerHTML = "" + tabs[value][1] + " ";
142 | }
143 | }
144 | }
145 |
146 | function updateModuleFrame(pFrame, cFrame) {
147 | top.packageFrame.location = pFrame;
148 | top.classFrame.location = cFrame;
149 | }
150 |
--------------------------------------------------------------------------------
/docs/docs/api/search.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
3 | * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
4 | *
5 | *
6 | *
7 | *
8 | *
9 | *
10 | *
11 | *
12 | *
13 | *
14 | *
15 | *
16 | *
17 | *
18 | *
19 | *
20 | *
21 | *
22 | *
23 | *
24 | */
25 |
26 | var noResult = {l: "No results found"};
27 | var catModules = "Modules";
28 | var catPackages = "Packages";
29 | var catTypes = "Types";
30 | var catMembers = "Members";
31 | var catSearchTags = "SearchTags";
32 | var highlight = "$& ";
33 | var camelCaseRegexp = "";
34 | var secondaryMatcher = "";
35 | function getHighlightedText(item) {
36 | var ccMatcher = new RegExp(camelCaseRegexp);
37 | var label = item.replace(ccMatcher, highlight);
38 | if (label === item) {
39 | label = item.replace(secondaryMatcher, highlight);
40 | }
41 | return label;
42 | }
43 | function getURLPrefix(ui) {
44 | var urlPrefix="";
45 | if (useModuleDirectories) {
46 | var slash = "/";
47 | if (ui.item.category === catModules) {
48 | return ui.item.l + slash;
49 | } else if (ui.item.category === catPackages && ui.item.m) {
50 | return ui.item.m + slash;
51 | } else if ((ui.item.category === catTypes && ui.item.p) || ui.item.category === catMembers) {
52 | $.each(packageSearchIndex, function(index, item) {
53 | if (ui.item.p == item.l) {
54 | urlPrefix = item.m + slash;
55 | }
56 | });
57 | return urlPrefix;
58 | } else {
59 | return urlPrefix;
60 | }
61 | }
62 | return urlPrefix;
63 | }
64 | var watermark = 'Search';
65 | $(function() {
66 | $("#search").val('');
67 | $("#search").prop("disabled", false);
68 | $("#reset").prop("disabled", false);
69 | $("#search").val(watermark).addClass('watermark');
70 | $("#search").blur(function() {
71 | if ($(this).val().length == 0) {
72 | $(this).val(watermark).addClass('watermark');
73 | }
74 | });
75 | $("#search").on('click keydown', function() {
76 | if ($(this).val() == watermark) {
77 | $(this).val('').removeClass('watermark');
78 | }
79 | });
80 | $("#reset").click(function() {
81 | $("#search").val('');
82 | $("#search").focus();
83 | });
84 | $("#search").focus();
85 | $("#search")[0].setSelectionRange(0, 0);
86 | });
87 | $.widget("custom.catcomplete", $.ui.autocomplete, {
88 | _create: function() {
89 | this._super();
90 | this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)");
91 | },
92 | _renderMenu: function(ul, items) {
93 | var rMenu = this,
94 | currentCategory = "";
95 | rMenu.menu.bindings = $();
96 | $.each(items, function(index, item) {
97 | var li;
98 | if (item.l !== noResult.l && item.category !== currentCategory) {
99 | ul.append("" + item.category + " ");
100 | currentCategory = item.category;
101 | }
102 | li = rMenu._renderItemData(ul, item);
103 | if (item.category) {
104 | li.attr("aria-label", item.category + " : " + item.l);
105 | li.attr("class", "resultItem");
106 | } else {
107 | li.attr("aria-label", item.l);
108 | li.attr("class", "resultItem");
109 | }
110 | });
111 | },
112 | _renderItem: function(ul, item) {
113 | var label = "";
114 | if (item.category === catModules) {
115 | label = getHighlightedText(item.l);
116 | } else if (item.category === catPackages) {
117 | label = (item.m)
118 | ? getHighlightedText(item.m + "/" + item.l)
119 | : getHighlightedText(item.l);
120 | } else if (item.category === catTypes) {
121 | label = (item.p)
122 | ? getHighlightedText(item.p + "." + item.l)
123 | : getHighlightedText(item.l);
124 | } else if (item.category === catMembers) {
125 | label = getHighlightedText(item.p + "." + (item.c + "." + item.l));
126 | } else if (item.category === catSearchTags) {
127 | label = getHighlightedText(item.l);
128 | } else {
129 | label = item.l;
130 | }
131 | var li = $(" ").appendTo(ul);
132 | var div = $("
").appendTo(li);
133 | if (item.category === catSearchTags) {
134 | if (item.d) {
135 | div.html(label + " (" + item.h + ") "
136 | + item.d + " ");
137 | } else {
138 | div.html(label + " (" + item.h + ") ");
139 | }
140 | } else {
141 | div.html(label);
142 | }
143 | return li;
144 | }
145 | });
146 | $(function() {
147 | $("#search").catcomplete({
148 | minLength: 1,
149 | delay: 100,
150 | source: function(request, response) {
151 | var result = new Array();
152 | var presult = new Array();
153 | var tresult = new Array();
154 | var mresult = new Array();
155 | var tgresult = new Array();
156 | var secondaryresult = new Array();
157 | var displayCount = 0;
158 | var exactMatcher = new RegExp("^" + $.ui.autocomplete.escapeRegex(request.term) + "$", "i");
159 | camelCaseRegexp = ($.ui.autocomplete.escapeRegex(request.term)).split(/(?=[A-Z])/).join("([a-z0-9_$]*?)");
160 | var camelCaseMatcher = new RegExp("^" + camelCaseRegexp);
161 | secondaryMatcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
162 |
163 | // Return the nested innermost name from the specified object
164 | function nestedName(e) {
165 | return e.l.substring(e.l.lastIndexOf(".") + 1);
166 | }
167 |
168 | function concatResults(a1, a2) {
169 | a1 = a1.concat(a2);
170 | a2.length = 0;
171 | return a1;
172 | }
173 |
174 | if (moduleSearchIndex) {
175 | var mdleCount = 0;
176 | $.each(moduleSearchIndex, function(index, item) {
177 | item.category = catModules;
178 | if (exactMatcher.test(item.l)) {
179 | result.push(item);
180 | mdleCount++;
181 | } else if (camelCaseMatcher.test(item.l)) {
182 | result.push(item);
183 | } else if (secondaryMatcher.test(item.l)) {
184 | secondaryresult.push(item);
185 | }
186 | });
187 | displayCount = mdleCount;
188 | result = concatResults(result, secondaryresult);
189 | }
190 | if (packageSearchIndex) {
191 | var pCount = 0;
192 | var pkg = "";
193 | $.each(packageSearchIndex, function(index, item) {
194 | item.category = catPackages;
195 | pkg = (item.m)
196 | ? (item.m + "/" + item.l)
197 | : item.l;
198 | if (exactMatcher.test(item.l)) {
199 | presult.push(item);
200 | pCount++;
201 | } else if (camelCaseMatcher.test(pkg)) {
202 | presult.push(item);
203 | } else if (secondaryMatcher.test(pkg)) {
204 | secondaryresult.push(item);
205 | }
206 | });
207 | result = result.concat(concatResults(presult, secondaryresult));
208 | displayCount = (pCount > displayCount) ? pCount : displayCount;
209 | }
210 | if (typeSearchIndex) {
211 | var tCount = 0;
212 | $.each(typeSearchIndex, function(index, item) {
213 | item.category = catTypes;
214 | var s = nestedName(item);
215 | if (exactMatcher.test(s)) {
216 | tresult.push(item);
217 | tCount++;
218 | } else if (camelCaseMatcher.test(s)) {
219 | tresult.push(item);
220 | } else if (secondaryMatcher.test(item.p + "." + item.l)) {
221 | secondaryresult.push(item);
222 | }
223 | });
224 | result = result.concat(concatResults(tresult, secondaryresult));
225 | displayCount = (tCount > displayCount) ? tCount : displayCount;
226 | }
227 | if (memberSearchIndex) {
228 | var mCount = 0;
229 | $.each(memberSearchIndex, function(index, item) {
230 | item.category = catMembers;
231 | var s = nestedName(item);
232 | if (exactMatcher.test(s)) {
233 | mresult.push(item);
234 | mCount++;
235 | } else if (camelCaseMatcher.test(s)) {
236 | mresult.push(item);
237 | } else if (secondaryMatcher.test(item.c + "." + item.l)) {
238 | secondaryresult.push(item);
239 | }
240 | });
241 | result = result.concat(concatResults(mresult, secondaryresult));
242 | displayCount = (mCount > displayCount) ? mCount : displayCount;
243 | }
244 | if (tagSearchIndex) {
245 | var tgCount = 0;
246 | $.each(tagSearchIndex, function(index, item) {
247 | item.category = catSearchTags;
248 | if (exactMatcher.test(item.l)) {
249 | tgresult.push(item);
250 | tgCount++;
251 | } else if (secondaryMatcher.test(item.l)) {
252 | secondaryresult.push(item);
253 | }
254 | });
255 | result = result.concat(concatResults(tgresult, secondaryresult));
256 | displayCount = (tgCount > displayCount) ? tgCount : displayCount;
257 | }
258 | displayCount = (displayCount > 500) ? displayCount : 500;
259 | var counter = function() {
260 | var count = {Modules: 0, Packages: 0, Types: 0, Members: 0, SearchTags: 0};
261 | var f = function(item) {
262 | count[item.category] += 1;
263 | return (count[item.category] <= displayCount);
264 | };
265 | return f;
266 | }();
267 | response(result.filter(counter));
268 | },
269 | response: function(event, ui) {
270 | if (!ui.content.length) {
271 | ui.content.push(noResult);
272 | } else {
273 | $("#search").empty();
274 | }
275 | },
276 | autoFocus: true,
277 | position: {
278 | collision: "flip"
279 | },
280 | select: function(event, ui) {
281 | if (ui.item.l !== noResult.l) {
282 | var url = getURLPrefix(ui);
283 | if (ui.item.category === catModules) {
284 | if (useModuleDirectories) {
285 | url += "module-summary.html";
286 | } else {
287 | url = ui.item.l + "-summary.html";
288 | }
289 | } else if (ui.item.category === catPackages) {
290 | if (ui.item.url) {
291 | url = ui.item.url;
292 | } else {
293 | url += ui.item.l.replace(/\./g, '/') + "/package-summary.html";
294 | }
295 | } else if (ui.item.category === catTypes) {
296 | if (ui.item.url) {
297 | url = ui.item.url;
298 | } else if (ui.item.p === "") {
299 | url += ui.item.l + ".html";
300 | } else {
301 | url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html";
302 | }
303 | } else if (ui.item.category === catMembers) {
304 | if (ui.item.p === "") {
305 | url += ui.item.c + ".html" + "#";
306 | } else {
307 | url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#";
308 | }
309 | if (ui.item.url) {
310 | url += ui.item.url;
311 | } else {
312 | url += ui.item.l;
313 | }
314 | } else if (ui.item.category === catSearchTags) {
315 | url += ui.item.u;
316 | }
317 | if (top !== window) {
318 | parent.classFrame.location = pathtoroot + url;
319 | } else {
320 | window.location.href = pathtoroot + url;
321 | }
322 | $("#search").focus();
323 | }
324 | }
325 | });
326 | });
327 |
--------------------------------------------------------------------------------
/docs/docs/api/type-search-index.js:
--------------------------------------------------------------------------------
1 | typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"mil.nga.sf.wkb","l":"GeometryCodes"},{"p":"mil.nga.sf.wkb","l":"GeometryReader"},{"p":"mil.nga.sf.wkb","l":"GeometryTypeInfo"},{"p":"mil.nga.sf.wkb","l":"GeometryWriter"}]
--------------------------------------------------------------------------------
/docs/docs/api/type-search-index.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ngageoint/simple-features-wkb-java/48cb9746c757e8df9de62303dc7b4818254eb8a9/docs/docs/api/type-search-index.zip
--------------------------------------------------------------------------------
/docs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Simple Features WKB Java
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 |
23 |
24 |
25 | The Simple Features WKB Java library was developed by the National Geospatial-Intelligence Agency (NGA) in collaboration with BIT Systems .
26 |
27 |
Simple Features WKB is a Java library for writing and reading Simple Feature Geometries to and from Well-Known Binary.
28 |
29 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/docs/stylesheets/github-light.css:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright 2014 GitHub Inc.
3 |
4 | Licensed under the Apache License, Version 2.0 (the "License");
5 | you may not use this file except in compliance with the License.
6 | You may obtain a copy of the License at
7 |
8 | http://www.apache.org/licenses/LICENSE-2.0
9 |
10 | Unless required by applicable law or agreed to in writing, software
11 | distributed under the License is distributed on an "AS IS" BASIS,
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | See the License for the specific language governing permissions and
14 | limitations under the License.
15 |
16 | */
17 |
18 | .pl-c /* comment */ {
19 | color: #969896;
20 | }
21 |
22 | .pl-c1 /* constant, markup.raw, meta.diff.header, meta.module-reference, meta.property-name, support, support.constant, support.variable, variable.other.constant */,
23 | .pl-s .pl-v /* string variable */ {
24 | color: #0086b3;
25 | }
26 |
27 | .pl-e /* entity */,
28 | .pl-en /* entity.name */ {
29 | color: #795da3;
30 | }
31 |
32 | .pl-s .pl-s1 /* string source */,
33 | .pl-smi /* storage.modifier.import, storage.modifier.package, storage.type.java, variable.other, variable.parameter.function */ {
34 | color: #333;
35 | }
36 |
37 | .pl-ent /* entity.name.tag */ {
38 | color: #63a35c;
39 | }
40 |
41 | .pl-k /* keyword, storage, storage.type */ {
42 | color: #a71d5d;
43 | }
44 |
45 | .pl-pds /* punctuation.definition.string, string.regexp.character-class */,
46 | .pl-s /* string */,
47 | .pl-s .pl-pse .pl-s1 /* string punctuation.section.embedded source */,
48 | .pl-sr /* string.regexp */,
49 | .pl-sr .pl-cce /* string.regexp constant.character.escape */,
50 | .pl-sr .pl-sra /* string.regexp string.regexp.arbitrary-repitition */,
51 | .pl-sr .pl-sre /* string.regexp source.ruby.embedded */ {
52 | color: #183691;
53 | }
54 |
55 | .pl-v /* variable */ {
56 | color: #ed6a43;
57 | }
58 |
59 | .pl-id /* invalid.deprecated */ {
60 | color: #b52a1d;
61 | }
62 |
63 | .pl-ii /* invalid.illegal */ {
64 | background-color: #b52a1d;
65 | color: #f8f8f8;
66 | }
67 |
68 | .pl-sr .pl-cce /* string.regexp constant.character.escape */ {
69 | color: #63a35c;
70 | font-weight: bold;
71 | }
72 |
73 | .pl-ml /* markup.list */ {
74 | color: #693a17;
75 | }
76 |
77 | .pl-mh /* markup.heading */,
78 | .pl-mh .pl-en /* markup.heading entity.name */,
79 | .pl-ms /* meta.separator */ {
80 | color: #1d3e81;
81 | font-weight: bold;
82 | }
83 |
84 | .pl-mq /* markup.quote */ {
85 | color: #008080;
86 | }
87 |
88 | .pl-mi /* markup.italic */ {
89 | color: #333;
90 | font-style: italic;
91 | }
92 |
93 | .pl-mb /* markup.bold */ {
94 | color: #333;
95 | font-weight: bold;
96 | }
97 |
98 | .pl-md /* markup.deleted, meta.diff.header.from-file */ {
99 | background-color: #ffecec;
100 | color: #bd2c00;
101 | }
102 |
103 | .pl-mi1 /* markup.inserted, meta.diff.header.to-file */ {
104 | background-color: #eaffea;
105 | color: #55a532;
106 | }
107 |
108 | .pl-mdr /* meta.diff.range */ {
109 | color: #795da3;
110 | font-weight: bold;
111 | }
112 |
113 | .pl-mo /* meta.output */ {
114 | color: #1d3e81;
115 | }
116 |
117 |
--------------------------------------------------------------------------------
/docs/stylesheets/normalize.css:
--------------------------------------------------------------------------------
1 | /*! normalize.css v3.0.2 | MIT License | git.io/normalize */
2 |
3 | /**
4 | * 1. Set default font family to sans-serif.
5 | * 2. Prevent iOS text size adjust after orientation change, without disabling
6 | * user zoom.
7 | */
8 |
9 | html {
10 | font-family: sans-serif; /* 1 */
11 | -ms-text-size-adjust: 100%; /* 2 */
12 | -webkit-text-size-adjust: 100%; /* 2 */
13 | }
14 |
15 | /**
16 | * Remove default margin.
17 | */
18 |
19 | body {
20 | margin: 0;
21 | }
22 |
23 | /* HTML5 display definitions
24 | ========================================================================== */
25 |
26 | /**
27 | * Correct `block` display not defined for any HTML5 element in IE 8/9.
28 | * Correct `block` display not defined for `details` or `summary` in IE 10/11
29 | * and Firefox.
30 | * Correct `block` display not defined for `main` in IE 11.
31 | */
32 |
33 | article,
34 | aside,
35 | details,
36 | figcaption,
37 | figure,
38 | footer,
39 | header,
40 | hgroup,
41 | main,
42 | menu,
43 | nav,
44 | section,
45 | summary {
46 | display: block;
47 | }
48 |
49 | /**
50 | * 1. Correct `inline-block` display not defined in IE 8/9.
51 | * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
52 | */
53 |
54 | audio,
55 | canvas,
56 | progress,
57 | video {
58 | display: inline-block; /* 1 */
59 | vertical-align: baseline; /* 2 */
60 | }
61 |
62 | /**
63 | * Prevent modern browsers from displaying `audio` without controls.
64 | * Remove excess height in iOS 5 devices.
65 | */
66 |
67 | audio:not([controls]) {
68 | display: none;
69 | height: 0;
70 | }
71 |
72 | /**
73 | * Address `[hidden]` styling not present in IE 8/9/10.
74 | * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
75 | */
76 |
77 | [hidden],
78 | template {
79 | display: none;
80 | }
81 |
82 | /* Links
83 | ========================================================================== */
84 |
85 | /**
86 | * Remove the gray background color from active links in IE 10.
87 | */
88 |
89 | a {
90 | background-color: transparent;
91 | }
92 |
93 | /**
94 | * Improve readability when focused and also mouse hovered in all browsers.
95 | */
96 |
97 | a:active,
98 | a:hover {
99 | outline: 0;
100 | }
101 |
102 | /* Text-level semantics
103 | ========================================================================== */
104 |
105 | /**
106 | * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
107 | */
108 |
109 | abbr[title] {
110 | border-bottom: 1px dotted;
111 | }
112 |
113 | /**
114 | * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
115 | */
116 |
117 | b,
118 | strong {
119 | font-weight: bold;
120 | }
121 |
122 | /**
123 | * Address styling not present in Safari and Chrome.
124 | */
125 |
126 | dfn {
127 | font-style: italic;
128 | }
129 |
130 | /**
131 | * Address variable `h1` font-size and margin within `section` and `article`
132 | * contexts in Firefox 4+, Safari, and Chrome.
133 | */
134 |
135 | h1 {
136 | font-size: 2em;
137 | margin: 0.67em 0;
138 | }
139 |
140 | /**
141 | * Address styling not present in IE 8/9.
142 | */
143 |
144 | mark {
145 | background: #ff0;
146 | color: #000;
147 | }
148 |
149 | /**
150 | * Address inconsistent and variable font size in all browsers.
151 | */
152 |
153 | small {
154 | font-size: 80%;
155 | }
156 |
157 | /**
158 | * Prevent `sub` and `sup` affecting `line-height` in all browsers.
159 | */
160 |
161 | sub,
162 | sup {
163 | font-size: 75%;
164 | line-height: 0;
165 | position: relative;
166 | vertical-align: baseline;
167 | }
168 |
169 | sup {
170 | top: -0.5em;
171 | }
172 |
173 | sub {
174 | bottom: -0.25em;
175 | }
176 |
177 | /* Embedded content
178 | ========================================================================== */
179 |
180 | /**
181 | * Remove border when inside `a` element in IE 8/9/10.
182 | */
183 |
184 | img {
185 | border: 0;
186 | }
187 |
188 | /**
189 | * Correct overflow not hidden in IE 9/10/11.
190 | */
191 |
192 | svg:not(:root) {
193 | overflow: hidden;
194 | }
195 |
196 | /* Grouping content
197 | ========================================================================== */
198 |
199 | /**
200 | * Address margin not present in IE 8/9 and Safari.
201 | */
202 |
203 | figure {
204 | margin: 1em 40px;
205 | }
206 |
207 | /**
208 | * Address differences between Firefox and other browsers.
209 | */
210 |
211 | hr {
212 | box-sizing: content-box;
213 | height: 0;
214 | }
215 |
216 | /**
217 | * Contain overflow in all browsers.
218 | */
219 |
220 | pre {
221 | overflow: auto;
222 | }
223 |
224 | /**
225 | * Address odd `em`-unit font size rendering in all browsers.
226 | */
227 |
228 | code,
229 | kbd,
230 | pre,
231 | samp {
232 | font-family: monospace, monospace;
233 | font-size: 1em;
234 | }
235 |
236 | /* Forms
237 | ========================================================================== */
238 |
239 | /**
240 | * Known limitation: by default, Chrome and Safari on OS X allow very limited
241 | * styling of `select`, unless a `border` property is set.
242 | */
243 |
244 | /**
245 | * 1. Correct color not being inherited.
246 | * Known issue: affects color of disabled elements.
247 | * 2. Correct font properties not being inherited.
248 | * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
249 | */
250 |
251 | button,
252 | input,
253 | optgroup,
254 | select,
255 | textarea {
256 | color: inherit; /* 1 */
257 | font: inherit; /* 2 */
258 | margin: 0; /* 3 */
259 | }
260 |
261 | /**
262 | * Address `overflow` set to `hidden` in IE 8/9/10/11.
263 | */
264 |
265 | button {
266 | overflow: visible;
267 | }
268 |
269 | /**
270 | * Address inconsistent `text-transform` inheritance for `button` and `select`.
271 | * All other form control elements do not inherit `text-transform` values.
272 | * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
273 | * Correct `select` style inheritance in Firefox.
274 | */
275 |
276 | button,
277 | select {
278 | text-transform: none;
279 | }
280 |
281 | /**
282 | * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
283 | * and `video` controls.
284 | * 2. Correct inability to style clickable `input` types in iOS.
285 | * 3. Improve usability and consistency of cursor style between image-type
286 | * `input` and others.
287 | */
288 |
289 | button,
290 | html input[type="button"], /* 1 */
291 | input[type="reset"],
292 | input[type="submit"] {
293 | -webkit-appearance: button; /* 2 */
294 | cursor: pointer; /* 3 */
295 | }
296 |
297 | /**
298 | * Re-set default cursor for disabled elements.
299 | */
300 |
301 | button[disabled],
302 | html input[disabled] {
303 | cursor: default;
304 | }
305 |
306 | /**
307 | * Remove inner padding and border in Firefox 4+.
308 | */
309 |
310 | button::-moz-focus-inner,
311 | input::-moz-focus-inner {
312 | border: 0;
313 | padding: 0;
314 | }
315 |
316 | /**
317 | * Address Firefox 4+ setting `line-height` on `input` using `!important` in
318 | * the UA stylesheet.
319 | */
320 |
321 | input {
322 | line-height: normal;
323 | }
324 |
325 | /**
326 | * It's recommended that you don't attempt to style these elements.
327 | * Firefox's implementation doesn't respect box-sizing, padding, or width.
328 | *
329 | * 1. Address box sizing set to `content-box` in IE 8/9/10.
330 | * 2. Remove excess padding in IE 8/9/10.
331 | */
332 |
333 | input[type="checkbox"],
334 | input[type="radio"] {
335 | box-sizing: border-box; /* 1 */
336 | padding: 0; /* 2 */
337 | }
338 |
339 | /**
340 | * Fix the cursor style for Chrome's increment/decrement buttons. For certain
341 | * `font-size` values of the `input`, it causes the cursor style of the
342 | * decrement button to change from `default` to `text`.
343 | */
344 |
345 | input[type="number"]::-webkit-inner-spin-button,
346 | input[type="number"]::-webkit-outer-spin-button {
347 | height: auto;
348 | }
349 |
350 | /**
351 | * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
352 | * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
353 | * (include `-moz` to future-proof).
354 | */
355 |
356 | input[type="search"] {
357 | -webkit-appearance: textfield; /* 1 */ /* 2 */
358 | box-sizing: content-box;
359 | }
360 |
361 | /**
362 | * Remove inner padding and search cancel button in Safari and Chrome on OS X.
363 | * Safari (but not Chrome) clips the cancel button when the search input has
364 | * padding (and `textfield` appearance).
365 | */
366 |
367 | input[type="search"]::-webkit-search-cancel-button,
368 | input[type="search"]::-webkit-search-decoration {
369 | -webkit-appearance: none;
370 | }
371 |
372 | /**
373 | * Define consistent border, margin, and padding.
374 | */
375 |
376 | fieldset {
377 | border: 1px solid #c0c0c0;
378 | margin: 0 2px;
379 | padding: 0.35em 0.625em 0.75em;
380 | }
381 |
382 | /**
383 | * 1. Correct `color` not being inherited in IE 8/9/10/11.
384 | * 2. Remove padding so people aren't caught out if they zero out fieldsets.
385 | */
386 |
387 | legend {
388 | border: 0; /* 1 */
389 | padding: 0; /* 2 */
390 | }
391 |
392 | /**
393 | * Remove default vertical scrollbar in IE 8/9/10/11.
394 | */
395 |
396 | textarea {
397 | overflow: auto;
398 | }
399 |
400 | /**
401 | * Don't inherit the `font-weight` (applied by a rule above).
402 | * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
403 | */
404 |
405 | optgroup {
406 | font-weight: bold;
407 | }
408 |
409 | /* Tables
410 | ========================================================================== */
411 |
412 | /**
413 | * Remove most spacing between table cells.
414 | */
415 |
416 | table {
417 | border-collapse: collapse;
418 | border-spacing: 0;
419 | }
420 |
421 | td,
422 | th {
423 | padding: 0;
424 | }
425 |
--------------------------------------------------------------------------------
/docs/stylesheets/stylesheet.css:
--------------------------------------------------------------------------------
1 | * {
2 | box-sizing: border-box; }
3 |
4 | body {
5 | padding: 0;
6 | margin: 0;
7 | font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
8 | font-size: 16px;
9 | line-height: 1.5;
10 | color: #606c71; }
11 |
12 | a {
13 | color: #1e6bb8;
14 | text-decoration: none; }
15 | a:hover {
16 | text-decoration: underline; }
17 |
18 | .btn {
19 | display: inline-block;
20 | margin-bottom: 1rem;
21 | color: rgba(255, 255, 255, 0.7);
22 | background-color: rgba(255, 255, 255, 0.08);
23 | border-color: rgba(255, 255, 255, 0.2);
24 | border-style: solid;
25 | border-width: 1px;
26 | border-radius: 0.3rem;
27 | transition: color 0.2s, background-color 0.2s, border-color 0.2s; }
28 | .btn + .btn {
29 | margin-left: 1rem; }
30 |
31 | .btn:hover {
32 | color: rgba(255, 255, 255, 0.8);
33 | text-decoration: none;
34 | background-color: rgba(255, 255, 255, 0.2);
35 | border-color: rgba(255, 255, 255, 0.3); }
36 |
37 | @media screen and (min-width: 64em) {
38 | .btn {
39 | padding: 0.75rem 1rem; } }
40 |
41 | @media screen and (min-width: 42em) and (max-width: 64em) {
42 | .btn {
43 | padding: 0.6rem 0.9rem;
44 | font-size: 0.9rem; } }
45 |
46 | @media screen and (max-width: 42em) {
47 | .btn {
48 | display: block;
49 | width: 100%;
50 | padding: 0.75rem;
51 | font-size: 0.9rem; }
52 | .btn + .btn {
53 | margin-top: 1rem;
54 | margin-left: 0; } }
55 |
56 | .page-header {
57 | color: #fff;
58 | text-align: center;
59 | background-color: #159957;
60 | background-image: linear-gradient(120deg, #155799, #159957); }
61 |
62 | @media screen and (min-width: 64em) {
63 | .page-header {
64 | padding: 5rem 6rem; } }
65 |
66 | @media screen and (min-width: 42em) and (max-width: 64em) {
67 | .page-header {
68 | padding: 3rem 4rem; } }
69 |
70 | @media screen and (max-width: 42em) {
71 | .page-header {
72 | padding: 2rem 1rem; } }
73 |
74 | .project-name {
75 | margin-top: 0;
76 | margin-bottom: 0.1rem; }
77 |
78 | @media screen and (min-width: 64em) {
79 | .project-name {
80 | font-size: 3.25rem; } }
81 |
82 | @media screen and (min-width: 42em) and (max-width: 64em) {
83 | .project-name {
84 | font-size: 2.25rem; } }
85 |
86 | @media screen and (max-width: 42em) {
87 | .project-name {
88 | font-size: 1.75rem; } }
89 |
90 | .project-tagline {
91 | margin-bottom: 2rem;
92 | font-weight: normal;
93 | opacity: 0.7; }
94 |
95 | @media screen and (min-width: 64em) {
96 | .project-tagline {
97 | font-size: 1.25rem; } }
98 |
99 | @media screen and (min-width: 42em) and (max-width: 64em) {
100 | .project-tagline {
101 | font-size: 1.15rem; } }
102 |
103 | @media screen and (max-width: 42em) {
104 | .project-tagline {
105 | font-size: 1rem; } }
106 |
107 | .main-content :first-child {
108 | margin-top: 0; }
109 | .main-content img {
110 | max-width: 100%; }
111 | .main-content h1, .main-content h2, .main-content h3, .main-content h4, .main-content h5, .main-content h6 {
112 | margin-top: 2rem;
113 | margin-bottom: 1rem;
114 | font-weight: normal;
115 | color: #159957; }
116 | .main-content p {
117 | margin-bottom: 1em; }
118 | .main-content code {
119 | padding: 2px 4px;
120 | font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
121 | font-size: 0.9rem;
122 | color: #383e41;
123 | background-color: #f3f6fa;
124 | border-radius: 0.3rem; }
125 | .main-content pre {
126 | padding: 0.8rem;
127 | margin-top: 0;
128 | margin-bottom: 1rem;
129 | font: 1rem Consolas, "Liberation Mono", Menlo, Courier, monospace;
130 | color: #567482;
131 | word-wrap: normal;
132 | background-color: #f3f6fa;
133 | border: solid 1px #dce6f0;
134 | border-radius: 0.3rem; }
135 | .main-content pre > code {
136 | padding: 0;
137 | margin: 0;
138 | font-size: 0.9rem;
139 | color: #567482;
140 | word-break: normal;
141 | white-space: pre;
142 | background: transparent;
143 | border: 0; }
144 | .main-content .highlight {
145 | margin-bottom: 1rem; }
146 | .main-content .highlight pre {
147 | margin-bottom: 0;
148 | word-break: normal; }
149 | .main-content .highlight pre, .main-content pre {
150 | padding: 0.8rem;
151 | overflow: auto;
152 | font-size: 0.9rem;
153 | line-height: 1.45;
154 | border-radius: 0.3rem; }
155 | .main-content pre code, .main-content pre tt {
156 | display: inline;
157 | max-width: initial;
158 | padding: 0;
159 | margin: 0;
160 | overflow: initial;
161 | line-height: inherit;
162 | word-wrap: normal;
163 | background-color: transparent;
164 | border: 0; }
165 | .main-content pre code:before, .main-content pre code:after, .main-content pre tt:before, .main-content pre tt:after {
166 | content: normal; }
167 | .main-content ul, .main-content ol {
168 | margin-top: 0; }
169 | .main-content blockquote {
170 | padding: 0 1rem;
171 | margin-left: 0;
172 | color: #819198;
173 | border-left: 0.3rem solid #dce6f0; }
174 | .main-content blockquote > :first-child {
175 | margin-top: 0; }
176 | .main-content blockquote > :last-child {
177 | margin-bottom: 0; }
178 | .main-content table {
179 | display: block;
180 | width: 100%;
181 | overflow: auto;
182 | word-break: normal;
183 | word-break: keep-all; }
184 | .main-content table th {
185 | font-weight: bold; }
186 | .main-content table th, .main-content table td {
187 | padding: 0.5rem 1rem;
188 | border: 1px solid #e9ebec; }
189 | .main-content dl {
190 | padding: 0; }
191 | .main-content dl dt {
192 | padding: 0;
193 | margin-top: 1rem;
194 | font-size: 1rem;
195 | font-weight: bold; }
196 | .main-content dl dd {
197 | padding: 0;
198 | margin-bottom: 1rem; }
199 | .main-content hr {
200 | height: 2px;
201 | padding: 0;
202 | margin: 1rem 0;
203 | background-color: #eff0f1;
204 | border: 0; }
205 |
206 | @media screen and (min-width: 64em) {
207 | .main-content {
208 | max-width: 64rem;
209 | padding: 2rem 6rem;
210 | margin: 0 auto;
211 | font-size: 1.1rem; } }
212 |
213 | @media screen and (min-width: 42em) and (max-width: 64em) {
214 | .main-content {
215 | padding: 2rem 4rem;
216 | font-size: 1.1rem; } }
217 |
218 | @media screen and (max-width: 42em) {
219 | .main-content {
220 | padding: 2rem 1rem;
221 | font-size: 1rem; } }
222 |
223 | .site-footer {
224 | padding-top: 2rem;
225 | margin-top: 2rem;
226 | border-top: solid 1px #eff0f1; }
227 |
228 | .site-footer-owner {
229 | display: block;
230 | font-weight: bold; }
231 |
232 | .site-footer-credits {
233 | color: #819198; }
234 |
235 | @media screen and (min-width: 64em) {
236 | .site-footer {
237 | font-size: 1rem; } }
238 |
239 | @media screen and (min-width: 42em) and (max-width: 64em) {
240 | .site-footer {
241 | font-size: 1rem; } }
242 |
243 | @media screen and (max-width: 42em) {
244 | .site-footer {
245 | font-size: 0.9rem; } }
246 |
--------------------------------------------------------------------------------
/pom.xml:
--------------------------------------------------------------------------------
1 |
3 | 4.0.0
4 | mil.nga.sf
5 | sf-wkb
6 | 2.2.4
7 | jar
8 | Simple Features Well-Known Binary
9 | https://github.com/ngageoint/simple-features-wkb-java
10 | Library for writing and reading Simple Feature Geometries to and from Well-Known Binary
11 |
12 | git@github.com:ngageoint/simple-features-wkb-java.git
13 | scm:git:git@github.com:ngageoint/simple-features-wkb-java.git
14 | scm:git:git@github.com:ngageoint/simple-features-wkb-java.git
15 |
16 |
17 |
18 | The MIT License (MIT)
19 | https://github.com/ngageoint/simple-features-wkb-java/blob/master/LICENSE.txt
20 | repo
21 |
22 |
23 |
24 | National Geospatial-Intelligence Agency
25 | https://www.nga.mil/
26 |
27 |
28 |
29 | bosborn
30 | Brian Osborn
31 | bosborn@caci.com
32 | BIT Systems
33 | https://www.caci.com/bit-systems
34 |
35 | developer
36 |
37 | UTC−07
38 |
39 |
40 |
41 | 11
42 | 11
43 | UTF-8
44 |
45 |
46 |
47 | mil.nga
48 | sf
49 | 2.2.2
50 |
51 |
52 | junit
53 | junit
54 | 4.13.2
55 | test
56 |
57 |
58 |
59 |
60 |
61 |
62 | org.apache.maven.plugins
63 | maven-source-plugin
64 | 3.3.0
65 |
66 |
67 | attach-sources
68 |
69 | jar-no-fork
70 |
71 |
72 |
73 |
74 |
75 | org.apache.maven.plugins
76 | maven-javadoc-plugin
77 | 3.6.3
78 |
79 |
80 | http://ngageoint.github.io/simple-features-java/docs/api/
81 |
82 |
83 |
84 |
85 | attach-javadocs
86 |
87 | jar
88 |
89 |
90 | -Xdoclint:none
91 |
92 |
93 |
94 |
95 |
96 | org.apache.maven.plugins
97 | maven-gpg-plugin
98 | 3.2.2
99 |
100 |
101 | sign-artifacts
102 | deploy
103 |
104 | sign
105 |
106 |
107 |
108 |
109 |
110 | org.sonatype.plugins
111 | nexus-staging-maven-plugin
112 | 1.6.13
113 | true
114 |
115 | ossrh
116 | https://oss.sonatype.org/
117 | true
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 | ossrh
126 | https://oss.sonatype.org/content/repositories/snapshots
127 |
128 |
129 | ossrh
130 | https://oss.sonatype.org/service/local/staging/deploy/maven2/
131 |
132 |
133 |
134 |
135 |
--------------------------------------------------------------------------------
/src/main/java/mil/nga/sf/wkb/GeometryCodes.java:
--------------------------------------------------------------------------------
1 | package mil.nga.sf.wkb;
2 |
3 | import mil.nga.sf.CircularString;
4 | import mil.nga.sf.Geometry;
5 | import mil.nga.sf.GeometryType;
6 | import mil.nga.sf.LineString;
7 | import mil.nga.sf.MultiLineString;
8 | import mil.nga.sf.util.SFException;
9 |
10 | /**
11 | * Geometry Code utilities to convert between geometry attributes and geometry
12 | * codes
13 | *
14 | * @author osbornb
15 | */
16 | public class GeometryCodes {
17 |
18 | /**
19 | * Get the geometry code from the geometry
20 | *
21 | * @param geometry
22 | * geometry
23 | * @return geometry code
24 | */
25 | public static int getCode(Geometry geometry) {
26 | return getCode(geometry.getGeometryType(), geometry.hasZ(),
27 | geometry.hasM());
28 | }
29 |
30 | /**
31 | * Get the geometry code from the geometry type
32 | *
33 | * @param geometryType
34 | * geometry type
35 | * @param hasZ
36 | * has z
37 | * @param hasM
38 | * mas m
39 | * @return geometry code
40 | * @since 2.0.3
41 | */
42 | public static int getCode(GeometryType geometryType, boolean hasZ,
43 | boolean hasM) {
44 | int code = getCode(geometryType);
45 | if (hasZ) {
46 | code += 1000;
47 | }
48 | if (hasM) {
49 | code += 2000;
50 | }
51 | return code;
52 | }
53 |
54 | /**
55 | * Get the geometry code from the geometry type
56 | *
57 | * @param geometryType
58 | * geometry type
59 | * @return geometry code
60 | */
61 | public static int getCode(GeometryType geometryType) {
62 |
63 | int code;
64 |
65 | switch (geometryType) {
66 | case GEOMETRY:
67 | code = 0;
68 | break;
69 | case POINT:
70 | code = 1;
71 | break;
72 | case LINESTRING:
73 | code = 2;
74 | break;
75 | case POLYGON:
76 | code = 3;
77 | break;
78 | case MULTIPOINT:
79 | code = 4;
80 | break;
81 | case MULTILINESTRING:
82 | code = 5;
83 | break;
84 | case MULTIPOLYGON:
85 | code = 6;
86 | break;
87 | case GEOMETRYCOLLECTION:
88 | code = 7;
89 | break;
90 | case CIRCULARSTRING:
91 | code = 8;
92 | break;
93 | case COMPOUNDCURVE:
94 | code = 9;
95 | break;
96 | case CURVEPOLYGON:
97 | code = 10;
98 | break;
99 | case MULTICURVE:
100 | code = 11;
101 | break;
102 | case MULTISURFACE:
103 | code = 12;
104 | break;
105 | case CURVE:
106 | code = 13;
107 | break;
108 | case SURFACE:
109 | code = 14;
110 | break;
111 | case POLYHEDRALSURFACE:
112 | code = 15;
113 | break;
114 | case TIN:
115 | code = 16;
116 | break;
117 | case TRIANGLE:
118 | code = 17;
119 | break;
120 | default:
121 | throw new SFException(
122 | "Unsupported Geometry Type for code retrieval: "
123 | + geometryType);
124 | }
125 |
126 | return code;
127 | }
128 |
129 | /**
130 | * Get the well-known binary writable geometry code from the geometry
131 | *
132 | * @param geometry
133 | * geometry
134 | * @return geometry code
135 | * @since 2.2.1
136 | */
137 | public static int getWKBCode(Geometry geometry) {
138 | return getCode(getWKBGeometryType(geometry), geometry.hasZ(),
139 | geometry.hasM());
140 | }
141 |
142 | /**
143 | * Get the well-known binary writable geometry type from the geometry
144 | *
145 | * @param geometry
146 | * geometry
147 | * @return geometry type
148 | * @since 2.2.1
149 | */
150 | public static GeometryType getWKBGeometryType(Geometry geometry) {
151 | GeometryType type = geometry.getGeometryType();
152 | if (!geometry.isEmpty()) {
153 | switch (type) {
154 | case MULTILINESTRING:
155 | LineString lineString = ((MultiLineString) geometry)
156 | .getLineString(0);
157 | if (lineString instanceof CircularString) {
158 | type = GeometryType.MULTICURVE;
159 | }
160 | break;
161 | default:
162 | }
163 | }
164 | return type;
165 | }
166 |
167 | /**
168 | * Get the Geometry Type from the code
169 | *
170 | * @param code
171 | * geometry type code
172 | * @return geometry type
173 | */
174 | public static GeometryType getGeometryType(int code) {
175 |
176 | // Look at the last 2 digits to find the geometry type code
177 | int geometryTypeCode = code % 1000;
178 |
179 | GeometryType geometryType = null;
180 |
181 | switch (geometryTypeCode) {
182 | case 0:
183 | geometryType = GeometryType.GEOMETRY;
184 | break;
185 | case 1:
186 | geometryType = GeometryType.POINT;
187 | break;
188 | case 2:
189 | geometryType = GeometryType.LINESTRING;
190 | break;
191 | case 3:
192 | geometryType = GeometryType.POLYGON;
193 | break;
194 | case 4:
195 | geometryType = GeometryType.MULTIPOINT;
196 | break;
197 | case 5:
198 | geometryType = GeometryType.MULTILINESTRING;
199 | break;
200 | case 6:
201 | geometryType = GeometryType.MULTIPOLYGON;
202 | break;
203 | case 7:
204 | geometryType = GeometryType.GEOMETRYCOLLECTION;
205 | break;
206 | case 8:
207 | geometryType = GeometryType.CIRCULARSTRING;
208 | break;
209 | case 9:
210 | geometryType = GeometryType.COMPOUNDCURVE;
211 | break;
212 | case 10:
213 | geometryType = GeometryType.CURVEPOLYGON;
214 | break;
215 | case 11:
216 | geometryType = GeometryType.MULTICURVE;
217 | break;
218 | case 12:
219 | geometryType = GeometryType.MULTISURFACE;
220 | break;
221 | case 13:
222 | geometryType = GeometryType.CURVE;
223 | break;
224 | case 14:
225 | geometryType = GeometryType.SURFACE;
226 | break;
227 | case 15:
228 | geometryType = GeometryType.POLYHEDRALSURFACE;
229 | break;
230 | case 16:
231 | geometryType = GeometryType.TIN;
232 | break;
233 | case 17:
234 | geometryType = GeometryType.TRIANGLE;
235 | break;
236 | default:
237 | throw new SFException(
238 | "Unsupported Geometry code for type retrieval: " + code);
239 | }
240 |
241 | return geometryType;
242 | }
243 |
244 | /**
245 | * Determine if the geometry code has a Z (3D) value
246 | *
247 | * @param code
248 | * geometry code
249 | * @return true is has Z
250 | */
251 | public static boolean hasZ(int code) {
252 |
253 | boolean hasZ = false;
254 |
255 | int mode = getGeometryMode(code);
256 |
257 | switch (mode) {
258 | case 0:
259 | case 2:
260 | break;
261 | case 1:
262 | case 3:
263 | hasZ = true;
264 | break;
265 | default:
266 | throw new SFException(
267 | "Unexpected Geometry code for Z determination: " + code);
268 | }
269 |
270 | return hasZ;
271 | }
272 |
273 | /**
274 | * Determine if the geometry code has a M (linear referencing system) value
275 | *
276 | * @param code
277 | * geometry code
278 | * @return true is has M
279 | */
280 | public static boolean hasM(int code) {
281 |
282 | boolean hasM = false;
283 |
284 | int mode = getGeometryMode(code);
285 |
286 | switch (mode) {
287 | case 0:
288 | case 1:
289 | break;
290 | case 2:
291 | case 3:
292 | hasM = true;
293 | break;
294 | default:
295 | throw new SFException(
296 | "Unexpected Geometry code for M determination: " + code);
297 | }
298 |
299 | return hasM;
300 | }
301 |
302 | /**
303 | * Get the geometry mode from the geometry code. Returns the digit in the
304 | * thousands place. (z is enabled when 1 or 3, m is enabled when 2 or 3)
305 | *
306 | * @param code
307 | * geometry code
308 | * @return geometry mode
309 | */
310 | public static int getGeometryMode(int code) {
311 | return code / 1000;
312 | }
313 |
314 | }
315 |
--------------------------------------------------------------------------------
/src/main/java/mil/nga/sf/wkb/GeometryTypeInfo.java:
--------------------------------------------------------------------------------
1 | package mil.nga.sf.wkb;
2 |
3 | import mil.nga.sf.GeometryType;
4 |
5 | /**
6 | * Geometry type info
7 | *
8 | * @author osbornb
9 | */
10 | public class GeometryTypeInfo {
11 |
12 | /**
13 | * Geometry type code
14 | */
15 | private final int geometryTypeCode;
16 |
17 | /**
18 | * Geometry type
19 | */
20 | private final GeometryType geometryType;
21 |
22 | /**
23 | * Has Z values flag
24 | */
25 | private final boolean hasZ;
26 |
27 | /**
28 | * Has M values flag
29 | */
30 | private final boolean hasM;
31 |
32 | /**
33 | * Constructor
34 | *
35 | * @param geometryTypeCode
36 | * geometry type code
37 | * @param geometryType
38 | * geometry type
39 | * @param hasZ
40 | * has z
41 | * @param hasM
42 | * has m
43 | */
44 | GeometryTypeInfo(int geometryTypeCode, GeometryType geometryType,
45 | boolean hasZ, boolean hasM) {
46 | this.geometryTypeCode = geometryTypeCode;
47 | this.geometryType = geometryType;
48 | this.hasZ = hasZ;
49 | this.hasM = hasM;
50 | }
51 |
52 | /**
53 | * Get the geometry type code
54 | *
55 | * @return geometry type code
56 | */
57 | public int getGeometryTypeCode() {
58 | return geometryTypeCode;
59 | }
60 |
61 | /**
62 | * Get the geometry type
63 | *
64 | * @return geometry type
65 | */
66 | public GeometryType getGeometryType() {
67 | return geometryType;
68 | }
69 |
70 | /**
71 | * Has z values
72 | *
73 | * @return true if has z values
74 | */
75 | public boolean hasZ() {
76 | return hasZ;
77 | }
78 |
79 | /**
80 | * Has m values
81 | *
82 | * @return true if has m values
83 | */
84 | public boolean hasM() {
85 | return hasM;
86 | }
87 |
88 | }
89 |
--------------------------------------------------------------------------------
/src/test/java/mil/nga/sf/wkb/ReadmeTest.java:
--------------------------------------------------------------------------------
1 | package mil.nga.sf.wkb;
2 |
3 | import java.io.IOException;
4 |
5 | import org.junit.Test;
6 |
7 | import junit.framework.TestCase;
8 | import mil.nga.sf.Geometry;
9 | import mil.nga.sf.GeometryType;
10 | import mil.nga.sf.Point;
11 |
12 | /**
13 | * README example tests
14 | *
15 | * @author osbornb
16 | */
17 | public class ReadmeTest {
18 |
19 | /**
20 | * Geometry
21 | */
22 | private static final Geometry GEOMETRY = new Point(1.0, 1.0);
23 |
24 | /**
25 | * {@link #GEOMETRY} bytes
26 | */
27 | private static final byte[] BYTES = new byte[] { 0, 0, 0, 0, 1, 63, -16, 0,
28 | 0, 0, 0, 0, 0, 63, -16, 0, 0, 0, 0, 0, 0 };
29 |
30 | /**
31 | * Test read
32 | *
33 | * @throws IOException
34 | * upon error
35 | */
36 | @Test
37 | public void testRead() throws IOException {
38 |
39 | Geometry geometry = testRead(BYTES);
40 |
41 | TestCase.assertEquals(GEOMETRY, geometry);
42 |
43 | }
44 |
45 | /**
46 | * Test read
47 | *
48 | * @param bytes
49 | * bytes
50 | * @return geometry
51 | * @throws IOException
52 | * upon error
53 | */
54 | private Geometry testRead(byte[] bytes) throws IOException {
55 |
56 | // byte[] bytes = ...
57 |
58 | Geometry geometry = GeometryReader.readGeometry(bytes);
59 | GeometryType geometryType = geometry.getGeometryType();
60 |
61 | return geometry;
62 | }
63 |
64 | /**
65 | * Test write
66 | *
67 | * @throws IOException
68 | * upon error
69 | */
70 | @Test
71 | public void testWrite() throws IOException {
72 |
73 | byte[] bytes = testWrite(GEOMETRY);
74 |
75 | WKBTestUtils.compareByteArrays(BYTES, bytes);
76 |
77 | }
78 |
79 | /**
80 | * Test write
81 | *
82 | * @param geometry
83 | * geometry
84 | * @return bytes
85 | * @throws IOException
86 | * upon error
87 | */
88 | private byte[] testWrite(Geometry geometry) throws IOException {
89 |
90 | // Geometry geometry = ...
91 |
92 | byte[] bytes = GeometryWriter.writeGeometry(geometry);
93 |
94 | return bytes;
95 | }
96 |
97 | }
98 |
--------------------------------------------------------------------------------