Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RelateNG algorithm for DE-9IM relationship evaluation #1052

Merged
merged 8 commits into from
May 16, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix Javadoc
  • Loading branch information
dr-jts committed May 16, 2024
commit 922e06f0878dc6f2bf6c2ff1858e9069c43afd50
Original file line number Diff line number Diff line change
@@ -248,7 +248,7 @@ public boolean valueIM() {
* but is more inclusive (i.e. returns <code>true</code> for more cases).
* In particular, unlike <code>contains</code> it does not distinguish between
* points in the boundary and in the interior of geometries.
* For most situations, <code>covers</code> should be used in preference to <code>contains</code>.
* For most cases, <code>covers</code> should be used in preference to <code>contains</code>.
* As an added benefit, <code>covers</code> is more amenable to optimization,
* and hence should be more performant.
*
@@ -346,16 +346,16 @@ public boolean valueIM() {
* <li>The DE-9IM Intersection Matrix for the two geometries matches
* one of the following patterns:
* <ul>
* <li><code>[T*T******]</code> (for P/L, P/A, and L/A situations)
* <li><code>[T*****T**]</code> (for L/P, A/P, and A/L situations)
* <li><code>[0********]</code> (for L/L situations)
* <li><code>[T*T******]</code> (for P/L, P/A, and L/A cases)
* <li><code>[T*****T**]</code> (for L/P, A/P, and A/L cases)
* <li><code>[0********]</code> (for L/L cases)
* </ul>
* </ul>
* For the A/A and P/P situations this predicate returns <code>false</code>.
* For the A/A and P/P cases this predicate returns <code>false</code>.
* <p>
* The SFS defined this predicate only for P/L, P/A, L/L, and L/A situations.
* The SFS defined this predicate only for P/L, P/A, L/L, and L/A cases.
* To make the relation symmetric
* JTS extends the definition to apply to L/P, A/P and A/L situations as well.
* JTS extends the definition to apply to L/P, A/P and A/L cases as well.
*
* @return the predicate instance
*/
@@ -451,20 +451,17 @@ public boolean valueIM() {
* <p>
* The <code>overlaps</code> predicate has the following equivalent definitions:
* <ul>
* <li>The geometries have some but not all interior points in common.
* <li>The geometries have at least one point each not shared by the other
* (or equivalently neither covers the other),
* they have the same dimension,
* and the intersection of the interiors of the two geometries has
* the same dimension as the geometries themselves.
* <li>The DE-9IM Intersection Matrix for the two geometries matches
* one of the following patterns:
* <ul>
* <li><code>[T*T******]</code> (for P/L, P/A, and L/A situations)
* <li><code>[T*****T**]</code> (for L/P, A/P, and A/L situations)
* <li><code>[0********]</code> (for L/L situations)
* </ul>
* <code>[T*T***T**]</code> (for P/P and A/A cases)
* or <code>[1*T***T**]</code> (for L/L cases)
* </ul>
* For the A/A and P/P situations this predicate returns <code>false</code>.
* <p>
* The SFS defined this predicate only for P/L, P/A, L/L, and L/A situations.
* To make the relation symmetric
* JTS extends the definition to apply to L/P, A/P and A/L situations as well.
* If the geometries are of different dimension this predicate returns <code>false</code>.
* This predicate is symmetric.
*
* @return the predicate instance
*/