public class Furrow3D extends Object implements Interceptable
Modifier and Type | Field and Description |
---|---|
double[] |
cm |
double[] |
normal |
double[] |
up |
Constructor and Description |
---|
Furrow3D(double[] center,
double[] direction)
Creates a 3D furrow based on the center and direction.
|
Modifier and Type | Method and Description |
---|---|
double |
averageRadius(List<double[]> intersections)
Returns the average value of the distance a collection of points is from the
center of this furrow3D.
|
double |
calculateRadius(List<Connection3D> connections) |
boolean |
contains(double[] pt) |
void |
create3DObject() |
void |
createTexturedPlane3DObject(MeshImageStack mis) |
double |
distanceTo(double[] loc) |
double[] |
getClosestPointOnPlane(double[] pt) |
DataObject |
getDataObject() |
double |
getDistance(Node3D a)
Gets the signed distance to the point, if the value is greater than 0 then the point is infront of the plane,
if it is negative then the point is behind the plane.
|
List<Connection3D> |
getIntersectionConnections(List<Connection3D> connections) |
List<Intersection> |
getIntersections(double[] origin,
double[] direction) |
List<double[]> |
getIntersections(List<Connection3D> connections) |
Shape3D |
getShape3D() |
static void |
main(String[] args) |
double[] |
minimumRadiusLocation(List<double[]> intersections) |
void |
move(double[] displacement) |
void |
moveTo(double[] original) |
void |
removeDataObject() |
void |
setDirection(double[] dir) |
void |
setGeometry(double[] pos,
double[] dir) |
void |
showTexture(boolean t) |
List<List<Triangle3D>> |
splitMesh(List<Triangle3D> triangles) |
List<List<Node3D>> |
splitNodes(List<Node3D> nodes) |
void |
updateGeometry() |
public Furrow3D(double[] center, double[] direction)
center
- direction
- public void showTexture(boolean t)
public void create3DObject()
public void createTexturedPlane3DObject(MeshImageStack mis)
public DataObject getDataObject()
public Shape3D getShape3D()
public List<List<Triangle3D>> splitMesh(List<Triangle3D> triangles)
public List<Connection3D> getIntersectionConnections(List<Connection3D> connections)
public List<double[]> getIntersections(List<Connection3D> connections)
public double calculateRadius(List<Connection3D> connections)
public double averageRadius(List<double[]> intersections)
intersections
- 3D points, presumably will be intersections.public double[] minimumRadiusLocation(List<double[]> intersections)
public double distanceTo(double[] loc)
public static void main(String[] args)
public void move(double[] displacement)
public void setGeometry(double[] pos, double[] dir)
public void moveTo(double[] original)
public void updateGeometry()
public void setDirection(double[] dir)
public double getDistance(Node3D a)
a
- node to checkpublic List<Intersection> getIntersections(double[] origin, double[] direction)
getIntersections
in interface Interceptable
public boolean contains(double[] pt)
contains
in interface Interceptable
public double[] getClosestPointOnPlane(double[] pt)
public void removeDataObject()
Copyright © 2013–2022 Francis Crick Institute. All rights reserved.