当前位置: 首页>>代码示例>>Java>>正文


Java RelicRecoveryVuMark.UNKNOWN属性代码示例

本文整理汇总了Java中org.firstinspires.ftc.robotcore.external.navigation.RelicRecoveryVuMark.UNKNOWN属性的典型用法代码示例。如果您正苦于以下问题:Java RelicRecoveryVuMark.UNKNOWN属性的具体用法?Java RelicRecoveryVuMark.UNKNOWN怎么用?Java RelicRecoveryVuMark.UNKNOWN使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.firstinspires.ftc.robotcore.external.navigation.RelicRecoveryVuMark的用法示例。


在下文中一共展示了RelicRecoveryVuMark.UNKNOWN属性的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getVuMarkPosition

public VectorF getVuMarkPosition()
{
    VectorF targetPos = null;
    VuforiaTrackable target = vuforia.getTarget(0);
    RelicRecoveryVuMark vuMark = RelicRecoveryVuMark.from(target);

    if (vuforia.isTargetVisible(target) && vuMark != RelicRecoveryVuMark.UNKNOWN)
    {
        OpenGLMatrix pose = vuforia.getTargetPose(target);
        if (pose != null)
        {
            targetPos = pose.getTranslation();
            robot.tracer.traceInfo("TargetPos", "%s: x=%6.2f, y=%6.2f, z=%6.2f",
                                   vuMark.toString(),
                                   targetPos.get(0)/RobotInfo.MM_PER_INCH,
                                   targetPos.get(1)/RobotInfo.MM_PER_INCH,
                                   -targetPos.get(2)/RobotInfo.MM_PER_INCH);
        }
    }

    return targetPos;
}
 
开发者ID:trc492,项目名称:Ftc2018RelicRecovery,代码行数:22,代码来源:VuforiaVision.java

示例2: getVuMarkOrientation

public Orientation getVuMarkOrientation()
{
    Orientation targetAngle = null;
    VuforiaTrackable target = vuforia.getTarget(0);
    RelicRecoveryVuMark vuMark = RelicRecoveryVuMark.from(target);

    if (vuforia.isTargetVisible(target) && vuMark != RelicRecoveryVuMark.UNKNOWN)
    {
        OpenGLMatrix pose = vuforia.getTargetPose(target);
        if (pose != null)
        {
            targetAngle = Orientation.getOrientation(
                    pose, AxesReference.EXTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES);
            robot.tracer.traceInfo("TargetRot", "%s: xRot=%6.2f, yRot=%6.2f, zRot=%6.2f",
                    vuMark.toString(),
                    targetAngle.firstAngle, targetAngle.secondAngle, targetAngle.thirdAngle);
        }
    }

    return targetAngle;
}
 
开发者ID:trc492,项目名称:Ftc2018RelicRecovery,代码行数:21,代码来源:VuforiaVision.java

示例3: updateVuforia

public void updateVuforia(){
    //OpenGLMatrix latestLocation = listener.getUpdatedRobotLocation();
    vuMark = RelicRecoveryVuMark.from(relicVuMark);

    /*
    if(latestLocation !=null)
    {lastKnownLocation = latestLocation;}

    float[] coordinates = lastKnownLocation.getTranslation().getData();

    robotX = coordinates[0];
    robotY = coordinates[1];
    robotAngle = Orientation.getOrientation(lastKnownLocation, AxesReference.EXTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES).thirdAngle;
    */
    if (vuMark != RelicRecoveryVuMark.UNKNOWN) {
        key = vuMark;
    }
    robot.telemetry.addData("key", key);
    robot.telemetry.update();
}
 
开发者ID:SCHS-Robotics,项目名称:Team9261-2017-2018,代码行数:20,代码来源:Navi.java

示例4: getVuMarkPosition

private VectorF getVuMarkPosition()
{
    VectorF targetPos = null;
    VuforiaTrackable target = vuforia.getTarget(0);
    RelicRecoveryVuMark vuMark = RelicRecoveryVuMark.from(target);

    if (vuforia.isTargetVisible(target) && vuMark != RelicRecoveryVuMark.UNKNOWN)
    {
        OpenGLMatrix pose = vuforia.getTargetPose(target);
        if (pose != null)
        {
            targetPos = pose.getTranslation();
        }
    }

    return targetPos;
}
 
开发者ID:trc492,项目名称:FtcSamples,代码行数:17,代码来源:FtcTestVuMark.java

示例5: getVuMarkOrientation

private Orientation getVuMarkOrientation()
{
    Orientation targetAngle = null;
    VuforiaTrackable target = vuforia.getTarget(0);
    RelicRecoveryVuMark vuMark = RelicRecoveryVuMark.from(target);

    if (vuforia.isTargetVisible(target) && vuMark != RelicRecoveryVuMark.UNKNOWN)
    {
        OpenGLMatrix pose = vuforia.getTargetPose(target);
        if (pose != null)
        {
            targetAngle = Orientation.getOrientation(
                    pose, AxesReference.EXTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES);
        }
    }

    return targetAngle;
}
 
开发者ID:trc492,项目名称:FtcSamples,代码行数:18,代码来源:FtcTestVuMark.java

示例6: doVisionTest

private void doVisionTest()
{
    if (robot.vuforiaVision != null)
    {
        robot.vuforiaVision.getVuMarkPosition();
        robot.vuforiaVision.getVuMarkOrientation();
        RelicRecoveryVuMark vuMark = robot.vuforiaVision.getVuMark();
        if (vuMark != robot.prevVuMark)
        {
            String sentence = null;
            if (vuMark != RelicRecoveryVuMark.UNKNOWN)
            {
                sentence = String.format("%s is %s.", vuMark.toString(), "in view");
            }
            else if (robot.prevVuMark != null)
            {
                sentence = String.format("%s is %s.", robot.prevVuMark.toString(), "out of view");
            }

            if (sentence != null)
            {
                robot.dashboard.displayPrintf(11, sentence);
                if (robot.textToSpeech != null)
                {
                    robot.textToSpeech.speak(sentence, TextToSpeech.QUEUE_FLUSH, null);
                }
            }
        }
        robot.prevVuMark = vuMark;
    }
}
 
开发者ID:trc492,项目名称:Ftc2018RelicRecovery,代码行数:31,代码来源:FtcTest.java

示例7: runOpMode

public void runOpMode() throws InterruptedException
{
	setupVuforia();
	
	lastKnownLocation = createMatrix(0,0,0,0,0,0);
	
	waitForStart();
	
	visionTargets.activate();
	while(opModeIsActive())
	{
		OpenGLMatrix latestLocation = listener.getUpdatedRobotLocation();
		vuMark = RelicRecoveryVuMark.from(relicVuMark);
	
		if(latestLocation !=null)
		{lastKnownLocation = latestLocation;}
			
		float[] coordinates = lastKnownLocation.getTranslation().getData();
		
		robotX = coordinates[0];
		robotY = coordinates[1];
		robotAngle = Orientation.getOrientation(lastKnownLocation, AxesReference.EXTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES).thirdAngle;
           RelicRecoveryVuMark key = vuMark;
		if (vuMark != RelicRecoveryVuMark.UNKNOWN) {
               telemetry.addData("Navi", "%s visible", vuMark);
           }else{
               telemetry.addData("Navi", "not visible");
               telemetry.addData("Navi Sees:", vuMark);
           }
		telemetry.addData("Last Known Location", formatMatrix(lastKnownLocation));
		telemetry.addData("key",key.toString());
		telemetry.update();
	}
}
 
开发者ID:SCHS-Robotics,项目名称:Team9261-2017-2018,代码行数:34,代码来源:Vuforia.java

示例8: init

@Override
public void init(){
    key = RelicRecoveryVuMark.UNKNOWN;
    setupVuforia();
    startVuforia();
    for(int i=0;i<10;i++){
        updateVuforia();
    }
    if(key!=RelicRecoveryVuMark.UNKNOWN){
        stopVuforia();
    }
}
 
开发者ID:SCHS-Robotics,项目名称:Team9261-2017-2018,代码行数:12,代码来源:Navi.java

示例9: runOpMode

public void runOpMode() throws InterruptedException
{
    setupVuforia();

    lastKnownLocation = createMatrix(0,0,0,0,0,0);

    waitForStart();

    visionTargets.activate();
    while(opModeIsActive())
    {
        OpenGLMatrix latestLocation = listener.getUpdatedRobotLocation();
        vuMark = RelicRecoveryVuMark.from(relicVuMark);

        if(latestLocation !=null)
        {lastKnownLocation = latestLocation;}

        float[] coordinates = lastKnownLocation.getTranslation().getData();

        robotX = coordinates[0];
        robotY = coordinates[1];
        robotAngle = Orientation.getOrientation(lastKnownLocation, AxesReference.EXTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES).thirdAngle;
        if (vuMark != RelicRecoveryVuMark.UNKNOWN) {
            key = vuMark;
        }
    }
}
 
开发者ID:SCHS-Robotics,项目名称:Team9261-2017-2018,代码行数:27,代码来源:BasicVuforia.java

示例10: getInput

@Override
public double getInput(TrcPidController pidCtrl)
{
    final String funcName = "getInput";
    double input = 0.0;

    if (pidCtrl == encoderXPidCtrl)
    {
        input = driveBase.getXPosition();
        if (prevXDistance != null && Math.abs(input - prevXDistance) >= 5.0)
        {
            tracer.traceWarn(funcName, "Detected invalid X position (prev=%.3f, curr=%.3f).",
                    prevXDistance, input);
            xOffset += input - prevXDistance;
        }
        prevXDistance = input;
        input -= xOffset;
    }
    else if (pidCtrl == encoderYPidCtrl)
    {
        input = driveBase.getYPosition();
    }
    else if (pidCtrl == gyroPidCtrl)
    {
        input = driveBase.getHeading();
    }
    else if (pidCtrl == visionPidCtrl)
    {
        RelicRecoveryVuMark vuMark = vuforiaVision.getVuMark();

        if (vuMark != RelicRecoveryVuMark.UNKNOWN)
        {
            input = vuforiaVision.getVuMarkPosition().get(0)/RobotInfo.MM_PER_INCH;
        }

        if (textToSpeech != null && vuMark != prevVuMark)
        {
            String sentence = null;

            if (vuMark != RelicRecoveryVuMark.UNKNOWN)
            {
                sentence = String.format("%s is %s.", vuMark.toString(), "in view");
            }
            else if (prevVuMark != null)
            {
                sentence = String.format("%s is %s.", prevVuMark.toString(), "out of view");
            }

            if (sentence != null)
            {
                textToSpeech.speak(sentence, TextToSpeech.QUEUE_FLUSH, null);
            }
        }
    }
    else if (pidCtrl == rangeXPidCtrl)
    {
        input = getRangeDistance(useRightSensorForX? rightRangeSensor: leftRangeSensor);
    }
    else if (pidCtrl == sonarXPidCtrl)
    {
        if (useRightSensorForX)
        {
            input = sonarArray.getDistance(RIGHT_SONAR_INDEX).value;
        }
        else
        {
            input = sonarArray.getDistance(LEFT_SONAR_INDEX).value;
        }
    }
    else if (pidCtrl == sonarYPidCtrl)
    {
        //
        // Read front sonar value.
        //
        input = sonarArray.getDistance(FRONT_SONAR_INDEX).value;
    }

    return input;
}
 
开发者ID:trc492,项目名称:Ftc2018RelicRecovery,代码行数:79,代码来源:Robot.java

示例11: loop

@Override
public void loop(){
    OpenGLMatrix latestLocation = listener.getUpdatedRobotLocation();
    vuMark = RelicRecoveryVuMark.from(relicVuMark);

    if(latestLocation !=null) {lastKnownLocation = latestLocation;}
    float[] coordinates = lastKnownLocation.getTranslation().getData();
    robotX = coordinates[0];
    robotY = coordinates[1];
    robotAngle = Orientation.getOrientation(lastKnownLocation, AxesReference.EXTRINSIC, AxesOrder.XYZ, AngleUnit.DEGREES).thirdAngle;
    if (vuMark != RelicRecoveryVuMark.UNKNOWN) {
        key = vuMark;
    }
    double x = gamepad1.right_stick_x;
    double y = gamepad1.right_stick_y;
    double c = gamepad1.left_trigger-gamepad1.right_trigger;
    motor1.setPower(Range.clip(y-x+c, -1, 1));
    motor2.setPower(Range.clip(y+x-c, -1, 1));
    motor3.setPower(Range.clip(y+x+c, -1, 1));
    motor4.setPower(Range.clip(y-x-c, -1, 1));

    if (gamepad2.right_trigger > 0) {
        leftcr.setPower(1);
        rightcr.setPower(1);
    }else if(gamepad2.left_trigger > 0) {
        leftcr.setPower(-1);
        rightcr.setPower(-1);
    }else {
        leftcr.setPower(0.1);
        rightcr.setPower(0);
    }
    if(gamepad2.x) {
        glyph.setPosition(1);
    }
    else if(gamepad2.a) {
        glyph.setPosition(0);
    }
    else if(gamepad2.b) {
        glyph.setPosition(-1);
    }

    telemetry.addData("motor 1 pos", motor1.getCurrentPosition());
    telemetry.addData("motor 2 pos", motor2.getCurrentPosition());
    telemetry.addData("motor 3 pos", motor3.getCurrentPosition());
    telemetry.addData("motor 4 pos", motor4.getCurrentPosition());
    telemetry.addData("jewel servo pos", jewelcr.getPower());
    updateLocation();
    telemetry.addData("Last Known Location", formatMatrix(lastKnownLocation));

    telemetry.addData("Red",color1.red());
    telemetry.addData("Blue",color1.blue());

    telemetry.update();
}
 
开发者ID:SCHS-Robotics,项目名称:Team9261-2017-2018,代码行数:54,代码来源:MecanumDebug.java

示例12: runPeriodic

@Override
public void runPeriodic(double elapsedTime)
{
    double startTime;

    startTime = TrcUtil.getCurrentTime();
    RelicRecoveryVuMark vuMark = RelicRecoveryVuMark.from(vuforia.getTarget(0));
    dashboard.displayPrintf(1, "ElapseTime: getTarget=%f", TrcUtil.getCurrentTime() - startTime);

    if (vuMark != RelicRecoveryVuMark.UNKNOWN)
    {
        startTime = TrcUtil.getCurrentTime();
        VectorF pos = getVuMarkPosition();
        Orientation orientation = getVuMarkOrientation();
        dashboard.displayPrintf(2, "ElapseTime: getVuMarkInfo=%f", TrcUtil.getCurrentTime() - startTime);

        dashboard.displayPrintf(3, "%s: x=%6.2f,y=%6.2f,z=%6.2f",
                vuMark.toString(), pos.get(0)/MM_PER_INCH, pos.get(1)/MM_PER_INCH, pos.get(2)/MM_PER_INCH);
        dashboard.displayPrintf(4, "%s: xRot=%6.2f,yRot=%6.2f,zRot=%6.2f",
                vuMark.toString(), orientation.firstAngle, orientation.secondAngle, orientation.thirdAngle);
    }

    if (vuMark != prevVuMark)
    {
        String sentence = null;

        if (vuMark != RelicRecoveryVuMark.UNKNOWN)
        {
            sentence = String.format("%s is %s.", vuMark.toString(), "in view");
        }
        else if (prevVuMark != null)
        {
            sentence = String.format("%s is %s.", prevVuMark.toString(), "out of view");
        }

        if (sentence != null)
        {
            dashboard.displayPrintf(5, sentence);
            if (textToSpeech != null)
            {
                //
                // ZTE phones are on KitKat and running level 19 APIs, so we need to use the deprecated version
                // to be compatible with it.
                //
                textToSpeech.speak(sentence, TextToSpeech.QUEUE_FLUSH, null);
            }
        }

        prevVuMark = vuMark;
    }
}
 
开发者ID:trc492,项目名称:FtcSamples,代码行数:51,代码来源:FtcTestVuMark.java


注:本文中的org.firstinspires.ftc.robotcore.external.navigation.RelicRecoveryVuMark.UNKNOWN属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。