Package fr.soleil.salsa.entity

Examples of fr.soleil.salsa.entity.IRange


    public ITrajectory computeEndPositionChange(ITrajectory trajectory, boolean deltaLock, boolean yTrajectory, double integrationTime) {
        assert(trajectory.getBeginPosition() != null);
        double beginPosition = trajectory.getBeginPosition();
        double endPosition = trajectory.getEndPosition();
       
        IRange range;
        if(yTrajectory)
            range = ((ITrajectory2DY) trajectory).getRange();
        else
            range = ((ITrajectory2DX) trajectory).getRange();
       
        if(deltaLock) {
            double delta = trajectory.getDelta();
            int stepsNumber = (int) Math.abs(Math.round((endPosition - beginPosition) / delta));
            range.setStepsNumber(stepsNumber);
            this.subComputeStepsNumberChange(trajectory, yTrajectory, integrationTime);
        }
        else {
            int stepsNumber = range.getStepsNumber();
            double delta = Math.abs((endPosition - beginPosition) / stepsNumber);
            trajectory.setDelta(delta);
            if(yTrajectory)
                trajectory.setSpeed(delta / integrationTime);
            else
View Full Code Here


     * @param range the range that was modified.
     * @return the updated config. It may be another instance entirely.
     */
    // This function returns the configuration it received as parameter.
    private ITrajectory subComputeStepsNumberChange(ITrajectory newTrajectory, boolean yTrajectory, double integrationTime) {
        IRange range;
        if(yTrajectory)
            range = ((ITrajectory2DY) newTrajectory).getRange();
        else
            range = ((ITrajectory2DX) newTrajectory).getRange();
        int stepsNumber = range.getStepsNumber();
        for(ITrajectory trajectory : range.getTrajectoriesList()) {
            if(trajectory.getBeginPosition() != null && trajectory.getEndPosition() != null) {
                trajectory.setDelta( Math.abs((trajectory.getEndPosition() - trajectory.getBeginPosition()) / stepsNumber ));
                if(yTrajectory)
                    trajectory.setSpeed(trajectory.getDelta() / integrationTime);
                else
View Full Code Here

            equals = true;
        }
        else if ((list1 != null && list2 != null) && (list1.size() == list2.size())) {
            boolean listEquals = true;
            for (int i = 0; i < list1.size(); i++) {
                IRange obj1 = list1.get(i);
                IRange obj2 = list2.get(i);
                if (!rangeEquals(obj1, obj2)) {
                    listEquals = false;
                    break;
                }
            }
View Full Code Here

    private static void copyRangeList(List<? extends IRange> sourceRangeList,
            List<? extends IRange> destRangeList) {
        if ((sourceRangeList != null) && (destRangeList != null)
                && (sourceRangeList.size() == destRangeList.size())) {
            for (int i = 0; i < sourceRangeList.size(); i++) {
                IRange rangeSource = sourceRangeList.get(i);
                IRange rangeDest = destRangeList.get(i);

                // System.out.println("Source nbSteps=" + rangeSource.getStepsNumber());
                // System.out.println("Source nbSteps=" + rangeDest.getStepsNumber());

                List<ITrajectory> sourceTrajectoryList = rangeSource.getTrajectoriesList();
                List<ITrajectory> destTrajectoryList = rangeDest.getTrajectoriesList();
                if ((sourceTrajectoryList != null) && (destTrajectoryList != null)
                        && (sourceTrajectoryList.size() == destTrajectoryList.size())) {
                    for (int j = 0; j < sourceTrajectoryList.size(); j++) {
                        ITrajectory sourceT = sourceTrajectoryList.get(j);
                        ITrajectory destT = destTrajectoryList.get(j);
View Full Code Here

                List<? extends IRange> rangeList = dimension.getRangeList();

                for (int i = 0; i < rangeList.size(); i++) {

                    IRange range = rangeList.get(i);
                    List<ITrajectory> trajectoryList = range.getTrajectoriesList();
                    ITrajectory trajectory = range.createTrajectory(device);
                    if (trajectory != null && trajectoryList != null) {
                        trajectoryList.add(trajectory);
                    }
                }
View Full Code Here

    }

    @Override
    public void refreshDelta() {
        if (this instanceof IRangeTrajectory<?>) {
            IRange range = ((IRangeTrajectory<?>) this).getRange();
            if (range != null) {
                int nbOfSteps = range.getStepsNumber();
                if (nbOfSteps != 0) {
                    double adelta = TrajectoryUtil.calculDelta(beginPosition, endPosition, nbOfSteps);
                    this.delta = adelta;
                }
            }
View Full Code Here

    }

    @Override
    public void refreshStep() {
        if (this instanceof IRangeTrajectory<?>) {
            IRange range = ((IRangeTrajectory<?>) this).getRange();
            if (range != null) {
                int nbOfSteps = TrajectoryUtil.calculNbStep(beginPosition, endPosition, delta);
                endPosition = TrajectoryUtil.calculEndPosition(beginPosition, endPosition, nbOfSteps, delta);
                range.setStepsNumber(nbOfSteps);
            }
        }
    }
View Full Code Here

    }

    // @Override
    public void refreshEndPosition() {
        if (this instanceof IRangeTrajectory<?>) {
            IRange range = ((IRangeTrajectory<?>) this).getRange();
            if (range != null) {
                int nbOfSteps = range.getStepsNumber();
                endPosition = TrajectoryUtil.calculEndPosition(beginPosition, endPosition, nbOfSteps, delta);
            }
        }
    }
View Full Code Here

     * @return speed
     */
    @Override
    public Double getSpeed() {
        if (this instanceof IRangeTrajectory<?>) {
            IRange range = ((IRangeTrajectory<?>) this).getRange();
            if ((range != null) && (range instanceof IRangeIntegrated)) {
                int nbOfSteps = range.getStepsNumber();
                // Speed is calculate Mantis bug 23263
                double totalDistance = Math.abs(endPosition - beginPosition);
                double totalTime = nbOfSteps * ((IRangeIntegrated) range).getIntegrationTime();
                if (totalTime != 0) {
                    speed = totalDistance / totalTime;
View Full Code Here

    @Override
    public double[] getTrajectory() {
        if (firstCall) {
            firstCall = false;
        } else if ((trajectory == null) && (this instanceof IRangeTrajectory<?>) && customTrajectory) {
            IRange range = ((IRangeTrajectory<?>) this).getRange();
            if (range != null) {
                int nbStep = range.getStepsNumber();
                if (nbStep != 0) {
                    trajectory = TrajectoryUtil.calculateLinearTrajectory(0, beginPosition, endPosition, nbStep, false);
                }
            }
        }
View Full Code Here

TOP

Related Classes of fr.soleil.salsa.entity.IRange

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.