List of usage examples for org.apache.commons.math3.geometry.euclidean.threed Vector3D distance
public double distance(Vector<Euclidean3D> v)
From source file:org.orekit.bodies.OneAxisEllipsoidTest.java
@Test public void testFarPoint() throws OrekitException { AbsoluteDate date = AbsoluteDate.J2000_EPOCH; Frame frame = FramesFactory.getITRF(IERSConventions.IERS_2010, true); OneAxisEllipsoid model = new OneAxisEllipsoid(90.0, 5.0 / 9.0, frame); Vector3D point = new Vector3D(1.0e15, 2.0e15, -1.0e12); GeodeticPoint gp = model.transform(point, frame, date); Vector3D rebuilt = model.transform(gp); Assert.assertEquals(0.0, rebuilt.distance(point), 1.0e-15 * point.getNorm()); }
From source file:org.orekit.bodies.OneAxisEllipsoidTest.java
@Test public void testIssue141() throws OrekitException { AbsoluteDate date = new AbsoluteDate("2002-03-06T20:50:20.44188731559965033", TimeScalesFactory.getUTC()); Frame frame = FramesFactory.getGTOD(IERSConventions.IERS_1996, true); OneAxisEllipsoid model = new OneAxisEllipsoid(Constants.WGS84_EARTH_EQUATORIAL_RADIUS, Constants.WGS84_EARTH_FLATTENING, frame); Vector3D point = new Vector3D(-6838696.282102453, -2148321.403361013, -0.011907944179711194); GeodeticPoint gp = model.transform(point, frame, date); Vector3D rebuilt = model.transform(gp); Assert.assertEquals(0.0, rebuilt.distance(point), 1.0e-15 * point.getNorm()); }
From source file:org.wallerlab.yoink.math.linear.CommonsMatrix.java
@Override public double distance(Matrix m) { double[] v1 = this.internalMatrix.getRow(0); Vector3D vector1 = new Vector3D(v1); double[] v2 = ((RealMatrix) m.getInternalMatrix()).getRow(0); Vector3D vector2 = new Vector3D(v2); return vector1.distance(vector2); }
From source file:ru.jts_dev.gameserver.movement.MovementService.java
public void moveTo(final GameSession session, final GameCharacter character, final Vector3D end) { final Vector3D start = character.getVector3D(); final Line line = new Line(start, end, 1.0D); final double distance = start.distance(end); final Vector3D direction = line.getDirection(); final double angle = Vector3D.angle(start, direction); final double degree = FastMath.toDegrees(angle); //final Rotation rotation = new Rotation(start, end); //final double angle = rotation.getAngle(); logger.info("MovementService angle = {}", angle); logger.info("MovementService degree = {}", degree); character.setVector3D(start);//from ww w .j av a 2 s . c om final int clientHeading = rotationUtils.convertAngleToClientHeading((int) degree); //broadcastService.send(session, new StartRotating(character, clientHeading, 0, 200)); character.setAngle(degree); character.setMoving(true); final Runnable moveTask = new MoveTask(session, character, start, end, direction, distance, true); ScheduledFuture<?> future = scheduledExecutorService.schedule(moveTask, MOVE_TASK_INTERVAL_MILLIS, TimeUnit.MILLISECONDS); tasks.put(character.getObjectId(), future); }