public class Flat2Query extends Object
Modifier and Type | Class and Description |
---|---|
static class |
Flat2Query.InteriorNode |
static interface |
Flat2Query.Item |
static class |
Flat2Query.LeafNode |
static class |
Flat2Query.LineItem |
static interface |
Flat2Query.Node |
static class |
Flat2Query.PointItem |
static class |
Flat2Query.QueryCache |
static class |
Flat2Query.QueryCacheConfig |
static class |
Flat2Query.QueryDatabase |
static class |
Flat2Query.Tree |
static class |
Flat2Query.TreeBuilder |
static class |
Flat2Query.TriangleItem |
Constructor and Description |
---|
Flat2Query() |
Modifier and Type | Method and Description |
---|---|
static int |
appendQueryTree(Flat2Query.Node node,
IntsModifiable interiorNodesBuf,
IntsModifiable leafNodesBuf,
IntsModifiable pointsBuf,
IntsModifiable linesBuf,
IntsModifiable trianglesBuf) |
static boolean |
boxContainsPoint(float xMin,
float yMin,
float xMax,
float yMax,
float x,
float y) |
static boolean |
boxIntersectsLine(float xMin,
float yMin,
float xMax,
float yMax,
float xA,
float yA,
float xB,
float yB) |
static boolean |
boxIntersectsTriangle(float xMin,
float yMin,
float xMax,
float yMax,
float xA,
float yA,
float xB,
float yB,
float xC,
float yC) |
static float |
chooseDivider(float nodeMin,
float nodeMax,
SortedFloats itemMins,
SortedFloats itemMaxs) |
static Flat2Query.Node |
createNode(float xNodeMin,
float xNodeMax,
float yNodeMin,
float yNodeMax,
Collection<Flat2Query.PointItem> points,
Collection<Flat2Query.LineItem> lines,
Collection<Flat2Query.TriangleItem> triangles,
ExecutorService exec) |
static <T> SortedFloatsArray |
createSortedFloatsArray(Collection<? extends Collection<? extends T>> colls,
ToFloatFunction<T> valueFn) |
static float |
cross(float xA,
float yA,
float xB,
float yB) |
static boolean |
lineIntersectsHorizontal(float xA,
float yA,
float xB,
float yB,
float xMin,
float xMax,
float y) |
static boolean |
lineIntersectsVertical(float xA,
float yA,
float xB,
float yB,
float x,
float yMin,
float yMax) |
static float |
max3f(float a,
float b,
float c) |
static int |
max4i(int a,
int b,
int c,
int d) |
static float |
min3f(float a,
float b,
float c) |
static void |
printTree(PrintStream out,
Flat2Query.Node root) |
static String |
queryConfigString(Flat2Query.QueryCacheConfig config) |
static boolean |
triangleContainsPoint(float xA,
float yA,
float xB,
float yB,
float xC,
float yC,
float x,
float y) |
static int |
writeQueryCoveragesFile(Flat2Query.QueryCacheConfig config,
File file,
it.unimi.dsi.fastutil.ints.Int2ObjectMap<Flat2Query.QueryDatabase> databases) |
static int |
writeQueryLibrariesFile(Flat2Query.QueryCacheConfig config,
File file,
it.unimi.dsi.fastutil.ints.Int2ObjectMap<Flat2Query.QueryDatabase> databases) |
public static String queryConfigString(Flat2Query.QueryCacheConfig config) throws IOException
IOException
public static int writeQueryLibrariesFile(Flat2Query.QueryCacheConfig config, File file, it.unimi.dsi.fastutil.ints.Int2ObjectMap<Flat2Query.QueryDatabase> databases) throws IOException
IOException
public static int writeQueryCoveragesFile(Flat2Query.QueryCacheConfig config, File file, it.unimi.dsi.fastutil.ints.Int2ObjectMap<Flat2Query.QueryDatabase> databases) throws IOException
IOException
public static float chooseDivider(float nodeMin, float nodeMax, SortedFloats itemMins, SortedFloats itemMaxs)
public static Flat2Query.Node createNode(float xNodeMin, float xNodeMax, float yNodeMin, float yNodeMax, Collection<Flat2Query.PointItem> points, Collection<Flat2Query.LineItem> lines, Collection<Flat2Query.TriangleItem> triangles, ExecutorService exec)
public static <T> SortedFloatsArray createSortedFloatsArray(Collection<? extends Collection<? extends T>> colls, ToFloatFunction<T> valueFn)
public static boolean boxContainsPoint(float xMin, float yMin, float xMax, float yMax, float x, float y)
public static boolean boxIntersectsLine(float xMin, float yMin, float xMax, float yMax, float xA, float yA, float xB, float yB)
public static boolean boxIntersectsTriangle(float xMin, float yMin, float xMax, float yMax, float xA, float yA, float xB, float yB, float xC, float yC)
public static boolean triangleContainsPoint(float xA, float yA, float xB, float yB, float xC, float yC, float x, float y)
public static float cross(float xA, float yA, float xB, float yB)
public static boolean lineIntersectsHorizontal(float xA, float yA, float xB, float yB, float xMin, float xMax, float y)
public static boolean lineIntersectsVertical(float xA, float yA, float xB, float yB, float x, float yMin, float yMax)
public static int max4i(int a, int b, int c, int d)
public static float min3f(float a, float b, float c)
public static float max3f(float a, float b, float c)
public static int appendQueryTree(Flat2Query.Node node, IntsModifiable interiorNodesBuf, IntsModifiable leafNodesBuf, IntsModifiable pointsBuf, IntsModifiable linesBuf, IntsModifiable trianglesBuf)
public static void printTree(PrintStream out, Flat2Query.Node root)
Copyright © 2016 Metron, Inc.. All rights reserved.