Geometry

Java library for computational geometry.

Лицензия

Лицензия

Категории

Категории

Geo Прикладные библиотеки Geospatial
Группа

Группа

io.github.ejif.geometry
Идентификатор

Идентификатор

geometry
Последняя версия

Последняя версия

0.0.2
Дата

Дата

Тип

Тип

jar
Описание

Описание

Geometry
Java library for computational geometry.
Ссылка на сайт

Ссылка на сайт

https://github.com/ejif/geometry.git
Система контроля версий

Система контроля версий

https://github.com/ejif/geometry.git

Скачать geometry

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/io.github.ejif.geometry/geometry/ -->
<dependency>
    <groupId>io.github.ejif.geometry</groupId>
    <artifactId>geometry</artifactId>
    <version>0.0.2</version>
</dependency>
// https://jarcasting.com/artifacts/io.github.ejif.geometry/geometry/
implementation 'io.github.ejif.geometry:geometry:0.0.2'
// https://jarcasting.com/artifacts/io.github.ejif.geometry/geometry/
implementation ("io.github.ejif.geometry:geometry:0.0.2")
'io.github.ejif.geometry:geometry:jar:0.0.2'
<dependency org="io.github.ejif.geometry" name="geometry" rev="0.0.2">
  <artifact name="geometry" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.github.ejif.geometry', module='geometry', version='0.0.2')
)
libraryDependencies += "io.github.ejif.geometry" % "geometry" % "0.0.2"
[io.github.ejif.geometry/geometry "0.0.2"]

Зависимости

compile (3)

Идентификатор библиотеки Тип Версия
com.google.guava : guava jar 27.1-jre
org.projectlombok : lombok jar 1.18.6
org.slf4j : slf4j-api jar 1.7.25

test (3)

Идентификатор библиотеки Тип Версия
ch.qos.logback : logback-classic jar 1.2.3
junit : junit jar 4.12
org.assertj : assertj-core jar 3.11.0

Модули Проекта

Данный проект не имеет модулей.

Geometry

Point location

This Java library provides an efficient algorithm for point location: given N points and O(N log N) preprocessing time, the algorithm can find the closest point to a given query point in O(log N) time. The library uses Fortune's algorithm to construct a Voronoi diagram, and a trapezoidal map to answer point location queries in O(log N) expected time. (The construction of the trapezoidal map involves inserting edges in a randomized order, so the runtime is expected O(log N) for all inputs.)

Usage:

    import io.github.ejif.geometry.Point;
    import io.github.ejif.geometry.algorithm.PointSet;

    List<Point> points = /* points */
    Point query = /* query point */
    PointSet pointSet = new PointSet(points);
    Point closestPoint = pointSet.findClosestPoint(query);

This library is extensively tested for both randomized point configurations and discrete point configurations with collinear and concyclic points. There are no arbitrary floating point scale requirements (e.g. checks for whether two points are within EPSILON = 1e-6), so this library supports points at any scale.

Maven

The geometry library is published at the following Maven coordinates. See the Github releases page for the latest version.

    <dependency>
        <groupId>io.github.ejif.geometry</groupId>
        <artifactId>geometry</artifactId>
        <version>{version}</version>
    </dependency>

Версии библиотеки

Версия
0.0.2
0.0.1