RobotCore 1.0
WPILib port to raspberry Pi
Loading...
Searching...
No Matches
AngleUnit.java
1// Copyright (c) FIRST and other WPILib contributors.
2// Open Source Software; you can modify and/or share it under the terms of
3// the WPILib BSD license file in the root directory of this project.
4
5package org.wpilib.units;
6
7import org.wpilib.units.measure.Angle;
8
18// technically, angles are unitless dimensions
19// eg MassUnit * DistanceUnit * VelocityUnit<AngleUnit> is equivalent to (MassUnit * DistanceUnit) /
20// TimeUnit - otherwise known
21// as PowerUnit - in other words, VelocityUnit<AngleUnit> is /actually/ Frequency
22public final class AngleUnit extends Unit {
23 AngleUnit(AngleUnit baseUnit, double baseUnitEquivalent, String name, String symbol) {
24 super(baseUnit, baseUnitEquivalent, name, symbol);
25 }
26
27 AngleUnit(
28 AngleUnit baseUnit,
29 UnaryFunction toBaseConverter,
30 UnaryFunction fromBaseConverter,
31 String name,
32 String symbol) {
33 super(baseUnit, toBaseConverter, fromBaseConverter, name, symbol);
34 }
35
36 @Override
37 public AngleUnit getBaseUnit() {
38 return (AngleUnit) super.getBaseUnit();
39 }
40
41 @Override
42 public Angle of(double magnitude) {
43 return Angle.ofRelativeUnits(magnitude, this);
44 }
45
46 @Override
47 public Angle ofBaseUnits(double baseUnitMagnitude) {
48 return Angle.ofBaseUnits(baseUnitMagnitude, this);
49 }
50
51 @Override
53 return AngularVelocityUnit.combine(this, period);
54 }
55
63 public <U extends Unit> PerUnit<AngleUnit, U> per(U other) {
64 return PerUnit.combine(this, other);
65 }
66
74 public double convertFrom(double magnitude, AngleUnit otherUnit) {
75 return fromBaseUnits(otherUnit.toBaseUnits(magnitude));
76 }
77
78 @Override
79 public Angle zero() {
80 return (Angle) super.zero();
81 }
82
83 @Override
84 public Angle one() {
85 return (Angle) super.one();
86 }
87}
Angle of(double magnitude)
AngularVelocityUnit per(TimeUnit period)
Angle ofBaseUnits(double baseUnitMagnitude)
double convertFrom(double magnitude, AngleUnit otherUnit)
static AngularVelocityUnit combine(AngleUnit angle, TimeUnit time)
static< N extends Unit, D extends Unit > PerUnit< N, D > combine(N numerator, D denominator)
Definition PerUnit.java:93
double toBaseUnits(double valueInNativeUnits)
Definition Unit.java:166
Unit(Unit baseUnit, UnaryFunction toBaseConverter, UnaryFunction fromBaseConverter, String name, String symbol)
Definition Unit.java:38
double fromBaseUnits(double valueInBaseUnits)
Definition Unit.java:156