From 22e2c7132dffa87271a9f7c71b41a66165096d37 Mon Sep 17 00:00:00 2001 From: Janine Liu Date: Tue, 4 Jun 2024 11:10:33 -0400 Subject: [PATCH] Bounds -> Slice --- .../Vendor/EXT_implicit_geometry/README.md | 63 ++++++++++++------ .../EXT_implicit_geometry/figures/box.png | Bin 0 -> 22453 bytes .../figures/cylinder.png | Bin 0 -> 22808 bytes .../figures/non-uniform-box.png | Bin 38752 -> 0 bytes .../EXT_implicit_geometry/figures/sphere.png | Bin 0 -> 26088 bytes .../schema/box.schema.json | 6 +- .../schema/cylinder.schema.json | 10 +-- ...schema.json => cylinder.slice.schema.json} | 18 ++--- .../schema/ellipsoid.schema.json | 8 +-- ...chema.json => ellipsoid.slice.schema.json} | 0 ...rimitive.EXT_implicit_geometry.schema.json | 2 +- .../schema/padding.schema.json | 36 ---------- .../schema/region.bounds.schema.json | 52 --------------- .../schema/region.schema.json | 10 +-- .../schema/region.slice.schema.json | 58 ++++++++++++++++ .../schema/sphere.schema.json | 6 +- ...s.schema.json => sphere.slice.schema.json} | 14 ++-- 17 files changed, 134 insertions(+), 149 deletions(-) create mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/figures/box.png create mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/figures/cylinder.png delete mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/figures/non-uniform-box.png create mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/figures/sphere.png rename extensions/2.0/Vendor/EXT_implicit_geometry/schema/{cylinder.bounds.schema.json => cylinder.slice.schema.json} (58%) rename extensions/2.0/Vendor/EXT_implicit_geometry/schema/{ellipsoid.bounds.schema.json => ellipsoid.slice.schema.json} (100%) delete mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/schema/padding.schema.json delete mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.bounds.schema.json create mode 100644 extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.slice.schema.json rename extensions/2.0/Vendor/EXT_implicit_geometry/schema/{sphere.bounds.schema.json => sphere.slice.schema.json} (53%) diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/README.md b/extensions/2.0/Vendor/EXT_implicit_geometry/README.md index d634338346..0669848b59 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/README.md +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/README.md @@ -54,10 +54,7 @@ The `box` property represents an axis-aligned box that is centered at the origin - @@ -75,7 +72,7 @@ The `box` property represents an axis-aligned box that is centered at the origin ]
- Example - - Visual + Example
- +
@@ -87,10 +84,7 @@ The `cylinder` property represents a cylinder that is aligned with the `y`-axis - @@ -109,7 +103,7 @@ The `cylinder` property represents a cylinder that is aligned with the `y`-axis ]
- Example - - Visual + Example
- **TODO** visual example +
@@ -121,10 +115,7 @@ The `sphere` property represents a sphere that is centered at the origin. The `r - @@ -142,7 +133,7 @@ The `sphere` property represents a sphere that is centered at the origin. The `r ]
- Example - - Visual + Example
- **TODO** visual example +
@@ -156,10 +147,7 @@ The `ellipsoid` property represents an ellipsoid that is centered at the origin. - @@ -168,7 +156,7 @@ The `ellipsoid` property represents an ellipsoid that is centered at the origin. { "extensions": { "EXT_implicit_geometry": { - "ellpisoid": { + "ellipsoid": { "radii": [2, 3, 4] } } @@ -185,9 +173,40 @@ The `ellipsoid` property represents an ellipsoid that is centered at the origin. ### Region -The `region` property represents a region above the surface of an ellipsoid. Though the ellipsoid itself is centered at the origin, the region may be distant from the origin due to its properties. +The `region` property represents a region extruded from the surface of a ellipsoid. The ellipsoid itself is not part of the geometry; it is merely used as reference from which the actual region is defined. + +The reference ellipsoid is centered at the origin. The `semiMajorAxisRadius` indicates the radii of the ellipsoid in meters along the `x` and `z` axes. The `semiMinorAxisRadius` indicates the radius of the ellipsoid in meters along the `y` axis. + +The `heightFromSurface` property indicates the height of the region from the ellipsoid's surface, in meters. In other words, the region begins atop ellipsoid's surface, and is then extruded outwards to the specified height. -The `semiMajorAxis` property indicates the radii of the ellipsoid in meters along the `x`, `y`, and `z` axes. +
- Example - - Visual + Example
+ + + + + + + +
+ Example +
+      "primitives": [
+        {
+          "extensions": {
+            "EXT_implicit_geometry": {
+              "region": {
+                "semiMajorAxisRadius": 4,
+                "semiMinorAxisRadius": 2,
+                "heightFromSurface": 0.5 
+              }
+            }
+          }
+        }
+      ]
+    
+ **TODO** visual example +
+``` ## Optional vs. Required This extension is required, meaning it should be placed in both the `extensionsUsed` list and `extensionsRequired` list. diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/figures/box.png b/extensions/2.0/Vendor/EXT_implicit_geometry/figures/box.png new file mode 100644 index 0000000000000000000000000000000000000000..ace531d896b60a47102a32269a888d03f248052a GIT binary patch literal 22453 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 bh!UhzHg5k7ZyN`rNeKr#XWLR6-@AVSda|9v literal 0 HcmV?d00001 diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/figures/cylinder.png b/extensions/2.0/Vendor/EXT_implicit_geometry/figures/cylinder.png new file mode 100644 index 0000000000000000000000000000000000000000..2511611a7860843bcaeee157bb31d4e727deb0ee GIT binary patch literal 22808 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%0Dp771qc%2ve=zc}*jiG5gmbSgBA~`un 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 Z&b;t+NNS?Az%FcYgc*GJpZ+KR{2#H}BX9r! literal 0 HcmV?d00001 diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/figures/non-uniform-box.png b/extensions/2.0/Vendor/EXT_implicit_geometry/figures/non-uniform-box.png deleted file mode 100644 index 065b7d8118a8492694b8a10bb4fa9e61ba769af5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38752 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

||2Tn$Ib(w;xRum7pW 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 OiIf!7<@3*&`u~3#YY9;R diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/figures/sphere.png b/extensions/2.0/Vendor/EXT_implicit_geometry/figures/sphere.png new file mode 100644 index 0000000000000000000000000000000000000000..4b514fd87cf096322e9a65aed92b4c920e421bdd GIT binary patch literal 26088 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 literal 0 HcmV?d00001 diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/box.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/box.schema.json index 67c9d9600f..aee411a61d 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/box.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/box.schema.json @@ -12,16 +12,12 @@ "properties": { "size": { "type": "array", - "description": "The size of the box in three dimensions.", + "description": "The size of the box in meters.", "items": { "type": "number" }, "minItems": 3, "maxItems": 3 - }, - "bounds": { - "$ref": "box.bounds.schema.json", - "description": "The optional bounds of the box." } }, "required": [ diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.schema.json index 7d6c7759d2..0d7b089e34 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.schema.json @@ -12,17 +12,17 @@ "properties": { "radius": { "type": "number", - "description": "The radius of the cylinder in local space.", + "description": "The radius of the cylinder in meters.", "minimum": 0 }, "height": { "type": "number", - "description": "The height of the cylinder in local space.", + "description": "The height of the cylinder in meters.", "minimum": 0 }, - "bounds": { - "$ref": "cylinder.bounds.schema.json", - "description": "The optional bounds of the cylinder." + "slice": { + "$ref": "cylinder.slice.schema.json", + "description": "The optionally-defined slice of the cylinder." } }, "required": [ diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.bounds.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.slice.schema.json similarity index 58% rename from extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.bounds.schema.json rename to extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.slice.schema.json index 296769a827..9b6b74a099 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.bounds.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/cylinder.slice.schema.json @@ -1,9 +1,9 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "cylinder.bounds.schema.json", - "title": "Cylinder Bounds", + "$id": "cylinder.slice.schema.json", + "title": "Cylinder Slice", "type": "object", - "description": "A set of bounds for an implicit cylinder surface. Defines the subsection of the cylinder that the implicit volume actually occupies.", + "description": "A slice of an implicit cylinder. Defines the subsection of the cylinder that the implicit volume actually occupies.", "allOf": [ { "$ref": "glTFProperty.schema.json" @@ -12,42 +12,42 @@ "properties": { "minRadius": { "type": "number", - "description": "The minimum radial bound of the cylinder.", + "description": "The start of the slice along the radius of the cylinder.", "minimum": 0, "maximum": 1, "default": 0 }, "maxRadius": { "type": "number", - "description": "The maximum radial bound of the cylinder.", + "description": "The end of the slice along the radius of the cylinder.", "minimum": 0, "maximum": 1, "default": 1 }, "minHeight": { "type": "number", - "description": "The minimum height bound of the cylinder.", + "description": "The start of the slice along the height of the cylinder.", "minimum": 0, "maximum": 1, "default": 0 }, "maxHeight": { "type": "number", - "description": "The maximum height bound of the cylinder.", + "description": "The end of the slice along the height of the cylinder.", "minimum": 0, "maximum": 1, "default": 1 }, "minAngle": { "type": "number", - "description": "The maximum angular bound of the cylinder in radians. Values must be in the range [-pi, pi].", + "description": "The start of the slice along the angle of the cylinder. Values must be in the range [-pi, pi].", "minimum": -3.14159265359, "maximum": 3.14159265359, "default": -3.14159265359 }, "maxAngle": { "type": "number", - "description": "The maximum angular bound of the cylinder in radians. Values must be in the range [-pi, pi].", + "description": "The end of the slice along the angle of the cylinder. Values must be in the range [-pi, pi].", "minimum": -3.14159265359, "maximum": 3.14159265359, "default": 3.14159265359 diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.schema.json index 6fa161c444..c88a72137d 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.schema.json @@ -12,7 +12,7 @@ "properties": { "radii": { "type": "array", - "description": "The radii of the ellipsoid in meters along the X, Y, and Z axes in local space.", + "description": "The radii of the ellipsoid along the X, Y, and Z axes in meters.", "items": { "type": "number", "minimum": 0 @@ -20,9 +20,9 @@ "minItems": 3, "maxItems": 3 }, - "bounds": { - "$ref": "ellipsoid.bounds.schema.json", - "description": "The optional bounds of the ellipsoid." + "slice": { + "$ref": "ellipsoid.slice.schema.json", + "description": "The optionally-defined slice of the ellipsoid." } }, "required": [ diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.bounds.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.slice.schema.json similarity index 100% rename from extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.bounds.schema.json rename to extensions/2.0/Vendor/EXT_implicit_geometry/schema/ellipsoid.slice.schema.json diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/mesh.primitive.EXT_implicit_geometry.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/mesh.primitive.EXT_implicit_geometry.schema.json index 7e68436f6a..ffbd656bfe 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/mesh.primitive.EXT_implicit_geometry.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/mesh.primitive.EXT_implicit_geometry.schema.json @@ -3,7 +3,7 @@ "$id": "mesh.primitive.EXT_implicit_geometry.schema.json", "title": "EXT_primitive_voxels glTF Mesh Primitive extension", "type": "object", - "description": "`EXT_implicit_geometry` extension for a primitive in a glTF model, to define implicit 3D geometry", + "description": "`EXT_implicit_geometry` extension for a primitive in a glTF model to represent implicit 3D geometry", "allOf": [ { "$ref": "glTFProperty.schema.json" diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/padding.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/padding.schema.json deleted file mode 100644 index ad94b3ed0c..0000000000 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/padding.schema.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "padding.schema.json", - "title": "Padding", - "type": "object", - "description": "The padding property specifies how many rows of attribute data in each dimension come from neighboring grids.", - "allOf": [ - { - "$ref": "glTFProperty.schema.json" - } - ], - "properties": { - "before": { - "type": "array", - "items": { - "type": "integer", - "minimum": 0 - }, - "minItems": 3, - "maxItems": 3 - }, - "after": { - "type": "array", - "items": { - "type": "integer", - "minimum": 0 - }, - "minItems": 3, - "maxItems": 3 - } - }, - "required": [ - "before", - "after" - ] -} \ No newline at end of file diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.bounds.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.bounds.schema.json deleted file mode 100644 index 911d3a54b3..0000000000 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.bounds.schema.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "region.bounds.schema.json", - "title": "Region Bounds", - "type": "object", - "description": "A set of bounds for an implicit region relative to an ellipsoid. Defines the subsection of the region that the implicit volume actually occupies.", - "allOf": [ - { - "$ref": "glTFProperty.schema.json" - } - ], - "properties": { - "minHeight": { - "type": "number", - "description": "The minimum height bound of the region.", - "minimum": 0, - "maximum": 1, - "default": 0 - }, - "maxHeight": { - "type": "number", - "description": "The maximum height bound of the region.", - "minimum": 0, - "maximum": 1, - "default": 1 - }, - "minAngle": { - "type": "array", - "description": "The minimum angular bounds of the region in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", - "items": { - "type": "number", - "minimum": -3.14159265359, - "maximum": 3.14159265359, - }, - "minItems": 2, - "maxItems": 2, - "default": [-3.14159265359, -1.57079632679] - }, - "minAngle": { - "type": "array", - "description": "The maximum angular bounds of the region in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", - "items": { - "type": "number", - "minimum": -3.14159265359, - "maximum": 3.14159265359, - }, - "minItems": 2, - "maxItems": 2, - "default": [3.14159265359, 1.57079632679] - }, - } -} \ No newline at end of file diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.schema.json index 70b2b729eb..539c1bbd0f 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.schema.json @@ -12,21 +12,21 @@ "properties": { "semiMajorAxisRadius": { "type": "number", - "description": "The radius of the reference ellipsoid along its semi-major axis in meters.", + "description": "The radius along the semi-major axis of the reference ellipsoid in meters.", "minimum": 0 }, "semiMinorAxisRadius": { "type": "number", - "description": "The radius of the reference ellipsoid along its semi-minor axis in meters.", + "description": "The radius along the semi-minor axis of the reference ellipsoid in meters.", "minimum": 0 }, "heightFromSurface": { "type": "number", "description": "The height of this region from the surface of the reference ellipsoid in meters.", }, - "bounds": { - "$ref": "region.bounds.schema.json", - "description": "The optional bounds of the region." + "slice": { + "$ref": "region.slice.schema.json", + "description": "The optionally-defined slice of the region." } }, "required": [ diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.slice.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.slice.schema.json new file mode 100644 index 0000000000..ae5ac69349 --- /dev/null +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/region.slice.schema.json @@ -0,0 +1,58 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "region.bounds.schema.json", + "title": "Region Bounds", + "type": "object", + "description": "A slice of an implicit region relative to an ellipsoid. Defines the subsection of the region that the implicit volume actually occupies.", + "allOf": [ + { + "$ref": "glTFProperty.schema.json" + } + ], + "properties": { + "minHeight": { + "type": "number", + "description": "The start of the slice along the region's height.", + "minimum": 0, + "maximum": 1, + "default": 0 + }, + "maxHeight": { + "type": "number", + "description": "The end of the slice along the region's height.", + "minimum": 0, + "maximum": 1, + "default": 1 + }, + "minAngle": { + "type": "array", + "description": "The start of the slice along the angles of the reference ellipsoid, in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", + "items": { + "type": "number", + "minimum": -3.14159265359, + "maximum": 3.14159265359, + }, + "minItems": 2, + "maxItems": 2, + "default": [ + -3.14159265359, + -1.57079632679 + ] + }, + "minAngle": { + "type": "array", + "description": "The end of the slice along the angles of the reference ellipsoid, in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", + "items": { + "type": "number", + "minimum": -3.14159265359, + "maximum": 3.14159265359, + }, + "minItems": 2, + "maxItems": 2, + "default": [ + 3.14159265359, + 1.57079632679 + ] + }, + } +} \ No newline at end of file diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.schema.json index ff3184c476..23bea914c8 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.schema.json @@ -15,9 +15,9 @@ "description": "The radius of the sphere in local space.", "minimum": 0 }, - "bounds": { - "$ref": "sphere.bounds.schema.json", - "description": "The optional bounds of the sphere." + "slice": { + "$ref": "sphere.slice.schema.json", + "description": "The optionally-defined slice of the sphere." } }, "required": [ diff --git a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.bounds.schema.json b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.slice.schema.json similarity index 53% rename from extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.bounds.schema.json rename to extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.slice.schema.json index 32aa0deda3..2e3c333a6c 100644 --- a/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.bounds.schema.json +++ b/extensions/2.0/Vendor/EXT_implicit_geometry/schema/sphere.slice.schema.json @@ -1,9 +1,9 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "sphere.bounds.schema.json", - "title": "Sphere Bounds", + "$id": "sphere.slice.schema.json", + "title": "Sphere Slice", "type": "object", - "description": "A set of bounds for an implicit sphere surface. Defines the subsection of the sphere that the implicit volume actually occupies.", + "description": "A slice of an implicit sphere. Defines the subsection of the sphere that the implicit volume actually occupies.", "allOf": [ { "$ref": "glTFProperty.schema.json" @@ -12,21 +12,21 @@ "properties": { "minRadius": { "type": "number", - "description": "The minimum radial bound of the sphere.", + "description": "The start of the slice along the radius of the sphere.", "minimum": 0, "maximum": 1, "default": 0 }, "maxRadius": { "type": "number", - "description": "The maximum radial bound of the sphere.", + "description": "The end of the slice along the radius of the sphere.", "minimum": 0, "maximum": 1, "default": 1 }, "minAngle": { "type": "array", - "description": "The minimum angular bounds of the sphere in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", + "description": "The start of the slice across the angles of the sphere, given in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", "items": { "type": "number", "minimum": -3.14159265359, @@ -38,7 +38,7 @@ }, "minAngle": { "type": "array", - "description": "The maximum angular bounds of the sphere in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", + "description": "The end of the slice across the angles of the sphere, in radians. The first element corresponds to the azimuthal angle (a.k.a longitude) and must be in the range [-pi, pi]. The second element corresponds to the polar angle (a.k.a. latitude) and must be in the range [-pi/2, pi/2].", "items": { "type": "number", "minimum": -3.14159265359,