You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by de...@apache.org on 2023/09/27 14:56:10 UTC
[sis] 02/02: Add radioactivity units of measurement (becquerel and curie).
This is an automated email from the ASF dual-hosted git repository.
desruisseaux pushed a commit to branch geoapi-4.0
in repository https://gitbox.apache.org/repos/asf/sis.git
commit 2c76440e2871a43a21a500d581512e2ac964b8a7
Author: Martin Desruisseaux <ma...@geomatys.com>
AuthorDate: Wed Sep 27 16:55:39 2023 +0200
Add radioactivity units of measurement (becquerel and curie).
---
.../main/org/apache/sis/measure/Scalar.java | 4 +-
.../org/apache/sis/measure/UnitNames.properties | 2 +
.../main/org/apache/sis/measure/UnitRegistry.java | 3 +-
.../main/org/apache/sis/measure/Units.java | 221 ++++++++++++---------
.../org/apache/sis/measure/UnitFormatTest.java | 2 +
.../test/org/apache/sis/measure/UnitsTest.java | 8 +-
6 files changed, 142 insertions(+), 98 deletions(-)
diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Scalar.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Scalar.java
index f64177132c..2e8c5bf0a3 100644
--- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Scalar.java
+++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Scalar.java
@@ -404,8 +404,8 @@ class Scalar<Q extends Quantity<Q>> extends Number implements Quantity<Q>, Compa
/*
* Following inner classes are straightforward implementations for some commonly used quantity types.
- * We do not need to provide an implementation for every types; we will fallback on a proxy mechanism
- * as a fallback for less frequently used types.
+ * We do not need to provide an implementation for every types, because we have a proxy mechanism as
+ * a fallback for less frequently used types.
*/
diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitNames.properties b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitNames.properties
index 97fc5614ba..41ffd3b981 100644
--- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitNames.properties
+++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitNames.properties
@@ -4,8 +4,10 @@ A=ampere
a=year
atm=atmosphere
B=bel
+Bq=becquerel
C=coulomb
cd=candela
+Ci=curie
cm=centimetre
d=day
dB=decibel
diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitRegistry.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitRegistry.java
index 0d1dc55919..776c60a456 100644
--- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitRegistry.java
+++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/UnitRegistry.java
@@ -199,8 +199,9 @@ final class UnitRegistry implements SystemOfUnits, Serializable {
* This method is invoked for assertions only.
*/
private static int filter(int existed, final SystemUnit<?> unit, final String s) {
+ if ("cd".equals(s) ||
+ "Hz".equals(s) || "Bq".equals(s)) existed &= ~(1 ); // Accepts dimension collisions only;
if (unit.dimension.isDimensionless()) existed &= ~(1 | 2); // Accepts dimension and quantity collisions.
- if ("cd".equals(s) || "Hz".equals(s)) existed &= ~(1 ); // Accepts dimension collisions only;
return (s == null) || s.isEmpty() ? 0 : existed;
}
diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Units.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Units.java
index 9be723171d..3087070e0f 100644
--- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Units.java
+++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Units.java
@@ -76,7 +76,7 @@ import static org.apache.sis.measure.UnitRegistry.PREFIXABLE;
*
* @author Martin Desruisseaux (IRD, Geomatys)
* @author Alexis Manin (Geomatys)
- * @version 1.2
+ * @version 1.4
* @since 0.3
*/
public final class Units extends Static {
@@ -88,9 +88,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI units:</td> <td style="word-spacing:1em"><u>{@code NANOMETRE}</u>, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em"><u>{@code NANOMETRE}</u>, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @see org.apache.sis.metadata.iso.content.DefaultBand#getBoundUnits()
@@ -106,9 +106,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, <u>{@code MILLIMETRE}</u>, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, <u>{@code MILLIMETRE}</u>, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -122,9 +122,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, <u>{@code CENTIMETRE}</u>, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, <u>{@code CENTIMETRE}</u>, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -138,9 +138,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <u><b>{@code METRE}</b></u>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <u><b>{@code METRE}</b></u>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -154,9 +154,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, <u>{@code KILOMETRE}</u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #KILOMETRES_PER_HOUR}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, <u>{@code KILOMETRE}</u>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #KILOMETRES_PER_HOUR}.</td></tr>
* </table>
*
* @since 0.8
@@ -176,9 +176,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, <u>{@code NAUTICAL_MILE}</u>.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #KILOMETRES_PER_HOUR}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, <u>{@code NAUTICAL_MILE}</u>.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #KILOMETRES_PER_HOUR}.</td></tr>
* </table>
*
* @since 0.8
@@ -196,9 +196,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, <u>{@code STATUTE_MILE}</u>, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #KILOMETRES_PER_HOUR}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, <u>{@code STATUTE_MILE}</u>, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #KILOMETRES_PER_HOUR}.</td></tr>
* </table>
*
* @since 0.8
@@ -213,9 +213,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, <u>{@code US_SURVEY_FOOT}</u>, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, <u>{@code US_SURVEY_FOOT}</u>, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -229,9 +229,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, <u>{@code CLARKE_FOOT}</u>, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, {@link #FOOT}, <u>{@code CLARKE_FOOT}</u>, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -245,9 +245,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, <u>{@code FOOT}</u>, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, {@link #INCH}, <u>{@code FOOT}</u>, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -261,9 +261,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #POINT}, <u>{@code INCH}</u>, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #POINT}, <u>{@code INCH}</u>, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -278,9 +278,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em"><u>{@code POINT}</u>, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
+ * <tr><td>SI length units:</td> <td style="word-spacing:1em">{@link #NANOMETRE}, {@link #MILLIMETRE}, {@link #CENTIMETRE}, <b>{@link #METRE}</b>, {@link #KILOMETRE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em"><u>{@code POINT}</u>, {@link #INCH}, {@link #FOOT}, {@link #CLARKE_FOOT}, {@link #US_SURVEY_FOOT}, {@link #STATUTE_MILE}, {@link #NAUTICAL_MILE}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #SQUARE_METRE}, {@link #CUBIC_METRE}, {@link #METRES_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -349,9 +349,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI angle units:</td> <td style="word-spacing:1em"><u>{@code MICRORADIAN}</u>, <b>{@link #RADIAN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
+ * <tr><td>SI angle units:</td> <td style="word-spacing:1em"><u>{@code MICRORADIAN}</u>, <b>{@link #RADIAN}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
* </table>
*
* @since 0.8
@@ -366,9 +366,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <u><b>{@code RADIAN}</b></u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}, {@link #RADIANS_PER_SECOND}.</td></tr>
+ * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <u><b>{@code RADIAN}</b></u>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}, {@link #RADIANS_PER_SECOND}.</td></tr>
* </table>
*
* @since 0.8
@@ -383,9 +383,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em"><u>{@code DEGREE}</u>, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
+ * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em"><u>{@code DEGREE}</u>, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
* </table>
*
* @since 0.8
@@ -401,9 +401,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DEGREE}, <u>{@code ARC_MINUTE}</u>, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
+ * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DEGREE}, <u>{@code ARC_MINUTE}</u>, {@link #ARC_SECOND}, {@link #GRAD}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
* </table>
*
* @since 0.8
@@ -420,9 +420,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, <u>{@code ARC_SECOND}</u>, {@link #GRAD}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
+ * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, <u>{@code ARC_SECOND}</u>, {@link #GRAD}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
* </table>
*
* @since 0.8
@@ -438,9 +438,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, <u>{@code GRAD}</u>.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
+ * <tr><td>SI angle units:</td> <td style="word-spacing:1em">{@link #MICRORADIAN}, <b>{@link #RADIAN}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DEGREE}, {@link #ARC_MINUTE}, {@link #ARC_SECOND}, <u>{@code GRAD}</u>.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #STERADIAN}.</td></tr>
* </table>
*
* @since 0.8
@@ -455,9 +455,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em"><u>{@code MILLISECOND}</u>, <b>{@link #SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #METRES_PER_SECOND}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em"><u>{@code MILLISECOND}</u>, <b>{@link #SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #METRES_PER_SECOND}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @see java.util.concurrent.TimeUnit#MILLISECONDS
@@ -473,9 +473,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <u><b>{@link #SECOND}</b></u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #METRES_PER_SECOND}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <u><b>{@link #SECOND}</b></u>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #METRES_PER_SECOND}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @since 0.8
@@ -489,9 +489,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em"><u>{@code MINUTE}</u>, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #METRES_PER_SECOND}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em"><u>{@code MINUTE}</u>, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #METRES_PER_SECOND}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @since 0.8
@@ -505,9 +505,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #MINUTE}, <u>{@code HOUR}</u>, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #MINUTE}, <u>{@code HOUR}</u>, {@link #DAY}, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @since 0.8
@@ -521,9 +521,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, <u>{@code DAY}</u>, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, <u>{@code DAY}</u>, {@link #WEEK}, {@link #TROPICAL_YEAR}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @since 0.8
@@ -537,9 +537,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, <u>{@link #WEEK}</u>, {@link #TROPICAL_YEAR}.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, <u>{@link #WEEK}</u>, {@link #TROPICAL_YEAR}.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @since 0.8
@@ -555,9 +555,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, <u>{@code TROPICAL_YEAR}</u>.</td></tr>
- * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}.</td></tr>
+ * <tr><td>SI time units:</td> <td style="word-spacing:1em">{@link #MILLISECOND}, <b>{@link #SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #MINUTE}, {@link #HOUR}, {@link #DAY}, {@link #WEEK}, <u>{@code TROPICAL_YEAR}</u>.</td></tr>
+ * <tr><td>Derived units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}, {@link #HERTZ}, {@link #BECQUEREL}.</td></tr>
* </table>
*
* @since 0.8
@@ -597,9 +597,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI speed units:</td> <td style="word-spacing:1em"><u><b>{@code METRES_PER_SECOND}</b></u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}.</td></tr>
- * <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #METRE} ∕ {@link #SECOND}</td></tr>
+ * <tr><td>SI speed units:</td> <td style="word-spacing:1em"><u><b>{@code METRES_PER_SECOND}</b></u>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #KILOMETRES_PER_HOUR}.</td></tr>
+ * <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #METRE} ∕ {@link #SECOND}</td></tr>
* </table>
*
* @since 0.8
@@ -613,9 +613,9 @@ public final class Units extends Static {
*
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
- * <tr><td>SI speed units:</td> <td style="word-spacing:1em"><b>{@link #METRES_PER_SECOND}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em"><u>{@code KILOMETRES_PER_HOUR}</u>.</td></tr>
- * <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #KILOMETRE} ∕ {@link #HOUR}</td></tr>
+ * <tr><td>SI speed units:</td> <td style="word-spacing:1em"><b>{@link #METRES_PER_SECOND}</b>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em"><u>{@code KILOMETRES_PER_HOUR}</u>.</td></tr>
+ * <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #KILOMETRE} ∕ {@link #HOUR}</td></tr>
* </table>
*
* @since 0.8
@@ -629,7 +629,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI acceleration units:</td> <td style="word-spacing:1em"><u><b>{@code METRES_PER_SECOND_SQUARED}</b></u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #GAL}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #GAL}.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #METRES_PER_SECOND} ∕ {@link #SECOND}</td></tr>
* </table>
*
@@ -646,7 +646,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI acceleration units:</td> <td style="word-spacing:1em"><u><b>{@link #METRES_PER_SECOND_SQUARED}</b></u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@code GAL}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@code GAL}.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #CENTIMETRE} ∕ {@link #SECOND}²</td></tr>
* </table>
*
@@ -664,7 +664,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI pressure units:</td> <td style="word-spacing:1em"><u><b>{@code PASCAL}</b></u>, {@link #HECTOPASCAL}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DECIBAR}, {@link #BAR}, {@link #ATMOSPHERE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DECIBAR}, {@link #BAR}, {@link #ATMOSPHERE}.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #NEWTON} ∕ {@link #SQUARE_METRE}</td></tr>
* </table>
*
@@ -682,7 +682,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI pressure units:</td> <td style="word-spacing:1em"><b>{@link #PASCAL}</b>, <u>{@code HECTOPASCAL}</u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DECIBAR}, {@link #BAR}, {@link #ATMOSPHERE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DECIBAR}, {@link #BAR}, {@link #ATMOSPHERE}.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #NEWTON} ∕ {@link #SQUARE_METRE}</td></tr>
* </table>
*
@@ -700,7 +700,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI pressure units:</td> <td style="word-spacing:1em"><b>{@link #PASCAL}</b>, {@link #HECTOPASCAL}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em"><u>{@code DECIBAR}</u>, {@link #BAR}, {@link #ATMOSPHERE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em"><u>{@code DECIBAR}</u>, {@link #BAR}, {@link #ATMOSPHERE}.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #NEWTON} ∕ {@link #SQUARE_METRE}</td></tr>
* </table>
*
@@ -718,7 +718,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI pressure units:</td> <td style="word-spacing:1em"><b>{@link #PASCAL}</b>, {@link #HECTOPASCAL}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DECIBAR}, <u>{@code BAR}</u>, {@link #ATMOSPHERE}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DECIBAR}, <u>{@code BAR}</u>, {@link #ATMOSPHERE}.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #NEWTON} ∕ {@link #SQUARE_METRE}</td></tr>
* </table>
*
@@ -735,7 +735,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI pressure units:</td> <td style="word-spacing:1em"><b>{@link #PASCAL}</b>, {@link #HECTOPASCAL}.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #DECIBAR}, {@link #BAR}, <u>{@code ATMOSPHERE}</u>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #DECIBAR}, {@link #BAR}, <u>{@code ATMOSPHERE}</u>.</td></tr>
* <tr><td>Components:</td> <td style="word-spacing:0.5em">{@link #NEWTON} ∕ {@link #SQUARE_METRE}</td></tr>
* </table>
*
@@ -919,7 +919,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI temperature units:</td> <td style="word-spacing:1em"><u><b>{@code KELVIN}</b></u>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #CELSIUS}, {@link #FAHRENHEIT}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #CELSIUS}, {@link #FAHRENHEIT}.</td></tr>
* </table>
*
* @since 0.8
@@ -934,7 +934,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI temperature units:</td> <td style="word-spacing:1em"><b>{@link #KELVIN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em"><u>{@code CELSIUS}</u>, {@link #FAHRENHEIT}.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em"><u>{@code CELSIUS}</u>, {@link #FAHRENHEIT}.</td></tr>
* </table>
*
* @since 0.8
@@ -949,7 +949,7 @@ public final class Units extends Static {
* <table class="compact" style="margin-left:30px; line-height:1.25">
* <caption>Related units</caption>
* <tr><td>SI temperature units:</td> <td style="word-spacing:1em"><b>{@link #KELVIN}</b>.</td></tr>
- * <tr><td>In other systems:</td> <td style="word-spacing:1em">{@link #CELSIUS}, <u>{@code FAHRENHEIT}</u>.</td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #CELSIUS}, <u>{@code FAHRENHEIT}</u>.</td></tr>
* </table>
*
* @since 0.8
@@ -1020,6 +1020,34 @@ public final class Units extends Static {
*/
public static final Unit<AmountOfSubstance> MOLE;
+ /**
+ * The SI derived unit for radioactivity (Bq).
+ * The unlocalized name is “becquerel”.
+ *
+ * <table class="compact" style="margin-left:30px; line-height:1.25">
+ * <caption>Related units</caption>
+ * <tr><td>Components:</td><td style="word-spacing:0.5em">{@link #SECOND}<sup>-1</sup></td></tr>
+ * <tr><td>Non-SI units:</td> <td style="word-spacing:1em">{@link #CURIE}.</td></tr>
+ * </table>
+ *
+ * @since 1.4
+ */
+ public static final Unit<Radioactivity> BECQUEREL;
+
+ /**
+ * Unit of measurement defined as 3.7 × 10¹⁰ becquerel
+ * The symbol is Ci and the unlocalized name is “curie”.
+ *
+ * <table class="compact" style="margin-left:30px; line-height:1.25">
+ * <caption>Related units</caption>
+ * <tr><td>Components:</td><td style="word-spacing:0.5em">{@link #SECOND}<sup>-1</sup></td></tr>
+ * <tr><td>SI radioactivity units:</td> <td style="word-spacing:1em"><b>{@link #BECQUEREL}</b>.</td></tr>
+ * </table>
+ *
+ * @since 1.4
+ */
+ public static final Unit<Radioactivity> CURIE;
+
/**
* The base dimensionless unit for scale measurements.
* The unlocalized name is “unity” and the identifier is EPSG:9201.
@@ -1237,6 +1265,15 @@ public final class Units extends Static {
HECTARE = add(m2, ten4, "ha", ACCEPTED, (short) 0);
LITRE = add(m3, milli, "L", (byte) (ACCEPTED | PREFIXABLE), (short) 0);
GRAM = add(kg, milli, "g", (byte) (ACCEPTED | PREFIXABLE), (short) 0);
+ /*
+ * Radioactivity must be defined after angular velocities, because it has the same dimensions.
+ * The dimensions are also the same as frequency.
+ */
+ final SystemUnit<Radioactivity> Bq;
+ Bq = add(Radioactivity.class, null, frequency, "Bq", (byte) (SI | PREFIXABLE), (short) 0);
+ Bq.related(1);
+ BECQUEREL = Bq;
+ CURIE = add(Bq, LinearConverter.scale(3.7E10, 1), "Ci", OTHER, (short) 0);
/*
* Force, energy, electricity, magnetism and other units.
* Frequency must be defined after angular velocities.
diff --git a/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitFormatTest.java b/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitFormatTest.java
index c2a42f2552..edfe175fac 100644
--- a/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitFormatTest.java
+++ b/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitFormatTest.java
@@ -97,6 +97,8 @@ public final class UnitFormatTest extends TestCase {
verify(declared, "DAY", "T", "d", "day", Units.DAY);
verify(declared, "WEEK", "T", "wk", "week", Units.WEEK);
verify(declared, "TROPICAL_YEAR", "T", "a", "year", Units.TROPICAL_YEAR);
+ verify(declared, "CURIE", "∕T", "Ci", "curie", Units.CURIE);
+ verify(declared, "BECQUEREL", "∕T", "Bq", "becquerel", Units.BECQUEREL);
verify(declared, "HERTZ", "∕T", "Hz", "hertz", Units.HERTZ);
verify(declared, "RADIANS_PER_SECOND", "∕T", "rad∕s", "radians per second", Units.RADIANS_PER_SECOND);
verify(declared, "METRES_PER_SECOND", "L∕T", "m∕s", "metres per second", Units.METRES_PER_SECOND);
diff --git a/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitsTest.java b/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitsTest.java
index 889e2a54e2..5f70abd26a 100644
--- a/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitsTest.java
+++ b/endorsed/src/org.apache.sis.util/test/org/apache/sis/measure/UnitsTest.java
@@ -36,7 +36,7 @@ import static org.apache.sis.test.Assertions.assertSerializedEquals;
*
* @author Martin Desruisseaux (Geomatys)
* @author Alexis Manin (Geomatys)
- * @version 1.3
+ * @version 1.4
* @since 0.3
*/
@DependsOn({
@@ -183,6 +183,7 @@ public final class UnitsTest extends TestCase {
assertEquals(1000.0, toStandardUnit(KILOMETRE), 1E-15);
assertEquals(0.017453292519943295, toStandardUnit(DEGREE), 1E-15);
assertEquals(0.01, toStandardUnit(GAL), 1E-15);
+ assertEquals(3.7E10, toStandardUnit(CURIE), 1E-3);
}
/**
@@ -190,8 +191,9 @@ public final class UnitsTest extends TestCase {
*/
@Test
public void testConversionFactors() {
- assertEquals(1000, KILOMETRE .getConverterTo(METRE) .convert(1), STRICT);
- assertEquals( 3.6, METRES_PER_SECOND.getConverterTo(KILOMETRES_PER_HOUR).convert(1), STRICT);
+ assertEquals(1000, KILOMETRE .getConverterTo(METRE) .convert( 1), STRICT);
+ assertEquals( 3.6, METRES_PER_SECOND.getConverterTo(KILOMETRES_PER_HOUR).convert( 1), STRICT);
+ assertEquals(1E-6, BECQUEREL .getConverterTo(CURIE) .convert(37000), 1E-20);
}
/**