From 687d2dd32a293d8df14efd77dc95933fd0f9aa8c Mon Sep 17 00:00:00 2001 From: Nick Lockwood Date: Wed, 20 Dec 2023 17:25:35 +0000 Subject: [PATCH] Update for 0.7.3 release --- CHANGELOG.md | 8 +- Euclid.podspec.json | 4 +- Euclid.xcodeproj/project.pbxproj | 4 +- all_identifiers.txt | 16 +- all_symbols.txt | 16 +- docs/data/documentation/euclid/mesh.json | 431 +- ..._:ignoringtransforms:materiallookup:).json | 58 +- .../euclid/mesh/init(_:material:).json | 14 +- .../mesh/init(_:materiallookup:)-3drza.json | 382 + ...son => init(_:materiallookup:)-7p5hd.json} | 36 +- .../euclid/mesh/init(_:materials:)-22brv.json | 492 + .../euclid/mesh/init(_:materials:)-4k8gs.json | 492 + .../init(scngeometry:materiallookup:).json | 6 +- .../mesh/init(stldata:materiallookup:).json | 369 + .../euclid/mesh/init(stlstring:).json | 234 + ...l:ignoringtransforms:materiallookup:).json | 58 +- .../documentation/euclid/mesh/material.json | 14 +- .../euclid/mesh/materialprovider.json | 87 +- .../mesh/realitykitmaterialprovider.json | 436 + .../euclid/mesh/scnmaterialprovider.json | 440 + .../euclid/mesh/stldata(colorlookup:).json | 10 +- .../euclid/mesh/stlmaterialprovider.json | 482 + docs/data/documentation/euclid/polygon.json | 6 +- .../documentation/euclid/polygon/area.json | 6 +- .../documentation/euclid/polygon/bounds.json | 6 +- .../documentation/euclid/polygon/center.json | 12 +- .../euclid/polygon/hastexcoords.json | 6 +- .../euclid/polygon/hasvertexcolors.json | 6 +- .../euclid/polygon/isconvex.json | 6 +- .../polygon/material-swift.property.json | 6 +- .../euclid/polygon/orderededges.json | 6 +- .../documentation/euclid/polygon/plane.json | 6 +- .../euclid/polygon/undirectededges.json | 6 +- .../euclid/polygon/vertices.json | 6 +- .../data/documentation/euclid/quaternion.json | 47 + .../euclid/quaternion/init(_:)-99vxt.json | 242 + docs/data/documentation/euclid/rotation.json | 47 + .../euclid/rotation/init(_:)-8izj.json | 242 + docs/data/documentation/euclid/transform.json | 100 +- .../euclid/transform/init(_:)-7hvb3.json | 260 + .../euclid/transform/init(_:)-cys2.json | 288 + docs/data/documentation/euclid/vector.json | 89 + .../euclid/vector/init(_:)-5s4mt.json | 242 + .../euclid/vector/init(_:)-7r7et.json | 242 + docs/diagnostics.json | 76 +- .../index.html | 0 .../init(_:materiallookup:)-7p5hd/index.html | 1 + .../mesh/init(_:materials:)-22brv/index.html | 1 + .../mesh/init(_:materials:)-4k8gs/index.html | 1 + .../init(stldata:materiallookup:)/index.html | 1 + .../euclid/mesh/init(stlstring:)/index.html | 1 + .../realitykitmaterialprovider/index.html | 1 + .../mesh/scnmaterialprovider/index.html | 1 + .../mesh/stlmaterialprovider/index.html | 1 + .../quaternion/init(_:)-99vxt/index.html | 1 + .../euclid/rotation/init(_:)-8izj/index.html | 1 + .../transform/init(_:)-7hvb3/index.html | 1 + .../euclid/transform/init(_:)-cys2/index.html | 1 + .../euclid/vector/init(_:)-5s4mt/index.html | 1 + .../euclid/vector/init(_:)-7r7et/index.html | 1 + docs/index/index.json | 90 +- docs/indexing-records.json | 6953 ++-- docs/linkable-entities.json | 33035 ++++++++-------- 63 files changed, 26502 insertions(+), 19632 deletions(-) create mode 100644 docs/data/documentation/euclid/mesh/init(_:materiallookup:)-3drza.json rename docs/data/documentation/euclid/mesh/{init(_:materiallookup:).json => init(_:materiallookup:)-7p5hd.json} (89%) create mode 100644 docs/data/documentation/euclid/mesh/init(_:materials:)-22brv.json create mode 100644 docs/data/documentation/euclid/mesh/init(_:materials:)-4k8gs.json create mode 100644 docs/data/documentation/euclid/mesh/init(stldata:materiallookup:).json create mode 100644 docs/data/documentation/euclid/mesh/init(stlstring:).json create mode 100644 docs/data/documentation/euclid/mesh/realitykitmaterialprovider.json create mode 100644 docs/data/documentation/euclid/mesh/scnmaterialprovider.json create mode 100644 docs/data/documentation/euclid/mesh/stlmaterialprovider.json create mode 100644 docs/data/documentation/euclid/quaternion/init(_:)-99vxt.json create mode 100644 docs/data/documentation/euclid/rotation/init(_:)-8izj.json create mode 100644 docs/data/documentation/euclid/transform/init(_:)-7hvb3.json create mode 100644 docs/data/documentation/euclid/transform/init(_:)-cys2.json create mode 100644 docs/data/documentation/euclid/vector/init(_:)-5s4mt.json create mode 100644 docs/data/documentation/euclid/vector/init(_:)-7r7et.json rename docs/documentation/euclid/mesh/{init(_:materiallookup:) => init(_:materiallookup:)-3drza}/index.html (100%) create mode 100644 docs/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd/index.html create mode 100644 docs/documentation/euclid/mesh/init(_:materials:)-22brv/index.html create mode 100644 docs/documentation/euclid/mesh/init(_:materials:)-4k8gs/index.html create mode 100644 docs/documentation/euclid/mesh/init(stldata:materiallookup:)/index.html create mode 100644 docs/documentation/euclid/mesh/init(stlstring:)/index.html create mode 100644 docs/documentation/euclid/mesh/realitykitmaterialprovider/index.html create mode 100644 docs/documentation/euclid/mesh/scnmaterialprovider/index.html create mode 100644 docs/documentation/euclid/mesh/stlmaterialprovider/index.html create mode 100644 docs/documentation/euclid/quaternion/init(_:)-99vxt/index.html create mode 100644 docs/documentation/euclid/rotation/init(_:)-8izj/index.html create mode 100644 docs/documentation/euclid/transform/init(_:)-7hvb3/index.html create mode 100644 docs/documentation/euclid/transform/init(_:)-cys2/index.html create mode 100644 docs/documentation/euclid/vector/init(_:)-5s4mt/index.html create mode 100644 docs/documentation/euclid/vector/init(_:)-7r7et/index.html diff --git a/CHANGELOG.md b/CHANGELOG.md index a4cfc685..30086328 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,12 @@ # Change Log -## [0.7.2](https://github.com/nicklockwood/Euclid/releases/tag/0.7.2) (2023-12-27) +## [0.7.3](https://github.com/nicklockwood/Euclid/releases/tag/0.7.3) (2023-12-22) + +- Added support for converting RealityKit models to Euclid meshes +- Added support for loading binary and ASCII STL files +- Added visionOS support + +## [0.7.2](https://github.com/nicklockwood/Euclid/releases/tag/0.7.2) (2023-12-10) - RealityKit texture downscaling now uses linear interpolation by default - Fixed edge case in `insertEdgePoint()` that caused assertion failures in debug mode diff --git a/Euclid.podspec.json b/Euclid.podspec.json index b0161ad5..e3cda357 100644 --- a/Euclid.podspec.json +++ b/Euclid.podspec.json @@ -1,6 +1,6 @@ { "name": "Euclid", - "version": "0.7.2", + "version": "0.7.3", "license": { "type": "MIT", "file": "LICENSE.md" @@ -10,7 +10,7 @@ "authors": "Nick Lockwood", "source": { "git": "https://github.com/nicklockwood/Euclid.git", - "tag": "0.7.2" + "tag": "0.7.3" }, "source_files": "Sources", "requires_arc": true, diff --git a/Euclid.xcodeproj/project.pbxproj b/Euclid.xcodeproj/project.pbxproj index 68299429..6e8c39e9 100644 --- a/Euclid.xcodeproj/project.pbxproj +++ b/Euclid.xcodeproj/project.pbxproj @@ -792,7 +792,7 @@ "@executable_path/../Frameworks", "@loader_path/Frameworks", ); - MARKETING_VERSION = 0.7.2; + MARKETING_VERSION = 0.7.3; MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++14"; OTHER_SWIFT_FLAGS = "-Xfrontend -warn-long-expression-type-checking=75"; @@ -831,7 +831,7 @@ "@executable_path/../Frameworks", "@loader_path/Frameworks", ); - MARKETING_VERSION = 0.7.2; + MARKETING_VERSION = 0.7.3; MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++14"; OTHER_SWIFT_FLAGS = "-Xfrontend -warn-long-expression-type-checking=75"; diff --git a/all_identifiers.txt b/all_identifiers.txt index eab52e01..04d95e74 100644 --- a/all_identifiers.txt +++ b/all_identifiers.txt @@ -202,7 +202,10 @@ doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Faces/front doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Faces/frontAndBack doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Material doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/RealityKitMaterialProvider +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLColorProvider +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLMaterialProvider doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Transformable-Implementations doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/WrapMode doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/WrapMode/!=(_:_:) @@ -245,9 +248,14 @@ doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/icosahedron(radius:fac doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:ignoringTransforms:materialLookup:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:material:) -doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:) +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-3drza +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-7p5hd +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-22brv +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-4k8gs doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(from:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(scnGeometry:materialLookup:) +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlData:materialLookup:) +doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlString:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(submeshes:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(url:ignoringTransforms:materialLookup:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/intersect(_:isCancelled:) @@ -524,6 +532,7 @@ doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/hash(into:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/identity doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-27eol doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-7xa5o +doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-99vxt doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-b3v3 doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-fyhx doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:_:_:_:) @@ -569,6 +578,7 @@ doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init() doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-5w6mn doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-68leo doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-7j4ql +doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-8izj doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(axis:angle:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(from:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(pitch:yaw:roll:) @@ -594,7 +604,9 @@ doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/Equatable-Impleme doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/Transformable-Implementations doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/encode(to:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/identity +doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-7hvb3 doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-83oy3 +doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-cys2 doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(from:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(offset:rotation:scale:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/isFlipped @@ -675,8 +687,10 @@ doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/encode(to:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-228p6 doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-4eop9 doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-5n3j +doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-5s4mt doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-63ct7 doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-6nlm +doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-7r7et doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:_:_:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(from:) doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(size:)-8b34m diff --git a/all_symbols.txt b/all_symbols.txt index 27a86f17..d61b7519 100644 --- a/all_symbols.txt +++ b/all_symbols.txt @@ -202,7 +202,10 @@ - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Faces/frontAndBack`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Material`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/RealityKitMaterialProvider`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLColorProvider`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLMaterialProvider`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Transformable-Implementations`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/WrapMode`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/WrapMode/!=(_:_:)`` @@ -245,9 +248,14 @@ - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:ignoringTransforms:materialLookup:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:material:)`` -- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-3drza`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-7p5hd`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-22brv`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-4k8gs`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(from:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(scnGeometry:materialLookup:)`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlData:materialLookup:)`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlString:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(submeshes:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(url:ignoringTransforms:materialLookup:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/intersect(_:isCancelled:)`` @@ -524,6 +532,7 @@ - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/identity`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-27eol`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-7xa5o`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-99vxt`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-b3v3`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-fyhx`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:_:_:_:)`` @@ -569,6 +578,7 @@ - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-5w6mn`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-68leo`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-7j4ql`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-8izj`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(axis:angle:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(from:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(pitch:yaw:roll:)`` @@ -594,7 +604,9 @@ - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/Transformable-Implementations`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/encode(to:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/identity`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-7hvb3`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-83oy3`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-cys2`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(from:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(offset:rotation:scale:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/isFlipped`` @@ -675,8 +687,10 @@ - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-228p6`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-4eop9`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-5n3j`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-5s4mt`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-63ct7`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-6nlm`` +- ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-7r7et`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:_:_:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(from:)`` - ``doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(size:)-8b34m`` diff --git a/docs/data/documentation/euclid/mesh.json b/docs/data/documentation/euclid/mesh.json index 85e991b8..69b7e955 100644 --- a/docs/data/documentation/euclid/mesh.json +++ b/docs/data/documentation/euclid/mesh.json @@ -314,8 +314,13 @@ }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)" ], "title" : "Initializers" }, @@ -337,7 +342,10 @@ { "identifiers" : [ "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Alignment", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider" ], "title" : "Type Aliases" }, @@ -675,11 +683,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", @@ -707,6 +713,74 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh\/materialprovider" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/RealityKitMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that converts a RealityKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.RealityKitMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/realitykitmaterialprovider" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps a SceneKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.SCNMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/scnmaterialprovider" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLColorProvider": { "abstract" : [ { @@ -741,6 +815,40 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh\/stlcolorprovider" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps an STL facet color to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.STLMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/stlmaterialprovider" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Transformable-Implementations": { "abstract" : [ @@ -3413,8 +3521,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -3478,7 +3586,65 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh\/init(_:material:)" }, -"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-3drza": { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "ModelEntity", + "type" : "codeVoice" + }, + { + "text" : " with optional material mapping.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation11ModelEntityC", + "text" : "ModelEntity" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV26RealityKitMaterialProvidera", + "text" : "RealityKitMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:materialLookup:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-3drza" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-7p5hd": { "abstract" : [ { "text" : "Creates a mesh from a SceneKit geometry, with optional material mapping.", @@ -3513,20 +3679,154 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", "text" : "?)" } ], - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)", + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd", "kind" : "symbol", "role" : "symbol", "title" : "init(_:materialLookup:)", "type" : "topic", - "url" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)" + "url" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-7p5hd" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-22brv": { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshDescriptor", + "type" : "codeVoice" + }, + { + "text" : " with optional material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation14MeshDescriptorV", + "text" : "MeshDescriptor" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:materials:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(_:materials:)-22brv" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-4k8gs": { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshResource", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation12MeshResourceC", + "text" : "MeshResource" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:materials:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(_:materials:)-4k8gs" }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(scnGeometry:materialLookup:)": { "abstract" : [ @@ -3584,6 +3884,105 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh\/init(scngeometry:materiallookup:)" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlData:materialLookup:)": { + "abstract" : [ + { + "text" : "Create a mesh from STL data.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlData" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:10Foundation4DataV", + "text" : "Data" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19STLMaterialProvidera", + "text" : "STLMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(stlData:materialLookup:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(stldata:materiallookup:)" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlString:)": { + "abstract" : [ + { + "text" : "Create a mesh from an STL string.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlString" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SS", + "text" : "String" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(stlString:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(stlstring:)" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(submeshes:)": { "abstract" : [ { @@ -3685,8 +4084,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", diff --git a/docs/data/documentation/euclid/mesh/init(_:ignoringtransforms:materiallookup:).json b/docs/data/documentation/euclid/mesh/init(_:ignoringtransforms:materiallookup:).json index cc3f5d3b..03d827d8 100644 --- a/docs/data/documentation/euclid/mesh/init(_:ignoringtransforms:materiallookup:).json +++ b/docs/data/documentation/euclid/mesh/init(_:ignoringtransforms:materiallookup:).json @@ -66,8 +66,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -154,10 +154,10 @@ "text" : ": " }, { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider", + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -375,11 +375,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", @@ -407,6 +405,40 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh\/materialprovider" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps a SceneKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.SCNMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/scnmaterialprovider" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:ignoringTransforms:materialLookup:)": { "abstract" : [ { @@ -459,8 +491,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -584,8 +616,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", diff --git a/docs/data/documentation/euclid/mesh/init(_:material:).json b/docs/data/documentation/euclid/mesh/init(_:material:).json index 646fc361..7195dd1d 100644 --- a/docs/data/documentation/euclid/mesh/init(_:material:).json +++ b/docs/data/documentation/euclid/mesh/init(_:material:).json @@ -336,11 +336,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", @@ -420,8 +418,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -545,8 +543,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", diff --git a/docs/data/documentation/euclid/mesh/init(_:materiallookup:)-3drza.json b/docs/data/documentation/euclid/mesh/init(_:materiallookup:)-3drza.json new file mode 100644 index 00000000..19bf054f --- /dev/null +++ b/docs/data/documentation/euclid/mesh/init(_:materiallookup:)-3drza.json @@ -0,0 +1,382 @@ +{ + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "ModelEntity", + "type" : "codeVoice" + }, + { + "text" : " with optional material mapping.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV_14materialLookupAC17RealityFoundation11ModelEntityC_s11AnyHashableVSgAE8Material_pcSgtcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation11ModelEntityC", + "text" : "ModelEntity" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV26RealityKitMaterialProvidera", + "text" : "RealityKitMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:materialLookup:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "modelEntity" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation11ModelEntityC", + "text" : "ModelEntity" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV26RealityKitMaterialProvidera", + "text" : "RealityKitMaterialProvider" + }, + { + "kind" : "text", + "text" : "? = nil)" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "The ", + "type" : "text" + }, + { + "code" : "ModelEntity", + "type" : "codeVoice" + }, + { + "text" : " to convert into a mesh.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "modelEntity" + }, + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "An optional closure to map the RealityKit materials to Euclid materials.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "If omitted, the RealityKit ", + "type" : "text" + }, + { + "code" : "Material", + "type" : "codeVoice" + }, + { + "text" : " will be directly used as the mesh material.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "materialLookup" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-3drza" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/RealityKitMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that converts a RealityKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.RealityKitMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/realitykitmaterialprovider" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-3drza": { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "ModelEntity", + "type" : "codeVoice" + }, + { + "text" : " with optional material mapping.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation11ModelEntityC", + "text" : "ModelEntity" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV26RealityKitMaterialProvidera", + "text" : "RealityKitMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:materialLookup:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-3drza" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/init(_:materiallookup:).json b/docs/data/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd.json similarity index 89% rename from docs/data/documentation/euclid/mesh/init(_:materiallookup:).json rename to docs/data/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd.json index edacc985..19152e1c 100644 --- a/docs/data/documentation/euclid/mesh/init(_:materiallookup:).json +++ b/docs/data/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd.json @@ -15,7 +15,7 @@ }, "identifier" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd" }, "kind" : "symbol", "metadata" : { @@ -49,8 +49,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -120,10 +120,10 @@ "text" : ": " }, { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider", + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -203,7 +203,7 @@ "variants" : [ { "paths" : [ - "\/documentation\/euclid\/mesh\/init(_:materiallookup:)" + "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-7p5hd" ], "traits" : [ { @@ -262,7 +262,7 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh" }, -"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider": { "abstract" : [ { "text" : "A closure that maps a SceneKit material to a Euclid material.", @@ -280,23 +280,23 @@ }, { "kind" : "identifier", - "text" : "MaterialProvider" + "text" : "SCNMaterialProvider" } ], - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider", + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", "kind" : "symbol", "navigatorTitle" : [ { "kind" : "identifier", - "text" : "MaterialProvider" + "text" : "SCNMaterialProvider" } ], "role" : "symbol", - "title" : "Mesh.MaterialProvider", + "title" : "Mesh.SCNMaterialProvider", "type" : "topic", - "url" : "\/documentation\/euclid\/mesh\/materialprovider" + "url" : "\/documentation\/euclid\/mesh\/scnmaterialprovider" }, -"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materialLookup:)-7p5hd": { "abstract" : [ { "text" : "Creates a mesh from a SceneKit geometry, with optional material mapping.", @@ -331,20 +331,20 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", "text" : "?)" } ], - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)", + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd", "kind" : "symbol", "role" : "symbol", "title" : "init(_:materialLookup:)", "type" : "topic", - "url" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)" + "url" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-7p5hd" } } } \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/init(_:materials:)-22brv.json b/docs/data/documentation/euclid/mesh/init(_:materials:)-22brv.json new file mode 100644 index 00000000..82c1cf40 --- /dev/null +++ b/docs/data/documentation/euclid/mesh/init(_:materials:)-22brv.json @@ -0,0 +1,492 @@ +{ + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshDescriptor", + "type" : "codeVoice" + }, + { + "text" : " with optional material.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV_9materialsAC17RealityFoundation0B10DescriptorV_Says11AnyHashableVSgGtcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation14MeshDescriptorV", + "text" : "MeshDescriptor" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:materials:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "meshDescriptor" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation14MeshDescriptorV", + "text" : "MeshDescriptor" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?] = [])" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "The ", + "type" : "text" + }, + { + "code" : "MeshDescriptor", + "type" : "codeVoice" + }, + { + "text" : " to convert into a mesh.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "part" + }, + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "An array of materials to apply to the mesh.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "materials" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/init(_:materials:)-22brv" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-22brv": { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshDescriptor", + "type" : "codeVoice" + }, + { + "text" : " with optional material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation14MeshDescriptorV", + "text" : "MeshDescriptor" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:materials:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(_:materials:)-22brv" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon": { + "abstract" : [ + { + "text" : "A polygon in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Polygon" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Polygon" + } + ], + "role" : "symbol", + "title" : "Polygon", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon/Material-swift.typealias": { + "abstract" : [ + { + "text" : "Material used by a given polygon.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This can be any type that conforms to ", + "type" : "text" + }, + { + "code" : "Hashable", + "type" : "codeVoice" + }, + { + "text" : ", but encoding\/decoding is only supported", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "for the following types: ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "String", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Int", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Data", + "type" : "codeVoice" + }, + { + "text" : " or any ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " type.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Polygon.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon\/material-swift.typealias" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/init(_:materials:)-4k8gs.json b/docs/data/documentation/euclid/mesh/init(_:materials:)-4k8gs.json new file mode 100644 index 00000000..33d9d0ec --- /dev/null +++ b/docs/data/documentation/euclid/mesh/init(_:materials:)-4k8gs.json @@ -0,0 +1,492 @@ +{ + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshResource", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV_9materialsAC17RealityFoundation0B8ResourceC_Says11AnyHashableVSgGtcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation12MeshResourceC", + "text" : "MeshResource" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:materials:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "meshResource" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation12MeshResourceC", + "text" : "MeshResource" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "The ", + "type" : "text" + }, + { + "code" : "MeshResource", + "type" : "codeVoice" + }, + { + "text" : " to convert into a mesh.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "model" + }, + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "An array of materials to apply to the mesh.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "materials" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/init(_:materials:)-4k8gs" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:materials:)-4k8gs": { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshResource", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation12MeshResourceC", + "text" : "MeshResource" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:materials:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(_:materials:)-4k8gs" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon": { + "abstract" : [ + { + "text" : "A polygon in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Polygon" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Polygon" + } + ], + "role" : "symbol", + "title" : "Polygon", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon/Material-swift.typealias": { + "abstract" : [ + { + "text" : "Material used by a given polygon.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This can be any type that conforms to ", + "type" : "text" + }, + { + "code" : "Hashable", + "type" : "codeVoice" + }, + { + "text" : ", but encoding\/decoding is only supported", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "for the following types: ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "String", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Int", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Data", + "type" : "codeVoice" + }, + { + "text" : " or any ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " type.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Polygon.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon\/material-swift.typealias" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/init(scngeometry:materiallookup:).json b/docs/data/documentation/euclid/mesh/init(scngeometry:materiallookup:).json index 2f2f6cfe..5629e942 100644 --- a/docs/data/documentation/euclid/mesh/init(scngeometry:materiallookup:).json +++ b/docs/data/documentation/euclid/mesh/init(scngeometry:materiallookup:).json @@ -204,11 +204,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", diff --git a/docs/data/documentation/euclid/mesh/init(stldata:materiallookup:).json b/docs/data/documentation/euclid/mesh/init(stldata:materiallookup:).json new file mode 100644 index 00000000..65372f5d --- /dev/null +++ b/docs/data/documentation/euclid/mesh/init(stldata:materiallookup:).json @@ -0,0 +1,369 @@ +{ + "abstract" : [ + { + "text" : "Create a mesh from STL data.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV7stlData14materialLookupACSg10Foundation0D0V_s11AnyHashableVSgAA5ColorVSgcSgtcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlData" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:10Foundation4DataV", + "text" : "Data" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19STLMaterialProvidera", + "text" : "STLMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(stlData:materialLookup:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlData" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:10Foundation4DataV", + "text" : "Data" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19STLMaterialProvidera", + "text" : "STLMaterialProvider" + }, + { + "kind" : "text", + "text" : "? = nil)" + } + ] + } + ], + "kind" : "declarations" + }, + { + "content" : [ + { + "anchor" : "discussion", + "level" : 2, + "text" : "Discussion", + "type" : "heading" + }, + { + "items" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "Parameters", + "type" : "text" + } + ], + "type" : "paragraph" + }, + { + "items" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "stlData: binary or ASCII STL file data", + "type" : "text" + } + ], + "type" : "paragraph" + } + ] + }, + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "materialLookup: A closure to map STL facet colors to Euclid materials. Use ", + "type" : "text" + }, + { + "code" : "nil", + "type" : "codeVoice" + }, + { + "text" : " for default mapping.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ] + } + ], + "type" : "unorderedList" + } + ] + } + ], + "type" : "unorderedList" + } + ], + "kind" : "content" + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/init(stldata:materiallookup:)" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps an STL facet color to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.STLMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/stlmaterialprovider" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlData:materialLookup:)": { + "abstract" : [ + { + "text" : "Create a mesh from STL data.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlData" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:10Foundation4DataV", + "text" : "Data" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19STLMaterialProvidera", + "text" : "STLMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(stlData:materialLookup:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(stldata:materiallookup:)" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/init(stlstring:).json b/docs/data/documentation/euclid/mesh/init(stlstring:).json new file mode 100644 index 00000000..a71f2547 --- /dev/null +++ b/docs/data/documentation/euclid/mesh/init(stlstring:).json @@ -0,0 +1,234 @@ +{ + "abstract" : [ + { + "text" : "Create a mesh from an STL string.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV9stlStringACSgSS_tcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlString" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SS", + "text" : "String" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(stlString:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlString" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SS", + "text" : "String" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "ASCII STL string data.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "stlString" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/init(stlstring:)" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(stlString:)": { + "abstract" : [ + { + "text" : "Create a mesh from an STL string.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "stlString" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SS", + "text" : "String" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(stlString:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/init(stlstring:)" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/init(url:ignoringtransforms:materiallookup:).json b/docs/data/documentation/euclid/mesh/init(url:ignoringtransforms:materiallookup:).json index eb0e48a8..5e46df58 100644 --- a/docs/data/documentation/euclid/mesh/init(url:ignoringtransforms:materiallookup:).json +++ b/docs/data/documentation/euclid/mesh/init(url:ignoringtransforms:materiallookup:).json @@ -74,8 +74,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -158,10 +158,10 @@ "text" : ": " }, { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider", + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -383,11 +383,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", @@ -415,6 +413,40 @@ "type" : "topic", "url" : "\/documentation\/euclid\/mesh\/materialprovider" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps a SceneKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.SCNMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/scnmaterialprovider" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/init(_:ignoringTransforms:materialLookup:)": { "abstract" : [ { @@ -467,8 +499,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -592,8 +624,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", diff --git a/docs/data/documentation/euclid/mesh/material.json b/docs/data/documentation/euclid/mesh/material.json index 3cdf203d..26047961 100644 --- a/docs/data/documentation/euclid/mesh/material.json +++ b/docs/data/documentation/euclid/mesh/material.json @@ -252,11 +252,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", @@ -336,8 +334,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -461,8 +459,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", diff --git a/docs/data/documentation/euclid/mesh/materialprovider.json b/docs/data/documentation/euclid/mesh/materialprovider.json index d3289da4..07d21e05 100644 --- a/docs/data/documentation/euclid/mesh/materialprovider.json +++ b/docs/data/documentation/euclid/mesh/materialprovider.json @@ -1,10 +1,4 @@ { - "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } - ], "hierarchy" : { "paths" : [ [ @@ -45,6 +39,9 @@ "kind" : "identifier", "text" : "MaterialProvider" } + ], + "platforms" : [ + ], "role" : "symbol", "roleHeading" : "Type Alias", @@ -117,70 +114,6 @@ } ], "kind" : "declarations" - }, - { - "kind" : "parameters", - "parameters" : [ - { - "content" : [ - { - "inlineContent" : [ - { - "text" : "An ", - "type" : "text" - }, - { - "code" : "SCNMaterial", - "type" : "codeVoice" - }, - { - "text" : " material to convert.", - "type" : "text" - } - ], - "type" : "paragraph" - } - ], - "name" : "m" - } - ] - }, - { - "content" : [ - { - "anchor" : "return-value", - "level" : 2, - "text" : "Return Value", - "type" : "heading" - }, - { - "inlineContent" : [ - { - "text" : "A ", - "type" : "text" - }, - { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", - "isActive" : true, - "type" : "reference" - }, - { - "text" : " instance, or ", - "type" : "text" - }, - { - "code" : "nil", - "type" : "codeVoice" - }, - { - "text" : " for the default material.", - "type" : "text" - } - ], - "type" : "paragraph" - } - ], - "kind" : "content" } ], "schemaVersion" : { @@ -318,11 +251,9 @@ }, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/MaterialProvider": { "abstract" : [ - { - "text" : "A closure that maps a SceneKit material to a Euclid material.", - "type" : "text" - } + ], + "deprecated" : true, "fragments" : [ { "kind" : "keyword", @@ -402,8 +333,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", @@ -527,8 +458,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", diff --git a/docs/data/documentation/euclid/mesh/realitykitmaterialprovider.json b/docs/data/documentation/euclid/mesh/realitykitmaterialprovider.json new file mode 100644 index 00000000..91827df9 --- /dev/null +++ b/docs/data/documentation/euclid/mesh/realitykitmaterialprovider.json @@ -0,0 +1,436 @@ +{ + "abstract" : [ + { + "text" : "A closure that converts a RealityKit material to a Euclid material.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV26RealityKitMaterialProvidera", + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "role" : "symbol", + "roleHeading" : "Type Alias", + "symbolKind" : "typealias", + "title" : "Mesh.RealityKitMaterialProvider" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + }, + { + "kind" : "text", + "text" : " = (" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": RealityKit" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation8MaterialP", + "text" : "Material" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "A RealityKit material to convert.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "material" + } + ] + }, + { + "content" : [ + { + "anchor" : "return-value", + "level" : 2, + "text" : "Return Value", + "type" : "heading" + }, + { + "inlineContent" : [ + { + "text" : "A Euclid ", + "type" : "text" + }, + { + "code" : "Material", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "kind" : "content" + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/realitykitmaterialprovider" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/RealityKitMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that converts a RealityKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.RealityKitMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/realitykitmaterialprovider" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon": { + "abstract" : [ + { + "text" : "A polygon in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Polygon" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Polygon" + } + ], + "role" : "symbol", + "title" : "Polygon", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon/Material-swift.typealias": { + "abstract" : [ + { + "text" : "Material used by a given polygon.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This can be any type that conforms to ", + "type" : "text" + }, + { + "code" : "Hashable", + "type" : "codeVoice" + }, + { + "text" : ", but encoding\/decoding is only supported", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "for the following types: ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "String", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Int", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Data", + "type" : "codeVoice" + }, + { + "text" : " or any ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " type.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Polygon.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon\/material-swift.typealias" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/scnmaterialprovider.json b/docs/data/documentation/euclid/mesh/scnmaterialprovider.json new file mode 100644 index 00000000..d90c8064 --- /dev/null +++ b/docs/data/documentation/euclid/mesh/scnmaterialprovider.json @@ -0,0 +1,440 @@ +{ + "abstract" : [ + { + "text" : "A closure that maps a SceneKit material to a Euclid material.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "role" : "symbol", + "roleHeading" : "Type Alias", + "symbolKind" : "typealias", + "title" : "Mesh.SCNMaterialProvider" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + }, + { + "kind" : "text", + "text" : " = (" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "m" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:objc(cs)SCNMaterial", + "text" : "SCNMaterial" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "An ", + "type" : "text" + }, + { + "code" : "SCNMaterial", + "type" : "codeVoice" + }, + { + "text" : " material to convert.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "m" + } + ] + }, + { + "content" : [ + { + "anchor" : "return-value", + "level" : 2, + "text" : "Return Value", + "type" : "heading" + }, + { + "inlineContent" : [ + { + "text" : "A ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " instance, or ", + "type" : "text" + }, + { + "code" : "nil", + "type" : "codeVoice" + }, + { + "text" : " for the default material.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "kind" : "content" + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/scnmaterialprovider" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Material": { + "abstract" : [ + { + "text" : "Material used by the mesh polygons.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "See ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " for details.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Mesh.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/material" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/SCNMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps a SceneKit material to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.SCNMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/scnmaterialprovider" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon/Material-swift.typealias": { + "abstract" : [ + { + "text" : "Material used by a given polygon.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This can be any type that conforms to ", + "type" : "text" + }, + { + "code" : "Hashable", + "type" : "codeVoice" + }, + { + "text" : ", but encoding\/decoding is only supported", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "for the following types: ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "String", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Int", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Data", + "type" : "codeVoice" + }, + { + "text" : " or any ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " type.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Polygon.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon\/material-swift.typealias" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/mesh/stldata(colorlookup:).json b/docs/data/documentation/euclid/mesh/stldata(colorlookup:).json index 7393d12b..5c4f9d87 100644 --- a/docs/data/documentation/euclid/mesh/stldata(colorlookup:).json +++ b/docs/data/documentation/euclid/mesh/stldata(colorlookup:).json @@ -134,7 +134,15 @@ { "inlineContent" : [ { - "text" : "A closure to map the polygon material to a SceneKit material.", + "text" : "A closure to map Euclid materials to STL facet colors. Use ", + "type" : "text" + }, + { + "code" : "nil", + "type" : "codeVoice" + }, + { + "text" : " for default mapping.", "type" : "text" } ], diff --git a/docs/data/documentation/euclid/mesh/stlmaterialprovider.json b/docs/data/documentation/euclid/mesh/stlmaterialprovider.json new file mode 100644 index 00000000..0397fb08 --- /dev/null +++ b/docs/data/documentation/euclid/mesh/stlmaterialprovider.json @@ -0,0 +1,482 @@ +{ + "abstract" : [ + { + "text" : "A closure that maps an STL facet color to a Euclid material.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid4MeshV19STLMaterialProvidera", + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "role" : "symbol", + "roleHeading" : "Type Alias", + "symbolKind" : "typealias", + "title" : "Mesh.STLMaterialProvider" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + }, + { + "kind" : "text", + "text" : " = (" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "c" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "A Euclid ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : " to convert, or ", + "type" : "text" + }, + { + "code" : "nil", + "type" : "codeVoice" + }, + { + "text" : " for the default color.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "c" + } + ] + }, + { + "content" : [ + { + "anchor" : "return-value", + "level" : 2, + "text" : "Return Value", + "type" : "heading" + }, + { + "inlineContent" : [ + { + "text" : "A Euclid ", + "type" : "text" + }, + { + "code" : "Material", + "type" : "codeVoice" + }, + { + "text" : " value, or ", + "type" : "text" + }, + { + "code" : "nil", + "type" : "codeVoice" + }, + { + "text" : " for the default material.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "kind" : "content" + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/mesh\/stlmaterialprovider" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Color": { + "abstract" : [ + { + "text" : "A color in RGBA format.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Color" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Color" + } + ], + "role" : "symbol", + "title" : "Color", + "type" : "topic", + "url" : "\/documentation\/euclid\/color" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh": { + "abstract" : [ + { + "text" : "A 3D surface made of polygons.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Mesh" + } + ], + "role" : "symbol", + "title" : "Mesh", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/Material": { + "abstract" : [ + { + "text" : "Material used by the mesh polygons.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "See ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " for details.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Mesh.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/material" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Mesh/STLMaterialProvider": { + "abstract" : [ + { + "text" : "A closure that maps an STL facet color to a Euclid material.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "role" : "symbol", + "title" : "Mesh.STLMaterialProvider", + "type" : "topic", + "url" : "\/documentation\/euclid\/mesh\/stlmaterialprovider" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Polygon/Material-swift.typealias": { + "abstract" : [ + { + "text" : "Material used by a given polygon.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This can be any type that conforms to ", + "type" : "text" + }, + { + "code" : "Hashable", + "type" : "codeVoice" + }, + { + "text" : ", but encoding\/decoding is only supported", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "for the following types: ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "String", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Int", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Data", + "type" : "codeVoice" + }, + { + "text" : " or any ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " type.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Material" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Material" + } + ], + "role" : "symbol", + "title" : "Polygon.Material", + "type" : "topic", + "url" : "\/documentation\/euclid\/polygon\/material-swift.typealias" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/polygon.json b/docs/data/documentation/euclid/polygon.json index 5d03d036..9a4659ff 100644 --- a/docs/data/documentation/euclid/polygon.json +++ b/docs/data/documentation/euclid/polygon.json @@ -618,7 +618,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/area.json b/docs/data/documentation/euclid/polygon/area.json index d93e1466..ca390fe2 100644 --- a/docs/data/documentation/euclid/polygon/area.json +++ b/docs/data/documentation/euclid/polygon/area.json @@ -375,7 +375,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/bounds.json b/docs/data/documentation/euclid/polygon/bounds.json index 4c777ac6..166b7e54 100644 --- a/docs/data/documentation/euclid/polygon/bounds.json +++ b/docs/data/documentation/euclid/polygon/bounds.json @@ -426,7 +426,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/center.json b/docs/data/documentation/euclid/polygon/center.json index 11625ade..6ca03205 100644 --- a/docs/data/documentation/euclid/polygon/center.json +++ b/docs/data/documentation/euclid/polygon/center.json @@ -9,7 +9,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { @@ -393,7 +397,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/hastexcoords.json b/docs/data/documentation/euclid/polygon/hastexcoords.json index 120468c1..d4a777bd 100644 --- a/docs/data/documentation/euclid/polygon/hastexcoords.json +++ b/docs/data/documentation/euclid/polygon/hastexcoords.json @@ -375,7 +375,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/hasvertexcolors.json b/docs/data/documentation/euclid/polygon/hasvertexcolors.json index 5a1bc846..d2e3dffa 100644 --- a/docs/data/documentation/euclid/polygon/hasvertexcolors.json +++ b/docs/data/documentation/euclid/polygon/hasvertexcolors.json @@ -375,7 +375,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/isconvex.json b/docs/data/documentation/euclid/polygon/isconvex.json index 46b0460b..207048b6 100644 --- a/docs/data/documentation/euclid/polygon/isconvex.json +++ b/docs/data/documentation/euclid/polygon/isconvex.json @@ -375,7 +375,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/material-swift.property.json b/docs/data/documentation/euclid/polygon/material-swift.property.json index a711826d..a2ac93f8 100644 --- a/docs/data/documentation/euclid/polygon/material-swift.property.json +++ b/docs/data/documentation/euclid/polygon/material-swift.property.json @@ -397,7 +397,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/orderededges.json b/docs/data/documentation/euclid/polygon/orderededges.json index a981f2b8..e24736a6 100644 --- a/docs/data/documentation/euclid/polygon/orderededges.json +++ b/docs/data/documentation/euclid/polygon/orderededges.json @@ -414,7 +414,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/plane.json b/docs/data/documentation/euclid/polygon/plane.json index adca0b38..ae7c6427 100644 --- a/docs/data/documentation/euclid/polygon/plane.json +++ b/docs/data/documentation/euclid/polygon/plane.json @@ -410,7 +410,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/undirectededges.json b/docs/data/documentation/euclid/polygon/undirectededges.json index e8827fd9..942e17e2 100644 --- a/docs/data/documentation/euclid/polygon/undirectededges.json +++ b/docs/data/documentation/euclid/polygon/undirectededges.json @@ -440,7 +440,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/polygon/vertices.json b/docs/data/documentation/euclid/polygon/vertices.json index 48280ebb..8ae61ecc 100644 --- a/docs/data/documentation/euclid/polygon/vertices.json +++ b/docs/data/documentation/euclid/polygon/vertices.json @@ -414,7 +414,11 @@ "type" : "text" }, { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" + }, + { + "text" : " ", "type" : "text" }, { diff --git a/docs/data/documentation/euclid/quaternion.json b/docs/data/documentation/euclid/quaternion.json index 1fd05e61..41b15eb4 100644 --- a/docs/data/documentation/euclid/quaternion.json +++ b/docs/data/documentation/euclid/quaternion.json @@ -233,6 +233,12 @@ ], "title" : "Operators" }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt" + ], + "title" : "Initializers" + }, { "identifiers" : [ "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components", @@ -1440,6 +1446,47 @@ "type" : "topic", "url" : "\/documentation\/euclid\/quaternion\/init(_:)-7xa5o" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-99vxt": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Quaternion", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/quaternion\/init(_:)-99vxt" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-b3v3": { "abstract" : [ { diff --git a/docs/data/documentation/euclid/quaternion/init(_:)-99vxt.json b/docs/data/documentation/euclid/quaternion/init(_:)-99vxt.json new file mode 100644 index 00000000..85062f39 --- /dev/null +++ b/docs/data/documentation/euclid/quaternion/init(_:)-99vxt.json @@ -0,0 +1,242 @@ +{ + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Quaternion", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid10QuaternionVyACSo10simd_quatfacfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "quaternion" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "A simd quaternion.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "quaternion" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/quaternion\/init(_:)-99vxt" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion": { + "abstract" : [ + { + "text" : "An orientation or rotation in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Quaternion" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Quaternion" + } + ], + "role" : "symbol", + "title" : "Quaternion", + "type" : "topic", + "url" : "\/documentation\/euclid\/quaternion" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Quaternion/init(_:)-99vxt": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Quaternion", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/quaternion\/init(_:)-99vxt" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/rotation.json b/docs/data/documentation/euclid/rotation.json index 3bce933a..f6d6393a 100644 --- a/docs/data/documentation/euclid/rotation.json +++ b/docs/data/documentation/euclid/rotation.json @@ -204,6 +204,12 @@ ], "title" : "Operators" }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj" + ], + "title" : "Initializers" + }, { "generated" : true, "identifiers" : [ @@ -1153,6 +1159,47 @@ "type" : "topic", "url" : "\/documentation\/euclid\/rotation\/init(_:)-7j4ql" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-8izj": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Rotation", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/rotation\/init(_:)-8izj" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(axis:angle:)": { "abstract" : [ { diff --git a/docs/data/documentation/euclid/rotation/init(_:)-8izj.json b/docs/data/documentation/euclid/rotation/init(_:)-8izj.json new file mode 100644 index 00000000..cda27974 --- /dev/null +++ b/docs/data/documentation/euclid/rotation/init(_:)-8izj.json @@ -0,0 +1,242 @@ +{ + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Rotation", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid8RotationVyACSo10simd_quatfacfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "quaternion" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "A simd quaternion.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "quaternion" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/rotation\/init(_:)-8izj" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation": { + "abstract" : [ + { + "text" : "A struct that represents an orientation or rotation in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Rotation" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Rotation" + } + ], + "role" : "symbol", + "title" : "Rotation", + "type" : "topic", + "url" : "\/documentation\/euclid\/rotation" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Rotation/init(_:)-8izj": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Rotation", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/rotation\/init(_:)-8izj" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/transform.json b/docs/data/documentation/euclid/transform.json index b5324301..3185d4e7 100644 --- a/docs/data/documentation/euclid/transform.json +++ b/docs/data/documentation/euclid/transform.json @@ -186,7 +186,9 @@ }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2" ], "title" : "Initializers" }, @@ -608,6 +610,48 @@ "type" : "topic", "url" : "\/documentation\/euclid\/transform\/identity" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-7hvb3": { + "abstract" : [ + { + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a simd matrix.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_float4x4", + "text" : "simd_float4x4" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/transform\/init(_:)-7hvb3" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-83oy3": { "abstract" : [ { @@ -641,6 +685,60 @@ "type" : "topic", "url" : "\/documentation\/euclid\/transform\/init(_:)-83oy3" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-cys2": { + "abstract" : [ + { + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a RealityKit ", + "type" : "text" + }, + { + "code" : "Transform", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(RealityKit" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/transform\/init(_:)-cys2" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(offset:rotation:scale:)": { "abstract" : [ { diff --git a/docs/data/documentation/euclid/transform/init(_:)-7hvb3.json b/docs/data/documentation/euclid/transform/init(_:)-7hvb3.json new file mode 100644 index 00000000..8eea146f --- /dev/null +++ b/docs/data/documentation/euclid/transform/init(_:)-7hvb3.json @@ -0,0 +1,260 @@ +{ + "abstract" : [ + { + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a simd matrix.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid9TransformVyACSo13simd_float4x4acfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_float4x4", + "text" : "simd_float4x4" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "13.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "10.15", + "name" : "macOS", + "unavailable" : false + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "matrix" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_float4x4", + "text" : "simd_float4x4" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "The simd matrix to convert into a Euclid transform.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "matrix" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/transform\/init(_:)-7hvb3" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform": { + "abstract" : [ + { + "text" : "A combined rotation, position, and scale that can be applied to a 3D object.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Transform" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Transform" + } + ], + "role" : "symbol", + "title" : "Transform", + "type" : "topic", + "url" : "\/documentation\/euclid\/transform" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-7hvb3": { + "abstract" : [ + { + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a simd matrix.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_float4x4", + "text" : "simd_float4x4" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/transform\/init(_:)-7hvb3" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/transform/init(_:)-cys2.json b/docs/data/documentation/euclid/transform/init(_:)-cys2.json new file mode 100644 index 00000000..0c5e4605 --- /dev/null +++ b/docs/data/documentation/euclid/transform/init(_:)-cys2.json @@ -0,0 +1,288 @@ +{ + "abstract" : [ + { + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a RealityKit ", + "type" : "text" + }, + { + "code" : "Transform", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid9TransformVyAC17RealityFoundationABVcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(RealityKit" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "13.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "10.15", + "name" : "macOS", + "unavailable" : false + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "transform" + }, + { + "kind" : "text", + "text" : ": RealityKit" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "The RealityKit transform to convert into a Euclid transform.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "transform" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/transform\/init(_:)-cys2" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform": { + "abstract" : [ + { + "text" : "A combined rotation, position, and scale that can be applied to a 3D object.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Transform" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Transform" + } + ], + "role" : "symbol", + "title" : "Transform", + "type" : "topic", + "url" : "\/documentation\/euclid\/transform" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Transform/init(_:)-cys2": { + "abstract" : [ + { + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a RealityKit ", + "type" : "text" + }, + { + "code" : "Transform", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(RealityKit" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/transform\/init(_:)-cys2" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/vector.json b/docs/data/documentation/euclid/vector.json index 79a58b60..af5a8b01 100644 --- a/docs/data/documentation/euclid/vector.json +++ b/docs/data/documentation/euclid/vector.json @@ -256,6 +256,13 @@ ], "title" : "Operators" }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et" + ], + "title" : "Initializers" + }, { "identifiers" : [ "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components", @@ -1863,6 +1870,47 @@ "type" : "topic", "url" : "\/documentation\/euclid\/vector\/init(_:)-5n3j" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-5s4mt": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 3.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float3", + "text" : "simd_float3" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/vector\/init(_:)-5s4mt" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-63ct7": { "abstract" : [ { @@ -1929,6 +1977,47 @@ "type" : "topic", "url" : "\/documentation\/euclid\/vector\/init(_:)-6nlm" }, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-7r7et": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 2.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float2", + "text" : "simd_float2" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/vector\/init(_:)-7r7et" +}, "doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:_:_:)": { "abstract" : [ { diff --git a/docs/data/documentation/euclid/vector/init(_:)-5s4mt.json b/docs/data/documentation/euclid/vector/init(_:)-5s4mt.json new file mode 100644 index 00000000..05c782d5 --- /dev/null +++ b/docs/data/documentation/euclid/vector/init(_:)-5s4mt.json @@ -0,0 +1,242 @@ +{ + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 3.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid6VectorVyACs5SIMD3VySfGcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float3", + "text" : "simd_float3" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "vector" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float3", + "text" : "simd_float3" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "A simd vector.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "vector" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/vector\/init(_:)-5s4mt" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector": { + "abstract" : [ + { + "text" : "A distance or position in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Vector" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Vector" + } + ], + "role" : "symbol", + "title" : "Vector", + "type" : "topic", + "url" : "\/documentation\/euclid\/vector" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-5s4mt": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 3.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float3", + "text" : "simd_float3" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/vector\/init(_:)-5s4mt" +} +} +} \ No newline at end of file diff --git a/docs/data/documentation/euclid/vector/init(_:)-7r7et.json b/docs/data/documentation/euclid/vector/init(_:)-7r7et.json new file mode 100644 index 00000000..bad4f219 --- /dev/null +++ b/docs/data/documentation/euclid/vector/init(_:)-7r7et.json @@ -0,0 +1,242 @@ +{ + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 2.", + "type" : "text" + } + ], + "hierarchy" : { + "paths" : [ + [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector" + ] + ] + }, + "identifier" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et" + }, + "kind" : "symbol", + "metadata" : { + "extendedModule" : "Euclid", + "externalID" : "s:6Euclid6VectorVyACs5SIMD2VySfGcfc", + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float2", + "text" : "simd_float2" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "modules" : [ + { + "name" : "Euclid" + } + ], + "role" : "symbol", + "roleHeading" : "Initializer", + "symbolKind" : "init", + "title" : "init(_:)" + }, + "primaryContentSections" : [ + { + "declarations" : [ + { + "languages" : [ + "swift" + ], + "platforms" : [ + "macOS" + ], + "tokens" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "_" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "internalParam", + "text" : "vector" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float2", + "text" : "simd_float2" + }, + { + "kind" : "text", + "text" : ")" + } + ] + } + ], + "kind" : "declarations" + }, + { + "kind" : "parameters", + "parameters" : [ + { + "content" : [ + { + "inlineContent" : [ + { + "text" : "A simd vector.", + "type" : "text" + } + ], + "type" : "paragraph" + } + ], + "name" : "vector" + } + ] + } + ], + "schemaVersion" : { + "major" : 0, + "minor" : 3, + "patch" : 0 + }, + "sections" : [ + + ], + "variants" : [ + { + "paths" : [ + "\/documentation\/euclid\/vector\/init(_:)-7r7et" + ], + "traits" : [ + { + "interfaceLanguage" : "swift" + } + ] + } + ] +, +"references": { +"doc://com.charcoaldesign.Euclid/documentation/Euclid": { + "abstract" : [ + { + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "type" : "text" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "kind" : "symbol", + "role" : "collection", + "title" : "Euclid", + "type" : "topic", + "url" : "\/documentation\/euclid" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector": { + "abstract" : [ + { + "text" : "A distance or position in 3D space.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Vector" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector", + "kind" : "symbol", + "navigatorTitle" : [ + { + "kind" : "identifier", + "text" : "Vector" + } + ], + "role" : "symbol", + "title" : "Vector", + "type" : "topic", + "url" : "\/documentation\/euclid\/vector" +}, +"doc://com.charcoaldesign.Euclid/documentation/Euclid/Vector/init(_:)-7r7et": { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 2.", + "type" : "text" + } + ], + "fragments" : [ + { + "kind" : "identifier", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float2", + "text" : "simd_float2" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et", + "kind" : "symbol", + "role" : "symbol", + "title" : "init(_:)", + "type" : "topic", + "url" : "\/documentation\/euclid\/vector\/init(_:)-7r7et" +} +} +} \ No newline at end of file diff --git a/docs/diagnostics.json b/docs/diagnostics.json index 190c2457..39a64ea7 100644 --- a/docs/diagnostics.json +++ b/docs/diagnostics.json @@ -28,48 +28,48 @@ ], "severity" : 2, - "source" : "..\/Sources\/Quaternion.swift", + "source" : "..\/Sources\/Angle.swift", "start" : { - "column" : 21, - "line" : 89 + "column" : 16, + "line" : 75 }, - "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" + "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Angle'" }, { "notes" : [ ], "severity" : 2, - "source" : "..\/Sources\/Quaternion.swift", + "source" : "..\/Sources\/Angle.swift", "start" : { - "column" : 21, - "line" : 90 + "column" : 16, + "line" : 76 }, - "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" + "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Angle'" }, { "notes" : [ ], "severity" : 2, - "source" : "..\/Sources\/Angle.swift", + "source" : "..\/Sources\/Quaternion.swift", "start" : { - "column" : 16, - "line" : 75 + "column" : 21, + "line" : 89 }, - "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Angle'" + "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" }, { "notes" : [ ], "severity" : 2, - "source" : "..\/Sources\/Angle.swift", + "source" : "..\/Sources\/Quaternion.swift", "start" : { - "column" : 16, - "line" : 76 + "column" : 21, + "line" : 90 }, - "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Angle'" + "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" }, { "notes" : [ @@ -100,72 +100,72 @@ ], "severity" : 2, - "source" : "Extensions\/Quaternion.md", + "source" : "..\/Sources\/Vector.swift", "start" : { "column" : 17, - "line" : 52 + "line" : 104 }, - "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" + "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Vector'" }, { "notes" : [ ], "severity" : 2, - "source" : "Extensions\/Quaternion.md", + "source" : "..\/Sources\/Vector.swift", "start" : { "column" : 17, - "line" : 53 + "line" : 105 }, - "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" + "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Vector'" }, { "notes" : [ ], "severity" : 2, - "source" : "..\/Sources\/Vector.swift", + "source" : "Extensions\/Angle.md", "start" : { - "column" : 17, - "line" : 104 + "column" : 12, + "line" : 42 }, - "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Vector'" + "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Angle'" }, { "notes" : [ ], "severity" : 2, - "source" : "..\/Sources\/Vector.swift", + "source" : "Extensions\/Angle.md", "start" : { - "column" : 17, - "line" : 105 + "column" : 12, + "line" : 43 }, - "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Vector'" + "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Angle'" }, { "notes" : [ ], "severity" : 2, - "source" : "Extensions\/Angle.md", + "source" : "Extensions\/Quaternion.md", "start" : { - "column" : 12, - "line" : 42 + "column" : 17, + "line" : 52 }, - "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Angle'" + "summary" : "'(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" }, { "notes" : [ ], "severity" : 2, - "source" : "Extensions\/Angle.md", + "source" : "Extensions\/Quaternion.md", "start" : { - "column" : 12, - "line" : 43 + "column" : 17, + "line" : 53 }, - "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Angle'" + "summary" : "'=(_:_:)' doesn't exist at '\/Euclid\/Quaternion'" }, { "notes" : [ diff --git a/docs/documentation/euclid/mesh/init(_:materiallookup:)/index.html b/docs/documentation/euclid/mesh/init(_:materiallookup:)-3drza/index.html similarity index 100% rename from docs/documentation/euclid/mesh/init(_:materiallookup:)/index.html rename to docs/documentation/euclid/mesh/init(_:materiallookup:)-3drza/index.html diff --git a/docs/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd/index.html b/docs/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/init(_:materiallookup:)-7p5hd/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/init(_:materials:)-22brv/index.html b/docs/documentation/euclid/mesh/init(_:materials:)-22brv/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/init(_:materials:)-22brv/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/init(_:materials:)-4k8gs/index.html b/docs/documentation/euclid/mesh/init(_:materials:)-4k8gs/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/init(_:materials:)-4k8gs/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/init(stldata:materiallookup:)/index.html b/docs/documentation/euclid/mesh/init(stldata:materiallookup:)/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/init(stldata:materiallookup:)/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/init(stlstring:)/index.html b/docs/documentation/euclid/mesh/init(stlstring:)/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/init(stlstring:)/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/realitykitmaterialprovider/index.html b/docs/documentation/euclid/mesh/realitykitmaterialprovider/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/realitykitmaterialprovider/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/scnmaterialprovider/index.html b/docs/documentation/euclid/mesh/scnmaterialprovider/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/scnmaterialprovider/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/mesh/stlmaterialprovider/index.html b/docs/documentation/euclid/mesh/stlmaterialprovider/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/mesh/stlmaterialprovider/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/quaternion/init(_:)-99vxt/index.html b/docs/documentation/euclid/quaternion/init(_:)-99vxt/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/quaternion/init(_:)-99vxt/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/rotation/init(_:)-8izj/index.html b/docs/documentation/euclid/rotation/init(_:)-8izj/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/rotation/init(_:)-8izj/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/transform/init(_:)-7hvb3/index.html b/docs/documentation/euclid/transform/init(_:)-7hvb3/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/transform/init(_:)-7hvb3/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/transform/init(_:)-cys2/index.html b/docs/documentation/euclid/transform/init(_:)-cys2/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/transform/init(_:)-cys2/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/vector/init(_:)-5s4mt/index.html b/docs/documentation/euclid/vector/init(_:)-5s4mt/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/vector/init(_:)-5s4mt/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/documentation/euclid/vector/init(_:)-7r7et/index.html b/docs/documentation/euclid/vector/init(_:)-7r7et/index.html new file mode 100644 index 00000000..d5a5096b --- /dev/null +++ b/docs/documentation/euclid/vector/init(_:)-7r7et/index.html @@ -0,0 +1 @@ +Documentation
\ No newline at end of file diff --git a/docs/index/index.json b/docs/index/index.json index e4af960b..04b4e2b4 100644 --- a/docs/index/index.json +++ b/docs/index/index.json @@ -359,12 +359,12 @@ }, { "path" : "\/documentation\/euclid\/mesh\/init(_:ignoringtransforms:materiallookup:)", - "title" : "init(SCNNode, ignoringTransforms: Bool, materialLookup: MaterialProvider?)", + "title" : "init(SCNNode, ignoringTransforms: Bool, materialLookup: SCNMaterialProvider?)", "type" : "init" }, { "path" : "\/documentation\/euclid\/mesh\/init(url:ignoringtransforms:materiallookup:)", - "title" : "init(url: URL, ignoringTransforms: Bool, materialLookup: MaterialProvider?) throws", + "title" : "init(url: URL, ignoringTransforms: Bool, materialLookup: SCNMaterialProvider?) throws", "type" : "init" }, { @@ -599,8 +599,23 @@ "type" : "groupMarker" }, { - "path" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)", - "title" : "init?(SCNGeometry, materialLookup: MaterialProvider?)", + "path" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-3drza", + "title" : "init(ModelEntity, materialLookup: RealityKitMaterialProvider?)", + "type" : "init" + }, + { + "path" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-7p5hd", + "title" : "init?(SCNGeometry, materialLookup: SCNMaterialProvider?)", + "type" : "init" + }, + { + "path" : "\/documentation\/euclid\/mesh\/init(_:materials:)-22brv", + "title" : "init(MeshDescriptor, materials: [Polygon.Material?])", + "type" : "init" + }, + { + "path" : "\/documentation\/euclid\/mesh\/init(_:materials:)-4k8gs", + "title" : "init(MeshResource, materials: [Polygon.Material?])", "type" : "init" }, { @@ -608,6 +623,16 @@ "title" : "init?(scnGeometry: SCNGeometry, materialLookup: MaterialProvider?)", "type" : "init" }, + { + "path" : "\/documentation\/euclid\/mesh\/init(stldata:materiallookup:)", + "title" : "init?(stlData: Data, materialLookup: STLMaterialProvider?)", + "type" : "init" + }, + { + "path" : "\/documentation\/euclid\/mesh\/init(stlstring:)", + "title" : "init?(stlString: String)", + "type" : "init" + }, { "title" : "Instance Properties", "type" : "groupMarker" @@ -650,11 +675,26 @@ "title" : "Mesh.Alignment", "type" : "typealias" }, + { + "path" : "\/documentation\/euclid\/mesh\/realitykitmaterialprovider", + "title" : "Mesh.RealityKitMaterialProvider", + "type" : "typealias" + }, + { + "path" : "\/documentation\/euclid\/mesh\/scnmaterialprovider", + "title" : "Mesh.SCNMaterialProvider", + "type" : "typealias" + }, { "path" : "\/documentation\/euclid\/mesh\/stlcolorprovider", "title" : "Mesh.STLColorProvider", "type" : "typealias" }, + { + "path" : "\/documentation\/euclid\/mesh\/stlmaterialprovider", + "title" : "Mesh.STLMaterialProvider", + "type" : "typealias" + }, { "title" : "Type Methods", "type" : "groupMarker" @@ -2493,6 +2533,15 @@ "title" : "static func \/= (inout Rotation, Double)", "type" : "op" }, + { + "title" : "Initializers", + "type" : "groupMarker" + }, + { + "path" : "\/documentation\/euclid\/rotation\/init(_:)-8izj", + "title" : "init(simd_quatf)", + "type" : "init" + }, { "title" : "Default Implementations", "type" : "groupMarker" @@ -2671,11 +2720,21 @@ "title" : "Initializers", "type" : "groupMarker" }, + { + "path" : "\/documentation\/euclid\/transform\/init(_:)-7hvb3", + "title" : "init(simd_float4x4)", + "type" : "init" + }, { "path" : "\/documentation\/euclid\/transform\/init(_:)-83oy3", "title" : "init(SCNMatrix4)", "type" : "init" }, + { + "path" : "\/documentation\/euclid\/transform\/init(_:)-cys2", + "title" : "init(RealityKit.Transform)", + "type" : "init" + }, { "title" : "Default Implementations", "type" : "groupMarker" @@ -3003,6 +3062,15 @@ "title" : "static func \/= (inout Quaternion, Double)", "type" : "op" }, + { + "title" : "Initializers", + "type" : "groupMarker" + }, + { + "path" : "\/documentation\/euclid\/quaternion\/init(_:)-99vxt", + "title" : "init(simd_quatf)", + "type" : "init" + }, { "title" : "Instance Properties", "type" : "groupMarker" @@ -3701,6 +3769,20 @@ "title" : "static func \/= (inout Vector, Double)", "type" : "op" }, + { + "title" : "Initializers", + "type" : "groupMarker" + }, + { + "path" : "\/documentation\/euclid\/vector\/init(_:)-5s4mt", + "title" : "init(simd_float3)", + "type" : "init" + }, + { + "path" : "\/documentation\/euclid\/vector\/init(_:)-7r7et", + "title" : "init(simd_float2)", + "type" : "init" + }, { "title" : "Instance Properties", "type" : "groupMarker" diff --git a/docs/indexing-records.json b/docs/indexing-records.json index dbd348ee..4f4347cf 100644 --- a/docs/indexing-records.json +++ b/docs/indexing-records.json @@ -3,49 +3,49 @@ "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-5p6di" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-3uymx" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/dot(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the dot-product of this quaternion and another. The quaternion with which to compute the dot product. Return Value The dot product of the two quaternions.", - "summary" : "Computes the dot-product of this quaternion and another.", - "title" : "dot(_:)" + "rawIndexableTextContent" : "Creates a new rotation by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new rotation by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -55,13 +55,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-15yni" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/bounds" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "The bounding box containing the line segment. ", + "summary" : "The bounding box containing the line segment.", + "title" : "bounds" }, { "headings" : [ @@ -71,29 +71,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-r7j4" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(url:ignoringTransforms:materialLookup:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Loads a mesh from a file using any format supported by SceneKit, with optional material mapping. The URL of the file to be loaded. Should node transforms from the input file be ignored. An optional closure to map the SceneKit materials to Euclid materials. If omitted, the SCNMaterial will be directly used as the mesh material.", + "summary" : "Loads a mesh from a file using any format supported by SceneKit, with optional material mapping.", + "title" : "init(url:ignoringTransforms:materialLookup:)" }, { "headings" : [ - "Discussion" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(points:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a plane from a set of points. A set of coplanar points describing a polygon. Discussion The polygon can be convex or concave. The direction of the plane normal is based on the assumption that the points are wound in an anti-clockwise direction.", - "summary" : "Creates a plane from a set of points.", - "title" : "init(points:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -103,29 +103,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:_:_:texcoord:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a corner path point at the specified X, Y and Z coordinates. The X coordinate of the path point. The Y coordinate of the path point. The Z coordinate of the path point (optional - defaults to zero). An optional texture coordinate for this path point. An optional vertex color for this path point.", - "summary" : "Creates a corner path point at the specified X, Y and Z coordinates.", - "title" : "point(_:_:_:texcoord:color:)" + "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", + "summary" : "Inherited from Comparable....(_:_:).", + "title" : "...(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ @@ -135,29 +135,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(offset:rotation:scale:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a transform from a SceneKit transform matrix. The SCNMatrix4 from which to determine the transform.", - "summary" : "Creates a transform from a SceneKit transform matrix.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Creates a new transform. The translation or position component of the transform. Defaults to zero (no offset). The translation or position component of the transform. Defaults to identity (no rotation). The scaling component of the transform. Defaults to one (no scale adjustment).", + "summary" : "Creates a new transform.", + "title" : "init(offset:rotation:scale:)" }, { "headings" : [ + "Return Value", "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-4hvi3" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.type.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of a set of paths. Discussion Parameters paths: A set of paths to compute the hull around. material: An optional material to apply to the mesh.", - "summary" : "Computes the convex hull of a set of paths.", - "title" : "convexHull(of:material:)" + "rawIndexableTextContent" : "Efficiently forms a union from multiple meshes. Return Value A new mesh representing the union of the input meshes. Discussion Parameters meshes: A collection of meshes to be unioned. isCancelled: Callback used to cancel the operation.", + "summary" : "Efficiently forms a union from multiple meshes.", + "title" : "union(_:isCancelled:)" }, { "headings" : [ @@ -167,13 +168,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new mesh by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new mesh by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Creates a spherical mesh. The radius of the sphere. The number of vertical slices that make up the sphere. The number of horizontal stacks that make up the sphere. Optionally add extra detail around poles to prevent texture warping The direction the polygon faces. The way that texture coordinates are calculated for the sphere. The optional material for the mesh.", + "summary" : "Creates a spherical mesh.", + "title" : "sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)" }, { "headings" : [ @@ -183,29 +184,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", - "summary" : "Inherited from Comparable...<(_:_:).", - "title" : "..<(_:_:)" + "rawIndexableTextContent" : "Divides the angle by a numeric denominator. ", + "summary" : "Divides the angle by a numeric denominator.", + "title" : "\/=(_:_:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersection(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-8ec9r" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new bounds representing the intersection between the specified bounds and this one. The bounds with which to intersect. Return Value The combined bounds, which may be empty if the bounds don’t intersect.", - "summary" : "Creates a new bounds representing the intersection between the specified bounds and this one.", - "title" : "intersection(_:)" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -216,46 +217,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/facePolygons(material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/lerp(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns one or more polygons needed to fill the path. An optional Polygon.Material to apply to the polygons. Return Value An array of polygons needed to fill the path, or an empty array if path is not closed. Discussion Polygon normals are calculated automatically based on the curvature of the path points. If the path points do not include textcoords, they will be calculated automatically based on the path point positions relative to the bounding rectangle of the path.", - "summary" : "Returns one or more polygons needed to fill the path.", - "title" : "facePolygons(material:)" + "rawIndexableTextContent" : "Linearly interpolates between two vertices. The vertex to interpolate towards. The unit value that indicates the distance between of this vertex and the target vertex. Return Value A new vertex with values interpolated between the two vertices. Discussion Interpolation is applied to the texture coordinate, normal and color, as well as the position.", + "summary" : "Linearly interpolates between two vertices.", + "title" : "lerp(_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/withColor(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/triangulate()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Replace\/remove point color. The color to apply to the point.", - "summary" : "Replace\/remove point color.", - "title" : "withColor(_:)" + "rawIndexableTextContent" : "Splits all polygons in the mesh into triangles. Return Value A new mesh containing the triangles.", + "summary" : "Splits all polygons in the mesh into triangles.", + "title" : "triangulate()" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/split(along:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-2si4j" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Split the mesh along a plane. The Plane to split the mesh along. Return Value A pair of meshes representing the parts in front of and behind the plane respectively. Discussion If the plane and mesh do not intersect, one of the returned meshes will be nil.", - "summary" : "Split the mesh along a plane.", - "title" : "split(along:)" + "rawIndexableTextContent" : "Returns whether the leftmost line segment has the lower value. This provides a stable order when sorting collections of line segments. ", + "summary" : "Returns whether the leftmost line segment has the lower value. This provides a stable order when sorting collections of line segments.", + "title" : "<(_:_:)" }, { "headings" : [ @@ -265,13 +265,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/right" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-2v2ef" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A normalized direction vector pointing rightwards relative to the current rotation. ", - "summary" : "A normalized direction vector pointing rightwards relative to the current rotation.", - "title" : "right" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -281,13 +281,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "The texture wrapping mode to use when generating a mesh. ", + "summary" : "The texture wrapping mode to use when generating a mesh.", + "title" : "Mesh.WrapMode" }, { "headings" : [ @@ -297,29 +297,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/default" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/inverted()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Use default alignment heuristic for the given path. ", - "summary" : "Use default alignment heuristic for the given path.", - "title" : "Path.Alignment.default" + "rawIndexableTextContent" : "Flip the direction of the line segment ", + "summary" : "Flip the direction of the line segment", + "title" : "inverted()" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/tan(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh from a SceneKit geometry, with optional material mapping. The SCNGeometry to convert into a mesh. An optional closure to map SceneKit materials to Euclid materials. If omitted, the SCNMaterial will be directly used as the mesh material.", - "summary" : "Creates a mesh from a SceneKit geometry, with optional material mapping.", - "title" : "init(_:materialLookup:)" + "rawIndexableTextContent" : "Computes the trigonometric tangent of an angle. The angle to calculate the tangent for. Return Value The trigonometric tangent of the angle.", + "summary" : "Computes the trigonometric tangent of an angle.", + "title" : "tan(_:)" }, { "headings" : [ @@ -329,13 +329,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexColors" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/position" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon includes vertex colors. ", - "summary" : "A Boolean value that indicates whether the polygon includes vertex colors.", - "title" : "hasVertexColors" + "rawIndexableTextContent" : "The position of the path point. ", + "summary" : "The position of the path point.", + "title" : "position" }, { "headings" : [ @@ -345,45 +345,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/components" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns an array containing the red, green, blue, and alpha components of the color. ", - "summary" : "Returns an array containing the red, green, blue, and alpha components of the color.", - "title" : "components" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/tessellate(maxSides:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this path point into the given encoder. The encoder to write data to.", - "summary" : "Encodes this path point into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Splits all polygons in the mesh that are concave or have more than the specified number of sides into two or more convex polygons. The maximum number of sides each polygon may have. Return Value A new mesh containing the convex polygons.", + "summary" : "Splits all polygons in the mesh that are concave or have more than the specified number of sides into two or more convex polygons.", + "title" : "tessellate(maxSides:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Bounded-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle from a radians value. The angle in radians.", - "summary" : "Creates an angle from a radians value.", - "title" : "radians(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Bounded Implementations" }, { "headings" : [ @@ -393,13 +393,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/orange" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/identity" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "orange" + "rawIndexableTextContent" : "The identity transform (i.e. no transform). ", + "summary" : "The identity transform (i.e. no transform).", + "title" : "identity" }, { "headings" : [ @@ -409,13 +409,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-5a3iz" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Creates a new quaternion by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new quaternion by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -425,13 +425,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -441,13 +441,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/color" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The color for the vertex. This will be multiplied by the material color, so set it to white if you do not require per-vertex colors. ", - "summary" : "The color for the vertex. This will be multiplied by the material color, so set it to white if you do not require per-vertex colors.", - "title" : "color" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ @@ -457,15 +457,15 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" - }, - { + "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", + "summary" : "Inherited from Comparable...<(_:_:).", + "title" : "..<(_:_:)" + }, + { "headings" : [ ], @@ -473,13 +473,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the angle divided by a numeric denominator. ", - "summary" : "Returns the angle divided by a numeric denominator.", - "title" : "\/(_:_:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ @@ -489,11 +489,11 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-1hyw0" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-7pxnt" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", "summary" : "Scale the value in place.", "title" : "scale(by:)" }, @@ -505,13 +505,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/material-swift.property" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An optional Polygon.Material associated with the polygon. ", - "summary" : "An optional Polygon.Material associated with the polygon.", - "title" : "material" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -521,13 +521,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new path point by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new path point by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -537,62 +537,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-l48f" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-55zcf" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Combines two rotations to get the cumulative rotation. ", + "summary" : "Combines two rotations to get the cumulative rotation.", + "title" : "*(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-8ec9r" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Comparable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Comparable Implementations" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/a" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new mesh that retains the shape of the receiver, but with the intersecting area colored using material from the parameter. Return Value A new mesh representing the result of stencilling. Discussion Parameters mesh: The mesh to be stencilled onto this one. isCancelled: Callback used to cancel the operation.", - "summary" : "Returns a new mesh that retains the shape of the receiver, but with the intersecting area colored using material from the parameter.", - "title" : "stencil(_:isCancelled:)" + "rawIndexableTextContent" : "The alpha component of the color. ", + "summary" : "The alpha component of the color.", + "title" : "a" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-375to" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", + "summary" : "Inherited from Comparable.<=(_:_:).", + "title" : "<=(_:_:)" }, { "headings" : [ @@ -602,13 +601,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:_:_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/components" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quaternion from raw component values. ", - "summary" : "Creates a quaternion from raw component values.", - "title" : "init(_:_:_:_:)" + "rawIndexableTextContent" : "Returns an array containing the red, green, blue, and alpha components of the color. ", + "summary" : "Returns an array containing the red, green, blue, and alpha components of the color.", + "title" : "components" }, { "headings" : [ @@ -618,13 +617,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh from a SceneKit geometry, with the material you provide. The SCNGeometry to convert. A Mesh.Material to apply to the geometry, replacing any existing materials. Pass nil to use the default Euclid material.", - "summary" : "Creates a mesh from a SceneKit geometry, with the material you provide.", - "title" : "init(_:material:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -634,13 +633,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/icosahedron(radius:faces:wrapMode:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Creates a sphere by subdividing an icosahedron. The radius of the icosahedron. The direction the polygon faces. The mode in which texture coordinates are wrapped around the mesh. The optional material for the mesh.", + "summary" : "Creates a sphere by subdividing an icosahedron.", + "title" : "icosahedron(radius:faces:wrapMode:material:)" }, { "headings" : [ @@ -650,13 +649,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withoutTexcoords()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", - "summary" : "Inherited from Comparable....(_:_:).", - "title" : "...(_:_:)" + "rawIndexableTextContent" : "Return a copy of the mesh without texture coordinates. ", + "summary" : "Return a copy of the mesh without texture coordinates.", + "title" : "withoutTexcoords()" }, { "headings" : [ @@ -666,29 +665,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/withColor(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/default" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Replace\/remove path point colors. The color to apply to each point in the path.", - "summary" : "Replace\/remove path point colors.", - "title" : "withColor(_:)" + "rawIndexableTextContent" : "The default wrap behavior. Context-dependent. ", + "summary" : "The default wrap behavior. Context-dependent.", + "title" : "Mesh.WrapMode.default" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/orderedEdges" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Comparable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the ordered array of polygon edges. ", - "summary" : "Returns the ordered array of polygon edges.", - "title" : "orderedEdges" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Comparable Implementations" }, { "headings" : [ @@ -698,13 +697,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/axis" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/up" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The axis of rotation. ", - "summary" : "The axis of rotation.", - "title" : "axis" + "rawIndexableTextContent" : "A normalized direction vector pointing upwards relative to the current rotation. ", + "summary" : "A normalized direction vector pointing upwards relative to the current rotation.", + "title" : "up" }, { "headings" : [ @@ -714,61 +713,65 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formUnion(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(points:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Expands this bounds (if necessary) to contain the specified bounds. The bounds to be included.", - "summary" : "Expands this bounds (if necessary) to contain the specified bounds.", - "title" : "formUnion(_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "init(points:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-1tffl" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the point where the specified plane intersects the line segment. The plane to compare with. Return Value The point of intersection, or nil if the line segment and plane don’t intersect.", - "summary" : "Returns the point where the specified plane intersects the line segment.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "The translation or position component of the transform. ", + "summary" : "The translation or position component of the transform.", + "title" : "offset" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-2pycj" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/makeWatertight()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new line by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new line by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Removes hairline cracks by inserting additional vertices without altering the shape. Return Value A new mesh with new vertices inserted if needed. Discussion This method is not always successful. Check isWatertight after to verify.", + "summary" : "Removes hairline cracks by inserting additional vertices without altering the shape.", + "title" : "makeWatertight()" }, { "headings" : [ @@ -778,13 +781,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/w" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitZ" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The perpendicular distance from the world origin to the plane. ", - "summary" : "The perpendicular distance from the world origin to the plane.", - "title" : "w" + "rawIndexableTextContent" : "A vector of length 1 along the Z axis. ", + "summary" : "A vector of length 1 along the Z axis.", + "title" : "unitZ" }, { "headings" : [ @@ -794,29 +797,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "13.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "10.15", + "name" : "macOS", + "unavailable" : false + } + ], + "rawIndexableTextContent" : "Creates a EuclidTransform from a RealityKit Transform. The RealityKit transform to convert into a Euclid transform.", + "summary" : "Creates a EuclidTransform from a RealityKit Transform.", + "title" : "init(_:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexColors" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/subpaths" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh includes vertex colors. ", - "summary" : "A Boolean value that indicates whether the mesh includes vertex colors.", - "title" : "hasVertexColors" + "rawIndexableTextContent" : "An array of the subpaths that make up the path. Discussion For paths without nested subpaths, this will return an array containing only self.", + "summary" : "An array of the subpaths that make up the path.", + "title" : "subpaths" }, { "headings" : [ @@ -826,13 +845,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-4cg0v" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Divides the components of the vector by the value you provide. ", + "summary" : "Divides the components of the vector by the value you provide.", + "title" : "\/=(_:_:)" }, { "headings" : [ @@ -842,13 +861,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-9mn9o" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently strokes an array of paths, avoiding duplicate work. The paths to stroke. The line width of the stroke. The number of sides to use for the cross-sectional shape of each stroked mesh. The optional material for the mesh.", - "summary" : "Efficiently strokes an array of paths, avoiding duplicate work.", - "title" : "stroke(_:width:detail:material:isCancelled:)" + "rawIndexableTextContent" : "Encodes this plane into the given encoder. The encoder to write data to.", + "summary" : "Encodes this plane into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -858,13 +877,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-4yucl" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", + "summary" : "Inherited from Comparable...<(_:_:).", + "title" : "..<(_:_:)" }, { "headings" : [ @@ -874,46 +893,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/size" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "The size of the bounds. The minimum returned size is zero, even if max < min. ", + "summary" : "The size of the bounds. The minimum returned size is zero, even if max < min.", + "title" : "size" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.type.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/isZero" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new mesh that is the combination of the polygons from all the specified meshes. The meshes to merge. Return Value A new mesh that includes all polygons from all meshes. Discussion No attempt is made to deduplicate or join meshes. Polygons are neither split nor removed.", - "summary" : "Creates a new mesh that is the combination of the polygons from all the specified meshes.", - "title" : "merge(_:)" + "rawIndexableTextContent" : "The angle is zero (or close to zero). ", + "summary" : "The angle is zero (or close to zero).", + "title" : "isZero" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/default" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan2(y:x:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The default face generation behavior. Context-dependent. ", - "summary" : "The default face generation behavior. Context-dependent.", - "title" : "Mesh.Faces.default" + "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc tangent of the vector you provide. Discussion Parameters y: The Y component of the input vector x: The X component of the input vector", + "summary" : "Creates an angle representing the trigonometric arc tangent of the vector you provide.", + "title" : "atan2(y:x:)" }, { "headings" : [ @@ -923,45 +941,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/withAlpha(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-6eeco" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a copy of the color updated with the specified alpha. ", - "summary" : "Creates a copy of the color updated with the specified alpha.", - "title" : "withAlpha(_:)" - }, - { + "rawIndexableTextContent" : "Returns whether the leftmost plane has the lower value. This provides a stable order when sorting collections of planes. ", + "summary" : "Returns whether the leftmost plane has the lower value. This provides a stable order when sorting collections of planes.", + "title" : "<(_:_:)" + }, + { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Creates a transform from the current position, scale and orientation of a SceneKit node. The SCNNode from which to determine the transform.", + "summary" : "Creates a transform from the current position, scale and orientation of a SceneKit node.", + "title" : "transform(from:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation around the X-axis. ", - "summary" : "The angle of rotation around the X-axis.", - "title" : "pitch" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -971,45 +989,48 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/length" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:texcoord:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The magnitude of the quaternion. ", - "summary" : "The magnitude of the quaternion.", - "title" : "length" + "rawIndexableTextContent" : "Creates a curved path point at the specified position. The location of the path point. The texture coordinate corresponding to this path point. An optional vertex color for this path point.", + "summary" : "Creates a curved path point at the specified position.", + "title" : "curve(_:texcoord:color:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-9mn9o" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Efficiently strokes an array of paths, avoiding duplicate work. The paths to stroke. The line width of the stroke. The number of sides to use for the cross-sectional shape of each stroked mesh. The optional material for the mesh.", + "summary" : "Efficiently strokes an array of paths, avoiding duplicate work.", + "title" : "stroke(_:width:detail:material:isCancelled:)" }, { "headings" : [ - + "Overview", + "Materials", + "Colors", + "Textures" ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/empty" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/RenderingMeshes" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An empty path. ", - "summary" : "An empty path.", - "title" : "empty" + "rawIndexableTextContent" : "Display the 3D shapes you created with meshes. Overview After creating some 3D shapes, you probably want to actually display them. Most of the Euclid library is completely self-contained, with no dependencies on any particular rendering technology or framework. However, when running on iOS or macOS you can take advantage of Euclid’s built-in SceneKit and RealityKit integration. This is demonstrated in the Example app included with the project. SceneKit is a high-level Apple 3D framework that can use either OpenGL or Metal for rendering on supported devices. Euclid provides extensions for creating an SCNGeometry from a Mesh, as well as converting Euclid Vector and Rotation types to SCNVector and SCNQuaternion respectively. The SceneKit integration makes it easy to display Euclid geometry on-screen, and to integrate with ARKit, etc. You can also use SceneKit to export Euclid-generated Mesh in standard 3D model formats such as DAE, STL or OBJ. RealityKit is a newer Apple framework mainly intended for VR\/AR purposes. It is slightly lower-level than SceneKit, and missing some high-level functionality such as camera control, but is equally-well supported by Euclid. Materials Interesting geometry is one thing, but to really bring a shape to life it needs colors and textures. Every Polygon has a material property that can be used to apply any kind of material you like on a per-polygon basis. All primitives and builder methods accept a material parameter which will apply that material to every polygon in the resultant Mesh. When you later combine meshes using CSG operations, the original materials from the Mesh that contributed to each part of the resultant shape are preserved. Before a material can be used with SceneKit, you need to convert the Euclid material to an SCNMaterial. If the material is already an SCNMaterial instance it will be used directly. If the material is a Color, a CG\/UI\/NSColor or CG\/UI\/NSImage it will be converted to an SCNMaterial automatically. For all other material types, you will need to do this conversion yourself. You can convert materials using the optional closure argument for Euclid’s SCNGeometry constructor, which receives the Euclid material as an input and returns an SCNMaterial. An equivalent closure exists for Euclid’s RealityKit ModelEntity constructor. When serializing Euclid geometry using Codable, only specific material types can be supported. Currently, material serialization works for Strings, Ints, Color and any class that conforms to NSCoding (which includes many UIKit, AppKit and SceneKit types, such as UI\/NSColor, UI\/NSImage and SCNMaterial). Colors Euclid supports applying colors to a Mesh or Polygon using the material property, but you can also set colors individually for each vertex, which will be interpolated to create smooth gradients. The material property is of type AnyHashable which basically means it can be anything you want. You can set the material to an instance of Euclid’s Color, or you can use a CGColor, UIColor or NSColor instead if you prefer. This approach is demonstrated in the Example app included in the project. Textures Euclid automatically adds 2D texture coordinates to the vertices of a Mesh created using primitives or builder methods. There is limited control over how those coordinates are specified at the moment, but they allow for simple cylindrical or spherical texture wrapping. You can also scale, rotate or translate the texture coordinates for a Mesh by using - withTextureTransform(_:), or remap the texture coordinates completely by using the sphereMapped(), cylinderMapped() and cubeMapped() methods. This can be useful for wrapping composite objects that you’ve created using CSG functions, where the texture coordinates may end up scrambled. To apply a texture image to a Mesh, store a UIImage or NSImage as the material property and it will be converted to an SCNMaterial automatically. If you want to do something more complex, such as applying both a color and texture to the same Mesh, or maybe including a normal map or some other material properties, you could create a custom material type to store all the properties you care about, or even assign an SCNMaterial or RealityKit Material directly.", + "summary" : "Display the 3D shapes you created with meshes.", + "title" : "Rendering Meshes" }, { "headings" : [ @@ -1019,13 +1040,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygons" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The polygons that make up the mesh. ", - "summary" : "The polygons that make up the mesh.", - "title" : "polygons" + "rawIndexableTextContent" : "Encodes this angle into the given encoder. The encoder to write data to.", + "summary" : "Encodes this angle into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -1035,61 +1056,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-2drke" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-68kkw" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a quaternion with its components multiplied by the specified value. ", - "summary" : "Returns a quaternion with its components multiplied by the specified value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Combines with the specified rotation. ", + "summary" : "Combines with the specified rotation.", + "title" : "*=(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-9pjki" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-95v17" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/empty" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the two bounds intersect. The bounds to compare. Return Value true if the bounds intersect, and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether the two bounds intersect.", - "title" : "intersects(_:)" + "rawIndexableTextContent" : "An empty bounds. ", + "summary" : "An empty bounds.", + "title" : "empty" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/clip(to:fill:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Clip mesh to the specified plane and optionally fill sheared faces with specified material. Discussion Parameters plane: The plane to clip the mesh to fill: The material to fill the sheared face(s) with. Specifying nil for the fill material will leave the sheared face unfilled.", - "summary" : "Clip mesh to the specified plane and optionally fill sheared faces with specified material.", - "title" : "clip(to:fill:)" + "rawIndexableTextContent" : "The bounding box containing the polygon. ", + "summary" : "The bounding box containing the polygon.", + "title" : "bounds" }, { "headings" : [ @@ -1099,13 +1120,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/loft(_:faces:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this rotation into the given encoder. The encoder to write data to.", - "summary" : "Encodes this rotation into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Creates a mesh by connecting a series of 3D paths representing the cross sections. The paths to connect. The direction of the generated polygon faces. The optional material for the mesh.", + "summary" : "Creates a mesh by connecting a series of 3D paths representing the cross sections.", + "title" : "loft(_:faces:material:)" }, { "headings" : [ @@ -1115,29 +1136,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-6eeco" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/axis" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns whether the leftmost plane has the lower value. This provides a stable order when sorting collections of planes. ", - "summary" : "Returns whether the leftmost plane has the lower value. This provides a stable order when sorting collections of planes.", - "title" : "<(_:_:)" + "rawIndexableTextContent" : "Align extruded cross-sections with the X, Y or Z axis (whichever is most perpendicular to the extrusion path). ", + "summary" : "Align extruded cross-sections with the X, Y or Z axis (whichever is most perpendicular to the extrusion path).", + "title" : "Path.Alignment.axis" }, { "headings" : [ - "Return Value" + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/inverted()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtracting(_:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Flips the face direction and vertex normals of all polygons within the mesh. Return Value The inverted mesh.", - "summary" : "Flips the face direction and vertex normals of all polygons within the mesh.", - "title" : "inverted()" + "rawIndexableTextContent" : "Returns a new mesh created by subtracting the volume of the mesh parameter from the receiver. Return Value A new mesh representing the result of the subtraction. Discussion Parameters mesh: The mesh to subtract from this one. isCancelled: Callback used to cancel the operation.", + "summary" : "Returns a new mesh created by subtracting the volume of the mesh parameter from the receiver.", + "title" : "subtracting(_:isCancelled:)" }, { "headings" : [ @@ -1147,11 +1169,11 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-8g7t0" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-8v4ag" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", "summary" : "Scale the value in place.", "title" : "scale(by:)" }, @@ -1163,13 +1185,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xy" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a vector with all components inverted. ", - "summary" : "Returns a vector with all components inverted.", - "title" : "-(_:)" + "rawIndexableTextContent" : "A plane located at the origin, aligned with the X and Y axes. ", + "summary" : "A plane located at the origin, aligned with the X and Y axes.", + "title" : "xy" }, { "headings" : [ @@ -1179,13 +1201,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexNormals" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the componentwise sum of two vectors. ", - "summary" : "Returns the componentwise sum of two vectors.", - "title" : "+(_:_:)" + "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon includes vertex normals that differ from the face normal. ", + "summary" : "A Boolean value that indicates whether the polygon includes vertex normals that differ from the face normal.", + "title" : "hasVertexNormals" }, { "headings" : [ @@ -1195,16 +1217,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(bounds:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/encode(to:)" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "init(bounds:)" + "rawIndexableTextContent" : "Encodes this line segment into the given encoder. The encoder to write data to.", + "summary" : "Encodes this line segment into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -1214,29 +1233,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isPlanar" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+(_:). ", - "summary" : "Inherited from AdditiveArithmetic.+(_:).", - "title" : "+(_:)" + "rawIndexableTextContent" : "Indicates whether all the path’s points lie on a single plane. ", + "summary" : "Indicates whether all the path’s points lie on a single plane.", + "title" : "isPlanar" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/area" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Returns the area of the polygon. ", + "summary" : "Returns the area of the polygon.", + "title" : "area" }, { "headings" : [ @@ -1246,13 +1265,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/undirectedEdges" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An unordered set of polygon edges. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons. ", - "summary" : "An unordered set of polygon edges. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", - "title" : "undirectedEdges" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ @@ -1262,29 +1281,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xz" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "A plane located at the origin, aligned with the X and Z axes. ", + "summary" : "A plane located at the origin, aligned with the X and Z axes.", + "title" : "xz" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-9s7pp" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A polygon in 3D space. Overview A polygon must be composed of three or more vertices, and those vertices must all lie on the same plane. The edges of a polygon can be either convex or concave, but not self-intersecting.", - "summary" : "A polygon in 3D space.", - "title" : "Polygon" + "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", + "summary" : "Inherited from Comparable.>=(_:_:).", + "title" : ">=(_:_:)" }, { "headings" : [ @@ -1294,46 +1313,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "rawIndexableTextContent" : "Creates a mesh from a RealityKit MeshDescriptor with optional material. The MeshDescriptor to convert into a mesh. An array of materials to apply to the mesh.", + "summary" : "Creates a mesh from a RealityKit MeshDescriptor with optional material.", + "title" : "init(_:materials:)" }, { "headings" : [ - "Return Value", - "Discussion" + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/triangulate()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/containsPoint(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Tessellates the polygon into triangles. Return Value An array of triangles. Discussion If the polygon is already a triangle then it is returned unchanged.", - "summary" : "Tessellates the polygon into triangles.", - "title" : "triangulate()" + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the specified point lies on the line. The point to test. Return Value true if the point lies on the line and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether the specified point lies on the line.", + "title" : "containsPoint(_:)" }, { "headings" : [ - "Discussion" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/curve(_:detail:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quadratic bezier spline. The control points for the curve. The number of line segments used to approximate curved sections. Discussion The method takes an array of PathPoint and a detail argument. Normally, the isCurved property is used to calculate surface normals (for lighting purposes), but with the curve(_:detail:) method it actually affects the shape of the Path. A sequence of regular (non-curved) PathPoints creates sharp corners in the Path as normal, but curved points are treated as off-curve Bezier control points. The method uses second-order (quadratic) Bezier curves, where each curve has two on-curve end points and a single off-curve control point. If two curved PathPoint are used in sequence then an on-curve point is interpolated between them. It is therefore possible to create curves entirely out of curved (off-curve) control points. This approach to curve generation is based on the popular TrueType (TTF) font system, and provides a good balance between simplicity and flexibility. For more complex curves, on macOS and iOS you can create Euclid Path from a CGPath by using the CGPath.paths() extension method. CGPath supports cubic bezier curves as well as quadratic, and has convenience constructors for rounded rectangles and other shapes.", - "summary" : "Creates a quadratic bezier spline.", - "title" : "curve(_:detail:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -1343,29 +1377,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/inverted()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Returns a new vertex with the normal inverted. ", + "summary" : "Returns a new vertex with the normal inverted.", + "title" : "inverted()" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-j6oq" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", + "summary" : "Inherited from Comparable.<=(_:_:).", + "title" : "<=(_:_:)" }, { "headings" : [ @@ -1375,29 +1409,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:_:_:texcoord:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" - }, - { - "headings" : [ - - ], - "kind" : "symbol", - "location" : { - "reference" : { - "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/g" - }, - "type" : "topLevelPage" - }, - "rawIndexableTextContent" : "The green component of the color. ", - "summary" : "The green component of the color.", - "title" : "g" + "rawIndexableTextContent" : "Creates a corner path point at the specified X, Y and Z coordinates. The X coordinate of the path point. The Y coordinate of the path point. The Z coordinate of the path point (optional - defaults to zero). An optional texture coordinate for this path point. An optional vertex color for this path point.", + "summary" : "Creates a corner path point at the specified X, Y and Z coordinates.", + "title" : "point(_:_:_:texcoord:color:)" }, { "headings" : [ @@ -1407,29 +1425,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:font:width:depth:detail:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an extruded text model from a string. The text to convert into a model The font to use for the text glyphs. The optional width at which to line-wrap the text. The depth of the extruded text. The number line segments used to approximate glyph curves. An optional material to apply to the mesh.", - "summary" : "Creates an extruded text model from a string.", - "title" : "text(_:font:width:depth:detail:material:)" + "rawIndexableTextContent" : "Creates a quaternion representing a rotation around the Z axis. The angle to rotate by.", + "summary" : "Creates a quaternion representing a rotation around the Z axis.", + "title" : "roll(_:)" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "A struct that represents an orientation or rotation in 3D space. Overview Internally, a rotation is stored as a 3x3 matrix, but that’s an implementation detail that may change in future. A rotation can be converted to and from an axis vector and angle, or a set of 3 Euler angles (pitch, yaw and roll).", + "summary" : "A struct that represents an orientation or rotation in 3D space.", + "title" : "Rotation" }, { "headings" : [ @@ -1439,13 +1457,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexNormals" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh includes vertex normals that differ from the face normal. ", - "summary" : "A Boolean value that indicates whether the mesh includes vertex normals that differ from the face normal.", - "title" : "hasVertexNormals" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -1455,13 +1473,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/start" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-2uz97" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The starting point of the line segment. ", - "summary" : "The starting point of the line segment.", - "title" : "start" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ @@ -1471,13 +1489,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/loft(_:faces:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:width:detail:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh by connecting a series of 3D paths representing the cross sections. The paths to connect. The direction of the generated polygon faces. The optional material for the mesh.", - "summary" : "Creates a mesh by connecting a series of 3D paths representing the cross sections.", - "title" : "loft(_:faces:material:)" + "rawIndexableTextContent" : "Creates an array of glyph contours from an attributed string. The text to convert. The optional width at which to line-wrap the text. The number line segments used to approximate glyph curves.", + "summary" : "Creates an array of glyph contours from an attributed string.", + "title" : "text(_:width:detail:)" }, { "headings" : [ @@ -1487,13 +1505,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this polygon into the given encoder. The encoder to write data to.", - "summary" : "Encodes this polygon into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -1519,29 +1537,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-7i9lp" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/yz" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", - "summary" : "Inherited from Comparable.>(_:_:).", - "title" : ">(_:_:)" + "rawIndexableTextContent" : "A plane located at the origin, aligned with the Y and Z axes. ", + "summary" : "A plane located at the origin, aligned with the Y and Z axes.", + "title" : "yz" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-1oq2t" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/containsPoint(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", - "summary" : "Inherited from Comparable.<=(_:_:).", - "title" : "<=(_:_:)" + "rawIndexableTextContent" : "Returns a Boolean value that indicates if the specified point is within the bounds. The point to compare. Return Value true if the point lies inside the bounds, and false otherwise.", + "summary" : "Returns a Boolean value that indicates if the specified point is within the bounds.", + "title" : "containsPoint(_:)" }, { "headings" : [ @@ -1551,29 +1569,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Bounded-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Decodable Implementations" + "title" : "Bounded Implementations" }, { "headings" : [ - "Discussion" + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-7br6p" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a conical mesh. The radius of the cone. The height of the cone. The number of vertical slices that make up the cone. The number of horizontal stacks that make up the cone. Optionally add extra detail around top pole to prevent texture warping. Whether detail should be added at bottom pole. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cone. The optional material for the mesh. Discussion The default nil value for poleDetail will derive value automatically. Use zero instead if you wish to add no extra detail at the poles.", - "summary" : "Creates a conical mesh.", - "title" : "cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)" + "rawIndexableTextContent" : "Returns a Boolean value that indicates if the bounds intersects the specified plane. The plane to compare. Return Value true if the plane intersects the bounds, and false otherwise.", + "summary" : "Returns a Boolean value that indicates if the bounds intersects the specified plane.", + "title" : "intersects(_:)" }, { "headings" : [ @@ -1583,13 +1601,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-filj" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", - "summary" : "Inherited from Comparable.>(_:_:).", - "title" : ">(_:_:)" + "rawIndexableTextContent" : "Creates a new transform by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new transform by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -1599,13 +1617,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-27eol" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-4egi6" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a Quaternion from a simd quaternion. A simd quaternion.", - "summary" : "Creates a Quaternion from a simd quaternion.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -1615,16 +1633,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-1h2f7" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "init(_:_:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -1634,13 +1649,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isIdentity" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Quaternion has no effect. ", + "summary" : "Quaternion has no effect.", + "title" : "isIdentity" }, { "headings" : [ @@ -1650,13 +1665,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/with(material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Divides the rotation angle by the specified value. ", - "summary" : "Divides the rotation angle by the specified value.", - "title" : "\/=(_:_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "with(material:)" }, { "headings" : [ @@ -1666,13 +1684,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-3fd8h" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", - "summary" : "Inherited from Comparable.>(_:_:).", - "title" : ">(_:_:)" + "rawIndexableTextContent" : "A vertex represents a corner of a Polygon or a point on the surface of a Mesh. ", + "summary" : "A vertex represents a corner of a Polygon or a point on the surface of a Mesh.", + "title" : "Vertex" }, { "headings" : [ @@ -1682,13 +1700,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isNormalized" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-3shbk" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the quaternion has a length of 1. ", - "summary" : "A Boolean value that indicates whether the quaternion has a length of 1.", - "title" : "isNormalized" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -1698,45 +1716,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh by extruding a path along its face normal. The path to extrude in order to create the mesh. The depth of the extrusion. Angular twist to apply along the extrusion. Number of sections to create along extrusion. The direction of the generated polygon faces. The optional material for the mesh.", - "summary" : "Creates a mesh by extruding a path along its face normal.", - "title" : "extrude(_:depth:twist:sections:faces:material:)" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ - + "Overview" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "A polygon in 3D space. Overview A polygon must be composed of three or more vertices, and those vertices must all lie on the same plane. The edges of a polygon can be either convex or concave, but not self-intersecting.", + "summary" : "A polygon in 3D space.", + "title" : "Polygon" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/codableClasses" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/AdditiveArithmetic-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Supported NSSecureCodable Material base classes. ", - "summary" : "Supported NSSecureCodable Material base classes.", - "title" : "codableClasses" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "AdditiveArithmetic Implementations" }, { "headings" : [ @@ -1746,13 +1764,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-55t4p" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a scale transform. A vector scale factor apply.", - "summary" : "Creates a scale transform.", - "title" : "scale(_:)" + "rawIndexableTextContent" : "Returns a vector with all components inverted. ", + "summary" : "Returns a vector with all components inverted.", + "title" : "-(_:)" }, { "headings" : [ @@ -1762,29 +1780,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Divides the components of the vector by the specified value. ", - "summary" : "Divides the components of the vector by the specified value.", - "title" : "\/=(_:_:)" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Alignment mode to use when extruding along a path. ", - "summary" : "Alignment mode to use when extruding along a path.", - "title" : "Path.Alignment" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -1794,13 +1812,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new color by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new color by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Encodes the vector into the given encoder. The encoder to write data to.", + "summary" : "Encodes the vector into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -1810,7 +1828,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd" }, "type" : "topLevelPage" }, @@ -1826,29 +1844,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-5p7ko" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/CancellationHandler" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the distance between the vector (representing a position in space) from the specified plane. The plane to compare with. Return Value The distance between the point and the plane. The value is positive if the point lies in front of the plane, and negative if behind.", - "summary" : "Returns the distance between the vector (representing a position in space) from the specified plane.", - "title" : "distance(from:)" + "rawIndexableTextContent" : "Callback used to cancel a long-running operation. Return Value true if operation should be cancelled, or false otherwise.", + "summary" : "Callback used to cancel a long-running operation.", + "title" : "Mesh.CancellationHandler" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/pi" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-7s1sd" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Angle representing a half-rotation. ", - "summary" : "Angle representing a half-rotation.", - "title" : "pi" + "rawIndexableTextContent" : "Returns the point where the specified plane intersects the line. The plane to compare with. Return Value The point of intersection, or nil if the line and plane are parallel (don’t intersect).", + "summary" : "Returns the point where the specified plane intersects the line.", + "title" : "intersection(with:)" }, { "headings" : [ @@ -1858,12 +1876,12 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-305tn" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", + "rawIndexableTextContent" : "Returns the product of two quaternions (i.e. the effect of rotating the left by the right). ", + "summary" : "Returns the product of two quaternions (i.e. the effect of rotating the left by the right).", "title" : "*(_:_:)" }, { @@ -1874,13 +1892,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-6c896" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-1hyw0" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of a set of polygons. An array of polygons to compute the hull around.", - "summary" : "Computes the convex hull of a set of polygons.", - "title" : "convexHull(of:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -1890,13 +1908,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/tessellate(maxSides:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/clip(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Splits a polygon into two or more convex polygons using the “ear clipping” method. The maximum number of sides each polygon may have. Return Value An array of convex polygons.", - "summary" : "Splits a polygon into two or more convex polygons using the “ear clipping” method.", - "title" : "tessellate(maxSides:)" + "rawIndexableTextContent" : "Clip polygon to the specified plane The plane to clip the polygon to. Return Value An array of the polygon fragments that lie in front of the plane.", + "summary" : "Clip polygon to the specified plane", + "title" : "clip(to:)" }, { "headings" : [ @@ -1906,29 +1924,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-8t5q8" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an axis-aligned cuboidal mesh. The center point of the mesh. The size of the cuboid mesh. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cube. The optional material for the mesh.", - "summary" : "Creates an axis-aligned cuboidal mesh.", - "title" : "cube(center:size:faces:wrapMode:material:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-27eol" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Creates a Quaternion from a simd quaternion. A simd quaternion.", + "summary" : "Creates a Quaternion from a simd quaternion.", + "title" : "init(_:)" }, { "headings" : [ @@ -1938,29 +1956,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/size" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-l48f" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The size of the bounds. The minimum returned size is zero, even if max < min. ", - "summary" : "The size of the bounds. The minimum returned size is zero, even if max < min.", - "title" : "size" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-5ztum" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/black" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of a set of path points. Discussion Parameters points: A set of path points to compute the hull around. material: An optional material to apply to the mesh. The curvature of the point is currently ignored when calculating hull surface normals.", - "summary" : "Computes the convex hull of a set of path points.", - "title" : "convexHull(of:material:)" + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "black" }, { "headings" : [ @@ -1970,13 +1988,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(subpaths:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/withColor(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a composite path from an array of subpaths. An array of paths.", - "summary" : "Creates a composite path from an array of subpaths.", - "title" : "init(subpaths:)" + "rawIndexableTextContent" : "Replace\/remove path point colors. The color to apply to each point in the path.", + "summary" : "Replace\/remove path point colors.", + "title" : "withColor(_:)" }, { "headings" : [ @@ -1986,13 +2004,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-1l9u5" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-mpk5" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -2002,13 +2020,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5n3j" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the inverse angle. ", - "summary" : "Returns the inverse angle.", - "title" : "-(_:)" + "rawIndexableTextContent" : "Creates a Vector from a simd vector 3. A simd vector.", + "summary" : "Creates a Vector from a simd vector 3.", + "title" : "init(_:)" + }, + { + "headings" : [ + "Discussion" + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-63ct7" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Creates a vector from an array of coordinates. An array of vector components. Discussion Omitted values default to 0 and extra components are ignored.", + "summary" : "Creates a vector from an array of coordinates.", + "title" : "init(_:)" }, { "headings" : [ @@ -2028,67 +2062,67 @@ }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-77i61" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the perpendicular distance from another line to this one. The line to compare. Return Value The perpendicular distance from the other line.", - "summary" : "Returns the perpendicular distance from another line to this one.", - "title" : "distance(from:)" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ - + "Return Value" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Comparable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-9o28g" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Comparable Implementations" + "rawIndexableTextContent" : "Computes the point of intersection between a line segment and a plane. The LineSegment to compare with. Return Value The point of intersection between the line segment and plane, or nil if they do not intersect.", + "summary" : "Computes the point of intersection between a line segment and a plane.", + "title" : "intersection(with:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Hashable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/isConvex" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Hashable Implementations" + "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon is convex. ", + "summary" : "A Boolean value that indicates whether the polygon is convex.", + "title" : "isConvex" }, { "headings" : [ @@ -2098,29 +2132,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quaternion representing a rotation around the X axis. The angle to rotate by.", - "summary" : "Creates a quaternion representing a rotation around the X axis.", - "title" : "pitch(_:)" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/lengthSquared" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The square of the length of the quaternion. This is less expensive to compute than the length itself. ", - "summary" : "The square of the length of the quaternion. This is less expensive to compute than the length itself.", - "title" : "lengthSquared" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -2130,12 +2164,12 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this quaternion into the given encoder. The encoder to write data to.", - "summary" : "Encodes this quaternion into the given encoder.", + "rawIndexableTextContent" : "Encodes this path into the given encoder. The encoder to write data to.", + "summary" : "Encodes this path into the given encoder.", "title" : "encode(to:)" }, { @@ -2146,13 +2180,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/max(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new vector representing the maximum of the components of the two vectors. ", - "summary" : "Returns a new vector representing the maximum of the components of the two vectors.", - "title" : "max(_:_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -2162,13 +2196,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-5w6mn" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Creates a rotation from a quaternion. A quaternion defining a rotation.", + "summary" : "Creates a rotation from a quaternion.", + "title" : "init(_:)" }, { "headings" : [ @@ -2178,13 +2212,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/tessellate(maxSides:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-77i61" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Splits all polygons in the mesh that are concave or have more than the specified number of sides into two or more convex polygons. The maximum number of sides each polygon may have. Return Value A new mesh containing the convex polygons.", - "summary" : "Splits all polygons in the mesh that are concave or have more than the specified number of sides into two or more convex polygons.", - "title" : "tessellate(maxSides:)" + "rawIndexableTextContent" : "Returns the perpendicular distance from another line to this one. The line to compare. Return Value The perpendicular distance from the other line.", + "summary" : "Returns the perpendicular distance from another line to this one.", + "title" : "distance(from:)" }, { "headings" : [ @@ -2194,13 +2228,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-4cg0v" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The rotation or orientation component of the transform. ", - "summary" : "The rotation or orientation component of the transform.", - "title" : "rotation" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -2210,13 +2244,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -2226,13 +2260,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/Equatable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Decodable Implementations" + "title" : "Equatable Implementations" }, { "headings" : [ @@ -2242,32 +2276,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothNormals(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/r" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "smoothNormals(_:)" + "rawIndexableTextContent" : "The red component of the color. ", + "summary" : "The red component of the color.", + "title" : "r" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A finite line segment in 3D space. ", - "summary" : "A finite line segment in 3D space.", - "title" : "LineSegment" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -2277,13 +2308,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-14arr" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ @@ -2293,29 +2324,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(yaw:pitch:roll:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-nkyk" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in yaw\/pitch\/roll order. The angle of rotation around the Y axis. This is applied first. The angle of rotation around the X axis. This is applied second. The angle of rotation around the Z axis. This is applied last.", - "summary" : "Creates a rotation from Euler angles applied in yaw\/pitch\/roll order.", - "title" : "init(yaw:pitch:roll:)" + "rawIndexableTextContent" : "Creates a vector of uniform size. The value to use for all components.", + "summary" : "Creates a vector of uniform size.", + "title" : "init(size:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+=(_:_:). ", - "summary" : "Inherited from AdditiveArithmetic.+=(_:_:).", - "title" : "+=(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ @@ -2325,29 +2356,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isZero" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a vector with its components divided by the specified value. ", - "summary" : "Returns a vector with its components divided by the specified value.", - "title" : "\/(_:_:)" - }, - { + "rawIndexableTextContent" : "All vector components are zero (or close to zero) in length. ", + "summary" : "All vector components are zero (or close to zero) in length.", + "title" : "isZero" + }, + { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/uniqueEdges" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-5ztum" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The unique polygon edges in the mesh. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons. ", - "summary" : "The unique polygon edges in the mesh. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", - "title" : "uniqueEdges" + "rawIndexableTextContent" : "Computes the convex hull of a set of path points. Discussion Parameters points: A set of path points to compute the hull around. material: An optional material to apply to the mesh. The curvature of the point is currently ignored when calculating hull surface normals.", + "summary" : "Computes the convex hull of a set of path points.", + "title" : "convexHull(of:material:)" }, { "headings" : [ @@ -2357,7 +2388,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-7pxnt" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-6c0wl" }, "type" : "topLevelPage" }, @@ -2367,19 +2398,19 @@ }, { "headings" : [ - "Return Value" + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/normalized()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-53lhy" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a normalized vector. Return Value The normalized vector (with a length of 1) or the zero vector if the length is 0.", - "summary" : "Returns a normalized vector.", - "title" : "normalized()" + "rawIndexableTextContent" : "Creates a color from an array of component values. Discussion The number of values specified determines how each value is interpreted. The following patterns are supported (R = red, G = green, B = blue, A = alpha, L = luminance): L LA RGB RGBA", + "summary" : "Creates a color from an array of component values.", + "title" : "init(_:)" }, { "headings" : [ @@ -2389,29 +2420,32 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-9s7pp" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", - "summary" : "Inherited from Comparable.>=(_:_:).", - "title" : ">=(_:_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "Mesh.MaterialProvider" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detessellate()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isNormalized" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Merges any coplanar polygons that share one or more edges. Return Value A new mesh containing the merged (possibly non-convex) polygons.", - "summary" : "Merges any coplanar polygons that share one or more edges.", - "title" : "detessellate()" + "rawIndexableTextContent" : "A Boolean value that indicates whether the quaternion has a length of 1. ", + "summary" : "A Boolean value that indicates whether the quaternion has a length of 1.", + "title" : "isNormalized" }, { "headings" : [ @@ -2421,29 +2455,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-11t07" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Creates a Vector from a simd vector 3. A simd vector.", + "summary" : "Creates a Vector from a simd vector 3.", + "title" : "init(_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/red" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", + "rawIndexableTextContent" : " ", "summary" : "", - "title" : "Encodable Implementations" + "title" : "red" }, { "headings" : [ @@ -2453,13 +2487,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-8g7t0" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", - "summary" : "Inherited from Comparable...<(_:).", - "title" : "..<(_:)" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -2469,29 +2503,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Equatable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Decodable Implementations" + "title" : "Equatable Implementations" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-7xdsm" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ @@ -2501,99 +2535,93 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh by filling a path to form one or more polygons. The shape to be filled. The direction the polygon faces. The optional material for the mesh.", - "summary" : "Creates a mesh by filling a path to form one or more polygons.", - "title" : "fill(_:faces:material:)" + "rawIndexableTextContent" : "An array containing the raw components of the quaternion. ", + "summary" : "An array containing the raw components of the quaternion.", + "title" : "components" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/acos(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc cosine of the value you provide. The cosine value to use to calculate the angle.", + "summary" : "Creates an angle representing the trigonometric arc cosine of the value you provide.", + "title" : "acos(_:)" }, { "headings" : [ - "Overview", - "Primitive Geometry", - "Builders", - "Curves", - "Constructive Solid Geometry (CSG)", - "Text" + ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/ConstructingMeshes" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-9688a" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Define 3D objects by constructing meshes. Overview To create a 3D object, create a Mesh in Euclid. You can manually create an array of Polygon instances, but that’s pretty tedious. Euclid offers a number of helper methods to quickly create complex geometry. Primitive Geometry The simplest way to create a Mesh is to start with an existing primitive, such as a cube or sphere. The following primitive types are available in Euclid, and are defined as static constructor methods on Mesh: cube(center:size:faces:wrapMode:material:) - A cubic Mesh (or cuboid, if you specify different values for the width, height and\/or depth). sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:) - A spherical Mesh. cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:) - A cylindrical Mesh. cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:) - A conical Mesh. All Mesh instances are made of flat polygons. Since true curves cannot be represented using straight edges, the sphere, cylinder and cone primitives are approximations. Control the quality of these approximations by using the slices and\/or stacks parameters to configure the level of detail. In addition to the 3D Mesh primitives listed, there are also 2D Path primitives. These are implemented as static constructor methods on the Path type instead of Mesh: line(_:color:) - A straight line. ellipse(width:height:segments:color:)- A closed, elliptical Path. circle(radius:segments:color:) - A closed, circular Path. rectangle(width:height:color:) - A closed, rectangular Path. roundedRectangle(width:height:radius:detail:color:) - A closed, rectangular Path with rounded corners. square(size:color:) - Same as rectangle(width:height:color:), but with equal width and height. polygon(radius:sides:color:) - A regular polygon shape (not to be confused with Euclid’s Polygon type). Builders Geometric primitives are all very well, but there is a limit to what you can create by combining spheres, cubes, etc. As an intermediate step between the extremes of using predefined primitives or individually positioning polygons, you can use builders. Builders create a Mesh from a (typically) 2D Path. The following builders are defined as static constructor functions on the Mesh type: fill(_:faces:material:) - This builder fills a single Path to create a pair of Polygons (front and back faces). stroke(_:width:detail:material:isCancelled:) - This builder strokes a single Path to create a strip or tube. A second variant (stroke(_:width:detail:material:)) of the function accepts an array of LineSegment, which is convenient for creating a wireframe geometry from the uniqueEdges of a Mesh. lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:) - This builder takes a 2D Path and rotates it around the Y-axis to create a rotationally symmetrical Mesh. This is an easy way to create complex shapes like candlesticks, chess pieces, rocket ships, etc. extrude(_:along:twist:align:faces:material:isCancelled:) - This builder fills a Path and extrudes it along its axis, or another path. This can turn a circular path into a tube, or a square into a cube etc. loft(_:faces:material:) - This builder is similar to extrude(_:along:twist:align:faces:material:isCancelled:), but takes multiple Path instances and joins them. The sequence of Path instances do not need to be the same shape, but must all have the same number of points and subpaths. To work correctly, each Path must be pre-positioned in 3D space so they do not all lie on the same plane. convexHull(of:material:) - Similar the the loft(_:faces:material:) builder, this method can form a Mesh by wrapping a skin around one or more Path instances. But unlike the other builders, in addition to paths you can also form a convex hull around a collection of meshes, polygons, vertices or points. Curves Builders are a powerful tool for creating interesting Mesh instances from one or more Path instances, but what about creating an interesting Path in the first place? Creating a polygonal Path by specifying points individually is straightforward, but creating curves that way is tedious. That’s where Bezier curves come in. Beziers allow you to specify complex curves using just a few control points. Euclid exposes this feature via the curve(_:detail:) constructor method. The curve(_:detail:) method takes an array of PathPoint and a detail argument. Normally, the isCurved property is used to calculate surface normals (for lighting purposes), but with the curve(_:detail:) method it actually affects the shape of the Path. A sequence of regular (non-curved) PathPoints create sharp corners in the Path as normal, but curved ones are treated as off-curve Bezier control points. The detail argument of the curve(_:detail:) method controls how many line segments are used to approximate the curve. The curve(_:detail:) method uses second-order (quadratic) Bezier curves, where each curve has two on-curve end points and a single off-curve control point. If two curved PathPoint are used in sequence then an on-curve point is interpolated between them. It is therefore possible to create curves entirely out of curved (off-curve) control points. This approach to curve generation is based on the popular TrueType (TTF) font system, and provides a good balance between simplicity and flexibility. For more complex curves, on macOS and iOS you can create Euclid Path from a Core Graphics CGPath by using the CGPath.paths() extension method. CGPath supports cubic bezier curves as well as quadratic. Constructive Solid Geometry (CSG) CSG is another powerful tool for creating intricate geometry. CSG allows you to perform boolean operations (logical AND, OR, etc.) on solid shapes. The following CSG operations are defined as methods on the Mesh type: subtracting(_:isCancelled:) - Subtracts the volume of one Mesh from another. symmetricDifference(_:isCancelled:) - Produces a shape representing the non-overlapping parts of the input Meshes (this is useful for rendering text glyphs). union(_:isCancelled:) - Combines two intersecting Meshes, removing internal faces and leaving only the outer shell around both shapes (logical OR). intersection(_:isCancelled:) - Returns a single Mesh representing the common volume of two intersecting Meshes (logical AND). stencil(_:isCancelled:) - This effectively “paints” part of one Mesh with the material from another. All CSG operations require Meshes that are “watertight”, that is they have no holes in their surface. Using a CSG operation on a mesh that isn’t sealed may result in unexpected results. Text On macOS and iOS you can make use of Euclid’s Core Text integration to create 2D or 3D extruded text. The text(_:width:detail:) method produces an array of 2D Path that represent the contours of each glyph in an AttributedString. You can use these paths with either fill(_:faces:material:) or extrude(_:depth:twist:sections:faces:material:isCancelled:) builder methods to create solid text. Alternatively, the text(_:font:width:depth:detail:material:) constructor directly produces an extruded 3D text model from a String or AttributedString. Each glyph in the input string maps to a single Path in the result, but these Paths may contain nested subpaths. Glyphs formed from multiple subpaths will be filled using the even-odd rule (equivalent to using symmetricDifference with the individually filled or extruded subpaths).", - "summary" : "Define 3D objects by constructing meshes.", - "title" : "Constructing Meshes" + "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", + "summary" : "Inherited from Comparable.>(_:_:).", + "title" : ">(_:_:)" }, { "headings" : [ - "Discussion" + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/isWatertight" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detriangulate()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh is watertight, meaning that every edge is attached to two polygons (or a multiple of two). Discussion A value of true doesn’t guarantee that mesh is not self-intersecting or inside-out.", - "summary" : "A Boolean value that indicates whether the mesh is watertight, meaning that every edge is attached to two polygons (or a multiple of two).", - "title" : "isWatertight" + "rawIndexableTextContent" : "Merges coplanar polygons that share one or more edges, provided the result will be convex. Return Value A new mesh containing the merged polygons.", + "summary" : "Merges coplanar polygons that share one or more edges, provided the result will be convex.", + "title" : "detriangulate()" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.type.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/texcoord" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently forms a union from multiple meshes. Return Value A new mesh representing the union of the input meshes. Discussion Parameters meshes: A collection of meshes to be unioned. isCancelled: Callback used to cancel the operation.", - "summary" : "Efficiently forms a union from multiple meshes.", - "title" : "union(_:isCancelled:)" + "rawIndexableTextContent" : "Texture coordinates for the vertex. Set this to zero if you are not using a texture map. ", + "summary" : "Texture coordinates for the vertex. Set this to zero if you are not using a texture map.", + "title" : "texcoord" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Bounded-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/cyan" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", + "rawIndexableTextContent" : " ", "summary" : "", - "title" : "Bounded Implementations" + "title" : "cyan" }, { "headings" : [ @@ -2603,29 +2631,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-305tn" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the product of two quaternions (i.e. the effect of rotating the left by the right). ", - "summary" : "Returns the product of two quaternions (i.e. the effect of rotating the left by the right).", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan2(y:x:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-4eop9" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc tangent of the vector you provide. Discussion Parameters y: The Y component of the input vector x: The X component of the input vector", - "summary" : "Creates an angle representing the trigonometric arc tangent of the vector you provide.", - "title" : "atan2(y:x:)" + "rawIndexableTextContent" : "Creates a vector from a CoreGraphics CGPoint. the CoreGraphics point.", + "summary" : "Creates a vector from a CoreGraphics CGPoint.", + "title" : "init(_:)" }, { "headings" : [ @@ -2635,13 +2663,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-hj8h" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Encodes this quaternion into the given encoder. The encoder to write data to.", + "summary" : "Encodes this quaternion into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -2651,16 +2679,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/with(color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/isIdentity" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "with(color:)" + "rawIndexableTextContent" : "Rotation has no effect. ", + "summary" : "Rotation has no effect.", + "title" : "isIdentity" }, { "headings" : [ @@ -2670,46 +2695,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Efficiently fills an array of paths, avoiding unecessary work if there are duplicates. The array of paths to be filled. The direction the polygon faces. The optional material for the mesh.", + "summary" : "Efficiently fills an array of paths, avoiding unecessary work if there are duplicates.", + "title" : "fill(_:faces:material:isCancelled:)" }, { "headings" : [ - "Return Value" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersects(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether two line segements intersect. The line segment to compare with. Return Value true if the line segments intersect and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether two line segements intersect.", - "title" : "intersects(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ - "Return Value", - "Discussion" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new mesh reprenting only the volume exclusively occupied by one shape or the other, but not both. Return Value A new mesh representing the XOR of the meshes. Discussion Parameters mesh: The mesh to be XORed with this one. isCancelled: Callback used to cancel the operation.", - "summary" : "Returns a new mesh reprenting only the volume exclusively occupied by one shape or the other, but not both.", - "title" : "symmetricDifference(_:isCancelled:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -2719,29 +2743,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-9pjki" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-7073s" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -2751,13 +2775,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ @@ -2767,13 +2791,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-3s6ak" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ @@ -2783,13 +2807,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/length" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The magnitude of the vector. ", - "summary" : "The magnitude of the vector.", - "title" : "length" + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "13.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "10.15", + "name" : "macOS", + "unavailable" : false + } + ], + "rawIndexableTextContent" : "Creates a EuclidTransform from a simd matrix. The simd matrix to convert into a Euclid transform.", + "summary" : "Creates a EuclidTransform from a simd matrix.", + "title" : "init(_:)" }, { "headings" : [ @@ -2799,13 +2839,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withMaterial(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a copy of the mesh with the new material applied to all polygons. ", - "summary" : "Returns a copy of the mesh with the new material applied to all polygons.", - "title" : "withMaterial(_:)" + "rawIndexableTextContent" : "Creates a rotation around the X axis. The angle to rotate by.", + "summary" : "Creates a rotation around the X axis.", + "title" : "pitch(_:)" }, { "headings" : [ @@ -2815,29 +2855,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-3c0eo" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:detail:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a closed path from a polygon. A Polygon to convert to a path.", - "summary" : "Creates a closed path from a polygon.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Creates a Path from a CGPath. The returned path may contain nested subpaths. The CoreGraphics path to convert. The number of line segments used to approximate cubic or quadratic bezier curves. An optional Color to apply to the path vertices.", + "summary" : "Creates a Path from a CGPath. The returned path may contain nested subpaths.", + "title" : "init(_:detail:color:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-4v7tg" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/empty" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the line of intersection between two planes. The plane to compare with. Return Value The line of intersection between the planes, or nil if the planes are parallel.", - "summary" : "Computes the line of intersection between two planes.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "An empty path. ", + "summary" : "An empty path.", + "title" : "empty" }, { "headings" : [ @@ -2847,13 +2887,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-7d8un" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/withColor(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a color from an NSColor. The NSColor to convert.", - "summary" : "Creates a color from an NSColor.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Replace\/remove point color. The color to apply to the point.", + "summary" : "Replace\/remove point color.", + "title" : "withColor(_:)" }, { "headings" : [ @@ -2863,13 +2903,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-375to" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Alignment" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", - "summary" : "Inherited from Comparable.<=(_:_:).", - "title" : "<=(_:_:)" + "rawIndexableTextContent" : "Alignment mode to use when extruding along a path. ", + "summary" : "Alignment mode to use when extruding along a path.", + "title" : "Mesh.Alignment" }, { "headings" : [ @@ -2879,13 +2919,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(origin:direction:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-5fe82" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a line from an origin and direction. An arbitrary point on the line selected as the origin. The direction of the line, emanating from the origin.", - "summary" : "Creates a line from an origin and direction.", - "title" : "init(origin:direction:)" + "rawIndexableTextContent" : "Returns a rotation multiplied by the specified value. ", + "summary" : "Returns a rotation multiplied by the specified value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -2895,13 +2935,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-228p6" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/corners" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vector from a SceneKit vector. The SceneKit SCNVector3.", - "summary" : "Creates a new vector from a SceneKit vector.", - "title" : "init(_:)" + "rawIndexableTextContent" : "The points that make up the corners of the bounds. ", + "summary" : "The points that make up the corners of the bounds.", + "title" : "corners" }, { "headings" : [ @@ -2911,30 +2951,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/none" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Do not generate texture coordinates. ", - "summary" : "Do not generate texture coordinates.", - "title" : "Mesh.WrapMode.none" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Bounded-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new mesh representing the combined volume of the mesh parameter and the receiver, with inner faces removed. Return Value A new mesh representing the union of the input meshes. Discussion Parameters mesh: The mesh to form a union with. isCancelled: Callback used to cancel the operation.", - "summary" : "Returns a new mesh representing the combined volume of the mesh parameter and the receiver, with inner faces removed.", - "title" : "union(_:isCancelled:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Bounded Implementations" }, { "headings" : [ @@ -2944,78 +2983,78 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/position" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Material used by the mesh polygons. See Polygon.Material for details. ", - "summary" : "Material used by the mesh polygons. See Polygon.Material for details.", - "title" : "Mesh.Material" + "rawIndexableTextContent" : "The position of the vertex. ", + "summary" : "The position of the vertex.", + "title" : "position" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-11t07" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Merges the polygons from two meshes. The mesh to merge with this one. Return Value A new mesh that includes all polygons from both meshes. Discussion No attempt is made to deduplicate or join meshes. Polygons are neither split nor removed.", - "summary" : "Merges the polygons from two meshes.", - "title" : "merge(_:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/forward" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A normalized direction vector pointing forwards relative to the current rotation. ", - "summary" : "A normalized direction vector pointing forwards relative to the current rotation.", - "title" : "forward" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-7xa5o" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/difference(_:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quaternion from a rotation matrix. A rotation matrix.", - "summary" : "Creates a quaternion from a rotation matrix.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Efficiently gets the difference between multiple meshes. Return Value A new mesh representing the difference between the meshes. Discussion Parameters meshes: An ordered collection of meshes. All but the first will be subtracted from the first. isCancelled: Callback used to cancel the operation.", + "summary" : "Efficiently gets the difference between multiple meshes.", + "title" : "difference(_:isCancelled:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lerp(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Linearly interpolate between this vector and another. The vector to interpolate towards. The normalized extent of interpolation, from 0 to 1.", - "summary" : "Linearly interpolate between this vector and another.", - "title" : "lerp(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -3025,29 +3064,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersects(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether two line segements intersect. The line segment to compare with. Return Value true if the line segments intersect and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether two line segements intersect.", + "title" : "intersects(_:)" }, { "headings" : [ @@ -3057,13 +3096,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-49h2f" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotation divided by the specified value. ", - "summary" : "Returns a rotation divided by the specified value.", - "title" : "\/(_:_:)" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ @@ -3073,13 +3112,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-94kks" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ @@ -3089,13 +3128,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Creates a new mesh from an array of polygons. The polygons making up the mesh.", + "summary" : "Creates a new mesh from an array of polygons.", + "title" : "init(_:)" }, { "headings" : [ @@ -3105,13 +3144,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:texcoord:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a curved path point at the specified position. The location of the path point. The texture coordinate corresponding to this path point. An optional vertex color for this path point.", - "summary" : "Creates a curved path point at the specified position.", - "title" : "curve(_:texcoord:color:)" + "rawIndexableTextContent" : "Creates a new vector by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new vector by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -3121,13 +3160,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-55r4j" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -3137,13 +3176,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The translation or position component of the transform. ", - "summary" : "The translation or position component of the transform.", - "title" : "offset" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ @@ -3153,13 +3192,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/acos(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc cosine of the value you provide. The cosine value to use to calculate the angle.", - "summary" : "Creates an angle representing the trigonometric arc cosine of the value you provide.", - "title" : "acos(_:)" + "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc tangent of the value you provide. The tangent value to use to calculate the angle.", + "summary" : "Creates an angle representing the trigonometric arc tangent of the value you provide.", + "title" : "atan(_:)" }, { "headings" : [ @@ -3169,13 +3208,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new mesh from an array of polygons. The polygons making up the mesh.", - "summary" : "Creates a new mesh from an array of polygons.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Creates a new vertex by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new vertex by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -3185,13 +3224,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/axis" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded\/bounds" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Axis of rotation ", - "summary" : "Axis of rotation", - "title" : "axis" + "rawIndexableTextContent" : "The bounds of the object. ", + "summary" : "The bounds of the object.", + "title" : "bounds" }, { "headings" : [ @@ -3201,45 +3240,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Protocol for transformable types. ", - "summary" : "Protocol for transformable types.", - "title" : "Transformable" + "rawIndexableTextContent" : "Creates a new path point by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new path point by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/y" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceNormal" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The quaternion Y component. ", - "summary" : "The quaternion Y component.", - "title" : "y" + "rawIndexableTextContent" : "The face normal for the path. Discussion If path is non-planar then this returns an average\/approximate normal.", + "summary" : "The face normal for the path.", + "title" : "faceNormal" }, { "headings" : [ - "Return Value" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-9o28g" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the point of intersection between a line segment and a plane. The LineSegment to compare with. Return Value The point of intersection between the line segment and plane, or nil if they do not intersect.", - "summary" : "Computes the point of intersection between a line segment and a plane.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -3249,13 +3288,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/angle" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(axis:angle:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation. ", - "summary" : "The angle of rotation.", - "title" : "angle" + "rawIndexableTextContent" : "Creates a quaternion from an axis and angle. A vector defining the axis of rotation. The angle of rotation around the axis.", + "summary" : "Creates a quaternion from an axis and angle.", + "title" : "init(axis:angle:)" }, { "headings" : [ @@ -3265,11 +3304,11 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", "summary" : "Returns a scaled copy of the value.", "title" : "scaled(by:)" }, @@ -3281,29 +3320,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Returns the componentwise difference between two vectors. ", + "summary" : "Returns the componentwise difference between two vectors.", + "title" : "-(_:_:)" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "A combined rotation, position, and scale that can be applied to a 3D object. Overview Working with intermediate transform objects instead of directly updating the vertex positions of a mesh is more efficient and avoids a buildup of rounding errors.", + "summary" : "A combined rotation, position, and scale that can be applied to a 3D object.", + "title" : "Transform" }, { "headings" : [ @@ -3313,13 +3352,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-9i9s9" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Divides the components of the vector by the value you provide. ", - "summary" : "Divides the components of the vector by the value you provide.", - "title" : "\/=(_:_:)" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -3329,13 +3368,32 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.type.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", - "summary" : "Inherited from Comparable...<(_:).", - "title" : "..<(_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "xor(_:isCancelled:)" + }, + { + "headings" : [ + "Return Value" + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/containsPoint(_:)" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether a point lies inside the polygon, on the same plane. The point to test. Return Value true if the point lies inside the polygon and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether a point lies inside the polygon, on the same plane.", + "title" : "containsPoint(_:)" }, { "headings" : [ @@ -3345,13 +3403,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-5mcy5" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/zero" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a vector with its components multiplied by the specified value. ", - "summary" : "Returns a vector with its components multiplied by the specified value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "The zero quaternion. ", + "summary" : "The zero quaternion.", + "title" : "zero" }, { "headings" : [ @@ -3361,13 +3419,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Comparable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Transformable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Comparable Implementations" + "title" : "Transformable Implementations" }, { "headings" : [ @@ -3377,29 +3435,32 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Creates a new angle by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new angle by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/inverted()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(bounds:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Flips the polygon along its plane and reverses the order and surface normals of the vertices. Return Value The inverted polygon.", - "summary" : "Flips the polygon along its plane and reverses the order and surface normals of the vertices.", - "title" : "inverted()" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "init(bounds:)" }, { "headings" : [ @@ -3409,13 +3470,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/points" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphereMapped()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The array of points that makes up this path. ", - "summary" : "The array of points that makes up this path.", - "title" : "points" + "rawIndexableTextContent" : "Return a copy of the mesh with spherically-mapped texture coordinates. ", + "summary" : "Return a copy of the mesh with spherically-mapped texture coordinates.", + "title" : "sphereMapped()" }, { "headings" : [ @@ -3425,13 +3486,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/length" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a transform from the current position, scale and orientation of a SceneKit node. The SCNNode from which to determine the transform.", - "summary" : "Creates a transform from the current position, scale and orientation of a SceneKit node.", - "title" : "transform(from:)" + "rawIndexableTextContent" : "The magnitude of the quaternion. ", + "summary" : "The magnitude of the quaternion.", + "title" : "length" }, { "headings" : [ @@ -3441,45 +3502,48 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-7go25" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cubeMapped()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a vertex from a path point. The path point to create the vertex from.", - "summary" : "Creates a vertex from a path point.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Return a copy of the mesh with cube-mapped texture coordinates. ", + "summary" : "Return a copy of the mesh with cube-mapped texture coordinates.", + "title" : "cubeMapped()" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-63ct7" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtract(_:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a vector from an array of coordinates. An array of vector components. Discussion Omitted values default to 0 and extra components are ignored.", - "summary" : "Creates a vector from an array of coordinates.", - "title" : "init(_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "subtract(_:isCancelled:)" }, { "headings" : [ - + "Return Value" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/lerp(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Linearly interpolates between two path points. The path point to interpolate with. The normalized extent of interpolation, from 0 to 1. Return Value A new path point at the interpolated position.", + "summary" : "Linearly interpolates between two path points.", + "title" : "lerp(_:_:)" }, { "headings" : [ @@ -3489,29 +3553,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-8l78z" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the product of an angle and numeric multiplier. ", - "summary" : "Returns the product of an angle and numeric multiplier.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Angle representing a zero (identity) rotation. ", + "summary" : "Angle representing a zero (identity) rotation.", + "title" : "zero" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ @@ -3521,13 +3585,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/x" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-677dp" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The quaternion X component. ", - "summary" : "The quaternion X component.", - "title" : "x" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -3547,19 +3611,19 @@ }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/clip(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Clip polygon to the specified plane The plane to clip the polygon to. Return Value An array of the polygon fragments that lie in front of the plane.", - "summary" : "Clip polygon to the specified plane", - "title" : "clip(to:)" + "rawIndexableTextContent" : "Create a mesh from an STL string. ASCII STL string data.", + "summary" : "Create a mesh from an STL string.", + "title" : "init(stlString:)" }, { "headings" : [ @@ -3569,13 +3633,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+=(_:_:). ", - "summary" : "Inherited from AdditiveArithmetic.+=(_:_:).", - "title" : "+=(_:_:)" + "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", + "summary" : "Inherited from Comparable...<(_:).", + "title" : "..<(_:)" }, { "headings" : [ @@ -3585,29 +3649,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/bounds" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/lengthSquared" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The bounds of the mesh. ", - "summary" : "The bounds of the mesh.", - "title" : "bounds" + "rawIndexableTextContent" : "The square of the length of the quaternion. This is less expensive to compute than the length itself. ", + "summary" : "The square of the length of the quaternion. This is less expensive to compute than the length itself.", + "title" : "lengthSquared" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-5nk27" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", + "summary" : "Inherited from Comparable.>=(_:_:).", + "title" : ">=(_:_:)" }, { "headings" : [ @@ -3617,13 +3681,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formIntersection(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.-=(_:_:). ", - "summary" : "Inherited from AdditiveArithmetic.-=(_:_:).", - "title" : "-=(_:_:)" + "rawIndexableTextContent" : "Reduces the bounds to contain just the intersection of itself and the specified bounds. The bounds with which to intersect.", + "summary" : "Reduces the bounds to contain just the intersection of itself and the specified bounds.", + "title" : "formIntersection(_:)" }, { "headings" : [ @@ -3633,13 +3697,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-2ew65" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the product of a numeric multiplier and an angle. ", - "summary" : "Returns the product of a numeric multiplier and an angle.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "The size or scale component of the transform. ", + "summary" : "The size or scale component of the transform.", + "title" : "scale" }, { "headings" : [ @@ -3649,13 +3713,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/codableClasses" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", - "summary" : "Inherited from Comparable...<(_:).", - "title" : "..<(_:)" + "rawIndexableTextContent" : "Supported NSSecureCodable Material base classes. ", + "summary" : "Supported NSSecureCodable Material base classes.", + "title" : "codableClasses" }, { "headings" : [ @@ -3665,16 +3729,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtract(_:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "subtract(_:isCancelled:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -3684,13 +3745,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Returns the sum of two angles. ", + "summary" : "Returns the sum of two angles.", + "title" : "+(_:_:)" }, { "headings" : [ @@ -3700,29 +3761,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/identity" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The identity transform (i.e. no transform). ", - "summary" : "The identity transform (i.e. no transform).", - "title" : "identity" + "rawIndexableTextContent" : "Creates a new line segment by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new line segment by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(shape:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Creates a single polygon from a path. Discussion Parameters shape: The Path to convert to a polygon. material: An optional Polygon.Material to apply to the polygon. Path may be convex or concave, but must be closed, planar and non-degenerate, and must not include subpaths. For a non-planar path, or one with subpaths, use facePolygons(material:).", + "summary" : "Creates a single polygon from a path.", + "title" : "init(shape:material:)" }, { "headings" : [ @@ -3732,29 +3793,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygonsByMaterial" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The polygons in the mesh, grouped by material. ", - "summary" : "The polygons in the mesh, grouped by material.", - "title" : "polygonsByMaterial" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/cyan" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.type.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "cyan" + "rawIndexableTextContent" : "Efficiently computes the intersection of multiple meshes. Return Value A new mesh representing the intersection of the meshes. Discussion Parameters meshes: A collection of meshes to be intersected. isCancelled: Callback used to cancel the operation.", + "summary" : "Efficiently computes the intersection of multiple meshes.", + "title" : "intersection(_:isCancelled:)" }, { "headings" : [ @@ -3764,13 +3826,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-8x4al" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently extrudes an array of paths along their respective face normals, avoiding duplicate work. The array of paths to extrude in order to create the mesh. The depth of the extrusion. Angular twist to apply along the extrusion. Number of sections to create along extrusion. The direction of the generated polygon faces. The optional material for the mesh.", - "summary" : "Efficiently extrudes an array of paths along their respective face normals, avoiding duplicate work.", - "title" : "extrude(_:depth:twist:sections:faces:material:isCancelled:)" + "rawIndexableTextContent" : "Computes the convex hull of one or more meshes. An array of meshes to compute the hull around.", + "summary" : "Computes the convex hull of one or more meshes.", + "title" : "convexHull(of:)" }, { "headings" : [ @@ -3780,45 +3842,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(radians:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle from a radians value. The angle in radians.", - "summary" : "Creates an angle from a radians value.", - "title" : "init(radians:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/inverted()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation around the Z-axis. ", - "summary" : "The angle of rotation around the Z-axis.", - "title" : "roll" + "rawIndexableTextContent" : "Flips the face direction and vertex normals of all polygons within the mesh. Return Value The inverted mesh.", + "summary" : "Flips the face direction and vertex normals of all polygons within the mesh.", + "title" : "inverted()" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/back" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Generate back faces. ", - "summary" : "Generate back faces.", - "title" : "Mesh.Faces.back" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -3828,13 +3890,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rectangle(width:height:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a closed rectangular path. The width of the rectangle. The height of the rectangle. An optional Color to apply to the path’s points.", - "summary" : "Creates a closed rectangular path.", - "title" : "rectangle(width:height:color:)" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -3844,29 +3906,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withTextureTransform(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return a copy of the mesh with transformed texture coordinates. The transform to apply to the texture coordinates.", - "summary" : "Return a copy of the mesh with transformed texture coordinates.", - "title" : "withTextureTransform(_:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "A closure that maps an STL facet color to a Euclid material. A Euclid Color to convert, or nil for the default color. Return Value A Euclid Material value, or nil for the default material.", + "summary" : "A closure that maps an STL facet color to a Euclid material.", + "title" : "Mesh.STLMaterialProvider" }, { "headings" : [ @@ -3876,13 +3938,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-1kdd7" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation transform. A rotation to apply.", - "summary" : "Creates a rotation transform.", - "title" : "rotation(_:)" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -3892,13 +3954,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/materials" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-9rm6o" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "All materials used by the mesh. The array may contain nil if some or all of the mesh uses the default material. ", - "summary" : "All materials used by the mesh. The array may contain nil if some or all of the mesh uses the default material.", - "title" : "materials" + "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", + "summary" : "Inherited from Comparable.>=(_:_:).", + "title" : ">=(_:_:)" }, { "headings" : [ @@ -3908,13 +3970,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-2ix6y" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/roundedRectangle(width:height:radius:detail:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Creates a rounded rectangle path. The width of the rectangle. The height of the rectangle. The corner radius, The number of line segments used to approximate each corner curve. An optional Color to apply to the path’s points.", + "summary" : "Creates a rounded rectangle path.", + "title" : "roundedRectangle(width:height:radius:detail:color:)" }, { "headings" : [ @@ -3924,29 +3986,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/w" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinderMapped()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The quaternion W component. ", - "summary" : "The quaternion W component.", - "title" : "w" + "rawIndexableTextContent" : "Return a copy of the mesh with cylindrically-mapped texture coordinates. ", + "summary" : "Return a copy of the mesh with cylindrically-mapped texture coordinates.", + "title" : "cylinderMapped()" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/max" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-1tffl" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The maximum coordinate of the bounds. ", - "summary" : "The maximum coordinate of the bounds.", - "title" : "max" + "rawIndexableTextContent" : "Returns the point where the specified plane intersects the line segment. The plane to compare with. Return Value The point of intersection, or nil if the line segment and plane don’t intersect.", + "summary" : "Returns the point where the specified plane intersects the line segment.", + "title" : "intersection(with:)" }, { "headings" : [ @@ -3956,13 +4018,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-9obdn" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/length" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns whether the leftmost vector has the lower value. This provides a stable order when sorting collections of vectors. ", - "summary" : "Returns whether the leftmost vector has the lower value. This provides a stable order when sorting collections of vectors.", - "title" : "<(_:_:)" + "rawIndexableTextContent" : "The length of the line segment. ", + "summary" : "The length of the line segment.", + "title" : "length" }, { "headings" : [ @@ -3972,13 +4034,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-6c896" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation around the Z axis. The angle to rotate by.", - "summary" : "Creates a rotation around the Z axis.", - "title" : "roll(_:)" + "rawIndexableTextContent" : "Computes the convex hull of a set of polygons. An array of polygons to compute the hull around.", + "summary" : "Computes the convex hull of a set of polygons.", + "title" : "convexHull(of:)" }, { "headings" : [ @@ -3988,13 +4050,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/end" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new quaternion by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new quaternion by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "The end point of the line segment. ", + "summary" : "The end point of the line segment.", + "title" : "end" }, { "headings" : [ @@ -4004,13 +4066,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/texcoord" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/plane" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Texture coordinates for the vertex. Set this to zero if you are not using a texture map. ", - "summary" : "Texture coordinates for the vertex. Set this to zero if you are not using a texture map.", - "title" : "texcoord" + "rawIndexableTextContent" : "The plane upon which all path points lie. Will be nil for non-planar paths. ", + "summary" : "The plane upon which all path points lie. Will be nil for non-planar paths.", + "title" : "plane" }, { "headings" : [ @@ -4020,30 +4082,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/yz" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A plane located at the origin, aligned with the Y and Z axes. ", - "summary" : "A plane located at the origin, aligned with the Y and Z axes.", - "title" : "yz" + "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", + "summary" : "Inherited from Comparable....(_:_:).", + "title" : "...(_:_:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtracting(_:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new mesh created by subtracting the volume of the mesh parameter from the receiver. Return Value A new mesh representing the result of the subtraction. Discussion Parameters mesh: The mesh to subtract from this one. isCancelled: Callback used to cancel the operation.", - "summary" : "Returns a new mesh created by subtracting the volume of the mesh parameter from the receiver.", - "title" : "subtracting(_:isCancelled:)" + "rawIndexableTextContent" : "Creates a new identity rotation. ", + "summary" : "Creates a new identity rotation.", + "title" : "init()" }, { "headings" : [ @@ -4053,13 +4114,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-1aqv9" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-1oq2t" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns whether the leftmost angle has the lower value. ", - "summary" : "Returns whether the leftmost angle has the lower value.", - "title" : "<(_:_:)" + "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", + "summary" : "Inherited from Comparable.<=(_:_:).", + "title" : "<=(_:_:)" }, { "headings" : [ @@ -4069,13 +4130,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphereMapped()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return a copy of the mesh with spherically-mapped texture coordinates. ", - "summary" : "Return a copy of the mesh with spherically-mapped texture coordinates.", - "title" : "sphereMapped()" + "rawIndexableTextContent" : "Creates a Rotation from a simd quaternion. A simd quaternion.", + "summary" : "Creates a Rotation from a simd quaternion.", + "title" : "init(_:)" }, { "headings" : [ @@ -4085,29 +4146,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stlString(name:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return ASCII STL string data for the mesh. ", - "summary" : "Return ASCII STL string data for the mesh.", - "title" : "stlString(name:)" + "rawIndexableTextContent" : "Creates a cylindrical mesh. The radius of the cylinder. The height of the cylinder. The number of vertical slices that make up the cylinder. Optionally add extra detail around poles to prevent texture warping. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cylinder. The optional material for the mesh.", + "summary" : "Creates a cylindrical mesh.", + "title" : "cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/closed()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Closes the path by joining last point to first. Return Value A new path, or self if the path is already closed, or cannot be closed.", - "summary" : "Closes the path by joining last point to first.", - "title" : "closed()" + "rawIndexableTextContent" : "Returns the difference between two angles. ", + "summary" : "Returns the difference between two angles.", + "title" : "-(_:_:)" }, { "headings" : [ @@ -4117,45 +4178,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation around the Z-axis. ", - "summary" : "The angle of rotation around the Z-axis.", - "title" : "roll" + "rawIndexableTextContent" : "The bounds of all the path’s points. ", + "summary" : "The bounds of all the path’s points.", + "title" : "bounds" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/z" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/union(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The Z component of the vector. ", - "summary" : "The Z component of the vector.", - "title" : "z" + "rawIndexableTextContent" : "Creates a new bounds that contains both the specified bounds and this one. The other bounds to be included. Return Value The combined bounds.", + "summary" : "Creates a new bounds that contains both the specified bounds and this one.", + "title" : "union(_:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/clip(to:fill:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this path into the given encoder. The encoder to write data to.", - "summary" : "Encodes this path into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Clip mesh to the specified plane and optionally fill sheared faces with specified material. Discussion Parameters plane: The plane to clip the mesh to fill: The material to fill the sheared face(s) with. Specifying nil for the fill material will leave the sheared face unfilled.", + "summary" : "Clip mesh to the specified plane and optionally fill sheared faces with specified material.", + "title" : "clip(to:fill:)" }, { "headings" : [ @@ -4165,45 +4226,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitY" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/g" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A vector of length 1 along the Y axis. ", - "summary" : "A vector of length 1 along the Y axis.", - "title" : "unitY" + "rawIndexableTextContent" : "The green component of the color. ", + "summary" : "The green component of the color.", + "title" : "g" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/circle(radius:segments:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/max(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a closed circular path. The distance from the center of the circle to each point used to approximate its shape. The number of line segments used to approximate the circle. An optional Color to apply to the path’s points. Discussion Because the circle is approximated using line segments, its radius is not uniform. The radius specified is the outer radius, i.e. the radius at the corners of the polygon.", - "summary" : "Creates a closed circular path.", - "title" : "circle(radius:segments:color:)" + "rawIndexableTextContent" : "Returns a new vector representing the maximum of the components of the two vectors. ", + "summary" : "Returns a new vector representing the maximum of the components of the two vectors.", + "title" : "max(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", - "summary" : "Inherited from Comparable...<(_:_:).", - "title" : "..<(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -4213,13 +4274,37 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-lsgo" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/with(color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Multiplies the components of the quaternion by the specified value. ", - "summary" : "Multiplies the components of the quaternion by the specified value.", - "title" : "*=(_:_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "with(color:)" + }, + { + "headings" : [ + "Overview", + "Primitive Geometry", + "Builders", + "Curves", + "Constructive Solid Geometry (CSG)", + "Text" + ], + "kind" : "article", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/ConstructingMeshes" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Define 3D objects by constructing meshes. Overview To create a 3D object, create a Mesh in Euclid. You can manually create an array of Polygon instances, but that’s pretty tedious. Euclid offers a number of helper methods to quickly create complex geometry. Primitive Geometry The simplest way to create a Mesh is to start with an existing primitive, such as a cube or sphere. The following primitive types are available in Euclid, and are defined as static constructor methods on Mesh: cube(center:size:faces:wrapMode:material:) - A cubic Mesh (or cuboid, if you specify different values for the width, height and\/or depth). sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:) - A spherical Mesh. cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:) - A cylindrical Mesh. cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:) - A conical Mesh. All Mesh instances are made of flat polygons. Since true curves cannot be represented using straight edges, the sphere, cylinder and cone primitives are approximations. Control the quality of these approximations by using the slices and\/or stacks parameters to configure the level of detail. In addition to the 3D Mesh primitives listed, there are also 2D Path primitives. These are implemented as static constructor methods on the Path type instead of Mesh: line(_:color:) - A straight line. ellipse(width:height:segments:color:)- A closed, elliptical Path. circle(radius:segments:color:) - A closed, circular Path. rectangle(width:height:color:) - A closed, rectangular Path. roundedRectangle(width:height:radius:detail:color:) - A closed, rectangular Path with rounded corners. square(size:color:) - Same as rectangle(width:height:color:), but with equal width and height. polygon(radius:sides:color:) - A regular polygon shape (not to be confused with Euclid’s Polygon type). Builders Geometric primitives are all very well, but there is a limit to what you can create by combining spheres, cubes, etc. As an intermediate step between the extremes of using predefined primitives or individually positioning polygons, you can use builders. Builders create a Mesh from a (typically) 2D Path. The following builders are defined as static constructor functions on the Mesh type: fill(_:faces:material:) - This builder fills a single Path to create a pair of Polygons (front and back faces). stroke(_:width:detail:material:isCancelled:) - This builder strokes a single Path to create a strip or tube. A second variant (stroke(_:width:detail:material:)) of the function accepts an array of LineSegment, which is convenient for creating a wireframe geometry from the uniqueEdges of a Mesh. lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:) - This builder takes a 2D Path and rotates it around the Y-axis to create a rotationally symmetrical Mesh. This is an easy way to create complex shapes like candlesticks, chess pieces, rocket ships, etc. extrude(_:along:twist:align:faces:material:isCancelled:) - This builder fills a Path and extrudes it along its axis, or another path. This can turn a circular path into a tube, or a square into a cube etc. loft(_:faces:material:) - This builder is similar to extrude(_:along:twist:align:faces:material:isCancelled:), but takes multiple Path instances and joins them. The sequence of Path instances do not need to be the same shape, but must all have the same number of points and subpaths. To work correctly, each Path must be pre-positioned in 3D space so they do not all lie on the same plane. convexHull(of:material:) - Similar the the loft(_:faces:material:) builder, this method can form a Mesh by wrapping a skin around one or more Path instances. But unlike the other builders, in addition to paths you can also form a convex hull around a collection of meshes, polygons, vertices or points. Curves Builders are a powerful tool for creating interesting Mesh instances from one or more Path instances, but what about creating an interesting Path in the first place? Creating a polygonal Path by specifying points individually is straightforward, but creating curves that way is tedious. That’s where Bezier curves come in. Beziers allow you to specify complex curves using just a few control points. Euclid exposes this feature via the curve(_:detail:) constructor method. The curve(_:detail:) method takes an array of PathPoint and a detail argument. Normally, the isCurved property is used to calculate surface normals (for lighting purposes), but with the curve(_:detail:) method it actually affects the shape of the Path. A sequence of regular (non-curved) PathPoints create sharp corners in the Path as normal, but curved ones are treated as off-curve Bezier control points. The detail argument of the curve(_:detail:) method controls how many line segments are used to approximate the curve. The curve(_:detail:) method uses second-order (quadratic) Bezier curves, where each curve has two on-curve end points and a single off-curve control point. If two curved PathPoint are used in sequence then an on-curve point is interpolated between them. It is therefore possible to create curves entirely out of curved (off-curve) control points. This approach to curve generation is based on the popular TrueType (TTF) font system, and provides a good balance between simplicity and flexibility. For more complex curves, on macOS and iOS you can create Euclid Path from a Core Graphics CGPath by using the CGPath.paths() extension method. CGPath supports cubic bezier curves as well as quadratic. Constructive Solid Geometry (CSG) CSG is another powerful tool for creating intricate geometry. CSG allows you to perform boolean operations (logical AND, OR, etc.) on solid shapes. The following CSG operations are defined as methods on the Mesh type: subtracting(_:isCancelled:) - Subtracts the volume of one Mesh from another. symmetricDifference(_:isCancelled:) - Produces a shape representing the non-overlapping parts of the input Meshes (this is useful for rendering text glyphs). union(_:isCancelled:) - Combines two intersecting Meshes, removing internal faces and leaving only the outer shell around both shapes (logical OR). intersection(_:isCancelled:) - Returns a single Mesh representing the common volume of two intersecting Meshes (logical AND). stencil(_:isCancelled:) - This effectively “paints” part of one Mesh with the material from another. All CSG operations require Meshes that are “watertight”, that is they have no holes in their surface. Using a CSG operation on a mesh that isn’t sealed may result in unexpected results. Text On macOS and iOS you can make use of Euclid’s Core Text integration to create 2D or 3D extruded text. The text(_:width:detail:) method produces an array of 2D Path that represent the contours of each glyph in an AttributedString. You can use these paths with either fill(_:faces:material:) or extrude(_:depth:twist:sections:faces:material:isCancelled:) builder methods to create solid text. Alternatively, the text(_:font:width:depth:detail:material:) constructor directly produces an extruded 3D text model from a String or AttributedString. Each glyph in the input string maps to a single Path in the result, but these Paths may contain nested subpaths. Glyphs formed from multiple subpaths will be filled using the even-odd rule (equivalent to using symmetricDifference with the individually filled or extruded subpaths).", + "summary" : "Define 3D objects by constructing meshes.", + "title" : "Constructing Meshes" }, { "headings" : [ @@ -4229,96 +4314,109 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/front" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/frontAndBack" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Generate front faces. ", - "summary" : "Generate front faces.", - "title" : "Mesh.Faces.front" + "rawIndexableTextContent" : "Generate both the front and back faces. ", + "summary" : "Generate both the front and back faces.", + "title" : "Mesh.Faces.frontAndBack" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/b" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/slerp(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The blue component of the color. ", - "summary" : "The blue component of the color.", - "title" : "b" + "rawIndexableTextContent" : "Performs a spherical linear interpolation between two rotations. The rotation to interpolate towards. The normalized extent of interpolation, from 0 to 1. Return Value The interpolated rotation.", + "summary" : "Performs a spherical linear interpolation between two rotations.", + "title" : "slerp(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/AdditiveArithmetic-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "AdditiveArithmetic Implementations" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ - + "Overview" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Bounded-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Bounded Implementations" + "rawIndexableTextContent" : "A path made up of a sequence of straight line segments between points. Overview A Path can be either open (a polyline) or closed (a polygon), but should not be self-intersecting or otherwise degenerate. A path may be formed from multiple subpaths, which can be accessed via the subpaths property. A closed Path can be converted to one or more Polygons, but it can also be used for other purposes, such as defining a cross-section or profile of a 3D shape. Paths are typically 2-dimensional, but because PathPoint positions have a Z coordinate, they are not required to be. Even a flat Path (where all points lie on the same plane) can be translated or rotated so that its points do not necessarily lie on the XY plane.", + "summary" : "A path made up of a sequence of straight line segments between points.", + "title" : "Path" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(points:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Creates a plane from a set of points. A set of coplanar points describing a polygon. Discussion The polygon can be convex or concave. The direction of the plane normal is based on the assumption that the points are wound in an anti-clockwise direction.", + "summary" : "Creates a plane from a set of points.", + "title" : "init(points:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(polygons:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/curve(_:detail:)" }, "type" : "topLevelPage" }, - "platforms" : [ + "rawIndexableTextContent" : "Creates a quadratic bezier spline. The control points for the curve. The number of line segments used to approximate curved sections. Discussion The method takes an array of PathPoint and a detail argument. Normally, the isCurved property is used to calculate surface normals (for lighting purposes), but with the curve(_:detail:) method it actually affects the shape of the Path. A sequence of regular (non-curved) PathPoints creates sharp corners in the Path as normal, but curved points are treated as off-curve Bezier control points. The method uses second-order (quadratic) Bezier curves, where each curve has two on-curve end points and a single off-curve control point. If two curved PathPoint are used in sequence then an on-curve point is interpolated between them. It is therefore possible to create curves entirely out of curved (off-curve) control points. This approach to curve generation is based on the popular TrueType (TTF) font system, and provides a good balance between simplicity and flexibility. For more complex curves, on macOS and iOS you can create Euclid Path from a CGPath by using the CGPath.paths() extension method. CGPath supports cubic bezier curves as well as quadratic, and has convenience constructors for rounded rectangles and other shapes.", + "summary" : "Creates a quadratic bezier spline.", + "title" : "curve(_:detail:)" + }, + { + "headings" : [ ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "init(polygons:)" + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/tangent" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Align extruded cross-sections to the tangent of the path curve. ", + "summary" : "Align extruded cross-sections to the tangent of the path curve.", + "title" : "Path.Alignment.tangent" }, { "headings" : [ @@ -4328,7 +4426,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/!=(_:_:)" }, "type" : "topLevelPage" }, @@ -4344,13 +4442,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/texcoord" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/color" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The texture coordinate of the path point (optional). If omitted, will be inferred automatically. ", - "summary" : "The texture coordinate of the path point (optional). If omitted, will be inferred automatically.", - "title" : "texcoord" + "rawIndexableTextContent" : "The color of the path point (optional). ", + "summary" : "The color of the path point (optional).", + "title" : "color" }, { "headings" : [ @@ -4360,13 +4458,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:texcoord:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/length" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a corner path point at the specified position. The location of the path point. An optional texture coordinate for this path point. An optional vertex color for this path point.", - "summary" : "Creates a corner path point at the specified position.", - "title" : "point(_:texcoord:color:)" + "rawIndexableTextContent" : "The total length of the path. ", + "summary" : "The total length of the path.", + "title" : "length" }, { "headings" : [ @@ -4376,13 +4474,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Creates a new line from the specified line segment. A segment somewhere on the line.", + "summary" : "Creates a new line from the specified line segment.", + "title" : "init(_:)" }, { "headings" : [ @@ -4392,13 +4490,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/normalized()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/tessellate(maxSides:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the normalized quaternion. Return Value The normalized quaternion (with a length of 1) or zero if the length is 0.", - "summary" : "Returns the normalized quaternion.", - "title" : "normalized()" + "rawIndexableTextContent" : "Splits a polygon into two or more convex polygons using the “ear clipping” method. The maximum number of sides each polygon may have. Return Value An array of convex polygons.", + "summary" : "Splits a polygon into two or more convex polygons using the “ear clipping” method.", + "title" : "tessellate(maxSides:)" }, { "headings" : [ @@ -4408,29 +4506,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-vnel" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/direction" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "The direction of the line segment as a normalized vector. ", + "summary" : "The direction of the line segment as a normalized vector.", + "title" : "direction" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detessellate()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "Merges any coplanar polygons that share one or more edges. Return Value A new mesh containing the merged (possibly non-convex) polygons.", + "summary" : "Merges any coplanar polygons that share one or more edges.", + "title" : "detessellate()" }, { "headings" : [ @@ -4440,13 +4538,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/latheProfile" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(degrees:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Cropped and flattened version of path suitable for lathing around the Y axis. ", - "summary" : "Cropped and flattened version of path suitable for lathing around the Y axis.", - "title" : "latheProfile" + "rawIndexableTextContent" : "Creates an Angle from a degrees value. The angle in degrees.", + "summary" : "Creates an Angle from a degrees value.", + "title" : "init(degrees:)" }, { "headings" : [ @@ -4456,29 +4554,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-7a30s" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(pitch:yaw:roll:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a uniform scale transform. A uniform scale factor to apply.", - "summary" : "Creates a uniform scale transform.", - "title" : "scale(_:)" + "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in pitch\/yaw\/roll order. The angle of rotation around the X axis. This is applied first. The angle of rotation around the Y axis. This is applied second. The angle of rotation around the Z axis. This is applied last.", + "summary" : "Creates a rotation from Euler angles applied in pitch\/yaw\/roll order.", + "title" : "init(pitch:yaw:roll:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-3eglz" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Returns the distance between the vector (representing a position in space) from the specified line. The line to compare with. Return Value The absolute perpendicular distance between the point and line.", + "summary" : "Returns the distance between the vector (representing a position in space) from the specified line.", + "title" : "distance(from:)" }, { "headings" : [ @@ -4488,13 +4586,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-7u9hf" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Multiplies the rotation angle by the specified value. ", - "summary" : "Multiplies the rotation angle by the specified value.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Returns a vector with its components divided by the specified value. ", + "summary" : "Returns a vector with its components divided by the specified value.", + "title" : "\/(_:_:)" }, { "headings" : [ @@ -4504,7 +4602,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/!=(_:_:)" }, "type" : "topLevelPage" }, @@ -4512,6 +4610,22 @@ "summary" : "Inherited from Equatable.!=(_:_:).", "title" : "!=(_:_:)" }, + { + "headings" : [ + "Overview" + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "A point along a path. Overview A path point can represent a sharp corner or a curve, and has a position, and optionally a texcoord and\/or color, but no normal. The isCurved property indicates if the point is sharp or smooth, allowing the normal to be computed automatically.", + "summary" : "A point along a path.", + "title" : "PathPoint" + }, { "headings" : [ @@ -4520,13 +4634,93 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/magenta" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/normal" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "magenta" + "rawIndexableTextContent" : "A surface normal vector, perpendicular to the plane. ", + "summary" : "A surface normal vector, perpendicular to the plane.", + "title" : "normal" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/=(_:_:)" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Divides the rotation angle by the specified value. ", + "summary" : "Divides the rotation angle by the specified value.", + "title" : "\/=(_:_:)" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translate(by:)" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Creates a transform from a SceneKit transform matrix. The SCNMatrix4 from which to determine the transform.", + "summary" : "Creates a transform from a SceneKit transform matrix.", + "title" : "init(_:)" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "The face generation policy for Euclid to use when creating a mesh. ", + "summary" : "The face generation policy for Euclid to use when creating a mesh.", + "title" : "Mesh.Faces" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:)" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", + "summary" : "Inherited from Comparable...<(_:).", + "title" : "..<(_:)" }, { "headings" : [ @@ -4536,30 +4730,77 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/CancellationHandler" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/merge(_:ensureConvex:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Callback used to cancel a long-running operation. Return Value true if operation should be cancelled, or false otherwise.", - "summary" : "Callback used to cancel a long-running operation.", - "title" : "Mesh.CancellationHandler" + "rawIndexableTextContent" : "Merges this polygon with another, removing redundant vertices where possible. The polygon to merge with. A Boolean indicating is the resultant polygon must be convex. Return Value The combined polygon, or nil if the polygons can’t be merged.", + "summary" : "Merges this polygon with another, removing redundant vertices where possible.", + "title" : "merge(_:ensureConvex:)" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Protocol for transformable types. ", + "summary" : "Protocol for transformable types.", + "title" : "Transformable" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/undirectedEdges" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "An unordered set of polygon edges. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons. ", + "summary" : "An unordered set of polygon edges. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", + "title" : "undirectedEdges" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ - "Return Value", "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/circle(radius:segments:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new mesh representing the volume shared by both the mesh parameter and the receiver. If these do not intersect, an empty mesh will be returned. Return Value A new mesh representing the intersection of the meshes. Discussion Parameters mesh: The mesh to be intersected with this one. isCancelled: Callback used to cancel the operation.", - "summary" : "Returns a new mesh representing the volume shared by both the mesh parameter and the receiver. If these do not intersect, an empty mesh will be returned.", - "title" : "intersection(_:isCancelled:)" + "rawIndexableTextContent" : "Creates a closed circular path. The distance from the center of the circle to each point used to approximate its shape. The number of line segments used to approximate the circle. An optional Color to apply to the path’s points. Discussion Because the circle is approximated using line segments, its radius is not uniform. The radius specified is the outer radius, i.e. the radius at the corners of the polygon.", + "summary" : "Creates a closed circular path.", + "title" : "circle(radius:segments:color:)" }, { "headings" : [ @@ -4569,13 +4810,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-5bh7b" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/axis" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a bounds from two SceneKit vectors. A tuple of two SCNVector3 that represent opposite corners of the bounding box volume.", - "summary" : "Creates a bounds from two SceneKit vectors.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Axis of rotation ", + "summary" : "Axis of rotation", + "title" : "axis" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/z" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "The Z component of the vector. ", + "summary" : "The Z component of the vector.", + "title" : "z" }, { "headings" : [ @@ -4585,13 +4842,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceVertices" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An array of vertices suitable for constructing a polygon from the path. Discussion Vertices include normals and uv coordinates normalized to the bounding rectangle of the path. Returns nil if path is not closed, or has subpaths.", - "summary" : "An array of vertices suitable for constructing a polygon from the path.", - "title" : "faceVertices" + "rawIndexableTextContent" : "Creates a bounds from two points. The first point. The second point. Discussion Unlike the init(min:max:) constructor, the order of the points doesn’t matter.", + "summary" : "Creates a bounds from two points.", + "title" : "init(_:_:)" }, { "headings" : [ @@ -4601,45 +4858,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rectangle(width:height:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a path point from a vertex. The vertex to create the point from.", - "summary" : "Creates a path point from a vertex.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Creates a closed rectangular path. The width of the rectangle. The height of the rectangle. An optional Color to apply to the path’s points.", + "summary" : "Creates a closed rectangular path.", + "title" : "rectangle(width:height:color:)" + }, + { + "headings" : [ + + ], + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/z" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "The quaternion Z component. ", + "summary" : "The quaternion Z component.", + "title" : "z" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(min:max:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle in radians. ", - "summary" : "The angle in radians.", - "title" : "radians" + "rawIndexableTextContent" : "Creates a bounds with min and max coordinates. The minimum coordinate value. The maximum coordinate value. Discussion If the value for max is less than the value for min, the bounds is considered to be empty.", + "summary" : "Creates a bounds with min and max coordinates.", + "title" : "init(min:max:)" }, { "headings" : [ @@ -4649,13 +4922,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/z" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The quaternion Z component. ", - "summary" : "The quaternion Z component.", - "title" : "z" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ @@ -4665,13 +4938,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isNormalized" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the vector has a length of 1. ", - "summary" : "A Boolean value that indicates whether the vector has a length of 1.", - "title" : "isNormalized" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ @@ -4681,45 +4954,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(roll:yaw:pitch:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order. The angle of rotation around the Z axis. This is applied first. The angle of rotation around the Y axis. This is applied second. The angle of rotation around the X axis. This is applied last.", + "summary" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", + "title" : "init(roll:yaw:pitch:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-7j4ql" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A combined rotation, position, and scale that can be applied to a 3D object. Overview Working with intermediate transform objects instead of directly updating the vertex positions of a mesh is more efficient and avoids a buildup of rounding errors.", - "summary" : "A combined rotation, position, and scale that can be applied to a 3D object.", - "title" : "Transform" + "rawIndexableTextContent" : "Creates a Rotation from a simd quaternion. A simd quaternion.", + "summary" : "Creates a Rotation from a simd quaternion.", + "title" : "init(_:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/subpaths" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An array of the subpaths that make up the path. Discussion For paths without nested subpaths, this will return an array containing only self.", - "summary" : "An array of the subpaths that make up the path.", - "title" : "subpaths" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -4729,45 +5002,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-16elu" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-2drke" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A point along a path. Overview A path point can represent a sharp corner or a curve, and has a position, and optionally a texcoord and\/or color, but no normal. The isCurved property indicates if the point is sharp or smooth, allowing the normal to be computed automatically.", - "summary" : "A point along a path.", - "title" : "PathPoint" + "rawIndexableTextContent" : "Returns a quaternion with its components multiplied by the specified value. ", + "summary" : "Returns a quaternion with its components multiplied by the specified value.", + "title" : "*(_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/x" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-49ykf" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The X component of the vector. ", - "summary" : "The X component of the vector.", - "title" : "x" + "rawIndexableTextContent" : "Returns a new bounds inset by the specified distance. The distance to inset the bounds by. Use negative values to expand the bounds. Return Value The inset bounds.", + "summary" : "Returns a new bounds inset by the specified distance.", + "title" : "inset(by:)" }, { "headings" : [ @@ -4777,13 +5050,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-ntgj" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Returns a quaternion with its components divided by the specified value. ", + "summary" : "Returns a quaternion with its components divided by the specified value.", + "title" : "\/(_:_:)" }, { "headings" : [ @@ -4793,45 +5066,48 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Comparable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Equatable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Comparable Implementations" + "title" : "Equatable Implementations" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothNormals(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "smoothNormals(_:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An orientation or rotation in 3D space. Overview A quaternion can be created from a from a Rotation matrix, or directly from an axis vector and angle, or a from a set of 3 Euler angles (pitch, yaw and roll). In addition to being more compact than a 3x3 rotation matrix, quaternions also avoid a problem known as gymbal lock.", - "summary" : "An orientation or rotation in 3D space.", - "title" : "Quaternion" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ @@ -4841,13 +5117,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-5fe82" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-8t5q8" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotation multiplied by the specified value. ", - "summary" : "Returns a rotation multiplied by the specified value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Creates an axis-aligned cuboidal mesh. The center point of the mesh. The size of the cuboid mesh. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cube. The optional material for the mesh.", + "summary" : "Creates an axis-aligned cuboidal mesh.", + "title" : "cube(center:size:faces:wrapMode:material:)" }, { "headings" : [ @@ -4857,29 +5133,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Alignment" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/angle" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Alignment mode to use when extruding along a path. ", - "summary" : "Alignment mode to use when extruding along a path.", - "title" : "Mesh.Alignment" + "rawIndexableTextContent" : "The angle of rotation. ", + "summary" : "The angle of rotation.", + "title" : "angle" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/asin(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc sine of the value you provide. The sine value to use to calculate the angle.", - "summary" : "Creates an angle representing the trigonometric arc sine of the value you provide.", - "title" : "asin(_:)" + "rawIndexableTextContent" : "An array of vertices suitable for constructing a set of edge polygons for the path. Discussion Returns an empty array if the path has subpaths.", + "summary" : "An array of vertices suitable for constructing a set of edge polygons for the path.", + "title" : "edgeVertices" }, { "headings" : [ @@ -4889,61 +5165,77 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-9m686" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "rawIndexableTextContent" : "Creates a mesh from a RealityKit ModelEntity with optional material mapping. The ModelEntity to convert into a mesh. An optional closure to map the RealityKit materials to Euclid materials. If omitted, the RealityKit Material will be directly used as the mesh material.", + "summary" : "Creates a mesh from a RealityKit ModelEntity with optional material mapping.", + "title" : "init(_:materialLookup:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/max" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "The maximum coordinate of the bounds. ", + "summary" : "The maximum coordinate of the bounds.", + "title" : "max" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Creates a Vector from a simd vector 2. A simd vector.", + "summary" : "Creates a Vector from a simd vector 2.", + "title" : "init(_:)" }, { "headings" : [ @@ -4953,61 +5245,62 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/icosahedron(radius:faces:wrapMode:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-9l46a" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a sphere by subdividing an icosahedron. The radius of the icosahedron. The direction the polygon faces. The mode in which texture coordinates are wrapped around the mesh. The optional material for the mesh.", - "summary" : "Creates a sphere by subdividing an icosahedron.", - "title" : "icosahedron(radius:faces:wrapMode:material:)" + "rawIndexableTextContent" : "Multiplies the components of the vector by the specified value. ", + "summary" : "Multiplies the components of the vector by the specified value.", + "title" : "*=(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withMaterial(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Returns a copy of the mesh with the new material applied to all polygons. ", + "summary" : "Returns a copy of the mesh with the new material applied to all polygons.", + "title" : "withMaterial(_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.type.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Creates a new mesh that is the combination of the polygons from all the specified meshes. The meshes to merge. Return Value A new mesh that includes all polygons from all meshes. Discussion No attempt is made to deduplicate or join meshes. Polygons are neither split nor removed.", + "summary" : "Creates a new mesh that is the combination of the polygons from all the specified meshes.", + "title" : "merge(_:)" }, { "headings" : [ @@ -5017,29 +5310,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/texcoord" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "The texture coordinate of the path point (optional). If omitted, will be inferred automatically. ", + "summary" : "The texture coordinate of the path point (optional). If omitted, will be inferred automatically.", + "title" : "texcoord" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xy" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/split(along:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A plane located at the origin, aligned with the X and Y axes. ", - "summary" : "A plane located at the origin, aligned with the X and Y axes.", - "title" : "xy" + "rawIndexableTextContent" : "Split the mesh along a plane. The Plane to split the mesh along. Return Value A pair of meshes representing the parts in front of and behind the plane respectively. Discussion If the plane and mesh do not intersect, one of the returned meshes will be nil.", + "summary" : "Split the mesh along a plane.", + "title" : "split(along:)" }, { "headings" : [ @@ -5049,13 +5343,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An infinite 2D plane in 3D space. ", - "summary" : "An infinite 2D plane in 3D space.", - "title" : "Plane" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -5065,29 +5359,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/yellow" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/gray" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : " ", "summary" : "", - "title" : "yellow" + "title" : "gray" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Comparable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Comparable Implementations" + "rawIndexableTextContent" : "Creates a mesh from a SceneKit geometry, with the material you provide. The SCNGeometry to convert. A Mesh.Material to apply to the geometry, replacing any existing materials. Pass nil to use the default Euclid material.", + "summary" : "Creates a mesh from a SceneKit geometry, with the material you provide.", + "title" : "init(_:material:)" }, { "headings" : [ @@ -5097,13 +5391,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-1kdd7" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-55t4p" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Creates a scale transform. A vector scale factor apply.", + "summary" : "Creates a scale transform.", + "title" : "scale(_:)" }, { "headings" : [ @@ -5113,13 +5407,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withMaterial(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a copy of the polygon with the specified material. The replacement material, or nil to remove the material.", - "summary" : "Creates a copy of the polygon with the specified material.", - "title" : "withMaterial(_:)" + "rawIndexableTextContent" : "Creates a quaternion representing a rotation around the Y axis. The angle to rotate by.", + "summary" : "Creates a quaternion representing a rotation around the Y axis.", + "title" : "yaw(_:)" }, { "headings" : [ @@ -5129,13 +5423,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-7j4ql" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a Rotation from a simd quaternion. A simd quaternion.", - "summary" : "Creates a Rotation from a simd quaternion.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -5145,29 +5439,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-98mbu" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/points" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "The array of points that makes up this path. ", + "summary" : "The array of points that makes up this path.", + "title" : "points" }, { "headings" : [ @@ -5177,29 +5471,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded\/bounds" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:texcoord:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The bounds of the object. ", - "summary" : "The bounds of the object.", - "title" : "bounds" + "rawIndexableTextContent" : "Creates a corner path point at the specified position. The location of the path point. An optional texture coordinate for this path point. An optional vertex color for this path point.", + "summary" : "Creates a corner path point at the specified position.", + "title" : "point(_:texcoord:color:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/min" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/sin(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The minimum coordinate of the bounds. ", - "summary" : "The minimum coordinate of the bounds.", - "title" : "min" + "rawIndexableTextContent" : "Computes the trigonometric sine of an angle. The angle to calculate the sine for. Return Value The trigonometric sine of the angle.", + "summary" : "Computes the trigonometric sine of an angle.", + "title" : "sin(_:)" }, { "headings" : [ @@ -5209,13 +5503,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isZero" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/orange" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "All vector components are zero (or close to zero) in length. ", - "summary" : "All vector components are zero (or close to zero) in length.", - "title" : "isZero" + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "orange" }, { "headings" : [ @@ -5225,29 +5519,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation around the Y-axis. ", - "summary" : "The angle of rotation around the Y-axis.", - "title" : "yaw" + "rawIndexableTextContent" : "The angle of rotation around the X-axis. ", + "summary" : "The angle of rotation around the X-axis.", + "title" : "pitch" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:_:_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vertex. The position of the vertex in 3D space. The surface normal for the vertex (defaults to zero). The optional texture coordinates for the vertex (defaults to zero). The optional vertex color (defaults to white).", - "summary" : "Creates a new vertex.", - "title" : "init(_:_:_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -5257,29 +5551,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/square(size:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-3en6y" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a closed square path. The width and height of the square. An optional Color to apply to the path’s points.", - "summary" : "Creates a closed square path.", - "title" : "square(size:color:)" + "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/extrusionContours(along:twist:align:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "Creates an array of contours by extruding one path along another path. The path along which to extrude the shape. Angular twist to apply along the extrusion. The alignment mode to use for the extruded shape.", + "summary" : "Creates an array of contours by extruding one path along another path.", + "title" : "extrusionContours(along:twist:align:)" }, { "headings" : [ @@ -5289,29 +5583,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(axis:angle:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quaternion from an axis and angle. A vector defining the axis of rotation. The angle of rotation around the axis.", - "summary" : "Creates a quaternion from an axis and angle.", - "title" : "init(axis:angle:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexNormals" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon includes vertex normals that differ from the face normal. ", - "summary" : "A Boolean value that indicates whether the polygon includes vertex normals that differ from the face normal.", - "title" : "hasVertexNormals" + "rawIndexableTextContent" : "Merges the polygons from two meshes. The mesh to merge with this one. Return Value A new mesh that includes all polygons from both meshes. Discussion No attempt is made to deduplicate or join meshes. Polygons are neither split nor removed.", + "summary" : "Merges the polygons from two meshes.", + "title" : "merge(_:)" }, { "headings" : [ @@ -5321,13 +5616,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -5337,29 +5632,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5n3j" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/hash(into:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a Vector from a simd vector 3. A simd vector.", - "summary" : "Creates a Vector from a simd vector 3.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Inherited from Hashable.hash(into:). ", + "summary" : "Inherited from Hashable.hash(into:).", + "title" : "hash(into:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-4v7tg" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "Computes the line of intersection between two planes. The plane to compare with. Return Value The line of intersection between the planes, or nil if the planes are parallel.", + "summary" : "Computes the line of intersection between two planes.", + "title" : "intersection(with:)" }, { "headings" : [ @@ -5369,13 +5664,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isIdentity" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform has no effect. ", - "summary" : "Transform has no effect.", - "title" : "isIdentity" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -5385,13 +5680,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quaternion representing a rotation around the Z axis. The angle to rotate by.", - "summary" : "Creates a quaternion representing a rotation around the Z axis.", - "title" : "roll(_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -5401,13 +5696,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Returns the inverse angle. ", + "summary" : "Returns the inverse angle.", + "title" : "-(_:)" }, { "headings" : [ @@ -5417,13 +5712,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/vertices" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The array of vertices that make up the polygon. ", - "summary" : "The array of vertices that make up the polygon.", - "title" : "vertices" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ @@ -5433,29 +5728,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-4jhkw" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Creates a path from an array of path points. An array of PathPoint making up the path.", + "summary" : "Creates a path from an array of path points.", + "title" : "init(_:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-3m9le" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Returns a new mesh representing the combined volume of the mesh parameter and the receiver, with inner faces removed. Return Value A new mesh representing the union of the input meshes. Discussion Parameters mesh: The mesh to form a union with. isCancelled: Callback used to cancel the operation.", + "summary" : "Returns a new mesh representing the combined volume of the mesh parameter and the receiver, with inner faces removed.", + "title" : "union(_:isCancelled:)" }, { "headings" : [ @@ -5465,13 +5761,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/default" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The default wrap behavior. Context-dependent. ", - "summary" : "The default wrap behavior. Context-dependent.", - "title" : "Mesh.WrapMode.default" + "rawIndexableTextContent" : "Encodes this vertex into the given encoder. The encoder to write data to.", + "summary" : "Encodes this vertex into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -5481,13 +5777,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:along:twist:align:faces:material:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", - "summary" : "Inherited from Comparable....(_:_:).", - "title" : "...(_:_:)" + "rawIndexableTextContent" : "Creates a mesh by extruding one path along another path. The shape to extrude into a mesh. The path along which to extrude the shape. Angular twist to apply along the extrusion. The alignment mode to use for the extruded shape. The direction of the generated polygon faces. The optional material for the mesh.", + "summary" : "Creates a mesh by extruding one path along another path.", + "title" : "extrude(_:along:twist:align:faces:material:isCancelled:)" }, { "headings" : [ @@ -5497,13 +5793,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-8v4ag" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-5ic2j" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Multiplies the quaternion rotation on the left by the one on the right. ", + "summary" : "Multiplies the quaternion rotation on the left by the one on the right.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -5513,13 +5809,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stlString(name:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Return ASCII STL string data for the mesh. ", + "summary" : "Return ASCII STL string data for the mesh.", + "title" : "stlString(name:)" }, { "headings" : [ @@ -5529,13 +5825,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitY" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The bounding box containing the polygon. ", - "summary" : "The bounding box containing the polygon.", - "title" : "bounds" + "rawIndexableTextContent" : "A vector of length 1 along the Y axis. ", + "summary" : "A vector of length 1 along the Y axis.", + "title" : "unitY" }, { "headings" : [ @@ -5545,13 +5841,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this line segment into the given encoder. The encoder to write data to.", - "summary" : "Encodes this line segment into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+=(_:_:). ", + "summary" : "Inherited from AdditiveArithmetic.+=(_:_:).", + "title" : "+=(_:_:)" }, { "headings" : [ @@ -5561,29 +5857,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Creates a color from a luminance value and optional alpha component. The luminance value, from 0 to 1. The alpha component. Defaults to 1 (fully opaque)", + "summary" : "Creates a color from a luminance value and optional alpha component.", + "title" : "init(_:_:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the bounds. A quaternion to apply to the bounds. Discussion Because a bounds must be axially-aligned, rotating by an angle that is not a multiple of 90 degrees will result in the bounds being increased in size. Rotating it back again will not reduce the size, so this is a potentially irreversible operation. In general, after rotating a shape it is better to recalculate the bounds rather than trying to rotate the previous bounds.", - "summary" : "Returns a rotated copy of the bounds.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ @@ -5593,13 +5889,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/halfPi" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/normal" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Angle representing a quarter rotation. ", - "summary" : "Angle representing a quarter rotation.", - "title" : "halfPi" + "rawIndexableTextContent" : "The surface normal of the vertex, used to calculate lighting. Set this to zero if you want the normal to be calculated automatically from the polygon face normal. ", + "summary" : "The surface normal of the vertex, used to calculate lighting. Set this to zero if you want the normal to be calculated automatically from the polygon face normal.", + "title" : "normal" }, { "headings" : [ @@ -5609,13 +5905,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ @@ -5625,13 +5921,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-1umln" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-68leo" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Creates a rotation from a SceneKit quaternion. The SCNQuaternion to convert.", + "summary" : "Creates a rotation from a SceneKit quaternion.", + "title" : "init(_:)" }, { "headings" : [ @@ -5641,13 +5937,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a vector from the values you provide. The X component of the vector. The Y component of the vector. The Z component of the vector.", - "summary" : "Creates a vector from the values you provide.", - "title" : "init(_:_:_:)" + "rawIndexableTextContent" : "Returns the sum of two quaternion rotations. ", + "summary" : "Returns the sum of two quaternion rotations.", + "title" : "+(_:_:)" }, { "headings" : [ @@ -5657,13 +5953,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this angle into the given encoder. The encoder to write data to.", - "summary" : "Encodes this angle into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "The angle in radians. ", + "summary" : "The angle in radians.", + "title" : "radians" }, { "headings" : [ @@ -5673,13 +5969,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "Efficiently extrudes an array of paths along their respective face normals, avoiding duplicate work. The array of paths to extrude in order to create the mesh. The depth of the extrusion. Angular twist to apply along the extrusion. Number of sections to create along extrusion. The direction of the generated polygon faces. The optional material for the mesh.", + "summary" : "Efficiently extrudes an array of paths along their respective face normals, avoiding duplicate work.", + "title" : "extrude(_:depth:twist:sections:faces:material:isCancelled:)" }, { "headings" : [ @@ -5689,13 +5985,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/inverted()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-8l78z" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new vertex with the normal inverted. ", - "summary" : "Returns a new vertex with the normal inverted.", - "title" : "inverted()" + "rawIndexableTextContent" : "Returns the product of an angle and numeric multiplier. ", + "summary" : "Returns the product of an angle and numeric multiplier.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -5705,13 +6001,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "A finite line segment in 3D space. ", + "summary" : "A finite line segment in 3D space.", + "title" : "LineSegment" }, { "headings" : [ @@ -5721,13 +6017,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "Returns the reverse quaternion rotation. ", + "summary" : "Returns the reverse quaternion rotation.", + "title" : "-(_:)" }, { "headings" : [ @@ -5737,29 +6033,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(submeshes:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a linear path from a line segment. The LineSegment defining the path. An optional Color to apply to the path’s points.", - "summary" : "Creates a linear path from a line segment.", - "title" : "line(_:color:)" + "rawIndexableTextContent" : "Creates a composite mesh from an array of submeshes. An array of meshes.", + "summary" : "Creates a composite mesh from an array of submeshes.", + "title" : "init(submeshes:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "The angle of rotation around the X-axis. ", + "summary" : "The angle of rotation around the X-axis.", + "title" : "pitch" }, { "headings" : [ @@ -5769,13 +6065,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/zero" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The zero quaternion. ", - "summary" : "The zero quaternion.", - "title" : "zero" + "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.-=(_:_:). ", + "summary" : "Inherited from AdditiveArithmetic.-=(_:_:).", + "title" : "-=(_:_:)" }, { "headings" : [ @@ -5785,13 +6081,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitZ" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lengthSquared" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A vector of length 1 along the Z axis. ", - "summary" : "A vector of length 1 along the Z axis.", - "title" : "unitZ" + "rawIndexableTextContent" : "The square of the length of the vector. This is less expensive to compute than the length itself. ", + "summary" : "The square of the length of the vector. This is less expensive to compute than the length itself.", + "title" : "lengthSquared" }, { "headings" : [ @@ -5801,13 +6097,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formUnion(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.-=(_:_:). ", - "summary" : "Inherited from AdditiveArithmetic.-=(_:_:).", - "title" : "-=(_:_:)" + "rawIndexableTextContent" : "Expands this bounds (if necessary) to contain the specified bounds. The bounds to be included.", + "summary" : "Expands this bounds (if necessary) to contain the specified bounds.", + "title" : "formUnion(_:)" }, { "headings" : [ @@ -5817,29 +6113,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothingNormals(forAnglesGreaterThan:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Smooth vertex normals for corners with angles greater (more obtuse) than the specified threshold. The minimum corner angle that should appear smooth. Values should be in the range zero (no smoothing) to pi (smooth all edges).", + "summary" : "Smooth vertex normals for corners with angles greater (more obtuse) than the specified threshold.", + "title" : "smoothingNormals(forAnglesGreaterThan:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vector by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new vector by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "A closure that maps a Euclid material to an STL facet color. A Euclid material to convert, or nil for the default material. Return Value A Euclid Color value.", + "summary" : "A closure that maps a Euclid material to an STL facet color.", + "title" : "Mesh.STLColorProvider" }, { "headings" : [ @@ -5849,13 +6145,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/materials" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "All materials used by the mesh. The array may contain nil if some or all of the mesh uses the default material. ", + "summary" : "All materials used by the mesh. The array may contain nil if some or all of the mesh uses the default material.", + "title" : "materials" }, { "headings" : [ @@ -5865,13 +6161,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Decodable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Equatable Implementations" + "title" : "Decodable Implementations" }, { "headings" : [ @@ -5881,13 +6177,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/empty" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An empty mesh. ", - "summary" : "An empty mesh.", - "title" : "empty" + "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", + "summary" : "Inherited from Comparable...<(_:).", + "title" : "..<(_:)" }, { "headings" : [ @@ -5897,13 +6193,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the difference between two angles. ", - "summary" : "Returns the difference between two angles.", - "title" : "-(_:_:)" + "rawIndexableTextContent" : "Encodes this line into the given encoder. The encoder to write data to.", + "summary" : "Encodes this line into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -5913,13 +6209,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-r54o" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Creates a bounds from a collection of bounds. A collection of existing bounds that the bounds contains.", + "summary" : "Creates a bounds from a collection of bounds.", + "title" : "init(_:)" }, { "headings" : [ @@ -5929,45 +6225,46 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/r" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The red component of the color. ", - "summary" : "The red component of the color.", - "title" : "r" + "rawIndexableTextContent" : "Creates a quaternion representing a rotation around the X axis. The angle to rotate by.", + "summary" : "Creates a quaternion representing a rotation around the X axis.", + "title" : "pitch(_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-7xdsm" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Returns a new mesh that retains the shape of the receiver, but with the intersecting area colored using material from the parameter. Return Value A new mesh representing the result of stencilling. Discussion Parameters mesh: The mesh to be stencilled onto this one. isCancelled: Callback used to cancel the operation.", + "summary" : "Returns a new mesh that retains the shape of the receiver, but with the intersecting area colored using material from the parameter.", + "title" : "stencil(_:isCancelled:)" }, { "headings" : [ @@ -5977,13 +6274,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-68leo" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-93ypi" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from a SceneKit quaternion. The SCNQuaternion to convert.", - "summary" : "Creates a rotation from a SceneKit quaternion.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -5993,13 +6290,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/triangulate()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/containsPoint(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Splits all polygons in the mesh into triangles. Return Value A new mesh containing the triangles.", - "summary" : "Splits all polygons in the mesh into triangles.", - "title" : "triangulate()" + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the specified point lies on the line segment. The point to test. Return Value true if the point lies on the line segment and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether the specified point lies on the line segment.", + "title" : "containsPoint(_:)" }, { "headings" : [ @@ -6009,93 +6306,93 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a spherical mesh. The radius of the sphere. The number of vertical slices that make up the sphere. The number of horizontal stacks that make up the sphere. Optionally add extra detail around poles to prevent texture warping The direction the polygon faces. The way that texture coordinates are calculated for the sphere. The optional material for the mesh.", - "summary" : "Creates a spherical mesh.", - "title" : "sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(shape:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(yaw:pitch:roll:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a single polygon from a path. Discussion Parameters shape: The Path to convert to a polygon. material: An optional Polygon.Material to apply to the polygon. Path may be convex or concave, but must be closed, planar and non-degenerate, and must not include subpaths. For a non-planar path, or one with subpaths, use facePolygons(material:).", - "summary" : "Creates a single polygon from a path.", - "title" : "init(shape:material:)" + "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in yaw\/pitch\/roll order. The angle of rotation around the Y axis. This is applied first. The angle of rotation around the X axis. This is applied second. The angle of rotation around the Z axis. This is applied last.", + "summary" : "Creates a rotation from Euler angles applied in yaw\/pitch\/roll order.", + "title" : "init(yaw:pitch:roll:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-2u7vo" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/vertices" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the intersection point between the specified line segment and this one. The line segment to compare with. Return Value The point of intersection, or nil if the line segments don’t intersect.", - "summary" : "Returns the intersection point between the specified line segment and this one.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "The array of vertices that make up the polygon. ", + "summary" : "The array of vertices that make up the polygon.", + "title" : "vertices" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-nkyk" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a vector of uniform size. The value to use for all components.", - "summary" : "Creates a vector of uniform size.", - "title" : "init(size:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-8x4al" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of one or more meshes. An array of meshes to compute the hull around.", - "summary" : "Computes the convex hull of one or more meshes.", - "title" : "convexHull(of:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Bounded-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Bounded Implementations" + "rawIndexableTextContent" : "Creates a new plane by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new plane by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -6105,30 +6402,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An array of vertices suitable for constructing a set of edge polygons for the path. Discussion Returns an empty array if the path has subpaths.", - "summary" : "An array of vertices suitable for constructing a set of edge polygons for the path.", - "title" : "edgeVertices" + "rawIndexableTextContent" : "Creates a conical mesh. The radius of the cone. The height of the cone. The number of vertical slices that make up the cone. The number of horizontal stacks that make up the cone. Optionally add extra detail around top pole to prevent texture warping. Whether detail should be added at bottom pole. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cone. The optional material for the mesh. Discussion The default nil value for poleDetail will derive value automatically. Use zero instead if you wish to add no extra detail at the poles.", + "summary" : "Creates a conical mesh.", + "title" : "cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/difference(_:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-eado" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently gets the difference between multiple meshes. Return Value A new mesh representing the difference between the meshes. Discussion Parameters meshes: An ordered collection of meshes. All but the first will be subtracted from the first. isCancelled: Callback used to cancel the operation.", - "summary" : "Efficiently gets the difference between multiple meshes.", - "title" : "difference(_:isCancelled:)" + "rawIndexableTextContent" : "Creates an axis-aligned cubical mesh. The center point of the mesh. The size of the mesh. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cube. The optional material for the mesh.", + "summary" : "Creates an axis-aligned cubical mesh.", + "title" : "cube(center:size:faces:wrapMode:material:)" }, { "headings" : [ @@ -6138,13 +6434,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-3shbk" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Alignment mode to use when extruding along a path. ", + "summary" : "Alignment mode to use when extruding along a path.", + "title" : "Path.Alignment" }, { "headings" : [ @@ -6154,29 +6450,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Creates a mesh by extruding a path along its face normal. The path to extrude in order to create the mesh. The depth of the extrusion. Angular twist to apply along the extrusion. Number of sections to create along extrusion. The direction of the generated polygon faces. The optional material for the mesh.", + "summary" : "Creates a mesh by extruding a path along its face normal.", + "title" : "extrude(_:depth:twist:sections:faces:material:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-6176" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-3fd8h" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of a set of points. Discussion Parameters points: An set of points to compute the hull around. material: An optional material to apply to the mesh.", - "summary" : "Computes the convex hull of a set of points.", - "title" : "convexHull(of:material:)" + "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", + "summary" : "Inherited from Comparable.>(_:_:).", + "title" : ">(_:_:)" }, { "headings" : [ @@ -6186,29 +6482,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/edges(intersecting:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes a set of edges where the polygon intersects a plane. A Plane to test against the mesh. Return Value A Set of LineSegment representing the polygon edges intersecting the plane.", - "summary" : "Computes a set of edges where the polygon intersects a plane.", - "title" : "edges(intersecting:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -6218,13 +6514,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/shrink" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Texture is shrink-wrapped. ", - "summary" : "Texture is shrink-wrapped.", - "title" : "Mesh.WrapMode.shrink" + "rawIndexableTextContent" : "Encodes this polygon into the given encoder. The encoder to write data to.", + "summary" : "Encodes this polygon into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -6234,13 +6530,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/AdditiveArithmetic-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Comparable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "AdditiveArithmetic Implementations" + "title" : "Comparable Implementations" }, { "headings" : [ @@ -6250,29 +6546,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-5a3iz" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc tangent of the value you provide. The tangent value to use to calculate the angle.", - "summary" : "Creates an angle representing the trigonometric arc tangent of the value you provide.", - "title" : "atan(_:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lerp(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Linearly interpolate between this vector and another. The vector to interpolate towards. The normalized extent of interpolation, from 0 to 1.", + "summary" : "Linearly interpolate between this vector and another.", + "title" : "lerp(_:_:)" }, { "headings" : [ @@ -6282,29 +6578,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/length" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this transform into the given encoder. The encoder to write data to.", - "summary" : "Encodes this transform into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "The magnitude of the vector. ", + "summary" : "The magnitude of the vector.", + "title" : "length" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/start" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A path made up of a sequence of straight line segments between points. Overview A Path can be either open (a polyline) or closed (a polygon), but should not be self-intersecting or otherwise degenerate. A path may be formed from multiple subpaths, which can be accessed via the subpaths property. A closed Path can be converted to one or more Polygons, but it can also be used for other purposes, such as defining a cross-section or profile of a 3D shape. Paths are typically 2-dimensional, but because PathPoint positions have a Z coordinate, they are not required to be. Even a flat Path (where all points lie on the same plane) can be translated or rotated so that its points do not necessarily lie on the XY plane.", - "summary" : "A path made up of a sequence of straight line segments between points.", - "title" : "Path" + "rawIndexableTextContent" : "The starting point of the line segment. ", + "summary" : "The starting point of the line segment.", + "title" : "start" }, { "headings" : [ @@ -6314,13 +6610,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/polygon(radius:sides:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a closed regular polygon. The distance from the center of the polygon to each point. The number of sides on the polygon. An optional Color to apply to the path’s points.", - "summary" : "Creates a closed regular polygon.", - "title" : "polygon(radius:sides:color:)" + "rawIndexableTextContent" : "Creates a new line by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new line by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -6330,45 +6626,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a cylindrical mesh. The radius of the cylinder. The height of the cylinder. The number of vertical slices that make up the cylinder. Optionally add extra detail around poles to prevent texture warping. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cylinder. The optional material for the mesh.", - "summary" : "Creates a cylindrical mesh.", - "title" : "cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)" + "rawIndexableTextContent" : "Material used by the mesh polygons. See Polygon.Material for details. ", + "summary" : "Material used by the mesh polygons. See Polygon.Material for details.", + "title" : "Mesh.Material" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/containsPoint(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasTexcoords" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates if the specified point is within the bounds. The point to compare. Return Value true if the point lies inside the bounds, and false otherwise.", - "summary" : "Returns a Boolean value that indicates if the specified point is within the bounds.", - "title" : "containsPoint(_:)" + "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon includes texture coordinates. ", + "summary" : "A Boolean value that indicates whether the polygon includes texture coordinates.", + "title" : "hasTexcoords" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Decodable Implementations" + "rawIndexableTextContent" : "An angle or 2D rotation. ", + "summary" : "An angle or 2D rotation.", + "title" : "Angle" }, { "headings" : [ @@ -6378,13 +6674,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formIntersection(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-filj" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Reduces the bounds to contain just the intersection of itself and the specified bounds. The bounds with which to intersect.", - "summary" : "Reduces the bounds to contain just the intersection of itself and the specified bounds.", - "title" : "formIntersection(_:)" + "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", + "summary" : "Inherited from Comparable.>(_:_:).", + "title" : ">(_:_:)" }, { "headings" : [ @@ -6394,13 +6690,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Encodable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Decodable Implementations" + "title" : "Encodable Implementations" }, { "headings" : [ @@ -6410,45 +6706,46 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/containsPoint(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-48gl1" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates if the specified point is inside the mesh. The point to compare. Return Value true if the point lies inside the mesh, and false otherwise.", - "summary" : "Returns a Boolean value that indicates if the specified point is inside the mesh.", - "title" : "containsPoint(_:)" + "rawIndexableTextContent" : "Returns a vector with its components multiplied by the specified value. ", + "summary" : "Returns a vector with its components multiplied by the specified value.", + "title" : "*(_:_:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/gray" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/facePolygons(material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "gray" + "rawIndexableTextContent" : "Returns one or more polygons needed to fill the path. An optional Polygon.Material to apply to the polygons. Return Value An array of polygons needed to fill the path, or an empty array if path is not closed. Discussion Polygon normals are calculated automatically based on the curvature of the path points. If the path points do not include textcoords, they will be calculated automatically based on the path point positions relative to the bounding rectangle of the path.", + "summary" : "Returns one or more polygons needed to fill the path.", + "title" : "facePolygons(material:)" }, { "headings" : [ @@ -6458,13 +6755,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-1h2f7" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -6474,29 +6771,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-85o14" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/color" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh by stroking a path with the line width, detail, and material you provide. The path to stroke. The line width of the stroke. The number of sides to use for the cross-sectional shape of the stroked mesh. The optional material for the mesh.", - "summary" : "Creates a mesh by stroking a path with the line width, detail, and material you provide.", - "title" : "stroke(_:width:detail:material:isCancelled:)" + "rawIndexableTextContent" : "The color for the vertex. This will be multiplied by the material color, so set it to white if you do not require per-vertex colors. ", + "summary" : "The color for the vertex. This will be multiplied by the material color, so set it to white if you do not require per-vertex colors.", + "title" : "color" }, { "headings" : [ - "Return Value" + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/containsPoint(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the specified point lies on the line segment. The point to test. Return Value true if the point lies on the line segment and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether the specified point lies on the line segment.", - "title" : "containsPoint(_:)" + "rawIndexableTextContent" : "Returns a new mesh reprenting only the volume exclusively occupied by one shape or the other, but not both. Return Value A new mesh representing the XOR of the meshes. Discussion Parameters mesh: The mesh to be XORed with this one. isCancelled: Callback used to cancel the operation.", + "summary" : "Returns a new mesh reprenting only the volume exclusively occupied by one shape or the other, but not both.", + "title" : "symmetricDifference(_:isCancelled:)" }, { "headings" : [ @@ -6506,12 +6804,12 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this vertex into the given encoder. The encoder to write data to.", - "summary" : "Encodes this vertex into the given encoder.", + "rawIndexableTextContent" : "Encodes this bounds into the given encoder. The encoder to write data to.", + "summary" : "Encodes this bounds into the given encoder.", "title" : "encode(to:)" }, { @@ -6522,13 +6820,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/origin" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-21ah6" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An arbitrary point on the line selected as the origin. ", - "summary" : "An arbitrary point on the line selected as the origin.", - "title" : "origin" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ @@ -6538,13 +6836,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/isCurved" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isFlipped" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean indicating whether the point is curved or sharp. ", - "summary" : "A Boolean indicating whether the point is curved or sharp.", - "title" : "isCurved" + "rawIndexableTextContent" : "Does the transform apply a mirror operation (negative scale)? ", + "summary" : "Does the transform apply a mirror operation (negative scale)?", + "title" : "isFlipped" }, { "headings" : [ @@ -6554,29 +6852,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(start:end:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a line segment with a start and end point. The start of the line segment. The end of the line segment.", - "summary" : "Creates a line segment with a start and end point.", - "title" : "init(start:end:)" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-5w6mn" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from a quaternion. A quaternion defining a rotation.", - "summary" : "Creates a rotation from a quaternion.", - "title" : "init(_:)" + "rawIndexableTextContent" : "A color in RGBA format. Overview Color can be used as a material or as a color.", + "summary" : "A color in RGBA format.", + "title" : "Color" }, { "headings" : [ @@ -6586,13 +6884,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isClosed" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Indicates whether the path is a closed path. ", - "summary" : "Indicates whether the path is a closed path.", - "title" : "isClosed" + "rawIndexableTextContent" : "Creates a mesh by filling a path to form one or more polygons. The shape to be filled. The direction the polygon faces. The optional material for the mesh.", + "summary" : "Creates a mesh by filling a path to form one or more polygons.", + "title" : "fill(_:faces:material:)" }, { "headings" : [ @@ -6602,13 +6900,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(degrees:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-2pycj" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an Angle from a degrees value. The angle in degrees.", - "summary" : "Creates an Angle from a degrees value.", - "title" : "init(degrees:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -6618,29 +6916,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isPlanar" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withoutTexcoords()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Indicates whether all the path’s points lie on a single plane. ", - "summary" : "Indicates whether all the path’s points lie on a single plane.", - "title" : "isPlanar" + "rawIndexableTextContent" : "Return a copy of the polygon without texture coordinates ", + "summary" : "Return a copy of the polygon without texture coordinates", + "title" : "withoutTexcoords()" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-9l46a" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersects(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Multiplies the components of the vector by the specified value. ", - "summary" : "Multiplies the components of the vector by the specified value.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the lines intersect. The line to compare with. Return Value true if the lines intersect and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether the lines intersect.", + "title" : "intersects(_:)" }, { "headings" : [ @@ -6650,16 +6948,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:width:depth:detail:material:)" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "xor(_:isCancelled:)" + "rawIndexableTextContent" : "Creates an extruded text model from an attributed string The text to convert into a model The optional width at which to line-wrap the text. The depth of the extruded text. The number line segments used to approximate glyph curves. Optional material to apply to the mesh.", + "summary" : "Creates an extruded text model from an attributed string", + "title" : "text(_:width:depth:detail:material:)" }, { "headings" : [ @@ -6669,29 +6964,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-2uz97" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-8b34m" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-2ix6y" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a size\/scale vector from an array of two coordinates. An array of vector components. Discussion Omitted values are set equal to the first value specified. If no values as specified, the size defaults to one.", - "summary" : "Creates a size\/scale vector from an array of two coordinates.", - "title" : "init(size:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -6701,29 +6996,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/withAlpha(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Creates a copy of the color updated with the specified alpha. ", + "summary" : "Creates a copy of the color updated with the specified alpha.", + "title" : "withAlpha(_:)" }, { "headings" : [ - "Return Value" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Bounded-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A closure that maps a SceneKit material to a Euclid material. An SCNMaterial material to convert. Return Value A Mesh.Material instance, or nil for the default material.", - "summary" : "A closure that maps a SceneKit material to a Euclid material.", - "title" : "Mesh.MaterialProvider" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Bounded Implementations" }, { "headings" : [ @@ -6733,29 +7028,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-622p8" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/default" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "The default face generation behavior. Context-dependent. ", + "summary" : "The default face generation behavior. Context-dependent.", + "title" : "Mesh.Faces.default" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/dot(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Computes the dot-product of this quaternion and another. The quaternion with which to compute the dot product. Return Value The dot product of the two quaternions.", + "summary" : "Computes the dot-product of this quaternion and another.", + "title" : "dot(_:)" }, { "headings" : [ @@ -6765,13 +7060,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-29paf" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation around the X axis. The angle to rotate by.", - "summary" : "Creates a rotation around the X axis.", - "title" : "pitch(_:)" + "rawIndexableTextContent" : "Returns the angle between this vector and another. The vector to compare with.", + "summary" : "Returns the angle between this vector and another.", + "title" : "angle(with:)" }, { "headings" : [ @@ -6781,29 +7076,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-7a30s" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Creates a uniform scale transform. A uniform scale factor to apply.", + "summary" : "Creates a uniform scale transform.", + "title" : "scale(_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -6813,29 +7108,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Divides the components of the vector by the specified value. ", + "summary" : "Divides the components of the vector by the specified value.", + "title" : "\/=(_:_:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/edges(intersecting:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes a set of edges where the mesh intersects a plane. A Plane to test against the mesh. Return Value A Set of LineSegment representing the polygon edges intersecting the plane.", - "summary" : "Computes a set of edges where the mesh intersects a plane.", - "title" : "edges(intersecting:)" + "rawIndexableTextContent" : "Creates a vector from the values you provide. The X component of the vector. The Y component of the vector. The Z component of the vector.", + "summary" : "Creates a vector from the values you provide.", + "title" : "init(_:_:_:)" }, { "headings" : [ @@ -6845,61 +7140,62 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-8feph" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this color into the given encoder. The encoder to write data to.", - "summary" : "Encodes this color into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-5p7ko" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new transform by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new transform by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Returns the distance between the vector (representing a position in space) from the specified plane. The plane to compare with. Return Value The distance between the point and the plane. The value is positive if the point lies in front of the plane, and negative if behind.", + "summary" : "Returns the distance between the vector (representing a position in space) from the specified plane.", + "title" : "distance(from:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-27jri" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.type.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a bounds from a collection of points. A collection of points that the bounds contains.", - "summary" : "Creates a bounds from a collection of points.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Efficiently XORs multiple meshes. Return Value A new mesh representing the XOR of the meshes. Discussion Parameters meshes: A collection of meshes to be XORed. isCancelled: Callback used to cancel the operation", + "summary" : "Efficiently XORs multiple meshes.", + "title" : "symmetricDifference(_:isCancelled:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-49ykf" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:font:width:depth:detail:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new bounds inset by the specified distance. The distance to inset the bounds by. Use negative values to expand the bounds. Return Value The inset bounds.", - "summary" : "Returns a new bounds inset by the specified distance.", - "title" : "inset(by:)" + "rawIndexableTextContent" : "Creates an extruded text model from a string. The text to convert into a model The font to use for the text glyphs. The optional width at which to line-wrap the text. The depth of the extruded text. The number line segments used to approximate glyph curves. An optional material to apply to the mesh.", + "summary" : "Creates an extruded text model from a string.", + "title" : "text(_:font:width:depth:detail:material:)" }, { "headings" : [ @@ -6909,13 +7205,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-48gl1" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a vector with its components multiplied by the specified value. ", - "summary" : "Returns a vector with its components multiplied by the specified value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ @@ -6925,29 +7221,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/submeshes" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/objString()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The distinct (disconnected) submeshes that make up the mesh. ", - "summary" : "The distinct (disconnected) submeshes that make up the mesh.", - "title" : "submeshes" + "rawIndexableTextContent" : "Return Wavefront OBJ string data for the mesh. ", + "summary" : "Return Wavefront OBJ string data for the mesh.", + "title" : "objString()" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceVertices" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new angle by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new angle by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "An array of vertices suitable for constructing a polygon from the path. Discussion Vertices include normals and uv coordinates normalized to the bounding rectangle of the path. Returns nil if path is not closed, or has subpaths.", + "summary" : "An array of vertices suitable for constructing a polygon from the path.", + "title" : "faceVertices" }, { "headings" : [ @@ -6957,13 +7253,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians(_:)" }, - "type" : "topLevelPage" - }, - "rawIndexableTextContent" : "The angle in degrees. ", - "summary" : "The angle in degrees.", - "title" : "degrees" + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Creates an angle from a radians value. The angle in radians.", + "summary" : "Creates an angle from a radians value.", + "title" : "radians(_:)" }, { "headings" : [ @@ -6973,13 +7269,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Angle representing a zero (identity) rotation. ", - "summary" : "Angle representing a zero (identity) rotation.", - "title" : "zero" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -6989,13 +7285,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/containsPoint(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether a point lies inside the polygon, on the same plane. The point to test. Return Value true if the point lies inside the polygon and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether a point lies inside the polygon, on the same plane.", - "title" : "containsPoint(_:)" + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "rawIndexableTextContent" : "A closure that converts a RealityKit material to a Euclid material. A RealityKit material to convert. Return Value A Euclid Material.", + "summary" : "A closure that converts a RealityKit material to a Euclid material.", + "title" : "Mesh.RealityKitMaterialProvider" }, { "headings" : [ @@ -7005,29 +7317,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(subpaths:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Creates a composite path from an array of subpaths. An array of paths.", + "summary" : "Creates a composite path from an array of subpaths.", + "title" : "init(subpaths:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes the vector into the given encoder. The encoder to write data to.", - "summary" : "Encodes the vector into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -7037,13 +7349,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersect(_:isCancelled:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new polygon by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new polygon by decoding from the given decoder.", - "title" : "init(from:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "intersect(_:isCancelled:)" }, { "headings" : [ @@ -7053,13 +7368,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-6nlm" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(polygons:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vector from a CoreGraphics size. the CoreGraphics size.", - "summary" : "Creates a new vector from a CoreGraphics size.", - "title" : "init(_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "init(polygons:)" }, { "headings" : [ @@ -7069,13 +7387,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-577nk" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -7085,13 +7403,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/twoPi" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Angle representing a full rotation. ", + "summary" : "Angle representing a full rotation.", + "title" : "twoPi" }, { "headings" : [ @@ -7101,13 +7419,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:_:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/forward" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a linear path from a start and end point. The starting point of the line. The ending point of the line. An optional Color to apply to the path’s points.", - "summary" : "Creates a linear path from a start and end point.", - "title" : "line(_:_:color:)" + "rawIndexableTextContent" : "A normalized direction vector pointing forwards relative to the current rotation. ", + "summary" : "A normalized direction vector pointing forwards relative to the current rotation.", + "title" : "forward" }, { "headings" : [ @@ -7117,29 +7435,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a offset transform. An offset distance.", - "summary" : "Creates a offset transform.", - "title" : "offset(_:)" + "rawIndexableTextContent" : "Creates a mesh from a SceneKit geometry, with optional material mapping. The SCNGeometry to convert into a mesh. An optional closure to map SceneKit materials to Euclid materials. If omitted, the SCNMaterial will be directly used as the mesh material.", + "summary" : "Creates a mesh from a SceneKit geometry, with optional material mapping.", + "title" : "init(_:materialLookup:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/a" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/containsPoint(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The alpha component of the color. ", - "summary" : "The alpha component of the color.", - "title" : "a" + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether a point lies on the plane. The point to test. Return Value true if the point lies on the plane and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether a point lies on the plane.", + "title" : "containsPoint(_:)" }, { "headings" : [ @@ -7149,13 +7467,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-49h2f" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ @@ -7165,13 +7483,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:along:twist:align:faces:material:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/min" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh by extruding one path along another path. The shape to extrude into a mesh. The path along which to extrude the shape. Angular twist to apply along the extrusion. The alignment mode to use for the extruded shape. The direction of the generated polygon faces. The optional material for the mesh.", - "summary" : "Creates a mesh by extruding one path along another path.", - "title" : "extrude(_:along:twist:align:faces:material:isCancelled:)" + "rawIndexableTextContent" : "The minimum coordinate of the bounds. ", + "summary" : "The minimum coordinate of the bounds.", + "title" : "min" }, { "headings" : [ @@ -7181,29 +7499,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-7dhh3" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygonsByMaterial" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "The polygons in the mesh, grouped by material. ", + "summary" : "The polygons in the mesh, grouped by material.", + "title" : "polygonsByMaterial" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isFlipped" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Comparable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Does the transform apply a mirror operation (negative scale)? ", - "summary" : "Does the transform apply a mirror operation (negative scale)?", - "title" : "isFlipped" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Comparable Implementations" }, { "headings" : [ @@ -7213,29 +7531,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-89xwv" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently strokes a collection of line segments (useful for drawing wireframes). A collection of LineSegment to stroke. The line width of the strokes. The number of sides to use for the cross-sectional shape of the stroked mesh. The optional material for the mesh.", - "summary" : "Efficiently strokes a collection of line segments (useful for drawing wireframes).", - "title" : "stroke(_:width:detail:material:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-817o2" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/b" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the nearest point on the specified plane to the vector (representing a position in space). The plane to project onto. Return Value The nearest point in 3D space that lies on the plane.", - "summary" : "Returns the nearest point on the specified plane to the vector (representing a position in space).", - "title" : "project(onto:)" + "rawIndexableTextContent" : "The blue component of the color. ", + "summary" : "The blue component of the color.", + "title" : "b" }, { "headings" : [ @@ -7245,13 +7563,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-732z3" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ @@ -7261,13 +7579,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "The angle of rotation around the Z-axis. ", + "summary" : "The angle of rotation around the Z-axis.", + "title" : "roll" }, { "headings" : [ @@ -7277,29 +7595,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-85o14" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Creates a mesh by stroking a path with the line width, detail, and material you provide. The path to stroke. The line width of the stroke. The number of sides to use for the cross-sectional shape of the stroked mesh. The optional material for the mesh.", + "summary" : "Creates a mesh by stroking a path with the line width, detail, and material you provide.", + "title" : "stroke(_:width:detail:material:isCancelled:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/distance(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the distance between a point and the plane. The point to compare with. Return Value The distance between the point and the plane. The value is positive if the point lies in front of the plane, and negative if behind.", - "summary" : "Returns the distance between a point and the plane.", - "title" : "distance(from:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -7309,13 +7627,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/identity" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-ntgj" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The identity quaternion (i.e. no rotation). ", - "summary" : "The identity quaternion (i.e. no rotation).", - "title" : "identity" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -7325,13 +7643,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-93ypi" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isNormalized" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "A Boolean value that indicates whether the vector has a length of 1. ", + "summary" : "A Boolean value that indicates whether the vector has a length of 1.", + "title" : "isNormalized" }, { "headings" : [ @@ -7341,29 +7659,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isIdentity" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-55ayx" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Quaternion has no effect. ", - "summary" : "Quaternion has no effect.", - "title" : "isIdentity" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Material used by a given polygon. This can be any type that conforms to Hashable, but encoding\/decoding is only supported for the following types: Color, String, Int, Data or any NSSecureCodable type. ", - "summary" : "Material used by a given polygon. This can be any type that conforms to Hashable, but encoding\/decoding is only supported for the following types: Color, String, Int, Data or any NSSecureCodable type.", - "title" : "Polygon.Material" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -7373,29 +7691,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/center" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An array containing the raw components of the quaternion. ", - "summary" : "An array containing the raw components of the quaternion.", - "title" : "components" + "rawIndexableTextContent" : "The position of the center of the polygon. This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s bounds. ", + "summary" : "The position of the center of the polygon. This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s bounds.", + "title" : "center" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/cos(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "Computes the trigonometric cosine of an angle. The angle to calculate the cosine for. Return Value The trigonometric cosine of the angle.", + "summary" : "Computes the trigonometric cosine of an angle.", + "title" : "cos(_:)" }, { "headings" : [ @@ -7405,13 +7723,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(polygon:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "init(polygon:)" }, { "headings" : [ @@ -7421,13 +7742,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:_:)" }, "type" : "topLevelPage" - }, - "rawIndexableTextContent" : "The size or scale component of the transform. ", - "summary" : "The size or scale component of the transform.", - "title" : "scale" + }, + "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", + "summary" : "Inherited from Comparable....(_:_:).", + "title" : "...(_:_:)" }, { "headings" : [ @@ -7437,13 +7758,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-2nysu" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/normalized()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the point where the specified line intersects this one. The line to compare with. Return Value The point of intersection, or nil if the lines don’t intersect.", - "summary" : "Returns the point where the specified line intersects this one.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "Returns a normalized vector. Return Value The normalized vector (with a length of 1) or the zero vector if the length is 0.", + "summary" : "Returns a normalized vector.", + "title" : "normalized()" }, { "headings" : [ @@ -7453,13 +7774,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/isIdentity" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/yellow" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotation has no effect. ", - "summary" : "Rotation has no effect.", - "title" : "isIdentity" + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "yellow" }, { "headings" : [ @@ -7469,29 +7790,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withoutTexcoords()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-b3v3" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return a copy of the polygon without texture coordinates ", - "summary" : "Return a copy of the polygon without texture coordinates", - "title" : "withoutTexcoords()" + "rawIndexableTextContent" : "Creates a Euclid Quaternion from a SceneKit quaternion. The SCNQuaternion to convert.", + "summary" : "Creates a Euclid Quaternion from a SceneKit quaternion.", + "title" : "init(_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-vnel" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ @@ -7501,45 +7822,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(roll:yaw:pitch:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order. The angle of rotation around the Z axis. This is applied first. The angle of rotation around the Y axis. This is applied second. The angle of rotation around the X axis. This is applied last.", - "summary" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", - "title" : "init(roll:yaw:pitch:)" + "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.-=(_:_:). ", + "summary" : "Inherited from AdditiveArithmetic.-=(_:_:).", + "title" : "-=(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/color" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The color of the path point (optional). ", - "summary" : "The color of the path point (optional).", - "title" : "color" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:width:detail:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/cross(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an array of glyph contours from an attributed string. The text to convert. The optional width at which to line-wrap the text. The number line segments used to approximate glyph curves.", - "summary" : "Creates an array of glyph contours from an attributed string.", - "title" : "text(_:width:detail:)" + "rawIndexableTextContent" : "Computes the cross-product of this vector and another. The vector with which to compute the cross product. Return Value Returns a vector that is orthogonal to the two vectors used to compute the cross product.", + "summary" : "Computes the cross-product of this vector and another.", + "title" : "cross(_:)" }, { "headings" : [ @@ -7549,13 +7870,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:font:width:detail:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Creates an array of glyph contours from a string and font you provide. The text to convert. The font to use for the text. The optional width at which to line-wrap the text. The number line segments used to approximate glyph curves.", + "summary" : "Creates an array of glyph contours from a string and font you provide.", + "title" : "text(_:font:width:detail:)" }, { "headings" : [ @@ -7569,41 +7890,41 @@ }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return binary STL data for the mesh. A closure to map the polygon material to a SceneKit material. Return Value A Euclid Color value.", + "rawIndexableTextContent" : "Return binary STL data for the mesh. A closure to map Euclid materials to STL facet colors. Use nil for default mapping. Return Value A Euclid Color value.", "summary" : "Return binary STL data for the mesh.", "title" : "stlData(colorLookup:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/edges(intersecting:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Computes a set of edges where the polygon intersects a plane. A Plane to test against the mesh. Return Value A Set of LineSegment representing the polygon edges intersecting the plane.", + "summary" : "Computes a set of edges where the polygon intersects a plane.", + "title" : "edges(intersecting:)" }, { "headings" : [ - + "Discussion" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-4hvi3" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Computes the convex hull of a set of paths. Discussion Parameters paths: A set of paths to compute the hull around. material: An optional material to apply to the mesh.", + "summary" : "Computes the convex hull of a set of paths.", + "title" : "convexHull(of:material:)" }, { "headings" : [ @@ -7613,29 +7934,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-677dp" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Efficiently strokes a collection of line segments (useful for drawing wireframes). A collection of LineSegment to stroke. The line width of the strokes. The number of sides to use for the cross-sectional shape of the stroked mesh. The optional material for the mesh.", + "summary" : "Efficiently strokes a collection of line segments (useful for drawing wireframes).", + "title" : "stroke(_:width:detail:material:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/clear" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", + "rawIndexableTextContent" : " ", "summary" : "", - "title" : "Encodable Implementations" + "title" : "clear" }, { "headings" : [ @@ -7645,33 +7966,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isOne" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "init(scnGeometry:materialLookup:)" + "rawIndexableTextContent" : "All vector components are one (or close to one) in length. ", + "summary" : "All vector components are one (or close to one) in length.", + "title" : "isOne" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.type.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-228p6" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently XORs multiple meshes. Return Value A new mesh representing the XOR of the meshes. Discussion Parameters meshes: A collection of meshes to be XORed. isCancelled: Callback used to cancel the operation", - "summary" : "Efficiently XORs multiple meshes.", - "title" : "symmetricDifference(_:isCancelled:)" + "rawIndexableTextContent" : "Creates a new vector from a SceneKit vector. The SceneKit SCNVector3.", + "summary" : "Creates a new vector from a SceneKit vector.", + "title" : "init(_:)" }, { "headings" : [ @@ -7681,29 +7998,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/clear" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "clear" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(min:max:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-3c0eo" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a bounds with min and max coordinates. The minimum coordinate value. The maximum coordinate value. Discussion If the value for max is less than the value for min, the bounds is considered to be empty.", - "summary" : "Creates a bounds with min and max coordinates.", - "title" : "init(min:max:)" + "rawIndexableTextContent" : "Creates a closed path from a polygon. A Polygon to convert to a path.", + "summary" : "Creates a closed path from a polygon.", + "title" : "init(_:)" }, { "headings" : [ @@ -7713,45 +8030,46 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-7go25" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new plane by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new plane by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Creates a vertex from a path point. The path point to create the vertex from.", + "summary" : "Creates a vertex from a path point.", + "title" : "init(_:)" }, { "headings" : [ - + "Discussion" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-91swk" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Computes the convex hull of a set of line segments. Discussion Parameters edges: A set of line segments to compute the hull around. material: An optional material to apply to the mesh.", + "summary" : "Computes the convex hull of a set of line segments.", + "title" : "convexHull(of:material:)" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-4egi6" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.type.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Efficiently performs a stencil with multiple meshes. Return Value A new mesh representing the result of stencilling. Discussion Parameters meshes: An ordered collection of meshes. All but the first will be stencilled onto the first. isCancelled: Callback used to cancel the operation.", + "summary" : "Efficiently performs a stencil with multiple meshes.", + "title" : "stencil(_:isCancelled:)" }, { "headings" : [ @@ -7761,45 +8079,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/slerp(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/replacing(_:with:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Performs a spherical interpolation between two quaternions. A quaternion to interpolate with. The normalized extent of interpolation, from 0 to 1. Return Value The interpolated quaternion.", - "summary" : "Performs a spherical interpolation between two quaternions.", - "title" : "slerp(_:_:)" + "rawIndexableTextContent" : "Returns a copy of the mesh with the specified old material replaced by a new one. The Mesh.Material to be replaced. The Mesh.Material to use instead. Return Value a new Mesh with the material replaced.", + "summary" : "Returns a copy of the mesh with the specified old material replaced by a new one.", + "title" : "replacing(_:with:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/y" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "The quaternion Y component. ", + "summary" : "The quaternion Y component.", + "title" : "y" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -7809,30 +8127,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(axis:angle:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from an axis and angle. A vector defining the axis of rotation. The angle of rotation around the axis.", - "summary" : "Creates a rotation from an axis and angle.", - "title" : "init(axis:angle:)" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.type.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexColors" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently performs a stencil with multiple meshes. Return Value A new mesh representing the result of stencilling. Discussion Parameters meshes: An ordered collection of meshes. All but the first will be stencilled onto the first. isCancelled: Callback used to cancel the operation.", - "summary" : "Efficiently performs a stencil with multiple meshes.", - "title" : "stencil(_:isCancelled:)" + "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon includes vertex colors. ", + "summary" : "A Boolean value that indicates whether the polygon includes vertex colors.", + "title" : "hasVertexColors" }, { "headings" : [ @@ -7842,13 +8159,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curved(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Curve or uncurve the point. Whether the resultant point should be curved.", - "summary" : "Curve or uncurve the point.", - "title" : "curved(_:)" + "rawIndexableTextContent" : "A common protocol for objects that have a bounds. ", + "summary" : "A common protocol for objects that have a bounds.", + "title" : "Bounded" }, { "headings" : [ @@ -7858,80 +8175,78 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/one" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/none" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A vector with all coordinates set to 1. ", - "summary" : "A vector with all coordinates set to 1.", - "title" : "one" + "rawIndexableTextContent" : "Do not generate texture coordinates. ", + "summary" : "Do not generate texture coordinates.", + "title" : "Mesh.WrapMode.none" }, { "headings" : [ - + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-5nk27" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/triangulate()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", - "summary" : "Inherited from Comparable.>=(_:_:).", - "title" : ">=(_:_:)" + "rawIndexableTextContent" : "Tessellates the polygon into triangles. Return Value An array of triangles. Discussion If the polygon is already a triangle then it is returned unchanged.", + "summary" : "Tessellates the polygon into triangles.", + "title" : "triangulate()" }, { "headings" : [ - "Overview", - "Materials", - "Colors", - "Textures" + ], "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/RenderingMeshes" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Hashable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Display the 3D shapes you created with meshes. Overview After creating some 3D shapes, you probably want to actually display them. Most of the Euclid library is completely self-contained, with no dependencies on any particular rendering technology or framework. However, when running on iOS or macOS you can take advantage of Euclid’s built-in SceneKit and RealityKit integration. This is demonstrated in the Example app included with the project. SceneKit is a high-level Apple 3D framework that can use either OpenGL or Metal for rendering on supported devices. Euclid provides extensions for creating an SCNGeometry from a Mesh, as well as converting Euclid Vector and Rotation types to SCNVector and SCNQuaternion respectively. The SceneKit integration makes it easy to display Euclid geometry on-screen, and to integrate with ARKit, etc. You can also use SceneKit to export Euclid-generated Mesh in standard 3D model formats such as DAE, STL or OBJ. RealityKit is a newer Apple framework mainly intended for VR\/AR purposes. It is slightly lower-level than SceneKit, and missing some high-level functionality such as camera control, but is equally-well supported by Euclid. Materials Interesting geometry is one thing, but to really bring a shape to life it needs colors and textures. Every Polygon has a material property that can be used to apply any kind of material you like on a per-polygon basis. All primitives and builder methods accept a material parameter which will apply that material to every polygon in the resultant Mesh. When you later combine meshes using CSG operations, the original materials from the Mesh that contributed to each part of the resultant shape are preserved. Before a material can be used with SceneKit, you need to convert the Euclid material to an SCNMaterial. If the material is already an SCNMaterial instance it will be used directly. If the material is a Color, a CG\/UI\/NSColor or CG\/UI\/NSImage it will be converted to an SCNMaterial automatically. For all other material types, you will need to do this conversion yourself. You can convert materials using the optional closure argument for Euclid’s SCNGeometry constructor, which receives the Euclid material as an input and returns an SCNMaterial. An equivalent closure exists for Euclid’s RealityKit ModelEntity constructor. When serializing Euclid geometry using Codable, only specific material types can be supported. Currently, material serialization works for Strings, Ints, Color and any class that conforms to NSCoding (which includes many UIKit, AppKit and SceneKit types, such as UI\/NSColor, UI\/NSImage and SCNMaterial). Colors Euclid supports applying colors to a Mesh or Polygon using the material property, but you can also set colors individually for each vertex, which will be interpolated to create smooth gradients. The material property is of type AnyHashable which basically means it can be anything you want. You can set the material to an instance of Euclid’s Color, or you can use a CGColor, UIColor or NSColor instead if you prefer. This approach is demonstrated in the Example app included in the project. Textures Euclid automatically adds 2D texture coordinates to the vertices of a Mesh created using primitives or builder methods. There is limited control over how those coordinates are specified at the moment, but they allow for simple cylindrical or spherical texture wrapping. You can also scale, rotate or translate the texture coordinates for a Mesh by using - withTextureTransform(_:), or remap the texture coordinates completely by using the sphereMapped(), cylinderMapped() and cubeMapped() methods. This can be useful for wrapping composite objects that you’ve created using CSG functions, where the texture coordinates may end up scrambled. To apply a texture image to a Mesh, store a UIImage or NSImage as the material property and it will be converted to an SCNMaterial automatically. If you want to do something more complex, such as applying both a color and texture to the same Mesh, or maybe including a normal map or some other material properties, you could create a custom material type to store all the properties you care about, or even assign an SCNMaterial or RealityKit Material directly.", - "summary" : "Display the 3D shapes you created with meshes.", - "title" : "Rendering Meshes" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Hashable Implementations" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-4gk62" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/polygon(radius:sides:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new bounds inset by the specified amount. The amount to inset the bounds by. Use a negative value to expand the bounds. Return Value The inset bounds.", - "summary" : "Returns a new bounds inset by the specified amount.", - "title" : "inset(by:)" + "rawIndexableTextContent" : "Creates a closed regular polygon. The distance from the center of the polygon to each point. The number of sides on the polygon. An optional Color to apply to the path’s points.", + "summary" : "Creates a closed regular polygon.", + "title" : "polygon(radius:sides:color:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detriangulate()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Merges coplanar polygons that share one or more edges, provided the result will be convex. Return Value A new mesh containing the merged polygons.", - "summary" : "Merges coplanar polygons that share one or more edges, provided the result will be convex.", - "title" : "detriangulate()" + "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", + "summary" : "Inherited from Comparable....(_:_:).", + "title" : "...(_:_:)" }, { "headings" : [ @@ -7941,29 +8256,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/red" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:_:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "red" + "rawIndexableTextContent" : "Creates a linear path from a start and end point. The starting point of the line. The ending point of the line. An optional Color to apply to the path’s points.", + "summary" : "Creates a linear path from a start and end point.", + "title" : "line(_:_:color:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-fyhx" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A color in RGBA format. Overview Color can be used as a material or as a color.", - "summary" : "A color in RGBA format.", - "title" : "Color" + "rawIndexableTextContent" : "Creates a quaternion from raw components. An array of 4 floating-point values.", + "summary" : "Creates a quaternion from raw components.", + "title" : "init(_:)" }, { "headings" : [ @@ -7973,45 +8288,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/one" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a quaternion with its components divided by the specified value. ", - "summary" : "Returns a quaternion with its components divided by the specified value.", - "title" : "\/(_:_:)" + "rawIndexableTextContent" : "A vector with all coordinates set to 1. ", + "summary" : "A vector with all coordinates set to 1.", + "title" : "one" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/containsPoint(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/tube" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether a point lies on the plane. The point to test. Return Value true if the point lies on the plane and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether a point lies on the plane.", - "title" : "containsPoint(_:)" + "rawIndexableTextContent" : "Texture is tube-wrapped. ", + "summary" : "Texture is tube-wrapped.", + "title" : "Mesh.WrapMode.tube" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the reverse quaternion rotation. ", - "summary" : "Returns the reverse quaternion rotation.", - "title" : "-(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -8021,29 +8336,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/normal" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-16elu" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The surface normal of the vertex, used to calculate lighting. Set this to zero if you want the normal to be calculated automatically from the polygon face normal. ", - "summary" : "The surface normal of the vertex, used to calculate lighting. Set this to zero if you want the normal to be calculated automatically from the polygon face normal.", - "title" : "normal" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Creates a rotation transform. A rotation to apply.", + "summary" : "Creates a rotation transform.", + "title" : "rotation(_:)" }, { "headings" : [ @@ -8053,13 +8368,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/up" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A normalized direction vector pointing upwards relative to the current rotation. ", - "summary" : "A normalized direction vector pointing upwards relative to the current rotation.", - "title" : "up" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ @@ -8069,29 +8384,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/blue" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-5bh7b" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "blue" + "rawIndexableTextContent" : "Creates a bounds from two SceneKit vectors. A tuple of two SCNVector3 that represent opposite corners of the bounding box volume.", + "summary" : "Creates a bounds from two SceneKit vectors.", + "title" : "init(_:)" }, { "headings" : [ - "Discussion" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotationally symmetrical mesh by turning the specified path around the Y axis. The path to use as the profile for the mesh. The number of slices that make up the lathed mesh. The number of segments used to make the pole. A Boolean value that indicates whether to add detail to the poles. The direction of the generated polygon faces. The way that texture coordinates are calculated for the lathed mesh. The optional material for the mesh. Discussion The profile path can be open or closed. Define a closed path by ending with the same point that you started with. The path can be placed on either side of the Y axis, however the behavior is undefined for paths that cross the axis Open paths that do not start and end on the Y axis will produce a shape with a hole in it", - "summary" : "Creates a rotationally symmetrical mesh by turning the specified path around the Y axis.", - "title" : "lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -8101,13 +8416,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/axis" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "The axis of rotation. ", + "summary" : "The axis of rotation.", + "title" : "axis" }, { "headings" : [ @@ -8117,13 +8432,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-5dvuy" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:ignoringTransforms:materialLookup:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", - "summary" : "Inherited from Comparable.>=(_:_:).", - "title" : ">=(_:_:)" + "rawIndexableTextContent" : "Creates a mesh from a SceneKit node, with optional material mapping. The SCNNode to convert into a mesh. Should transforms from the input node and its children be ignored. An optional closure to map the SceneKit materials to Euclid materials. If omitted, the SCNMaterial will be directly used as the mesh material.", + "summary" : "Creates a mesh from a SceneKit node, with optional material mapping.", + "title" : "init(_:ignoringTransforms:materialLookup:)" }, { "headings" : [ @@ -8133,13 +8448,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-8lp0l" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -8149,29 +8464,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/w" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new line from the specified line segment. A segment somewhere on the line.", - "summary" : "Creates a new line from the specified line segment.", - "title" : "init(_:)" + "rawIndexableTextContent" : "The quaternion W component. ", + "summary" : "The quaternion W component.", + "title" : "w" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/x" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "The quaternion X component. ", + "summary" : "The quaternion X component.", + "title" : "x" }, { "headings" : [ @@ -8181,29 +8496,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/min(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-94kks" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a new vector that represents the mininum of the components of the two vectors. ", - "summary" : "Returns a new vector that represents the mininum of the components of the two vectors.", - "title" : "min(_:_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ - "Discussion" + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-75on2" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/distance(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of a set of vertices. Discussion Parameters vertices: A set of vertices to compute the hull around. material: An optional material to apply to the mesh.", - "summary" : "Computes the convex hull of a set of vertices.", - "title" : "convexHull(of:material:)" + "rawIndexableTextContent" : "Returns the distance between a point and the plane. The point to compare with. Return Value The distance between the point and the plane. The value is positive if the point lies in front of the plane, and negative if behind.", + "summary" : "Returns the distance between a point and the plane.", + "title" : "distance(from:)" }, { "headings" : [ @@ -8213,13 +8528,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexColors" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", - "summary" : "Inherited from Comparable...<(_:).", - "title" : "..<(_:)" + "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh includes vertex colors. ", + "summary" : "A Boolean value that indicates whether the mesh includes vertex colors.", + "title" : "hasVertexColors" }, { "headings" : [ @@ -8229,29 +8544,32 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-2ew65" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Returns the product of a numeric multiplier and an angle. ", + "summary" : "Returns the product of a numeric multiplier and an angle.", + "title" : "*(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "init(_:_:)" }, { "headings" : [ @@ -8261,7 +8579,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-1azi6" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-3ed6z" }, "type" : "topLevelPage" }, @@ -8277,13 +8595,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-3s6ak" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "Creates a new vector by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new vector by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -8293,32 +8611,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.type.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)" }, "type" : "topLevelPage" }, - "platforms" : [ + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" + }, + { + "headings" : [ ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "xor(_:isCancelled:)" + "kind" : "symbol", + "location" : { + "reference" : { + "interfaceLanguage" : "swift", + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/identity" + }, + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "The identity rotation (i.e. no rotation). ", + "summary" : "The identity rotation (i.e. no rotation).", + "title" : "identity" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-577nk" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersection(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Creates a new bounds representing the intersection between the specified bounds and this one. The bounds with which to intersect. Return Value The combined bounds, which may be empty if the bounds don’t intersect.", + "summary" : "Creates a new bounds representing the intersection between the specified bounds and this one.", + "title" : "intersection(_:)" }, { "headings" : [ @@ -8328,78 +8659,77 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new rotation by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new rotation by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/split(along:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-9sfg1" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Split the polygon along a plane. The Plane to split the polygon along. Return Value A pair of arrays representing the polygon fragments in front of and behind the plane respectively. Discussion If the plane and polygon do not intersect, one of the returned arrays will be empty.", - "summary" : "Split the polygon along a plane.", - "title" : "split(along:)" + "rawIndexableTextContent" : "Returns the angle between this vector and the specified plane. The plane to compare with.", + "summary" : "Returns the angle between this vector and the specified plane.", + "title" : "angle(with:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-7s1sd" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the point where the specified plane intersects the line. The plane to compare with. Return Value The point of intersection, or nil if the line and plane are parallel (don’t intersect).", - "summary" : "Returns the point where the specified plane intersects the line.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "The angle of rotation around the Y-axis. ", + "summary" : "The angle of rotation around the Y-axis.", + "title" : "yaw" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices(for:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-8q2nt" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An array of vertices suitable for constructing a set of edge polygons for the path. The wrap mode to use for generating texture coordinates. Return Value The edge vertices, or an empty array if path has subpaths.", - "summary" : "An array of vertices suitable for constructing a set of edge polygons for the path.", - "title" : "edgeVertices(for:)" + "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", + "summary" : "Inherited from Comparable.<=(_:_:).", + "title" : "<=(_:_:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/arc(angle:radius:segments:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new identity rotation. ", - "summary" : "Creates a new identity rotation.", - "title" : "init()" + "rawIndexableTextContent" : "Creates a circular arc. The angular span of the arc, measured clockwise from vertical. Defaults to pi (180 degrees). The distance from the center of the arc to each point used to approximate its shape. The number of line segments used to approximate the circle. An optional Color to apply to the path’s points. Discussion Because the arc is approximated using line segments, its radius is not uniform. The radius specified is the outer radius, i.e. the radius at the end points.", + "summary" : "Creates a circular arc.", + "title" : "arc(angle:radius:segments:color:)" }, { "headings" : [ @@ -8409,13 +8739,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-7i9lp" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", + "summary" : "Inherited from Comparable.>(_:_:).", + "title" : ">(_:_:)" }, { "headings" : [ @@ -8425,13 +8755,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/uniqueEdges" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An angle or 2D rotation. ", - "summary" : "An angle or 2D rotation.", - "title" : "Angle" + "rawIndexableTextContent" : "The unique polygon edges in the mesh. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons. ", + "summary" : "The unique polygon edges in the mesh. The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", + "title" : "uniqueEdges" }, { "headings" : [ @@ -8441,29 +8771,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a quaternion representing a rotation around the Y axis. The angle to rotate by.", - "summary" : "Creates a quaternion representing a rotation around the Y axis.", - "title" : "yaw(_:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-4o41" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The face generation policy for Euclid to use when creating a mesh. ", - "summary" : "The face generation policy for Euclid to use when creating a mesh.", - "title" : "Mesh.Faces" + "rawIndexableTextContent" : "Returns the perpendicular distance of the line from a specified point. The point to compare. Return Value The absolute perpendicular distance between the point and line.", + "summary" : "Returns the perpendicular distance of the line from a specified point.", + "title" : "distance(from:)" }, { "headings" : [ @@ -8473,13 +8803,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinderMapped()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return a copy of the mesh with cylindrically-mapped texture coordinates. ", - "summary" : "Return a copy of the mesh with cylindrically-mapped texture coordinates.", - "title" : "cylinderMapped()" + "rawIndexableTextContent" : "Creates a new color by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new color by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -8489,13 +8819,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-1icmf" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a bounds from a collection of Bounded objects. A collection of bounded objects.", - "summary" : "Creates a bounds from a collection of Bounded objects.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Encodes this transform into the given encoder. The encoder to write data to.", + "summary" : "Encodes this transform into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -8505,13 +8835,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Decodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Transformable-Implementations" }, "type" : "topLevelPage" }, "rawIndexableTextContent" : "", "summary" : "", - "title" : "Decodable Implementations" + "title" : "Transformable Implementations" }, { "headings" : [ @@ -8521,61 +8851,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-6c0wl" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-7dhh3" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", "summary" : "Scale the value in place.", "title" : "scale(by:)" }, { "headings" : [ - "Return Value" + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/cos(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-6176" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the trigonometric cosine of an angle. The angle to calculate the cosine for. Return Value The trigonometric cosine of the angle.", - "summary" : "Computes the trigonometric cosine of an angle.", - "title" : "cos(_:)" + "rawIndexableTextContent" : "Computes the convex hull of a set of points. Discussion Parameters points: An set of points to compute the hull around. material: An optional material to apply to the mesh.", + "summary" : "Computes the convex hull of a set of points.", + "title" : "convexHull(of:material:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/twoPi" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-9mns5" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Angle representing a full rotation. ", - "summary" : "Angle representing a full rotation.", - "title" : "twoPi" + "rawIndexableTextContent" : "Creates a polygon from an array of vertices. An array of Vertex that make up the polygon. An optional Polygon.Material to use for the polygon. Discussion A polygon can be convex or concave, but vertices must be coplanar and non-degenerate. Vertices are assumed to be in anti-clockwise order for the purpose of deriving the face normal.", + "summary" : "Creates a polygon from an array of vertices.", + "title" : "init(_:material:)" }, { "headings" : [ - "Return Value" + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/lerp(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Linearly interpolates between two path points. The path point to interpolate with. The normalized extent of interpolation, from 0 to 1. Return Value A new path point at the interpolated position.", - "summary" : "Linearly interpolates between two path points.", - "title" : "lerp(_:_:)" + "rawIndexableTextContent" : "Create a mesh from STL data. Discussion Parameters stlData: binary or ASCII STL file data materialLookup: A closure to map STL facet colors to Euclid materials. Use nil for default mapping.", + "summary" : "Create a mesh from STL data.", + "title" : "init(stlData:materialLookup:)" }, { "headings" : [ @@ -8585,13 +8915,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -8601,29 +8931,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/length" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The total length of the path. ", - "summary" : "The total length of the path.", - "title" : "length" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-7br6p" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-25eby" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates if the bounds intersects the specified plane. The plane to compare. Return Value true if the plane intersects the bounds, and false otherwise.", - "summary" : "Returns a Boolean value that indicates if the bounds intersects the specified plane.", - "title" : "intersects(_:)" + "rawIndexableTextContent" : "Creates a color from a CoreGraphics CGColor. The CoreGraphics color instance.", + "summary" : "Creates a color from a CoreGraphics CGColor.", + "title" : "init(_:)" }, { "headings" : [ @@ -8633,13 +8963,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -8649,13 +8979,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-7xa5o" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An array containing the X, Y, and Z components of the vector. ", - "summary" : "An array containing the X, Y, and Z components of the vector.", - "title" : "components" + "rawIndexableTextContent" : "Creates a quaternion from a rotation matrix. A rotation matrix.", + "summary" : "Creates a quaternion from a rotation matrix.", + "title" : "init(_:)" }, { "headings" : [ @@ -8665,13 +8995,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/frontAndBack" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/min(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Generate both the front and back faces. ", - "summary" : "Generate both the front and back faces.", - "title" : "Mesh.Faces.frontAndBack" + "rawIndexableTextContent" : "Returns a new vector that represents the mininum of the components of the two vectors. ", + "summary" : "Returns a new vector that represents the mininum of the components of the two vectors.", + "title" : "min(_:_:)" }, { "headings" : [ @@ -8681,29 +9011,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/bounds" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The bounding box containing the line segment. ", - "summary" : "The bounding box containing the line segment.", - "title" : "bounds" + "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+(_:). ", + "summary" : "Inherited from AdditiveArithmetic.+(_:).", + "title" : "+(_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/end" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-4gk62" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The end point of the line segment. ", - "summary" : "The end point of the line segment.", - "title" : "end" + "rawIndexableTextContent" : "Returns a new bounds inset by the specified amount. The amount to inset the bounds by. Use a negative value to expand the bounds. Return Value The inset bounds.", + "summary" : "Returns a new bounds inset by the specified amount.", + "title" : "inset(by:)" }, { "headings" : [ @@ -8713,13 +9043,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Creates a Quaternion from a simd quaternion. A simd quaternion.", + "summary" : "Creates a Quaternion from a simd quaternion.", + "title" : "init(_:)" }, { "headings" : [ @@ -8729,45 +9059,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/shrink" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Texture is shrink-wrapped. ", + "summary" : "Texture is shrink-wrapped.", + "title" : "Mesh.WrapMode.shrink" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-4o41" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-27jri" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the perpendicular distance of the line from a specified point. The point to compare. Return Value The absolute perpendicular distance between the point and line.", - "summary" : "Returns the perpendicular distance of the line from a specified point.", - "title" : "distance(from:)" + "rawIndexableTextContent" : "Creates a bounds from a collection of points. A collection of points that the bounds contains.", + "summary" : "Creates a bounds from a collection of points.", + "title" : "init(_:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A struct that represents an orientation or rotation in 3D space. Overview Internally, a rotation is stored as a 3x3 matrix, but that’s an implementation detail that may change in future. A rotation can be converted to and from an axis vector and angle, or a set of 3 Euler angles (pitch, yaw and roll).", - "summary" : "A struct that represents an orientation or rotation in 3D space.", - "title" : "Rotation" + "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+(_:). ", + "summary" : "Inherited from AdditiveArithmetic.+(_:).", + "title" : "+(_:)" }, { "headings" : [ @@ -8777,13 +9107,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-3uymx" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ @@ -8793,16 +9123,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/with(color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-5mcqw" }, - "type" : "topLevelPage" - }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "with(color:)" + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ @@ -8812,16 +9139,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersect(_:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transform(by:)" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "intersect(_:isCancelled:)" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ @@ -8831,13 +9155,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-3ed6z" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Returns the difference between two quaternion rotations,. ", + "summary" : "Returns the difference between two quaternion rotations,.", + "title" : "-(_:_:)" }, { "headings" : [ @@ -8847,13 +9171,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(roll:yaw:pitch:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order. The angle of rotation around the Z axis. This is applied first. The angle of rotation around the Y axis. This is applied second. The angle of rotation around the X axis. This is applied last.", - "summary" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", - "title" : "init(roll:yaw:pitch:)" + "rawIndexableTextContent" : "Encodes this color into the given encoder. The encoder to write data to.", + "summary" : "Encodes this color into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -8863,13 +9187,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:_:_:texcoord:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isIdentity" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a curved path point at the specified X, Y and Z coordinates. The X coordinate of the path point. The Y coordinate of the path point. The Z coordinate of the path point. An optional texture coordinate for this path point. An optional vertex color for this path point.", - "summary" : "Creates a curved path point at the specified X, Y and Z coordinates.", - "title" : "curve(_:_:_:texcoord:color:)" + "rawIndexableTextContent" : "Transform has no effect. ", + "summary" : "Transform has no effect.", + "title" : "isIdentity" }, { "headings" : [ @@ -8879,29 +9203,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-9688a" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>(_:_:). ", - "summary" : "Inherited from Comparable.>(_:_:).", - "title" : ">(_:_:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -8911,13 +9235,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/origin" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A zero-length vector. ", - "summary" : "A zero-length vector.", - "title" : "zero" + "rawIndexableTextContent" : "An arbitrary point on the line selected as the origin. ", + "summary" : "An arbitrary point on the line selected as the origin.", + "title" : "origin" }, { "headings" : [ @@ -8927,13 +9251,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-15yni" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vector by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new vector by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -8943,29 +9267,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this bounds into the given encoder. The encoder to write data to.", - "summary" : "Encodes this bounds into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "The rotation or orientation component of the transform. ", + "summary" : "The rotation or orientation component of the transform.", + "title" : "rotation" }, { "headings" : [ - "Return Value" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/sin(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the trigonometric sine of an angle. The angle to calculate the sine for. Return Value The trigonometric sine of the angle.", - "summary" : "Computes the trigonometric sine of an angle.", - "title" : "sin(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -8975,29 +9299,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the componentwise difference between two vectors. ", - "summary" : "Returns the componentwise difference between two vectors.", - "title" : "-(_:_:)" + "rawIndexableTextContent" : "Create a color from RGB values and optional alpha component The red component of the color, from 0 to 1. The green component of the color, from 0 to 1. The blue component of the color, from 0 to 1. The alpha component of the color. Defaults to 1 (fully opaque)", + "summary" : "Create a color from RGB values and optional alpha component", + "title" : "init(_:_:_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-rksk" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the mesh. A transform to apply to the mesh.", - "summary" : "Returns a transformed copy of the mesh.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "Returns the nearest point on the specified line to the vector (representing a position in space). The line to project onto. Return Value The nearest point in 3D space that lies on the line.", + "summary" : "Returns the nearest point on the specified line to the vector (representing a position in space).", + "title" : "project(onto:)" }, { "headings" : [ @@ -9007,29 +9331,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-5mcqw" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:_:_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "Creates a new vertex. The position of the vertex in 3D space. The surface normal for the vertex (defaults to zero). The optional texture coordinates for the vertex (defaults to zero). The optional vertex color (defaults to white).", + "summary" : "Creates a new vertex.", + "title" : "init(_:_:_:_:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/containsPoint(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the specified point lies on the line. The point to test. Return Value true if the point lies on the line and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether the specified point lies on the line.", - "title" : "containsPoint(_:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -9039,45 +9363,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-2si4j" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns whether the leftmost line segment has the lower value. This provides a stable order when sorting collections of line segments. ", - "summary" : "Returns whether the leftmost line segment has the lower value. This provides a stable order when sorting collections of line segments.", - "title" : "<(_:_:)" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/center" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The center of the bounds. If the bounds is empty this will return the zero vector. ", - "summary" : "The center of the bounds. If the bounds is empty this will return the zero vector.", - "title" : "center" + "rawIndexableTextContent" : "Creates a rotationally symmetrical mesh by turning the specified path around the Y axis. The path to use as the profile for the mesh. The number of slices that make up the lathed mesh. The number of segments used to make the pole. A Boolean value that indicates whether to add detail to the poles. The direction of the generated polygon faces. The way that texture coordinates are calculated for the lathed mesh. The optional material for the mesh. Discussion The profile path can be open or closed. Define a closed path by ending with the same point that you started with. The path can be placed on either side of the Y axis, however the behavior is undefined for paths that cross the axis Open paths that do not start and end on the Y axis will produce a shape with a hole in it", + "summary" : "Creates a rotationally symmetrical mesh by turning the specified path around the Y axis.", + "title" : "lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ @@ -9087,13 +9411,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/isEmpty" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(origin:direction:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the bounds is empty (has zero volume). ", - "summary" : "A Boolean value that indicates whether the bounds is empty (has zero volume).", - "title" : "isEmpty" + "rawIndexableTextContent" : "Creates a line from an origin and direction. An arbitrary point on the line selected as the origin. The direction of the line, emanating from the origin.", + "summary" : "Creates a line from an origin and direction.", + "title" : "init(origin:direction:)" }, { "headings" : [ @@ -9103,13 +9427,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vertex by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new vertex by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -9119,13 +9443,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-21ah6" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/magenta" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "magenta" }, { "headings" : [ @@ -9135,13 +9459,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothingNormals(forAnglesGreaterThan:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Smooth vertex normals for corners with angles greater (more obtuse) than the specified threshold. The minimum corner angle that should appear smooth. Values should be in the range zero (no smoothing) to pi (smooth all edges).", - "summary" : "Smooth vertex normals for corners with angles greater (more obtuse) than the specified threshold.", - "title" : "smoothingNormals(forAnglesGreaterThan:)" + "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+=(_:_:). ", + "summary" : "Inherited from AdditiveArithmetic.+=(_:_:).", + "title" : "+=(_:_:)" }, { "headings" : [ @@ -9151,13 +9475,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this plane into the given encoder. The encoder to write data to.", - "summary" : "Encodes this plane into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -9167,13 +9491,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/pi" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from AdditiveArithmetic.+(_:). ", - "summary" : "Inherited from AdditiveArithmetic.+(_:).", - "title" : "+(_:)" + "rawIndexableTextContent" : "Angle representing a half-rotation. ", + "summary" : "Angle representing a half-rotation.", + "title" : "pi" }, { "headings" : [ @@ -9183,45 +9507,48 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/isCurved" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Divides the angle by a numeric denominator. ", - "summary" : "Divides the angle by a numeric denominator.", - "title" : "\/=(_:_:)" + "rawIndexableTextContent" : "A Boolean indicating whether the point is curved or sharp. ", + "summary" : "A Boolean indicating whether the point is curved or sharp.", + "title" : "isCurved" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-55zcf" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/closed()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Combines two rotations to get the cumulative rotation. ", - "summary" : "Combines two rotations to get the cumulative rotation.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Closes the path by joining last point to first. Return Value A new path, or self if the path is already closed, or cannot be closed.", + "summary" : "Closes the path by joining last point to first.", + "title" : "closed()" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/tan(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/with(color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the trigonometric tangent of an angle. The angle to calculate the tangent for. Return Value The trigonometric tangent of the angle.", - "summary" : "Computes the trigonometric tangent of an angle.", - "title" : "tan(_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : "Deprecated. ", + "summary" : "Deprecated.", + "title" : "with(color:)" }, { "headings" : [ @@ -9231,45 +9558,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/plane" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The plane on which all vertices lie. ", - "summary" : "The plane on which all vertices lie.", - "title" : "plane" + "rawIndexableTextContent" : "The angle in degrees. ", + "summary" : "The angle in degrees.", + "title" : "degrees" }, { "headings" : [ - "Discussion" + ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-53lhy" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Transformable-Implementations" }, - "type" : "topLevelPage" - }, - "rawIndexableTextContent" : "Creates a color from an array of component values. Discussion The number of values specified determines how each value is interpreted. The following patterns are supported (R = red, G = green, B = blue, A = alpha, L = luminance): L LA RGB RGBA", - "summary" : "Creates a color from an array of component values.", - "title" : "init(_:)" + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -9279,29 +9606,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/roundedRectangle(width:height:radius:detail:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-r7j4" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rounded rectangle path. The width of the rectangle. The height of the rectangle. The corner radius, The number of line segments used to approximate each corner curve. An optional Color to apply to the path’s points.", - "summary" : "Creates a rounded rectangle path.", - "title" : "roundedRectangle(width:height:radius:detail:color:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-91swk" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-9m686" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the convex hull of a set of line segments. Discussion Parameters edges: A set of line segments to compute the hull around. material: An optional material to apply to the mesh.", - "summary" : "Computes the convex hull of a set of line segments.", - "title" : "convexHull(of:material:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ @@ -9311,45 +9638,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Adds the quaternion rotation on the right to the one on the left. ", - "summary" : "Adds the quaternion rotation on the right to the one on the left.", - "title" : "+=(_:_:)" + "rawIndexableTextContent" : "Material used by a given polygon. This can be any type that conforms to Hashable, but encoding\/decoding is only supported for the following types: Color, String, Int, Data or any NSSecureCodable type. ", + "summary" : "Material used by a given polygon. This can be any type that conforms to Hashable, but encoding\/decoding is only supported for the following types: Color, String, Int, Data or any NSSecureCodable type.", + "title" : "Polygon.Material" }, { "headings" : [ - "Discussion" + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-8gsiw" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/edges(intersecting:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a polygon from a set of vertex positions. A collection of Vector positions for the polygon vertices. An optional Polygon.Material to use for the polygon. Discussion Vertex normals will be set to match the overall face normal of the polygon. Texture coordinates will be set to zero. Vertex colors will be defaulted to white.", - "summary" : "Creates a polygon from a set of vertex positions.", - "title" : "init(_:material:)" + "rawIndexableTextContent" : "Computes a set of edges where the mesh intersects a plane. A Plane to test against the mesh. Return Value A Set of LineSegment representing the polygon edges intersecting the plane.", + "summary" : "Computes a set of edges where the mesh intersects a plane.", + "title" : "edges(intersecting:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(pitch:yaw:roll:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in pitch\/yaw\/roll order. The angle of rotation around the X axis. This is applied first. The angle of rotation around the Y axis. This is applied second. The angle of rotation around the Z axis. This is applied last.", - "summary" : "Creates a rotation from Euler angles applied in pitch\/yaw\/roll order.", - "title" : "init(pitch:yaw:roll:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -9359,16 +9686,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(points:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-7y2vv" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "init(points:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -9378,45 +9702,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/inverted()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/submeshes" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the flip-side of the plane. ", - "summary" : "Returns the flip-side of the plane.", - "title" : "inverted()" + "rawIndexableTextContent" : "The distinct (disconnected) submeshes that make up the mesh. ", + "summary" : "The distinct (disconnected) submeshes that make up the mesh.", + "title" : "submeshes" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-5ic2j" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Multiplies the quaternion rotation on the left by the one on the right. ", - "summary" : "Multiplies the quaternion rotation on the left by the one on the right.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "An orientation or rotation in 3D space. Overview A quaternion can be created from a from a Rotation matrix, or directly from an axis vector and angle, or a from a set of 3 Euler angles (pitch, yaw and roll). In addition to being more compact than a 3x3 rotation matrix, quaternions also avoid a problem known as gymbal lock.", + "summary" : "An orientation or rotation in 3D space.", + "title" : "Quaternion" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-2u7vo" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Returns the intersection point between the specified line segment and this one. The line segment to compare with. Return Value The point of intersection, or nil if the line segments don’t intersect.", + "summary" : "Returns the intersection point between the specified line segment and this one.", + "title" : "intersection(with:)" }, { "headings" : [ @@ -9426,13 +9750,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/identity" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-8lp0l" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The identity rotation (i.e. no rotation). ", - "summary" : "The identity rotation (i.e. no rotation).", - "title" : "identity" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -9442,13 +9766,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-4jhkw" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-1azi6" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a path from an array of path points. An array of PathPoint making up the path.", - "summary" : "Creates a path from an array of path points.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -9458,13 +9782,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/hash(into:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Hashable.hash(into:). ", - "summary" : "Inherited from Hashable.hash(into:).", - "title" : "hash(into:)" + "rawIndexableTextContent" : "Encodes this path point into the given encoder. The encoder to write data to.", + "summary" : "Encodes this path point into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ @@ -9474,13 +9798,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-8q2nt" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", - "summary" : "Inherited from Comparable.<=(_:_:).", - "title" : "<=(_:_:)" + "rawIndexableTextContent" : "Creates a new mesh by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new mesh by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -9490,29 +9814,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a rotation around the Y axis. The angle to rotate by.", - "summary" : "Creates a rotation around the Y axis.", - "title" : "yaw(_:)" + "rawIndexableTextContent" : "Returns a transformed copy of the mesh. A transform to apply to the mesh.", + "summary" : "Returns a transformed copy of the mesh.", + "title" : "transformed(by:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-90bab" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/inverted()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Flips the polygon along its plane and reverses the order and surface normals of the vertices. Return Value The inverted polygon.", + "summary" : "Flips the polygon along its plane and reverses the order and surface normals of the vertices.", + "title" : "inverted()" }, { "headings" : [ @@ -9522,13 +9846,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/tangent" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Align extruded cross-sections to the tangent of the path curve. ", - "summary" : "Align extruded cross-sections to the tangent of the path curve.", - "title" : "Path.Alignment.tangent" + "rawIndexableTextContent" : "Creates an angle from a degrees value. The angle in degrees.", + "summary" : "Creates an angle from a degrees value.", + "title" : "degrees(_:)" }, { "headings" : [ @@ -9538,45 +9862,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The bounds of all the path’s points. ", - "summary" : "The bounds of all the path’s points.", - "title" : "bounds" + "rawIndexableTextContent" : "Returns a rotation divided by the specified value. ", + "summary" : "Returns a rotation divided by the specified value.", + "title" : "\/(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", - "summary" : "Inherited from Comparable...<(_:_:).", - "title" : "..<(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/replacing(_:with:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-5517j" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a copy of the mesh with the specified old material replaced by a new one. The Mesh.Material to be replaced. The Mesh.Material to use instead. Return Value a new Mesh with the material replaced.", - "summary" : "Returns a copy of the mesh with the specified old material replaced by a new one.", - "title" : "replacing(_:with:)" + "rawIndexableTextContent" : "Creates a new vertex from a position with default values for normal, texcoord and color. The position of the vertex in 3D space.", + "summary" : "Creates a new vertex from a position with default values for normal, texcoord and color.", + "title" : "init(_:)" }, { "headings" : [ @@ -9586,45 +9910,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the difference between two quaternion rotations,. ", - "summary" : "Returns the difference between two quaternion rotations,.", - "title" : "-(_:_:)" + "rawIndexableTextContent" : "Returns the angle divided by a numeric denominator. ", + "summary" : "Returns the angle divided by a numeric denominator.", + "title" : "\/(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -9634,13 +9958,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-2v2ef" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -9650,29 +9974,30 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/asin(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The texture wrapping mode to use when generating a mesh. ", - "summary" : "The texture wrapping mode to use when generating a mesh.", - "title" : "Mesh.WrapMode" + "rawIndexableTextContent" : "Creates an angle representing the trigonometric arc sine of the value you provide. The sine value to use to calculate the angle.", + "summary" : "Creates an angle representing the trigonometric arc sine of the value you provide.", + "title" : "asin(_:)" }, { "headings" : [ - "Overview" + "Return Value", + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/split(along:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A distance or position in 3D space. Overview Euclid doesn’t have a 2D vector type. When working with primarily 2D shapes, such as Paths, you can omit the z component when constructing vector and it will default to zero.", - "summary" : "A distance or position in 3D space.", - "title" : "Vector" + "rawIndexableTextContent" : "Split the polygon along a plane. The Plane to split the polygon along. Return Value A pair of arrays representing the polygon fragments in front of and behind the plane respectively. Discussion If the plane and polygon do not intersect, one of the returned arrays will be empty.", + "summary" : "Split the polygon along a plane.", + "title" : "split(along:)" }, { "headings" : [ @@ -9682,13 +10007,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/black" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-1umln" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "black" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -9698,61 +10023,77 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "rawIndexableTextContent" : "Creates a mesh from a RealityKit MeshResource. The MeshResource to convert into a mesh. An array of materials to apply to the mesh.", + "summary" : "Creates a mesh from a RealityKit MeshResource.", + "title" : "init(_:materials:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-55r4j" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/containsPoint(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Returns a Boolean value that indicates if the specified point is inside the mesh. The point to compare. Return Value true if the point lies inside the mesh, and false otherwise.", + "summary" : "Returns a Boolean value that indicates if the specified point is inside the mesh.", + "title" : "containsPoint(_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-4eop9" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a vector from a CoreGraphics CGPoint. the CoreGraphics point.", - "summary" : "Creates a vector from a CoreGraphics CGPoint.", - "title" : "init(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-8b34m" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Creates a size\/scale vector from an array of two coordinates. An array of vector components. Discussion Omitted values are set equal to the first value specified. If no values as specified, the size defaults to one.", + "summary" : "Creates a size\/scale vector from an array of two coordinates.", + "title" : "init(size:)" }, { "headings" : [ @@ -9762,29 +10103,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/length" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The length of the line segment. ", - "summary" : "The length of the line segment.", - "title" : "length" + "rawIndexableTextContent" : "Adds the quaternion rotation on the right to the one on the left. ", + "summary" : "Adds the quaternion rotation on the right to the one on the left.", + "title" : "+=(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/objString()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return Wavefront OBJ string data for the mesh. ", - "summary" : "Return Wavefront OBJ string data for the mesh.", - "title" : "objString()" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ @@ -9794,12 +10135,12 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this line into the given encoder. The encoder to write data to.", - "summary" : "Encodes this line into the given encoder.", + "rawIndexableTextContent" : "Encodes this rotation into the given encoder. The encoder to write data to.", + "summary" : "Encodes this rotation into the given encoder.", "title" : "encode(to:)" }, { @@ -9810,13 +10151,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:ignoringTransforms:materialLookup:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a mesh from a SceneKit node, with optional material mapping. The SCNNode to convert into a mesh. Should transforms from the input node and its children be ignored. An optional closure to map the SceneKit materials to Euclid materials. If omitted, the SCNMaterial will be directly used as the mesh material.", - "summary" : "Creates a mesh from a SceneKit node, with optional material mapping.", - "title" : "init(_:ignoringTransforms:materialLookup:)" + "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", + "summary" : "Inherited from Comparable...<(_:_:).", + "title" : "..<(_:_:)" }, { "headings" : [ @@ -9826,13 +10167,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-29paf" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isClosed" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the angle between this vector and another. The vector to compare with.", - "summary" : "Returns the angle between this vector and another.", - "title" : "angle(with:)" + "rawIndexableTextContent" : "Indicates whether the path is a closed path. ", + "summary" : "Indicates whether the path is a closed path.", + "title" : "isClosed" }, { "headings" : [ @@ -9842,13 +10183,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Subtracts the quaternion rotation on the right from the one on the left. ", - "summary" : "Subtracts the quaternion rotation on the right from the one on the left.", - "title" : "-=(_:_:)" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "init(scnGeometry:materialLookup:)" }, { "headings" : [ @@ -9858,13 +10202,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. ", - "summary" : "Transform the value in place.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ @@ -9874,13 +10218,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withoutTexcoords()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/w" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return a copy of the mesh without texture coordinates. ", - "summary" : "Return a copy of the mesh without texture coordinates.", - "title" : "withoutTexcoords()" + "rawIndexableTextContent" : "The perpendicular distance from the world origin to the plane. ", + "summary" : "The perpendicular distance from the world origin to the plane.", + "title" : "w" }, { "headings" : [ @@ -9890,13 +10234,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/angle" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation. ", - "summary" : "The angle of rotation.", - "title" : "angle" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ @@ -9906,7 +10250,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-732z3" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-4yucl" }, "type" : "topLevelPage" }, @@ -9922,13 +10266,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(url:ignoringTransforms:materialLookup:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-hj8h" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Loads a mesh from a file using any format supported by SceneKit, with optional material mapping. The URL of the file to be loaded. Should node transforms from the input file be ignored. An optional closure to map the SceneKit materials to Euclid materials. If omitted, the SCNMaterial will be directly used as the mesh material.", - "summary" : "Loads a mesh from a file using any format supported by SceneKit, with optional material mapping.", - "title" : "init(url:ignoringTransforms:materialLookup:)" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -9938,29 +10282,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-fyhx" - }, - "type" : "topLevelPage" - }, - "rawIndexableTextContent" : "Creates a quaternion from raw components. An array of 4 floating-point values.", - "summary" : "Creates a quaternion from raw components.", - "title" : "init(_:)" - }, - { - "headings" : [ - "Return Value" - ], - "kind" : "symbol", - "location" : { - "reference" : { - "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/isEmpty" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A closure that maps a Euclid material to an STL facet color. A Euclid material to convert, or nil for the default material. Return Value A Euclid Color value.", - "summary" : "A closure that maps a Euclid material to an STL facet color.", - "title" : "Mesh.STLColorProvider" + "rawIndexableTextContent" : "A Boolean value that indicates whether the bounds is empty (has zero volume). ", + "summary" : "A Boolean value that indicates whether the bounds is empty (has zero volume).", + "title" : "isEmpty" }, { "headings" : [ @@ -9970,29 +10298,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasTexcoords" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-9obdn" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon includes texture coordinates. ", - "summary" : "A Boolean value that indicates whether the polygon includes texture coordinates.", - "title" : "hasTexcoords" + "rawIndexableTextContent" : "Returns whether the leftmost vector has the lower value. This provides a stable order when sorting collections of vectors. ", + "summary" : "Returns whether the leftmost vector has the lower value. This provides a stable order when sorting collections of vectors.", + "title" : "<(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/blue" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", + "rawIndexableTextContent" : " ", "summary" : "", - "title" : "Encodable Implementations" + "title" : "blue" }, { "headings" : [ @@ -10002,13 +10330,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-7073s" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-lsgo" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", - "summary" : "Rotate the value in place.", - "title" : "rotate(by:)" + "rawIndexableTextContent" : "Multiplies the components of the quaternion by the specified value. ", + "summary" : "Multiplies the components of the quaternion by the specified value.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -10018,13 +10346,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/ellipse(width:height:segments:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/front" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a closed elliptical path. The horizontal diameter of the ellipse. The vertical diameter of the ellipse. The number of line segments used to approximate the ellipse. An optional Color to apply to the path’s points.", - "summary" : "Creates a closed elliptical path.", - "title" : "ellipse(width:height:segments:color:)" + "rawIndexableTextContent" : "Generate front faces. ", + "summary" : "Generate front faces.", + "title" : "Mesh.Faces.front" }, { "headings" : [ @@ -10034,77 +10362,77 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-758tv" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the sum of two quaternion rotations. ", - "summary" : "Returns the sum of two quaternion rotations.", - "title" : "+(_:_:)" + "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", + "summary" : "Scale the value in place.", + "title" : "scale(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-9mns5" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a polygon from an array of vertices. An array of Vertex that make up the polygon. An optional Polygon.Material to use for the polygon. Discussion A polygon can be convex or concave, but vertices must be coplanar and non-degenerate. Vertices are assumed to be in anti-clockwise order for the purpose of deriving the face normal.", - "summary" : "Creates a polygon from an array of vertices.", - "title" : "init(_:material:)" + "rawIndexableTextContent" : "An infinite line in 3D space. ", + "summary" : "An infinite line in 3D space.", + "title" : "Line" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/angle" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An axially-aligned bounding box in 3D space. Overview Used for efficient intersection elimination between more complex shapes.", - "summary" : "An axially-aligned bounding box in 3D space.", - "title" : "Bounds" + "rawIndexableTextContent" : "The angle of rotation. ", + "summary" : "The angle of rotation.", + "title" : "angle" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-8feph" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", - "summary" : "Inherited from Comparable....(_:).", - "title" : "...(_:)" + "rawIndexableTextContent" : "A closure that maps a SceneKit material to a Euclid material. An SCNMaterial material to convert. Return Value A Mesh.Material instance, or nil for the default material.", + "summary" : "A closure that maps a SceneKit material to a Euclid material.", + "title" : "Mesh.SCNMaterialProvider" }, { "headings" : [ @@ -10114,13 +10442,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cubeMapped()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/square(size:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Return a copy of the mesh with cube-mapped texture coordinates. ", - "summary" : "Return a copy of the mesh with cube-mapped texture coordinates.", - "title" : "cubeMapped()" + "rawIndexableTextContent" : "Creates a closed square path. The width and height of the square. An optional Color to apply to the path’s points.", + "summary" : "Creates a closed square path.", + "title" : "square(size:color:)" }, { "headings" : [ @@ -10130,13 +10458,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/white" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "white" }, { "headings" : [ @@ -10146,29 +10474,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/default" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an angle from a degrees value. The angle in degrees.", - "summary" : "Creates an angle from a degrees value.", - "title" : "degrees(_:)" + "rawIndexableTextContent" : "Use default alignment heuristic for the given path. ", + "summary" : "Use default alignment heuristic for the given path.", + "title" : "Path.Alignment.default" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices(for:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", - "summary" : "Transform the value in place.", - "title" : "transform(by:)" + "rawIndexableTextContent" : "An array of vertices suitable for constructing a set of edge polygons for the path. The wrap mode to use for generating texture coordinates. Return Value The edge vertices, or an empty array if path has subpaths.", + "summary" : "An array of vertices suitable for constructing a set of edge polygons for the path.", + "title" : "edgeVertices(for:)" }, { "headings" : [ @@ -10178,13 +10506,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/y" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", - "summary" : "Inherited from Comparable....(_:_:).", - "title" : "...(_:_:)" + "rawIndexableTextContent" : "The Y component of the vector. ", + "summary" : "The Y component of the vector.", + "title" : "y" }, { "headings" : [ @@ -10194,29 +10522,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/bounds" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A common protocol for objects that have a bounds. ", - "summary" : "A common protocol for objects that have a bounds.", - "title" : "Bounded" + "rawIndexableTextContent" : "The bounds of the mesh. ", + "summary" : "The bounds of the mesh.", + "title" : "bounds" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/area" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the area of the polygon. ", - "summary" : "Returns the area of the polygon.", - "title" : "area" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -10226,13 +10554,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:isCancelled:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:_:_:texcoord:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently fills an array of paths, avoiding unecessary work if there are duplicates. The array of paths to be filled. The direction the polygon faces. The optional material for the mesh.", - "summary" : "Efficiently fills an array of paths, avoiding unecessary work if there are duplicates.", - "title" : "fill(_:faces:material:isCancelled:)" + "rawIndexableTextContent" : "Creates a curved path point at the specified X, Y and Z coordinates. The X coordinate of the path point. The Y coordinate of the path point. The Z coordinate of the path point. An optional texture coordinate for this path point. An optional vertex color for this path point.", + "summary" : "Creates a curved path point at the specified X, Y and Z coordinates.", + "title" : "curve(_:_:_:texcoord:color:)" }, { "headings" : [ @@ -10242,29 +10570,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xz" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A plane located at the origin, aligned with the X and Z axes. ", - "summary" : "A plane located at the origin, aligned with the X and Z axes.", - "title" : "xz" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitX" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another. Overview Euclid is the underlying implementation for the open source ShapeScript scripting language and ShapeScript macOS app. Anything you can build in ShapeScript can be replicated programmatically in Swift using this library. If you would like to support the development of Euclid, please consider buying a copy of ShapeScript (the app itself is free, but there is an in-app purchase to unlock some features). You can also donate directly to the project via PayPal: Note: Euclid is a fairly complex piece of code, at a fairly early stage of development. You should expect some bugs and breaking changes over the first few releases, and the documentation is a little sparse. Please report any issues you encounter, and I will do my best to fix them.", - "summary" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", - "title" : "Euclid" + "rawIndexableTextContent" : "A vector of length 1 along the X axis. ", + "summary" : "A vector of length 1 along the X axis.", + "title" : "unitX" }, { "headings" : [ @@ -10274,13 +10602,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/extrusionContours(along:twist:align:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an array of contours by extruding one path along another path. The path along which to extrude the shape. Angular twist to apply along the extrusion. The alignment mode to use for the extruded shape.", - "summary" : "Creates an array of contours by extruding one path along another path.", - "title" : "extrusionContours(along:twist:align:)" + "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", + "summary" : "Returns a translated copy of the value.", + "title" : "translated(by:)" }, { "headings" : [ @@ -10290,7 +10618,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-7y2vv" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-1l9u5" }, "type" : "topLevelPage" }, @@ -10306,30 +10634,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-98mbu" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/ellipse(width:height:segments:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "Creates a closed elliptical path. The horizontal diameter of the ellipse. The vertical diameter of the ellipse. The number of line segments used to approximate the ellipse. An optional Color to apply to the path’s points.", + "summary" : "Creates a closed elliptical path.", + "title" : "ellipse(width:height:segments:color:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/lerp(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translate(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Linearly interpolates between two vertices. The vertex to interpolate towards. The unit value that indicates the distance between of this vertex and the target vertex. Return Value A new vertex with values interpolated between the two vertices. Discussion Interpolation is applied to the texture coordinate, normal and color, as well as the position.", - "summary" : "Linearly interpolates between two vertices.", - "title" : "lerp(_:_:)" + "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", + "summary" : "Translate the value in place.", + "title" : "translate(by:)" }, { "headings" : [ @@ -10339,61 +10666,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/isConvex" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/encode(to:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the polygon is convex. ", - "summary" : "A Boolean value that indicates whether the polygon is convex.", - "title" : "isConvex" + "rawIndexableTextContent" : "Encodes this mesh into the given encoder. The encoder to write data to.", + "summary" : "Encodes this mesh into the given encoder.", + "title" : "encode(to:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-rksk" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the nearest point on the specified line to the vector (representing a position in space). The line to project onto. Return Value The nearest point in 3D space that lies on the line.", - "summary" : "Returns the nearest point on the specified line to the vector (representing a position in space).", - "title" : "project(onto:)" + "rawIndexableTextContent" : "Creates a rotation around the Z axis. The angle to rotate by.", + "summary" : "Creates a rotation around the Z axis.", + "title" : "roll(_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "The angle of rotation around the Y-axis. ", + "summary" : "The angle of rotation around the Y-axis.", + "title" : "yaw" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Bounded-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/identity" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Bounded Implementations" + "rawIndexableTextContent" : "The identity quaternion (i.e. no rotation). ", + "summary" : "The identity quaternion (i.e. no rotation).", + "title" : "identity" }, { "headings" : [ @@ -10403,61 +10730,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-r54o" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a bounds from a collection of bounds. A collection of existing bounds that the bounds contains.", - "summary" : "Creates a bounds from a collection of bounds.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Encodable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Encodable Implementations" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/center" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The position of the center of the polygon. This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s bounds. ", - "summary" : "The position of the center of the polygon. This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s bounds.", - "title" : "center" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/y" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The Y component of the vector. ", - "summary" : "The Y component of the vector.", - "title" : "y" + "rawIndexableTextContent" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another. Overview Euclid is the underlying implementation for the open source ShapeScript scripting language and ShapeScript macOS app. Anything you can build in ShapeScript can be replicated programmatically in Swift using this library. If you would like to support the development of Euclid, please consider buying a copy of ShapeScript (the app itself is free, but there is an in-app purchase to unlock some features). You can also donate directly to the project via PayPal: Note: Euclid is a fairly complex piece of code, at a fairly early stage of development. You should expect some bugs and breaking changes over the first few releases, and the documentation is a little sparse. Please report any issues you encounter, and I will do my best to fix them.", + "summary" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", + "title" : "Euclid" }, { "headings" : [ @@ -10467,13 +10794,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:texcoord:color:isCurved:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Creates a path point. The location of the path point. An optional texture coordinate for this path point. An optional vertex color for this path point. A Boolean indicating if point should be curved or sharp.", + "summary" : "Creates a path point.", + "title" : "init(_:texcoord:color:isCurved:)" }, { "headings" : [ @@ -10483,13 +10810,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-3eglz" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-817o2" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the distance between the vector (representing a position in space) from the specified line. The line to compare with. Return Value The absolute perpendicular distance between the point and line.", - "summary" : "Returns the distance between the vector (representing a position in space) from the specified line.", - "title" : "distance(from:)" + "rawIndexableTextContent" : "Returns the nearest point on the specified plane to the vector (representing a position in space). The plane to project onto. Return Value The nearest point in 3D space that lies on the plane.", + "summary" : "Returns the nearest point on the specified plane to the vector (representing a position in space).", + "title" : "project(onto:)" }, { "headings" : [ @@ -10499,13 +10826,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "An infinite 2D plane in 3D space. ", + "summary" : "An infinite 2D plane in 3D space.", + "title" : "Plane" }, { "headings" : [ @@ -10515,13 +10842,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/direction" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/x" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The direction of the line segment as a normalized vector. ", - "summary" : "The direction of the line segment as a normalized vector.", - "title" : "direction" + "rawIndexableTextContent" : "The X component of the vector. ", + "summary" : "The X component of the vector.", + "title" : "x" }, { "headings" : [ @@ -10531,13 +10858,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/position" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withMaterial(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The position of the vertex. ", - "summary" : "The position of the vertex.", - "title" : "position" + "rawIndexableTextContent" : "Creates a copy of the polygon with the specified material. The replacement material, or nil to remove the material.", + "summary" : "Creates a copy of the polygon with the specified material.", + "title" : "withMaterial(_:)" }, { "headings" : [ @@ -10547,13 +10874,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-68kkw" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Combines with the specified rotation. ", - "summary" : "Combines with the specified rotation.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "The angle of rotation around the Z-axis. ", + "summary" : "The angle of rotation around the Z-axis.", + "title" : "roll" }, { "headings" : [ @@ -10563,29 +10890,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-7d8un" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "Creates a color from an NSColor. The NSColor to convert.", + "summary" : "Creates a color from an NSColor.", + "title" : "init(_:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceNormal" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-14arr" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The face normal for the path. Discussion If path is non-planar then this returns an average\/approximate normal.", - "summary" : "The face normal for the path.", - "title" : "faceNormal" + "rawIndexableTextContent" : "Inherited from Comparable....(_:). ", + "summary" : "Inherited from Comparable....(_:).", + "title" : "...(_:)" }, { "headings" : [ @@ -10595,13 +10922,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(roll:yaw:pitch:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Multiplies the angle by a numeric value. ", - "summary" : "Multiplies the angle by a numeric value.", - "title" : "*=(_:_:)" + "rawIndexableTextContent" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order. The angle of rotation around the Z axis. This is applied first. The angle of rotation around the Y axis. This is applied second. The angle of rotation around the X axis. This is applied last.", + "summary" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", + "title" : "init(roll:yaw:pitch:)" }, { "headings" : [ @@ -10611,45 +10938,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-9rm6o" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", - "summary" : "Inherited from Comparable.>=(_:_:).", - "title" : ">=(_:_:)" + "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", + "summary" : "Inherited from Comparable...<(_:_:).", + "title" : "..<(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation around the X-axis. ", - "summary" : "The angle of rotation around the X-axis.", - "title" : "pitch" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersects(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the lines intersect. The line to compare with. Return Value true if the lines intersect and false otherwise.", - "summary" : "Returns a Boolean value that indicates whether the lines intersect.", - "title" : "intersects(_:)" + "rawIndexableTextContent" : "Creates a new polygon by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new polygon by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ @@ -10660,29 +10987,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.type.method" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Efficiently computes the intersection of multiple meshes. Return Value A new mesh representing the intersection of the meshes. Discussion Parameters meshes: A collection of meshes to be intersected. isCancelled: Callback used to cancel the operation.", - "summary" : "Efficiently computes the intersection of multiple meshes.", + "rawIndexableTextContent" : "Returns a new mesh representing the volume shared by both the mesh parameter and the receiver. If these do not intersect, an empty mesh will be returned. Return Value A new mesh representing the intersection of the meshes. Discussion Parameters mesh: The mesh to be intersected with this one. isCancelled: Callback used to cancel the operation.", + "summary" : "Returns a new mesh representing the volume shared by both the mesh parameter and the receiver. If these do not intersect, an empty mesh will be returned.", "title" : "intersection(_:isCancelled:)" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. ", - "summary" : "Returns a transformed copy of the value.", - "title" : "*(_:_:)" + "rawIndexableTextContent" : "An axially-aligned bounding box in 3D space. Overview Used for efficient intersection elimination between more complex shapes.", + "summary" : "An axially-aligned bounding box in 3D space.", + "title" : "Bounds" }, { "headings" : [ @@ -10692,32 +11019,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/with(material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-5mcy5" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : "Deprecated. ", - "summary" : "Deprecated.", - "title" : "with(material:)" + "rawIndexableTextContent" : "Returns a vector with its components multiplied by the specified value. ", + "summary" : "Returns a vector with its components multiplied by the specified value.", + "title" : "*(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-5517j" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new vertex from a position with default values for normal, texcoord and color. The position of the vertex in 3D space.", - "summary" : "Creates a new vertex from a position with default values for normal, texcoord and color.", - "title" : "init(_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -10727,13 +11051,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-9i9s9" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "A zero-length vector. ", + "summary" : "A zero-length vector.", + "title" : "zero" }, { "headings" : [ @@ -10743,45 +11067,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:texcoord:color:isCurved:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(radians:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a path point. The location of the path point. An optional texture coordinate for this path point. An optional vertex color for this path point. A Boolean indicating if point should be curved or sharp.", - "summary" : "Creates a path point.", - "title" : "init(_:texcoord:color:isCurved:)" + "rawIndexableTextContent" : "Creates an angle from a radians value. The angle in radians.", + "summary" : "Creates an angle from a radians value.", + "title" : "init(radians:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/plane" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Encodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The plane upon which all path points lie. Will be nil for non-planar paths. ", - "summary" : "The plane upon which all path points lie. Will be nil for non-planar paths.", - "title" : "plane" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Encodable Implementations" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Transformable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", - "summary" : "Returns a transformed copy of the value.", - "title" : "transformed(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Transformable Implementations" }, { "headings" : [ @@ -10791,29 +11115,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(offset:rotation:scale:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new transform. The translation or position component of the transform. Defaults to zero (no offset). The translation or position component of the transform. Defaults to identity (no rotation). The scaling component of the transform. Defaults to one (no scale adjustment).", - "summary" : "Creates a new transform.", - "title" : "init(offset:rotation:scale:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. A transform to apply to the value.", + "summary" : "Returns a transformed copy of the value.", + "title" : "transformed(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isOne" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "All vector components are one (or close to one) in length. ", - "summary" : "All vector components are one (or close to one) in length.", - "title" : "isOne" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -10823,13 +11147,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-79olr" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/lerp(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the point of intersection between a line and a plane. The Line to compare with. Return Value The point of intersection between the line and plane, or nil if they are parallel.", - "summary" : "Computes the point of intersection between a line and a plane.", - "title" : "intersection(with:)" + "rawIndexableTextContent" : "Linearly interpolate between two colors. The color to interpolate towards. The normalized extent of interpolation, from 0 to 1. Return Value The interpolated color.", + "summary" : "Linearly interpolate between two colors.", + "title" : "lerp(_:_:)" }, { "headings" : [ @@ -10839,61 +11163,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new line segment by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new line segment by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Creates a linear path from a line segment. The LineSegment defining the path. An optional Color to apply to the path’s points.", + "summary" : "Creates a linear path from a line segment.", + "title" : "line(_:color:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/normalized()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable....(_:_:). ", - "summary" : "Inherited from Comparable....(_:_:).", - "title" : "...(_:_:)" + "rawIndexableTextContent" : "Returns the normalized quaternion. Return Value The normalized quaternion (with a length of 1) or zero if the length is 0.", + "summary" : "Returns the normalized quaternion.", + "title" : "normalized()" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-9sfg1" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the angle between this vector and the specified plane. The plane to compare with.", - "summary" : "Returns the angle between this vector and the specified plane.", - "title" : "angle(with:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-622p8" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ @@ -10903,13 +11227,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(from:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/back" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new path by decoding from the given decoder. The decoder to read data from.", - "summary" : "Creates a new path by decoding from the given decoder.", - "title" : "init(from:)" + "rawIndexableTextContent" : "Generate back faces. ", + "summary" : "Generate back faces.", + "title" : "Mesh.Faces.back" }, { "headings" : [ @@ -10919,45 +11243,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/inverted()" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Create a color from RGB values and optional alpha component The red component of the color, from 0 to 1. The green component of the color, from 0 to 1. The blue component of the color, from 0 to 1. The alpha component of the color. Defaults to 1 (fully opaque)", - "summary" : "Create a color from RGB values and optional alpha component", - "title" : "init(_:_:_:_:)" + "rawIndexableTextContent" : "Returns the flip-side of the plane. ", + "summary" : "Returns the flip-side of the plane.", + "title" : "inverted()" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/empty" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "An empty mesh. ", + "summary" : "An empty mesh.", + "title" : "empty" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/lerp(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-90bab" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Linearly interpolate between two colors. The color to interpolate towards. The normalized extent of interpolation, from 0 to 1. Return Value The interpolated color.", - "summary" : "Linearly interpolate between two colors.", - "title" : "lerp(_:_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ @@ -10967,45 +11291,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-89xwv" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/AdditiveArithmetic-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "AdditiveArithmetic Implementations" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-b3v3" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/slerp(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a Euclid Quaternion from a SceneKit quaternion. The SCNQuaternion to convert.", - "summary" : "Creates a Euclid Quaternion from a SceneKit quaternion.", - "title" : "init(_:)" + "rawIndexableTextContent" : "Performs a spherical interpolation between two quaternions. A quaternion to interpolate with. The normalized extent of interpolation, from 0 to 1. Return Value The interpolated quaternion.", + "summary" : "Performs a spherical interpolation between two quaternions.", + "title" : "slerp(_:_:)" }, { "headings" : [ @@ -11015,77 +11339,77 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(submeshes:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a composite mesh from an array of submeshes. An array of meshes.", - "summary" : "Creates a composite mesh from an array of submeshes.", - "title" : "init(submeshes:)" + "rawIndexableTextContent" : "Subtracts the quaternion rotation on the right from the one on the left. ", + "summary" : "Subtracts the quaternion rotation on the right from the one on the left.", + "title" : "-=(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/encode(to:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Encodes this mesh into the given encoder. The encoder to write data to.", - "summary" : "Encodes this mesh into the given encoder.", - "title" : "encode(to:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/cross(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the cross-product of this vector and another. The vector with which to compute the cross product. Return Value Returns a vector that is orthogonal to the two vectors used to compute the cross product.", - "summary" : "Computes the cross-product of this vector and another.", - "title" : "cross(_:)" + "rawIndexableTextContent" : "Creates a rotation around the Y axis. The angle to rotate by.", + "summary" : "Creates a rotation around the Y axis.", + "title" : "yaw(_:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/dot(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Computes the dot-product of this vector and another. The vector with which to compute the dot product. Return Value The dot product of the two vectors.", - "summary" : "Computes the dot-product of this vector and another.", - "title" : "dot(_:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ - + "Discussion" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/isWatertight" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh is watertight, meaning that every edge is attached to two polygons (or a multiple of two). Discussion A value of true doesn’t guarantee that mesh is not self-intersecting or inside-out.", + "summary" : "A Boolean value that indicates whether the mesh is watertight, meaning that every edge is attached to two polygons (or a multiple of two).", + "title" : "isWatertight" }, { "headings" : [ @@ -11095,13 +11419,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:width:depth:detail:material:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)" }, - "type" : "topLevelPage" - }, - "rawIndexableTextContent" : "Creates an extruded text model from an attributed string The text to convert into a model The optional width at which to line-wrap the text. The depth of the extruded text. The number line segments used to approximate glyph curves. Optional material to apply to the mesh.", - "summary" : "Creates an extruded text model from an attributed string", - "title" : "text(_:width:depth:detail:material:)" + "type" : "topLevelPage" + }, + "rawIndexableTextContent" : "Returns the componentwise sum of two vectors. ", + "summary" : "Returns the componentwise sum of two vectors.", + "title" : "+(_:_:)" }, { "headings" : [ @@ -11111,13 +11435,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle of rotation around the Y-axis. ", - "summary" : "The angle of rotation around the Y-axis.", - "title" : "yaw" + "rawIndexableTextContent" : "Creates a offset transform. An offset distance.", + "summary" : "Creates a offset transform.", + "title" : "offset(_:)" }, { "headings" : [ @@ -11127,61 +11451,61 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/corners" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-1icmf" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The points that make up the corners of the bounds. ", - "summary" : "The points that make up the corners of the bounds.", - "title" : "corners" + "rawIndexableTextContent" : "Creates a bounds from a collection of Bounded objects. A collection of bounded objects.", + "summary" : "Creates a bounds from a collection of Bounded objects.", + "title" : "init(_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Multiplies the angle by a numeric value. ", + "summary" : "Multiplies the angle by a numeric value.", + "title" : "*=(_:_:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Returns a transformed copy of the value. ", + "summary" : "Returns a transformed copy of the value.", + "title" : "*(_:_:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-mpk5" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Returns a rotated copy of the bounds. A quaternion to apply to the bounds. Discussion Because a bounds must be axially-aligned, rotating by an angle that is not a multiple of 90 degrees will result in the bounds being increased in size. Rotating it back again will not reduce the size, so this is a potentially irreversible operation. In general, after rotating a shape it is better to recalculate the bounds rather than trying to rotate the previous bounds.", + "summary" : "Returns a rotated copy of the bounds.", + "title" : "rotated(by:)" }, { "headings" : [ @@ -11191,29 +11515,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/tube" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Texture is tube-wrapped. ", - "summary" : "Texture is tube-wrapped.", - "title" : "Mesh.WrapMode.tube" + "rawIndexableTextContent" : "Inherited from Comparable...<(_:). ", + "summary" : "Inherited from Comparable...<(_:).", + "title" : "..<(_:)" }, { "headings" : [ - + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-75on2" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a color from a luminance value and optional alpha component. The luminance value, from 0 to 1. The alpha component. Defaults to 1 (fully opaque)", - "summary" : "Creates a color from a luminance value and optional alpha component.", - "title" : "init(_:_:)" + "rawIndexableTextContent" : "Computes the convex hull of a set of vertices. Discussion Parameters vertices: A set of vertices to compute the hull around. material: An optional material to apply to the mesh.", + "summary" : "Computes the convex hull of a set of vertices.", + "title" : "convexHull(of:material:)" }, { "headings" : [ @@ -11223,45 +11547,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translate(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transform(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Translate the value in place. A translation to apply to the value.", - "summary" : "Translate the value in place.", - "title" : "translate(by:)" + "rawIndexableTextContent" : "Transform the value in place. A transform to apply to the value.", + "summary" : "Transform the value in place.", + "title" : "transform(by:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-55ayx" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-95v17" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "Returns a Boolean value that indicates whether the two bounds intersect. The bounds to compare. Return Value true if the bounds intersect, and false otherwise.", + "summary" : "Returns a Boolean value that indicates whether the two bounds intersect.", + "title" : "intersects(_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/dot(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "Computes the dot-product of this vector and another. The vector with which to compute the dot product. Return Value The dot product of the two vectors.", + "summary" : "Computes the dot-product of this vector and another.", + "title" : "dot(_:)" }, { "headings" : [ @@ -11271,45 +11595,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/right" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable...<(_:_:). ", - "summary" : "Inherited from Comparable...<(_:_:).", - "title" : "..<(_:_:)" + "rawIndexableTextContent" : "A normalized direction vector pointing rightwards relative to the current rotation. ", + "summary" : "A normalized direction vector pointing rightwards relative to the current rotation.", + "title" : "right" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(start:end:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Creates a line segment with a start and end point. The start of the line segment. The end of the line segment.", + "summary" : "Creates a line segment with a start and end point.", + "title" : "init(start:end:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/slerp(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:_:_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Performs a spherical linear interpolation between two rotations. The rotation to interpolate towards. The normalized extent of interpolation, from 0 to 1. Return Value The interpolated rotation.", - "summary" : "Performs a spherical linear interpolation between two rotations.", - "title" : "slerp(_:_:)" + "rawIndexableTextContent" : "Creates a quaternion from raw component values. ", + "summary" : "Creates a quaternion from raw component values.", + "title" : "init(_:_:_:_:)" }, { "headings" : [ @@ -11319,32 +11643,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(cgPath:detail:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygons" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "init(cgPath:detail:color:)" + "rawIndexableTextContent" : "The polygons that make up the mesh. ", + "summary" : "The polygons that make up the mesh.", + "title" : "polygons" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:detail:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a Path from a CGPath. The returned path may contain nested subpaths. The CoreGraphics path to convert. The number of line segments used to approximate cubic or quadratic bezier curves. An optional Color to apply to the path vertices.", - "summary" : "Creates a Path from a CGPath. The returned path may contain nested subpaths.", - "title" : "init(_:detail:color:)" + "rawIndexableTextContent" : "A distance or position in 3D space. Overview Euclid doesn’t have a 2D vector type. When working with primarily 2D shapes, such as Paths, you can omit the z component when constructing vector and it will default to zero.", + "summary" : "A distance or position in 3D space.", + "title" : "Vector" }, { "headings" : [ @@ -11354,45 +11675,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/!=(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/material-swift.property" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", - "summary" : "Inherited from Equatable.!=(_:_:).", - "title" : "!=(_:_:)" + "rawIndexableTextContent" : "An optional Polygon.Material associated with the polygon. ", + "summary" : "An optional Polygon.Material associated with the polygon.", + "title" : "material" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/arc(angle:radius:segments:color:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(from:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a circular arc. The angular span of the arc, measured clockwise from vertical. Defaults to pi (180 degrees). The distance from the center of the arc to each point used to approximate its shape. The number of line segments used to approximate the circle. An optional Color to apply to the path’s points. Discussion Because the arc is approximated using line segments, its radius is not uniform. The radius specified is the outer radius, i.e. the radius at the end points.", - "summary" : "Creates a circular arc.", - "title" : "arc(angle:radius:segments:color:)" + "rawIndexableTextContent" : "Creates a new path by decoding from the given decoder. The decoder to read data from.", + "summary" : "Creates a new path by decoding from the given decoder.", + "title" : "init(from:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a translated copy of the value. An offset vector to apply to the value.", - "summary" : "Returns a translated copy of the value.", - "title" : "translated(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -11402,13 +11723,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/white" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-76uyz" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "white" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ @@ -11418,45 +11739,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ - + "Return Value" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/normal" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-79olr" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A surface normal vector, perpendicular to the plane. ", - "summary" : "A surface normal vector, perpendicular to the plane.", - "title" : "normal" + "rawIndexableTextContent" : "Computes the point of intersection between a line and a plane. The Line to compare with. Return Value The point of intersection between the line and plane, or nil if they are parallel.", + "summary" : "Computes the point of intersection between a line and a plane.", + "title" : "intersection(with:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ @@ -11466,13 +11787,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/position" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The position of the path point. ", - "summary" : "The position of the path point.", - "title" : "position" + "rawIndexableTextContent" : "Transform the value in place. ", + "summary" : "Transform the value in place.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -11482,13 +11803,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitX" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(normal:pointOnPlane:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A vector of length 1 along the X axis. ", - "summary" : "A vector of length 1 along the X axis.", - "title" : "unitX" + "rawIndexableTextContent" : "Creates a plane from a point and surface normal. The surface normal of the plane. An arbitrary point on the plane.", + "summary" : "Creates a plane from a point and surface normal.", + "title" : "init(normal:pointOnPlane:)" }, { "headings" : [ @@ -11498,30 +11819,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-eado" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(axis:angle:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an axis-aligned cubical mesh. The center point of the mesh. The size of the mesh. The direction of the generated polygon faces. The way that texture coordinates are calculated for the cube. The optional material for the mesh.", - "summary" : "Creates an axis-aligned cubical mesh.", - "title" : "cube(center:size:faces:wrapMode:material:)" + "rawIndexableTextContent" : "Creates a rotation from an axis and angle. A vector defining the axis of rotation. The angle of rotation around the axis.", + "summary" : "Creates a rotation from an axis and angle.", + "title" : "init(axis:angle:)" }, { "headings" : [ - "Return Value", - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/makeWatertight()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Removes hairline cracks by inserting additional vertices without altering the shape. Return Value A new mesh with new vertices inserted if needed. Discussion This method is not always successful. Check isWatertight after to verify.", - "summary" : "Removes hairline cracks by inserting additional vertices without altering the shape.", - "title" : "makeWatertight()" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -11531,16 +11851,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(polygon:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curved(_:)" }, "type" : "topLevelPage" }, - "platforms" : [ - - ], - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "init(polygon:)" + "rawIndexableTextContent" : "Curve or uncurve the point. Whether the resultant point should be curved.", + "summary" : "Curve or uncurve the point.", + "title" : "curved(_:)" }, { "headings" : [ @@ -11550,13 +11867,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/inverted()" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Flip the direction of the line segment ", - "summary" : "Flip the direction of the line segment", - "title" : "inverted()" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ @@ -11566,29 +11883,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/plane" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "The plane on which all vertices lie. ", + "summary" : "The plane on which all vertices lie.", + "title" : "plane" }, { "headings" : [ - + "Return Value" ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Transformable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-2nysu" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Transformable Implementations" + "rawIndexableTextContent" : "Returns the point where the specified line intersects this one. The line to compare with. Return Value The point of intersection, or nil if the lines don’t intersect.", + "summary" : "Returns the point where the specified line intersects this one.", + "title" : "intersection(with:)" }, { "headings" : [ @@ -11598,45 +11915,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasTexcoords" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotated(by:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh includes texture coordinates. ", - "summary" : "A Boolean value that indicates whether the mesh includes texture coordinates.", - "title" : "hasTexcoords" + "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", + "summary" : "Returns a rotated copy of the value.", + "title" : "rotated(by:)" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-1aqv9" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "Returns whether the leftmost angle has the lower value. ", + "summary" : "Returns whether the leftmost angle has the lower value.", + "title" : "<(_:_:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-76uyz" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Decodable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Decodable Implementations" }, { "headings" : [ @@ -11646,7 +11963,7 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)" }, "type" : "topLevelPage" }, @@ -11662,13 +11979,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/axis" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(cgPath:detail:color:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Align extruded cross-sections with the X, Y or Z axis (whichever is most perpendicular to the extrusion path). ", - "summary" : "Align extruded cross-sections with the X, Y or Z axis (whichever is most perpendicular to the extrusion path).", - "title" : "Path.Alignment.axis" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "init(cgPath:detail:color:)" }, { "headings" : [ @@ -11678,29 +11998,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:font:width:detail:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates an array of glyph contours from a string and font you provide. The text to convert. The font to use for the text. The optional width at which to line-wrap the text. The number line segments used to approximate glyph curves.", - "summary" : "Creates an array of glyph contours from a string and font you provide.", - "title" : "text(_:font:width:detail:)" + "rawIndexableTextContent" : "An array containing the X, Y, and Z components of the vector. ", + "summary" : "An array containing the X, Y, and Z components of the vector.", + "title" : "components" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-j6oq" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Inherited from Comparable.<=(_:_:). ", - "summary" : "Inherited from Comparable.<=(_:_:).", - "title" : "<=(_:_:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -11710,29 +12030,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-25eby" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/green" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a color from a CoreGraphics CGColor. The CoreGraphics color instance.", - "summary" : "Creates a color from a CoreGraphics CGColor.", - "title" : "init(_:)" + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "green" }, { "headings" : [ ], - "kind" : "article", + "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Equatable-Implementations" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexNormals" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "", - "summary" : "", - "title" : "Equatable Implementations" + "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh includes vertex normals that differ from the face normal. ", + "summary" : "A Boolean value that indicates whether the mesh includes vertex normals that differ from the face normal.", + "title" : "hasVertexNormals" }, { "headings" : [ @@ -11742,13 +12062,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/isZero" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/halfPi" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The angle is zero (or close to zero). ", - "summary" : "The angle is zero (or close to zero).", - "title" : "isZero" + "rawIndexableTextContent" : "Angle representing a quarter rotation. ", + "summary" : "Angle representing a quarter rotation.", + "title" : "halfPi" }, { "headings" : [ @@ -11758,29 +12078,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-5dvuy" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns the sum of two angles. ", - "summary" : "Returns the sum of two angles.", - "title" : "+(_:_:)" + "rawIndexableTextContent" : "Inherited from Comparable.>=(_:_:). ", + "summary" : "Inherited from Comparable.>=(_:_:).", + "title" : ">=(_:_:)" }, { "headings" : [ - "Discussion" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-7u9hf" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a bounds from two points. The first point. The second point. Discussion Unlike the init(min:max:) constructor, the order of the points doesn’t matter.", - "summary" : "Creates a bounds from two points.", - "title" : "init(_:_:)" + "rawIndexableTextContent" : "Multiplies the rotation angle by the specified value. ", + "summary" : "Multiplies the rotation angle by the specified value.", + "title" : "*=(_:_:)" }, { "headings" : [ @@ -11790,13 +12110,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/latheProfile" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Cropped and flattened version of path suitable for lathing around the Y axis. ", + "summary" : "Cropped and flattened version of path suitable for lathing around the Y axis.", + "title" : "latheProfile" }, { "headings" : [ @@ -11806,13 +12126,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/green" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/orderedEdges" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : " ", - "summary" : "", - "title" : "green" + "rawIndexableTextContent" : "Returns the ordered array of polygon edges. ", + "summary" : "Returns the ordered array of polygon edges.", + "title" : "orderedEdges" }, { "headings" : [ @@ -11822,45 +12142,45 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-5p6di" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-6nlm" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a scaled copy of the value. A uniform scale factor to apply to the value.", - "summary" : "Returns a scaled copy of the value.", - "title" : "scaled(by:)" + "rawIndexableTextContent" : "Creates a new vector from a CoreGraphics size. the CoreGraphics size.", + "summary" : "Creates a new vector from a CoreGraphics size.", + "title" : "init(_:)" }, { "headings" : [ - "Overview" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A 3D surface made of polygons. Overview A mesh surface can be convex or concave, and can have zero volume (for example, a flat shape such as a square) but shouldn’t contain holes or exposed back-faces. The result of CSG operations on meshes that have holes or exposed back-faces is undefined.", - "summary" : "A 3D surface made of polygons.", - "title" : "Mesh" + "rawIndexableTextContent" : "Creates a path point from a vertex. The vertex to create the point from.", + "summary" : "Creates a path point from a vertex.", + "title" : "init(_:)" }, { "headings" : [ - "Return Value" + "Discussion" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/merge(_:ensureConvex:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-8gsiw" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Merges this polygon with another, removing redundant vertices where possible. The polygon to merge with. A Boolean indicating is the resultant polygon must be convex. Return Value The combined polygon, or nil if the polygons can’t be merged.", - "summary" : "Merges this polygon with another, removing redundant vertices where possible.", - "title" : "merge(_:ensureConvex:)" + "rawIndexableTextContent" : "Creates a polygon from a set of vertex positions. A collection of Vector positions for the polygon vertices. An optional Polygon.Material to use for the polygon. Discussion Vertex normals will be set to match the overall face normal of the polygon. Texture coordinates will be set to zero. Vertex colors will be defaulted to white.", + "summary" : "Creates a polygon from a set of vertex positions.", + "title" : "init(_:material:)" }, { "headings" : [ @@ -11870,29 +12190,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lengthSquared" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-3m9le" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "The square of the length of the vector. This is less expensive to compute than the length itself. ", - "summary" : "The square of the length of the vector. This is less expensive to compute than the length itself.", - "title" : "lengthSquared" + "rawIndexableTextContent" : "Rotate the value in place. A rotation to apply to the value.", + "summary" : "Rotate the value in place.", + "title" : "rotate(by:)" }, { "headings" : [ ], - "kind" : "symbol", + "kind" : "article", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(normal:pointOnPlane:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Equatable-Implementations" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a plane from a point and surface normal. The surface normal of the plane. An arbitrary point on the plane.", - "summary" : "Creates a plane from a point and surface normal.", - "title" : "init(normal:pointOnPlane:)" + "rawIndexableTextContent" : "", + "summary" : "", + "title" : "Equatable Implementations" }, { "headings" : [ @@ -11902,13 +12222,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-758tv" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasTexcoords" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A uniform scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "A Boolean value that indicates whether the mesh includes texture coordinates. ", + "summary" : "A Boolean value that indicates whether the mesh includes texture coordinates.", + "title" : "hasTexcoords" }, { "headings" : [ @@ -11918,13 +12238,13 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/empty" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/center" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An empty bounds. ", - "summary" : "An empty bounds.", - "title" : "empty" + "rawIndexableTextContent" : "The center of the bounds. If the bounds is empty this will return the zero vector. ", + "summary" : "The center of the bounds. If the bounds is empty this will return the zero vector.", + "title" : "center" }, { "headings" : [ @@ -11934,29 +12254,29 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/!=(_:_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "A vertex represents a corner of a Polygon or a point on the surface of a Mesh. ", - "summary" : "A vertex represents a corner of a Polygon or a point on the surface of a Mesh.", - "title" : "Vertex" + "rawIndexableTextContent" : "Inherited from Equatable.!=(_:_:). ", + "summary" : "Inherited from Equatable.!=(_:_:).", + "title" : "!=(_:_:)" }, { "headings" : [ - + "Overview" ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-3en6y" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Scale the value in place. A vector scale factor to apply to the value.", - "summary" : "Scale the value in place.", - "title" : "scale(by:)" + "rawIndexableTextContent" : "A 3D surface made of polygons. Overview A mesh surface can be convex or concave, and can have zero volume (for example, a flat shape such as a square) but shouldn’t contain holes or exposed back-faces. The result of CSG operations on meshes that have holes or exposed back-faces is undefined.", + "summary" : "A 3D surface made of polygons.", + "title" : "Mesh" }, { "headings" : [ @@ -11966,13 +12286,16 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.method" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "An infinite line in 3D space. ", - "summary" : "An infinite line in 3D space.", - "title" : "Line" + "platforms" : [ + + ], + "rawIndexableTextContent" : " ", + "summary" : "", + "title" : "xor(_:isCancelled:)" }, { "headings" : [ @@ -11982,28 +12305,28 @@ "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Returns a rotated copy of the value. A rotation to apply to the value.", - "summary" : "Returns a rotated copy of the value.", - "title" : "rotated(by:)" + "rawIndexableTextContent" : "Returns a scaled copy of the value. A vector scale factor to apply to the value.", + "summary" : "Returns a scaled copy of the value.", + "title" : "scaled(by:)" }, { "headings" : [ - "Return Value" + ], "kind" : "symbol", "location" : { "reference" : { "interfaceLanguage" : "swift", - "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/union(_:)" + "url" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withTextureTransform(_:)" }, "type" : "topLevelPage" }, - "rawIndexableTextContent" : "Creates a new bounds that contains both the specified bounds and this one. The other bounds to be included. Return Value The combined bounds.", - "summary" : "Creates a new bounds that contains both the specified bounds and this one.", - "title" : "union(_:)" + "rawIndexableTextContent" : "Return a copy of the mesh with transformed texture coordinates. The transform to apply to the texture coordinates.", + "summary" : "Return a copy of the mesh with transformed texture coordinates.", + "title" : "withTextureTransform(_:)" } ] \ No newline at end of file diff --git a/docs/linkable-entities.json b/docs/linkable-entities.json index cff1d7b4..79b1aa0e 100644 --- a/docs/linkable-entities.json +++ b/docs/linkable-entities.json @@ -1,44 +1,8 @@ [ - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Encodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/encode(to:)" - ], - "title" : "Instance Methods" - } - ], - "title" : "Encodable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" - }, { "abstract" : [ { - "text" : "Computes the dot-product of this quaternion and another.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -56,36 +20,43 @@ }, { "kind" : "identifier", - "text" : "dot" + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sd", "text" : "Double" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/dot(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/dot(_:)", + "path" : "\/documentation\/euclid\/transformable\/scaled(by:)-5p6di", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-5p6di", "taskGroups" : [ ], - "title" : "dot(_:)", - "usr" : "s:6Euclid10QuaternionV3dotySdACF" + "title" : "scaled(by:)", + "usr" : "s:6Euclid13TransformableP6scaled2byxSd_tF" }, { "abstract" : [ @@ -124,8 +95,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -134,18 +105,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/rotate(by:)-15yni", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-15yni", + "path" : "\/documentation\/euclid\/mesh\/rotate(by:)-3uymx", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-3uymx", "taskGroups" : [ ], "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Creates a new rotation by decoding from the given decoder.", "type" : "text" } ], @@ -155,15 +126,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "rotate" + "text" : "init" }, { "kind" : "text", @@ -171,7 +134,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -179,28 +142,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ")" + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/rotate(by:)-r7j4", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-r7j4", + "path" : "\/documentation\/euclid\/rotation\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(from:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid9PathPointV" + "title" : "init(from:)", + "usr" : "s:6Euclid8RotationV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Creates a plane from a set of points.", + "text" : "The bounding box containing the line segment.", "type" : "text" } ], @@ -210,44 +177,40 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "points" + "kind" : "identifier", + "text" : "bounds" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "])" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/init(points:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(points:)", + "path" : "\/documentation\/euclid\/linesegment\/bounds", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/bounds", "taskGroups" : [ ], - "title" : "init(points:)", - "usr" : "s:6Euclid5PlaneV6pointsACSgSayAA6VectorVG_tcfc" + "title" : "bounds", + "usr" : "s:6Euclid11LineSegmentV6boundsAA6BoundsVvp" }, { "abstract" : [ { - "text" : "Creates a corner path point at the specified X, Y and Z coordinates.", + "text" : "Loads a mesh from a file using any format supported by SceneKit, with optional material mapping.", "type" : "text" } ], @@ -257,50 +220,24 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "point" + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "externalParam", + "text" : "url" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:10Foundation3URLV", + "text" : "URL" }, { "kind" : "text", @@ -308,7 +245,7 @@ }, { "kind" : "externalParam", - "text" : "texcoord" + "text" : "ignoringTransforms" }, { "kind" : "text", @@ -316,16 +253,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" }, { "kind" : "text", - "text" : "?, " + "text" : ", " }, { "kind" : "externalParam", - "text" : "color" + "text" : "materialLookup" }, { "kind" : "text", @@ -333,28 +270,27 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", - "text" : "?) -> " + "text" : "?) " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/point(_:_:_:texcoord:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:_:_:texcoord:color:)", + "path" : "\/documentation\/euclid\/mesh\/init(url:ignoringtransforms:materiallookup:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(url:ignoringTransforms:materialLookup:)", "taskGroups" : [ ], - "title" : "point(_:_:_:texcoord:color:)", - "usr" : "s:6Euclid9PathPointV5point___8texcoord5colorACSd_S2dAA6VectorVSgAA5ColorVSgtFZ" + "title" : "init(url:ignoringTransforms:materialLookup:)", + "usr" : "s:6Euclid4MeshV3url18ignoringTransforms14materialLookupAC10Foundation3URLV_Sbs11AnyHashableVSgSo11SCNMaterialCcSgtKcfc" }, { "availableLanguages" : [ @@ -362,12 +298,12 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Decodable-Implementations", + "path" : "\/documentation\/euclid\/transform\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Decodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(from:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(from:)" ], "title" : "Initializers" } @@ -375,51 +311,6 @@ "title" : "Decodable Implementations" }, { - "abstract" : [ - { - "text" : "Creates a transform from a SceneKit transform matrix.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@SCNMatrix4", - "text" : "SCNMatrix4" - }, - { - "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/init(_:)-83oy3", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3", - "taskGroups" : [ - - ], - "title" : "init(_:)", - "usr" : "s:6Euclid9TransformVyACSo13CATransform3DVcfc" - }, - { - "abstract" : [ - { - "text" : "Computes the convex hull of a set of paths.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -442,74 +333,64 @@ }, { "kind" : "identifier", - "text" : "convexHull" + "text" : "..." }, { "kind" : "text", - "text" : "<" - }, - { - "kind" : "genericParameter", - "text" : "T" + "text" : " " }, { "kind" : "text", - "text" : ">(" + "text" : "(" }, { - "kind" : "externalParam", - "text" : "of" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA4PathV7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "text" : "Self" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SN", + "text" : "ClosedRange" }, { "kind" : "text", - "text" : ": " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "text" : "Self" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ">" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-4hvi3", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-4hvi3", + "path" : "\/documentation\/euclid\/linesegment\/'...(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:_:)", "taskGroups" : [ ], - "title" : "convexHull(of:material:)", - "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA4PathV7ElementRtzlFZ" + "title" : "...(_:_:)", + "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Creates a new mesh by decoding from the given decoder.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -519,7 +400,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "translate" }, { "kind" : "text", @@ -527,7 +416,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "by" }, { "kind" : "text", @@ -535,109 +424,109 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(from:)", + "path" : "\/documentation\/euclid\/transformable\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translate(by:)", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid4MeshV4fromACs7Decoder_p_tKcfc" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF" }, { + "abstract" : [ + { + "text" : "Creates a new transform.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "offset" }, { "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "..<" + "text" : ": " }, { - "kind" : "text", - "text" : " " + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "(" + "text" : "?, " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "rotation" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " + "text" : "?, " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sn", - "text" : "Range" + "kind" : "externalParam", + "text" : "scale" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ">" + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/'.._(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:_:)", + "path" : "\/documentation\/euclid\/transform\/init(offset:rotation:scale:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(offset:rotation:scale:)", "taskGroups" : [ ], - "title" : "..<(_:_:)", - "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "init(offset:rotation:scale:)", + "usr" : "s:6Euclid9TransformV6offset8rotation5scaleAcA6VectorVSg_AA8RotationVSgAItcfc" }, { "abstract" : [ { - "text" : "Creates a new bounds representing the intersection between the specified bounds and this one.", + "text" : "Efficiently forms a union from multiple meshes.", "type" : "text" } ], @@ -647,56 +536,12 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, - { - "kind" : "identifier", - "text" : "intersection" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/intersection(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersection(_:)", - "taskGroups" : [ - - ], - "title" : "intersection(_:)", - "usr" : "s:6Euclid6BoundsV12intersectionyA2CF" - }, - { - "abstract" : [ - { - "text" : "Returns one or more polygons needed to fill the path.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -707,62 +552,66 @@ }, { "kind" : "identifier", - "text" : "facePolygons" + "text" : "union" }, { "kind" : "text", - "text" : "(" + "text" : "<" }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : ": " + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid4MeshV5union_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : "." + "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "kind" : "externalParam", + "text" : "isCancelled" }, { "kind" : "text", - "text" : "?) -> [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : "]" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/facepolygons(material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/facePolygons(material:)", + "path" : "\/documentation\/euclid\/mesh\/union(_:iscancelled:)-swift.type.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.type.method", "taskGroups" : [ ], - "title" : "facePolygons(material:)", - "usr" : "s:6Euclid4PathV12facePolygons8materialSayAA7PolygonVGs11AnyHashableVSg_tF" + "title" : "union(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV5union_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" }, { "abstract" : [ { - "text" : "Replace\/remove point color.", + "text" : "Creates a spherical mesh.", "type" : "text" } ], @@ -770,6 +619,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -780,67 +637,49 @@ }, { "kind" : "identifier", - "text" : "withColor" + "text" : "sphere" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "kind" : "externalParam", + "text" : "radius" }, { "kind" : "text", - "text" : "?) -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/withcolor(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/withColor(_:)", - "taskGroups" : [ - - ], - "title" : "withColor(_:)", - "usr" : "s:6Euclid9PathPointV9withColoryAcA0E0VSgF" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, { - "text" : "Split the mesh along a plane.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "slices" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "split" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "along" + "text" : "stacks" }, { "kind" : "text", @@ -848,12 +687,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : ") -> (front" + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "poleDetail" }, { "kind" : "text", @@ -861,12 +704,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : "?, back" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "faces" }, { "kind" : "text", @@ -874,46 +721,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", - "text" : "?)" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/split(along:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/split(along:)", - "taskGroups" : [ - - ], - "title" : "split(along:)", - "usr" : "s:6Euclid4MeshV5split5alongACSg5front_AF4backtAA5PlaneV_tF" - }, - { - "abstract" : [ + "text" : ", " + }, { - "text" : "A normalized direction vector pointing rightwards relative to the current rotation.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "externalParam", + "text" : "wrapMode" + }, { - "kind" : "keyword", - "text" : "var" + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "right" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", @@ -921,24 +755,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/right", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/right", + "path" : "\/documentation\/euclid\/mesh\/sphere(radius:slices:stacks:poledetail:faces:wrapmode:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)", "taskGroups" : [ ], - "title" : "right", - "usr" : "s:6Euclid8RotationV5rightAA6VectorVvp" + "title" : "sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV6sphere6radius6slices6stacks10poleDetail5faces8wrapMode8materialACSd_S2iSgSiAC5FacesOAC04WrapK0Os11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Divides the angle by a numeric denominator.", "type" : "text" } ], @@ -946,6 +789,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -956,48 +807,57 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "\/=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)", + "path" : "\/documentation\/euclid\/angle\/\/=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/=(_:_:)", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "\/=(_:_:)", + "usr" : "s:6Euclid5AngleV2deoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "Use default alignment heuristic for the given path.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -1007,7 +867,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "func" }, { "kind" : "text", @@ -1015,23 +875,44 @@ }, { "kind" : "identifier", - "text" : "`default`" + "text" : "scale" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/alignment\/default", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/default", + "path" : "\/documentation\/euclid\/transformable\/scale(by:)-8ec9r", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-8ec9r", "taskGroups" : [ ], - "title" : "Path.Alignment.default", - "usr" : "s:6Euclid4PathV9AlignmentO7defaultyA2EmF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF" }, { "abstract" : [ { - "text" : "Creates a mesh from a SceneKit geometry, with optional material mapping.", + "text" : "Linearly interpolates between two vertices.", "type" : "text" } ], @@ -1041,53 +922,58 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)SCNGeometry", - "text" : "SCNGeometry" + "kind" : "identifier", + "text" : "lerp" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { - "kind" : "externalParam", - "text" : "materialLookup" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?)" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)", + "path" : "\/documentation\/euclid\/vertex\/lerp(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/lerp(_:_:)", "taskGroups" : [ ], - "title" : "init(_:materialLookup:)", - "usr" : "s:6Euclid4MeshV_14materialLookupACSgSo11SCNGeometryC_s11AnyHashableVSgSo11SCNMaterialCcSgtcfc" + "title" : "lerp(_:_:)", + "usr" : "s:6Euclid6VertexV4lerpyA2C_SdtF" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the polygon includes vertex colors.", + "text" : "Splits all polygons in the mesh into triangles.", "type" : "text" } ], @@ -1097,7 +983,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -1105,32 +991,40 @@ }, { "kind" : "identifier", - "text" : "hasVertexColors" + "text" : "triangulate" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/hasvertexcolors", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexColors", + "path" : "\/documentation\/euclid\/mesh\/triangulate()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/triangulate()", "taskGroups" : [ ], - "title" : "hasVertexColors", - "usr" : "s:6Euclid7PolygonV15hasVertexColorsSbvp" + "title" : "triangulate()", + "usr" : "s:6Euclid4MeshV11triangulateACyF" }, { "abstract" : [ { - "text" : "Returns an array containing the red, green, blue, and alpha components of the color.", + "text" : "Returns whether the leftmost line segment has the lower value.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This provides a stable order when sorting collections of line segments.", "type" : "text" } ], @@ -1140,7 +1034,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -1148,36 +1050,54 @@ }, { "kind" : "identifier", - "text" : "components" + "text" : "<" }, { "kind" : "text", - "text" : ": [" + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" }, { "kind" : "text", - "text" : "]" + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/components", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/components", + "path" : "\/documentation\/euclid\/linesegment\/_(_:_:)-2si4j", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-2si4j", "taskGroups" : [ ], - "title" : "components", - "usr" : "s:6Euclid5ColorV10componentsSaySdGvp" + "title" : "<(_:_:)", + "usr" : "s:6Euclid11LineSegmentV1loiySbAC_ACtFZ" }, { "abstract" : [ { - "text" : "Encodes this path point into the given encoder.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -1195,7 +1115,7 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "scale" }, { "kind" : "text", @@ -1203,7 +1123,7 @@ }, { "kind" : "externalParam", - "text" : "to" + "text" : "by" }, { "kind" : "text", @@ -1211,32 +1131,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/encode(to:)", + "path" : "\/documentation\/euclid\/linesegment\/scale(by:)-2v2ef", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-2v2ef", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid9PathPointV6encode2toys7Encoder_p_tKF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Creates an angle from a radians value.", + "text" : "The texture wrapping mode to use when generating a mesh.", "type" : "text" } ], @@ -1246,12 +1162,52 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "enum" }, { "kind" : "text", "text" : " " }, + { + "kind" : "identifier", + "text" : "WrapMode" + } + ], + "kind" : "org.swift.docc.kind.enumeration", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/wrapmode", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/default", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/none", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/shrink", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/tube" + ], + "title" : "Enumeration Cases" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/Equatable-Implementations" + ], + "title" : "Default Implementations" + } + ], + "title" : "Mesh.WrapMode", + "usr" : "s:6Euclid4MeshV8WrapModeO" + }, + { + "abstract" : [ + { + "text" : "Flip the direction of the line segment", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -1262,86 +1218,84 @@ }, { "kind" : "identifier", - "text" : "radians" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "inverted" }, { "kind" : "text", - "text" : ") -> " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/radians(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians(_:)", + "path" : "\/documentation\/euclid\/linesegment\/inverted()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/inverted()", "taskGroups" : [ ], - "title" : "radians(_:)", - "usr" : "s:6Euclid5AngleV7radiansyACSdFZ" + "title" : "inverted()", + "usr" : "s:6Euclid11LineSegmentV8invertedACyF" }, { + "abstract" : [ + { + "text" : "Computes the trigonometric tangent of an angle.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "tan" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "orange" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.function", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/orange", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/orange", + "path" : "\/documentation\/euclid\/tan(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/tan(_:)", "taskGroups" : [ ], - "title" : "orange", - "usr" : "s:6Euclid5ColorV6orangeACvpZ" + "title" : "tan(_:)", + "usr" : "s:6Euclid3tanySdAA5AngleVF" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "The position of the path point.", "type" : "text" } ], @@ -1351,7 +1305,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -1359,15 +1313,7 @@ }, { "kind" : "identifier", - "text" : "rotate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "position" }, { "kind" : "text", @@ -1375,28 +1321,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/rotate(by:)-5a3iz", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-5a3iz", + "path" : "\/documentation\/euclid\/pathpoint\/position", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/position", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF" + "title" : "position", + "usr" : "s:6Euclid9PathPointV8positionAA6VectorVvp" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -1414,7 +1356,7 @@ }, { "kind" : "identifier", - "text" : "rotated" + "text" : "transformed" }, { "kind" : "text", @@ -1430,8 +1372,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -1439,24 +1381,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "text" : "Self" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)", + "path" : "\/documentation\/euclid\/vertex\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid6VertexV7rotated2byAcA8RotationV_tF" + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "The color for the vertex.", + "text" : "Splits all polygons in the mesh that are concave or have more than the specified number of", "type" : "text" }, { @@ -1464,7 +1405,7 @@ "type" : "text" }, { - "text" : "This will be multiplied by the material color, so set it to white if you do not require per-vertex colors.", + "text" : "sides into two or more convex polygons.", "type" : "text" } ], @@ -1474,7 +1415,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -1482,7 +1423,15 @@ }, { "kind" : "identifier", - "text" : "color" + "text" : "tessellate" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "maxSides" }, { "kind" : "text", @@ -1490,24 +1439,51 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/color", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/color", + "path" : "\/documentation\/euclid\/mesh\/tessellate(maxsides:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/tessellate(maxSides:)", "taskGroups" : [ ], - "title" : "color", - "usr" : "s:6Euclid6VertexV5colorAA5ColorVvp" + "title" : "tessellate(maxSides:)", + "usr" : "s:6Euclid4MeshV10tessellate8maxSidesACSi_tF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/bounded-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Bounded-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/bounds" + ], + "title" : "Instance Properties" + } + ], + "title" : "Bounded Implementations" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "The identity transform (i.e. no transform).", "type" : "text" } ], @@ -1517,7 +1493,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", @@ -1525,7 +1509,42 @@ }, { "kind" : "identifier", - "text" : "rotated" + "text" : "identity" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/identity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/identity", + "taskGroups" : [ + + ], + "title" : "identity", + "usr" : "s:6Euclid9TransformV8identityACvpZ" + }, + { + "abstract" : [ + { + "text" : "Creates a new quaternion by decoding from the given decoder.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", @@ -1533,7 +1552,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -1541,33 +1560,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)", + "path" : "\/documentation\/euclid\/quaternion\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(from:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid9TransformV7rotated2byAcA8RotationV_tF" + "title" : "init(from:)", + "usr" : "s:6Euclid10QuaternionV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Returns the angle divided by a numeric denominator.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -1593,7 +1611,7 @@ }, { "kind" : "identifier", - "text" : "\/" + "text" : "*" }, { "kind" : "text", @@ -1605,8 +1623,7 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "Self" }, { "kind" : "text", @@ -1614,8 +1631,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -1623,24 +1640,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "Self" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/\/(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/(_:_:)", + "path" : "\/documentation\/euclid\/path\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*(_:_:)", "taskGroups" : [ ], - "title" : "\/(_:_:)", - "usr" : "s:6Euclid5AngleV1doiyA2C_SdtFZ" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4PathV" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -1658,7 +1674,7 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "transform" }, { "kind" : "text", @@ -1674,8 +1690,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -1684,125 +1700,95 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/scale(by:)-1hyw0", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-1hyw0", + "path" : "\/documentation\/euclid\/linesegment\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transform(by:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { - "abstract" : [ - { - "text" : "An optional ", - "type" : "text" - }, - { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", - "isActive" : true, - "type" : "reference" - }, - { - "text" : " associated with the polygon.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "material" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", - "text" : "Material" + "kind" : "identifier", + "text" : "..<" }, { "kind" : "text", - "text" : "?" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/material-swift.property", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/material-swift.property", - "taskGroups" : [ - - ], - "title" : "material", - "usr" : "s:6Euclid7PolygonV8materials11AnyHashableVSgvp" - }, - { - "abstract" : [ + "text" : " " + }, { - "text" : "Creates a new path point by decoding from the given decoder.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : "(" + }, { - "kind" : "keyword", - "text" : "init" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:Sn", + "text" : "Range" }, { "kind" : "text", - "text" : ") " + "text" : "<" }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(from:)", + "path" : "\/documentation\/euclid\/angle\/'.._(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:_:)", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid9PathPointV4fromACs7Decoder_p_tKcfc" + "title" : "..<(_:_:)", + "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -1820,7 +1806,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "translated" }, { "kind" : "text", @@ -1836,23 +1822,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/rotate(by:)-l48f", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-l48f", + "path" : "\/documentation\/euclid\/bounds\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "translated(by:)", + "usr" : "s:6Euclid6BoundsV10translated2byAcA6VectorV_tF" }, { "abstract" : [ @@ -1901,26 +1892,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/scale(by:)-8ec9r", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-8ec9r", + "path" : "\/documentation\/euclid\/pathpoint\/scale(by:)-7pxnt", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-7pxnt", "taskGroups" : [ ], "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF" + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "Returns a new mesh that retains the shape of the receiver, but with", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "the intersecting area colored using material from the parameter.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -1930,121 +1913,104 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "stencil" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "kind" : "identifier", + "text" : "*=" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "isCancelled" + "kind" : "text", + "text" : "(" + }, + { + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stencil(_:iscancelled:)-swift.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.method", + "path" : "\/documentation\/euclid\/polygon\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*=(_:_:)", "taskGroups" : [ ], - "title" : "stencil(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV7stencil_11isCancelledA2C_SbyXEtF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid7PolygonV" }, { - "abstract" : [ - { - "text" : "Creates a quaternion from raw component values.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "identifier", + "text" : "!=" }, { "kind" : "text", - "text" : ", " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", @@ -2052,28 +2018,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(_:_:_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:_:_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/!=(_:_:)", "taskGroups" : [ ], - "title" : "init(_:_:_:_:)", - "usr" : "s:6Euclid10QuaternionVyACSd_S3dtcfc" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Creates a mesh from a SceneKit geometry, with the material you provide.", + "text" : "Combines two rotations to get the cumulative rotation.", "type" : "text" } ], @@ -2083,53 +2053,96 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)SCNGeometry", - "text" : "SCNGeometry" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "identifier", + "text" : "*" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : "?)" + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(_:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:material:)", + "path" : "\/documentation\/euclid\/rotation\/*(_:_:)-55zcf", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-55zcf", "taskGroups" : [ ], - "title" : "init(_:material:)", - "usr" : "s:6Euclid4MeshV_8materialACSgSo11SCNGeometryC_s11AnyHashableVSgtcfc" + "title" : "*(_:_:)", + "usr" : "s:6Euclid8RotationV1moiyA2C_ACtFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/comparable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Comparable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-14arr", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-8feph", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-7i9lp", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-9obdn", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-9s7pp", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-j6oq" + ], + "title" : "Operators" + } + ], + "title" : "Comparable Implementations" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "The alpha component of the color.", "type" : "text" } ], @@ -2139,7 +2152,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -2147,15 +2160,7 @@ }, { "kind" : "identifier", - "text" : "translated" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "a" }, { "kind" : "text", @@ -2163,28 +2168,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)", + "path" : "\/documentation\/euclid\/color\/a", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/a", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid6BoundsV10translated2byAcA6VectorV_tF" + "title" : "a", + "usr" : "s:6Euclid5ColorV1aSdvp" }, { "availableLanguages" : [ @@ -2209,7 +2205,7 @@ }, { "kind" : "identifier", - "text" : "..." + "text" : "<=" }, { "kind" : "text", @@ -2237,36 +2233,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SN", - "text" : "ClosedRange" - }, - { - "kind" : "text", - "text" : "<" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/'...(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:_:)", + "path" : "\/documentation\/euclid\/angle\/_=(_:_:)-375to", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-375to", "taskGroups" : [ ], - "title" : "...(_:_:)", - "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "<=(_:_:)", + "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "Replace\/remove path point colors.", + "text" : "Returns an array containing the red, green, blue, and alpha components of the color.", "type" : "text" } ], @@ -2276,7 +2260,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -2284,41 +2268,36 @@ }, { "kind" : "identifier", - "text" : "withColor" + "text" : "components" }, { "kind" : "text", - "text" : "(" + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/withcolor(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/withColor(_:)", + "path" : "\/documentation\/euclid\/color\/components", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/components", "taskGroups" : [ ], - "title" : "withColor(_:)", - "usr" : "s:6Euclid4PathV9withColoryAcA0D0VSgF" + "title" : "components", + "usr" : "s:6Euclid5ColorV10componentsSaySdGvp" }, { "abstract" : [ { - "text" : "Returns the ordered array of polygon edges.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -2328,87 +2307,68 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "orderedEdges" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": [" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "kind" : "identifier", + "text" : "*" }, { "kind" : "text", - "text" : "]" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/orderededges", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/orderedEdges", - "taskGroups" : [ - - ], - "title" : "orderedEdges", - "usr" : "s:6Euclid7PolygonV12orderedEdgesSayAA11LineSegmentVGvp" - }, - { - "abstract" : [ + "text" : " " + }, { - "text" : "The axis of rotation.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : "(" + }, { - "kind" : "keyword", - "text" : "var" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "axis" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/axis", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/axis", + "path" : "\/documentation\/euclid\/linesegment\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*(_:_:)", "taskGroups" : [ ], - "title" : "axis", - "usr" : "s:6Euclid10QuaternionV4axisAA6VectorVvp" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Expands this bounds (if necessary) to contain the specified bounds.", + "text" : "Creates a sphere by subdividing an icosahedron.", "type" : "text" } ], @@ -2416,6 +2376,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -2426,62 +2394,49 @@ }, { "kind" : "identifier", - "text" : "formUnion" + "text" : "icosahedron" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "kind" : "externalParam", + "text" : "radius" }, { "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/formunion(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formUnion(_:)", - "taskGroups" : [ - - ], - "title" : "formUnion(_:)", - "usr" : "s:6Euclid6BoundsV9formUnionyyACF" - }, - { - "abstract" : [ + "text" : ": " + }, { - "text" : "Returns the point where the specified plane intersects the line segment.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "faces" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "intersection" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "with" + "text" : "wrapMode" }, { "kind" : "text", @@ -2489,37 +2444,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : "?" + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/intersection(with:)-1tffl", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-1tffl", + "path" : "\/documentation\/euclid\/mesh\/icosahedron(radius:faces:wrapmode:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/icosahedron(radius:faces:wrapMode:material:)", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid11LineSegmentV12intersection4withAA6VectorVSgAA5PlaneV_tF" + "title" : "icosahedron(radius:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV11icosahedron6radius5faces8wrapMode8materialACSd_AC5FacesOAC04WrapG0Os11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Return a copy of the mesh without texture coordinates.", "type" : "text" } ], @@ -2537,44 +2505,32 @@ }, { "kind" : "identifier", - "text" : "scale" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "withoutTexcoords" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/scale(by:)-2pycj", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-2pycj", + "path" : "\/documentation\/euclid\/mesh\/withouttexcoords()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withoutTexcoords()", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "withoutTexcoords()", + "usr" : "s:6Euclid4MeshV16withoutTexcoordsACyF" }, { "abstract" : [ { - "text" : "Creates a new line by decoding from the given decoder.", + "text" : "The default wrap behavior. Context-dependent.", "type" : "text" } ], @@ -2584,48 +2540,57 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "from" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "text" : "case" }, { "kind" : "text", - "text" : ") " + "text" : " " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "identifier", + "text" : "`default`" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(from:)", + "path" : "\/documentation\/euclid\/mesh\/wrapmode\/default", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/default", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid4LineV4fromACs7Decoder_p_tKcfc" + "title" : "Mesh.WrapMode.default", + "usr" : "s:6Euclid4MeshV8WrapModeO7defaultyA2EmF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/comparable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Comparable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-2uz97", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-732z3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-2si4j", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-9688a", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-5dvuy", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-8q2nt" + ], + "title" : "Operators" + } + ], + "title" : "Comparable Implementations" }, { "abstract" : [ { - "text" : "The perpendicular distance from the world origin to the plane.", + "text" : "A normalized direction vector pointing upwards relative to the current rotation.", "type" : "text" } ], @@ -2635,7 +2600,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -2643,7 +2608,7 @@ }, { "kind" : "identifier", - "text" : "w" + "text" : "up" }, { "kind" : "text", @@ -2651,89 +2616,74 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/w", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/w", + "path" : "\/documentation\/euclid\/rotation\/up", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/up", "taskGroups" : [ ], - "title" : "w", - "usr" : "s:6Euclid5PlaneV1wSdvp" + "title" : "up", + "usr" : "s:6Euclid8RotationV2upAA6VectorVvp" }, { + "abstract" : [ + { + "text" : "Deprecated.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "!=" - }, - { - "kind" : "text", - "text" : " " + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "points" }, { "kind" : "text", - "text" : ", " + "text" : ": [" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/!=(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/init(points:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(points:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid9PathPointV" + "title" : "init(points:)", + "usr" : "s:6Euclid6BoundsV6pointsACSayAA6VectorVG_tcfc" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the mesh includes vertex colors.", + "text" : "The translation or position component of the transform.", "type" : "text" } ], @@ -2751,7 +2701,7 @@ }, { "kind" : "identifier", - "text" : "hasVertexColors" + "text" : "offset" }, { "kind" : "text", @@ -2759,24 +2709,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/hasvertexcolors", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexColors", + "path" : "\/documentation\/euclid\/transform\/offset", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset", "taskGroups" : [ ], - "title" : "hasVertexColors", - "usr" : "s:6Euclid4MeshV15hasVertexColorsSbvp" + "title" : "offset", + "usr" : "s:6Euclid9TransformV6offsetAA6VectorVvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Removes hairline cracks by inserting additional vertices without altering the shape.", "type" : "text" } ], @@ -2794,44 +2762,40 @@ }, { "kind" : "identifier", - "text" : "rotate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "makeWatertight" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/rotate(by:)-4cg0v", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-4cg0v", + "path" : "\/documentation\/euclid\/mesh\/makewatertight()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/makeWatertight()", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid9PathPointV" + "title" : "makeWatertight()", + "usr" : "s:6Euclid4MeshV14makeWatertightACyF" }, { "abstract" : [ { - "text" : "Efficiently strokes an array of paths, avoiding duplicate work.", + "text" : "A vector of length ", + "type" : "text" + }, + { + "code" : "1", + "type" : "codeVoice" + }, + { + "text" : " along the Z axis.", "type" : "text" } ], @@ -2849,7 +2813,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -2857,24 +2821,7 @@ }, { "kind" : "identifier", - "text" : "stroke" - }, - { - "kind" : "text", - "text" : "([" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : "], " - }, - { - "kind" : "externalParam", - "text" : "width" + "text" : "unitZ" }, { "kind" : "text", @@ -2882,81 +2829,150 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/unitz", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitZ", + "taskGroups" : [ + + ], + "title" : "unitZ", + "usr" : "s:6Euclid6VectorV5unitZACvpZ" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ", " + "text" : "Creates a Euclid", + "type" : "text" }, { - "kind" : "externalParam", - "text" : "detail" + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" }, { - "kind" : "text", - "text" : ": " + "text" : " from a RealityKit ", + "type" : "text" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "code" : "Transform", + "type" : "codeVoice" }, { - "kind" : "text", - "text" : ", " + "text" : ".", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "text", + "text" : "(RealityKit" }, { "kind" : "text", - "text" : ": " + "text" : "." }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:17RealityFoundation9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?, " + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/init(_:)-cys2", + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "13.0", + "name" : "iOS", + "unavailable" : false }, { - "kind" : "externalParam", - "text" : "isCancelled" + "beta" : false, + "deprecated" : false, + "introducedAt" : "10.15", + "name" : "macOS", + "unavailable" : false + } + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid9TransformVyAC17RealityFoundationABVcfc" + }, + { + "abstract" : [ + { + "text" : "An array of the subpaths that make up the path.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "kind" : "identifier", + "text" : "subpaths" }, { "kind" : "text", - "text" : ") -> " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : "]" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stroke(_:width:detail:material:iscancelled:)-9mn9o", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-9mn9o", + "path" : "\/documentation\/euclid\/path\/subpaths", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/subpaths", "taskGroups" : [ ], - "title" : "stroke(_:width:detail:material:isCancelled:)", - "usr" : "s:6Euclid4MeshV6stroke_5width6detail8material11isCancelledACSayAA4PathVG_SdSis11AnyHashableVSgSbyXEtFZ" + "title" : "subpaths", + "usr" : "s:6Euclid4PathV8subpathsSayACGvp" }, { + "abstract" : [ + { + "text" : "Divides the components of the vector by the value you provide.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -2979,7 +2995,7 @@ }, { "kind" : "identifier", - "text" : "..." + "text" : "\/=" }, { "kind" : "text", @@ -2990,45 +3006,46 @@ "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ") -> " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeFromV", - "text" : "PartialRangeFrom" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "<" + "text" : ", " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ">" + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/'...(_:)-4yucl", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-4yucl", + "path" : "\/documentation\/euclid\/vector\/\/=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/=(_:_:)", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "\/=(_:_:)", + "usr" : "s:6Euclid6VectorV2deoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "Encodes this plane into the given encoder.", "type" : "text" } ], @@ -3046,7 +3063,7 @@ }, { "kind" : "identifier", - "text" : "rotated" + "text" : "encode" }, { "kind" : "text", @@ -3054,7 +3071,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "to" }, { "kind" : "text", @@ -3062,36 +3079,29 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)", + "path" : "\/documentation\/euclid\/plane\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/encode(to:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid9PathPointV7rotated2byAcA8RotationV_tF" + "title" : "encode(to:)", + "usr" : "s:6Euclid5PlaneV6encode2toys7Encoder_p_tKF" }, { - "abstract" : [ - { - "text" : "Creates a new mesh that is the combination of the polygons from all the specified meshes.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -3114,24 +3124,27 @@ }, { "kind" : "identifier", - "text" : "merge" + "text" : "..<" }, { "kind" : "text", - "text" : "<" + "text" : " " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ">(" + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5mergeyACxSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "text" : "Self" }, { "kind" : "text", @@ -3139,58 +3152,36 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - } - ], - "kind" : "org.swift.docc.kind.typeMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/merge(_:)-swift.type.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.type.method", - "taskGroups" : [ - - ], - "title" : "merge(_:)", - "usr" : "s:6Euclid4MeshV5mergeyACxSlRzAC7ElementRtzlFZ" - }, - { - "abstract" : [ - { - "text" : "The default face generation behavior. Context-dependent.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "case" + "preciseIdentifier" : "s:Sn", + "text" : "Range" }, { "kind" : "text", - "text" : " " + "text" : "<" }, { - "kind" : "identifier", - "text" : "`default`" + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces\/default", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/default", + "path" : "\/documentation\/euclid\/plane\/'.._(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:_:)", "taskGroups" : [ ], - "title" : "Mesh.Faces.default", - "usr" : "s:6Euclid4MeshV5FacesO7defaultyA2EmF" + "title" : "..<(_:_:)", + "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Creates a copy of the color updated with the specified alpha.", + "text" : "The size of the bounds. The minimum returned size is zero, even if max < min.", "type" : "text" } ], @@ -3200,7 +3191,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -3208,59 +3199,32 @@ }, { "kind" : "identifier", - "text" : "withAlpha" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "size" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/withalpha(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/withAlpha(_:)", + "path" : "\/documentation\/euclid\/bounds\/size", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/size", "taskGroups" : [ ], - "title" : "withAlpha(_:)", - "usr" : "s:6Euclid5ColorV9withAlphayACSdF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" + "title" : "size", + "usr" : "s:6Euclid6BoundsV4sizeAA6VectorVvp" }, { "abstract" : [ { - "text" : "The angle of rotation around the X-axis.", + "text" : "The angle is zero (or close to zero).", "type" : "text" } ], @@ -3278,7 +3242,7 @@ }, { "kind" : "identifier", - "text" : "pitch" + "text" : "isZero" }, { "kind" : "text", @@ -3286,24 +3250,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/pitch", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch", + "path" : "\/documentation\/euclid\/angle\/iszero", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/isZero", "taskGroups" : [ ], - "title" : "pitch", - "usr" : "s:6Euclid10QuaternionV5pitchAA5AngleVvp" + "title" : "isZero", + "usr" : "s:6Euclid5AngleV6isZeroSbvp" }, { "abstract" : [ { - "text" : "The magnitude of the quaternion.", + "text" : "Creates an angle representing the trigonometric arc tangent of the vector you provide.", "type" : "text" } ], @@ -3313,7 +3277,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -3321,7 +3293,15 @@ }, { "kind" : "identifier", - "text" : "length" + "text" : "atan2" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "y" }, { "kind" : "text", @@ -3331,91 +3311,56 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sd", "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/length", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/length", - "taskGroups" : [ - - ], - "title" : "length", - "usr" : "s:6Euclid10QuaternionV6lengthSdvp" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" - }, - { - "abstract" : [ - { - "text" : "An empty path.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "externalParam", + "text" : "x" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "empty" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/empty", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/empty", + "path" : "\/documentation\/euclid\/angle\/atan2(y:x:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan2(y:x:)", "taskGroups" : [ ], - "title" : "empty", - "usr" : "s:6Euclid4PathV5emptyACvpZ" + "title" : "atan2(y:x:)", + "usr" : "s:6Euclid5AngleV5atan21y1xACSd_SdtFZ" }, { "abstract" : [ { - "text" : "The polygons that make up the mesh.", + "text" : "Returns whether the leftmost plane has the lower value.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This provides a stable order when sorting collections of planes.", "type" : "text" } ], @@ -3425,7 +3370,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -3433,36 +3386,54 @@ }, { "kind" : "identifier", - "text" : "polygons" + "text" : "<" }, { "kind" : "text", - "text" : ": [" + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", - "text" : "]" + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/polygons", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygons", + "path" : "\/documentation\/euclid\/plane\/_(_:_:)-6eeco", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-6eeco", "taskGroups" : [ ], - "title" : "polygons", - "usr" : "s:6Euclid4MeshV8polygonsSayAA7PolygonVGvp" + "title" : "<(_:_:)", + "usr" : "s:6Euclid5PlaneV1loiySbAC_ACtFZ" }, { "abstract" : [ { - "text" : "Returns a quaternion with its components multiplied by the specified value.", + "text" : "Creates a transform from the current position, scale and orientation of a SceneKit node.", "type" : "text" } ], @@ -3488,29 +3459,24 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "transform" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "c:objc(cs)SCNNode", + "text" : "SCNNode" }, { "kind" : "text", @@ -3518,19 +3484,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/*(_:_:)-2drke", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-2drke", + "path" : "\/documentation\/euclid\/transform\/transform(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(from:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid10QuaternionV1moiyA2C_SdtFZ" + "title" : "transform(from:)", + "usr" : "s:6Euclid9TransformV9transform4fromACSo7SCNNodeC_tFZ" }, { "availableLanguages" : [ @@ -3538,22 +3504,22 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Equatable-Implementations", + "path" : "\/documentation\/euclid\/color\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Decodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/!=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(from:)" ], - "title" : "Operators" + "title" : "Initializers" } ], - "title" : "Equatable Implementations" + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether the two bounds intersect.", + "text" : "Creates a curved path point at the specified position.", "type" : "text" } ], @@ -3563,49 +3529,91 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "intersects" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "kind" : "identifier", + "text" : "curve" }, { "kind" : "text", - "text" : ") -> " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "texcoord" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/intersects(_:)-95v17", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-95v17", + "path" : "\/documentation\/euclid\/pathpoint\/curve(_:texcoord:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:texcoord:color:)", "taskGroups" : [ ], - "title" : "intersects(_:)", - "usr" : "s:6Euclid6BoundsV10intersectsySbACF" + "title" : "curve(_:texcoord:color:)", + "usr" : "s:6Euclid9PathPointV5curve_8texcoord5colorAcA6VectorV_AHSgAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "Clip mesh to the specified plane and optionally fill sheared faces with specified material.", + "text" : "Efficiently strokes an array of paths, avoiding duplicate work.", "type" : "text" } ], @@ -3613,6 +3621,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -3623,15 +3639,24 @@ }, { "kind" : "identifier", - "text" : "clip" + "text" : "stroke" }, { "kind" : "text", - "text" : "(" + "text" : "([" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : "], " }, { "kind" : "externalParam", - "text" : "to" + "text" : "width" }, { "kind" : "text", @@ -3639,8 +3664,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -3648,7 +3673,24 @@ }, { "kind" : "externalParam", - "text" : "fill" + "text" : "detail" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", @@ -3661,7 +3703,24 @@ }, { "kind" : "text", - "text" : "?) -> " + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "isCancelled" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" + }, + { + "kind" : "text", + "text" : ") -> " }, { "kind" : "typeIdentifier", @@ -3669,20 +3728,39 @@ "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/clip(to:fill:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/clip(to:fill:)", + "path" : "\/documentation\/euclid\/mesh\/stroke(_:width:detail:material:iscancelled:)-9mn9o", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-9mn9o", "taskGroups" : [ ], - "title" : "clip(to:fill:)", - "usr" : "s:6Euclid4MeshV4clip2to4fillAcA5PlaneV_s11AnyHashableVSgtF" + "title" : "stroke(_:width:detail:material:isCancelled:)", + "usr" : "s:6Euclid4MeshV6stroke_5width6detail8material11isCancelledACSayAA4PathVG_SdSis11AnyHashableVSgSbyXEtFZ" }, { "abstract" : [ { - "text" : "Encodes this rotation into the given encoder.", + "text" : "Display the 3D shapes you created with meshes.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.article", + "language" : "swift", + "path" : "\/documentation\/euclid\/renderingmeshes", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/RenderingMeshes", + "taskGroups" : [ + + ], + "title" : "Rendering Meshes" + }, + { + "abstract" : [ + { + "text" : "Encodes this angle into the given encoder.", "type" : "text" } ], @@ -3730,26 +3808,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/encode(to:)", + "path" : "\/documentation\/euclid\/angle\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/encode(to:)", "taskGroups" : [ ], "title" : "encode(to:)", - "usr" : "s:6Euclid8RotationV6encode2toys7Encoder_p_tKF" + "usr" : "s:6Euclid5AngleV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Returns whether the leftmost plane has the lower value.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "This provides a stable order when sorting collections of planes.", + "text" : "Combines with the specified rotation.", "type" : "text" } ], @@ -3775,7 +3845,7 @@ }, { "kind" : "identifier", - "text" : "<" + "text" : "*=" }, { "kind" : "text", @@ -3786,43 +3856,46 @@ "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/_(_:_:)-6eeco", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-6eeco", + "path" : "\/documentation\/euclid\/rotation\/*=(_:_:)-68kkw", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-68kkw", "taskGroups" : [ ], - "title" : "<(_:_:)", - "usr" : "s:6Euclid5PlaneV1loiySbAC_ACtFZ" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid8RotationV2meoiyyACz_ACtFZ" }, { "abstract" : [ { - "text" : "Flips the face direction and vertex normals of all polygons within the mesh.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -3840,32 +3913,44 @@ }, { "kind" : "identifier", - "text" : "inverted" + "text" : "scale" }, { "kind" : "text", - "text" : "() -> " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/inverted()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/inverted()", + "path" : "\/documentation\/euclid\/mesh\/scale(by:)-9pjki", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-9pjki", "taskGroups" : [ ], - "title" : "inverted()", - "usr" : "s:6Euclid4MeshV8invertedACyF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "An empty bounds.", "type" : "text" } ], @@ -3875,23 +3960,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "scale" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "empty" }, { "kind" : "text", @@ -3899,28 +3984,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/scale(by:)-8g7t0", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-8g7t0", + "path" : "\/documentation\/euclid\/bounds\/empty", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/empty", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "empty", + "usr" : "s:6Euclid6BoundsV5emptyACvpZ" }, { "abstract" : [ { - "text" : "Returns a vector with all components inverted.", + "text" : "The bounding box containing the polygon.", "type" : "text" } ], @@ -3930,15 +4011,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -3946,45 +4019,32 @@ }, { "kind" : "identifier", - "text" : "-" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "bounds" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/-(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:)", + "path" : "\/documentation\/euclid\/polygon\/bounds", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds", "taskGroups" : [ ], - "title" : "-(_:)", - "usr" : "s:6Euclid6VectorV1sopyA2CFZ" + "title" : "bounds", + "usr" : "s:6Euclid7PolygonV6boundsAA6BoundsVvp" }, { "abstract" : [ { - "text" : "Returns the componentwise sum of two vectors.", + "text" : "Creates a mesh by connecting a series of 3D paths representing the cross sections.", "type" : "text" } ], @@ -4010,54 +4070,83 @@ }, { "kind" : "identifier", - "text" : "+" + "text" : "loft" }, { "kind" : "text", - "text" : " " + "text" : "([" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : "(" + "text" : "], " + }, + { + "kind" : "externalParam", + "text" : "faces" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/+(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/loft(_:faces:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/loft(_:faces:material:)", "taskGroups" : [ ], - "title" : "+(_:_:)", - "usr" : "s:6Euclid6VectorV1poiyA2C_ACtFZ" + "title" : "loft(_:faces:material:)", + "usr" : "s:6Euclid4MeshV4loft_5faces8materialACSayAA4PathVG_AC5FacesOs11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Align extruded cross-sections with the X, Y or Z axis", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "(whichever is most perpendicular to the extrusion path).", "type" : "text" } ], @@ -4067,79 +4156,83 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "bounds" + "text" : "case" }, { "kind" : "text", - "text" : ": [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "text" : " " }, { - "kind" : "text", - "text" : "])" + "kind" : "identifier", + "text" : "axis" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(bounds:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(bounds:)", + "path" : "\/documentation\/euclid\/path\/alignment\/axis", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/axis", "taskGroups" : [ ], - "title" : "init(bounds:)", - "usr" : "s:6Euclid6BoundsV6boundsACSayACG_tcfc" + "title" : "Path.Alignment.axis", + "usr" : "s:6Euclid4PathV9AlignmentO4axisyA2EmF" }, { + "abstract" : [ + { + "text" : "Returns a new mesh created by subtracting the volume of the", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "mesh parameter from the receiver.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "subtracting" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "+" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : " " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "isCancelled" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", @@ -4147,66 +4240,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/+(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:)", + "path" : "\/documentation\/euclid\/mesh\/subtracting(_:iscancelled:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtracting(_:isCancelled:)", "taskGroups" : [ ], - "title" : "+(_:)", - "usr" : "s:s18AdditiveArithmeticPsE1popyxxFZ::SYNTHESIZED::s:6Euclid5AngleV" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Transformable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-4cg0v", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-r7j4", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-4egi6", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-7pxnt", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)" - ], - "title" : "Instance Methods" - } - ], - "title" : "Transformable Implementations" + "title" : "subtracting(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV11subtracting_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "An unordered set of polygon edges.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -4216,7 +4267,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -4224,45 +4275,44 @@ }, { "kind" : "identifier", - "text" : "undirectedEdges" + "text" : "scale" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sh", - "text" : "Set" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ">" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/undirectededges", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/undirectedEdges", + "path" : "\/documentation\/euclid\/linesegment\/scale(by:)-8v4ag", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-8v4ag", "taskGroups" : [ ], - "title" : "undirectedEdges", - "usr" : "s:6Euclid7PolygonV15undirectedEdgesShyAA11LineSegmentVGvp" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "A plane located at the origin, aligned with the X and Y axes.", "type" : "text" } ], @@ -4272,23 +4322,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "transform" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "xy" }, { "kind" : "text", @@ -4296,28 +4346,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transform(by:)", + "path" : "\/documentation\/euclid\/plane\/xy", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xy", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "xy", + "usr" : "s:6Euclid5PlaneV2xyACvpZ" }, { "abstract" : [ { - "text" : "A polygon in 3D space.", + "text" : "A Boolean value that indicates whether the polygon includes vertex normals that differ from the face normal.", "type" : "text" } ], @@ -4327,7 +4373,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "var" }, { "kind" : "text", @@ -4335,110 +4381,91 @@ }, { "kind" : "identifier", - "text" : "Polygon" + "text" : "hasVertexNormals" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.structure", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "path" : "\/documentation\/euclid\/polygon\/hasvertexnormals", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexNormals", "taskGroups" : [ + + ], + "title" : "hasVertexNormals", + "usr" : "s:6Euclid7PolygonV16hasVertexNormalsSbvp" + }, + { + "abstract" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-8gsiw", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-9mns5", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(shape:material:)" - ], - "title" : "Creating Polygons" - }, + "text" : "Encodes this line segment into the given encoder.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/vertices", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/plane", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/center", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/material-swift.property", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/isConvex", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasTexcoords", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexColors", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/orderedEdges", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/undirectedEdges", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/area" - ], - "title" : "Polygon Properties" + "kind" : "keyword", + "text" : "func" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/containsPoint(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/edges(intersecting:)" - ], - "title" : "Comparing Polygons" + "kind" : "text", + "text" : " " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/merge(_:ensureConvex:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/inverted()", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withMaterial(_:)" - ], - "title" : "Transforming Polygons" + "kind" : "identifier", + "text" : "encode" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/clip(to:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/split(along:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/tessellate(maxSides:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/triangulate()" - ], - "title" : "Splitting Polygons" + "kind" : "text", + "text" : "(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexNormals" - ], - "title" : "Instance Properties" + "kind" : "externalParam", + "text" : "to" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/with(material:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withoutTexcoords()" - ], - "title" : "Instance Methods" + "kind" : "text", + "text" : ": " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias" - ], - "title" : "Type Aliases" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/codableClasses" - ], - "title" : "Type Properties" + "kind" : "text", + "text" : ") " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Bounded-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Transformable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "keyword", + "text" : "throws" } ], - "title" : "Polygon", - "usr" : "s:6Euclid7PolygonV" + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/encode(to:)", + "taskGroups" : [ + + ], + "title" : "encode(to:)", + "usr" : "s:6Euclid11LineSegmentV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Indicates whether all the path’s points lie on a single plane.", "type" : "text" } ], @@ -4448,7 +4475,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -4456,15 +4483,7 @@ }, { "kind" : "identifier", - "text" : "transform" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "isPlanar" }, { "kind" : "text", @@ -4472,28 +4491,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transform(by:)", + "path" : "\/documentation\/euclid\/path\/isplanar", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isPlanar", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid4PathV" + "title" : "isPlanar", + "usr" : "s:6Euclid4PathV8isPlanarSbvp" }, { "abstract" : [ { - "text" : "Tessellates the polygon into triangles.", + "text" : "Returns the area of the polygon.", "type" : "text" } ], @@ -4503,7 +4518,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -4511,36 +4526,32 @@ }, { "kind" : "identifier", - "text" : "triangulate" + "text" : "area" }, { "kind" : "text", - "text" : "() -> [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" - }, - { - "kind" : "text", - "text" : "]" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/triangulate()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/triangulate()", + "path" : "\/documentation\/euclid\/polygon\/area", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/area", "taskGroups" : [ ], - "title" : "triangulate()", - "usr" : "s:6Euclid7PolygonV11triangulateSayACGyF" + "title" : "area", + "usr" : "s:6Euclid7PolygonV4areaSdvp" }, { "abstract" : [ { - "text" : "Creates a quadratic bezier spline.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -4550,69 +4561,102 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "transformed" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "curve" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "([" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "], " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "detail" + "kind" : "typeIdentifier", + "text" : "Self" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)", + "taskGroups" : [ + + ], + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + }, + { + "abstract" : [ + { + "text" : "A plane located at the origin, aligned with the X and Z axes.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : ") -> " + "text" : " " + }, + { + "kind" : "identifier", + "text" : "xz" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/curve(_:detail:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/curve(_:detail:)", + "path" : "\/documentation\/euclid\/plane\/xz", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xz", "taskGroups" : [ ], - "title" : "curve(_:detail:)", - "usr" : "s:6Euclid4PathV5curve_6detailACSayAA0B5PointVG_SitFZ" + "title" : "xz", + "usr" : "s:6Euclid5PlaneV2xzACvpZ" }, { "availableLanguages" : [ @@ -4637,7 +4681,7 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : ">=" }, { "kind" : "text", @@ -4671,53 +4715,107 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/!=(_:_:)", + "path" : "\/documentation\/euclid\/vector\/_=(_:_:)-9s7pp", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-9s7pp", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : ">=(_:_:)", + "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { + "abstract" : [ + { + "text" : "Creates a mesh from a RealityKit ", + "type" : "text" + }, + { + "code" : "MeshDescriptor", + "type" : "codeVoice" + }, + { + "text" : " with optional material.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:17RealityFoundation14MeshDescriptorV", + "text" : "MeshDescriptor" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" + } + ], + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Transformable-Implementations", - "taskGroups" : [ + "path" : "\/documentation\/euclid\/mesh\/init(_:materials:)-22brv", + "platforms" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)" - ], - "title" : "Operators" + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-11t07", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-577nk", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-55r4j", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-9i9s9", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)" - ], - "title" : "Instance Methods" + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false } ], - "title" : "Transformable Implementations" + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv", + "taskGroups" : [ + + ], + "title" : "init(_:materials:)", + "usr" : "s:6Euclid4MeshV_9materialsAC17RealityFoundation0B10DescriptorV_Says11AnyHashableVSgGtcfc" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Returns a Boolean value that indicates whether the specified point lies on the line.", "type" : "text" } ], @@ -4735,24 +4833,16 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "containsPoint" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -4760,23 +4850,42 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)", + "path" : "\/documentation\/euclid\/line\/containspoint(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/containsPoint(_:)", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "containsPoint(_:)", + "usr" : "s:6Euclid4LineV13containsPointySbAA6VectorVF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "The green component of the color.", + "text" : "Returns a new vertex with the normal inverted.", "type" : "text" } ], @@ -4786,7 +4895,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -4794,35 +4903,29 @@ }, { "kind" : "identifier", - "text" : "g" + "text" : "inverted" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/g", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/g", + "path" : "\/documentation\/euclid\/vertex\/inverted()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/inverted()", "taskGroups" : [ ], - "title" : "g", - "usr" : "s:6Euclid5ColorV1gSdvp" + "title" : "inverted()", + "usr" : "s:6Euclid6VertexV8invertedACyF" }, { - "abstract" : [ - { - "text" : "Creates an extruded text model from a string.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -4845,7 +4948,11 @@ }, { "kind" : "identifier", - "text" : "text" + "text" : "<=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -4853,37 +4960,70 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SS", - "text" : "String" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, { - "kind" : "externalParam", - "text" : "font" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@CTFontRef", - "text" : "CTFont" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/_=(_:_:)-j6oq", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-j6oq", + "taskGroups" : [ + + ], + "title" : "<=(_:_:)", + "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + }, + { + "abstract" : [ + { + "text" : "Creates a corner path point at the specified X, Y and Z coordinates.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : "?, " + "text" : " " }, { - "kind" : "externalParam", - "text" : "width" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "identifier", + "text" : "point" + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", @@ -4892,15 +5032,16 @@ }, { "kind" : "text", - "text" : "?, " + "text" : ", " }, { - "kind" : "externalParam", - "text" : "depth" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -4913,7 +5054,7 @@ }, { "kind" : "externalParam", - "text" : "detail" + "text" : "texcoord" }, { "kind" : "text", @@ -4921,16 +5062,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " + "text" : "?, " }, { "kind" : "externalParam", - "text" : "material" + "text" : "color" }, { "kind" : "text", @@ -4938,8 +5079,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", @@ -4947,24 +5088,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/text(_:font:width:depth:detail:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:font:width:depth:detail:material:)", + "path" : "\/documentation\/euclid\/pathpoint\/point(_:_:_:texcoord:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:_:_:texcoord:color:)", "taskGroups" : [ ], - "title" : "text(_:font:width:depth:detail:material:)", - "usr" : "s:6Euclid4MeshV4text_4font5width5depth6detail8materialACSS_So9CTFontRefaSgSdSgSdSis11AnyHashableVSgtFZ" + "title" : "point(_:_:_:texcoord:color:)", + "usr" : "s:6Euclid9PathPointV5point___8texcoord5colorACSd_S2dAA6VectorVSgAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "Creates a quaternion representing a rotation around the Z axis.", "type" : "text" } ], @@ -4974,32 +5115,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "rotated" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "roll" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -5007,24 +5148,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)", + "path" : "\/documentation\/euclid\/quaternion\/roll(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll(_:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid6VectorV7rotated2byAcA8RotationV_tF" + "title" : "roll(_:)", + "usr" : "s:6Euclid10QuaternionV4rollyAcA5AngleVFZ" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the mesh includes vertex normals that differ from the face normal.", + "text" : "A struct that represents an orientation or rotation in 3D space.", "type" : "text" } ], @@ -5034,7 +5175,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "struct" }, { "kind" : "text", @@ -5042,75 +5183,100 @@ }, { "kind" : "identifier", - "text" : "hasVertexNormals" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "Rotation" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.structure", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/hasvertexnormals", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexNormals", + "path" : "\/documentation\/euclid\/rotation", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation", "taskGroups" : [ - - ], - "title" : "hasVertexNormals", - "usr" : "s:6Euclid4MeshV16hasVertexNormalsSbvp" - }, - { - "abstract" : [ { - "text" : "The starting point of the line segment.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init()", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-5w6mn", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-68leo", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-7j4ql", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(axis:angle:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(pitch:yaw:roll:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(roll:yaw:pitch:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(yaw:pitch:roll:)" + ], + "title" : "Creating Rotations" + }, { - "kind" : "keyword", - "text" : "let" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/identity" + ], + "title" : "Default Quaternions" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw(_:)" + ], + "title" : "Creating Rotations Around an Axis" }, { - "kind" : "identifier", - "text" : "start" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/axis", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/angle", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/forward", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/right", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/up", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/isIdentity" + ], + "title" : "Rotation Properties" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/slerp(_:_:)" + ], + "title" : "Interpolating Rotations" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/-(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-55zcf", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-5fe82", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-68kkw", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-7u9hf" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj" + ], + "title" : "Initializers" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Equatable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/start", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/start", - "taskGroups" : [ - - ], - "title" : "start", - "usr" : "s:6Euclid11LineSegmentV5startAA6VectorVvp" + "title" : "Rotation", + "usr" : "s:6Euclid8RotationV" }, { "abstract" : [ { - "text" : "Creates a mesh by connecting a series of 3D paths representing the cross sections.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -5136,82 +5302,61 @@ }, { "kind" : "identifier", - "text" : "loft" - }, - { - "kind" : "text", - "text" : "([" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "*" }, { "kind" : "text", - "text" : "], " - }, - { - "kind" : "externalParam", - "text" : "faces" + "text" : " " }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, - { - "kind" : "externalParam", - "text" : "material" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/loft(_:faces:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/loft(_:faces:material:)", + "path" : "\/documentation\/euclid\/transform\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)", "taskGroups" : [ ], - "title" : "loft(_:faces:material:)", - "usr" : "s:6Euclid4MeshV4loft_5faces8materialACSayAA4PathVG_AC5FacesOs11AnyHashableVSgtFZ" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9TransformV" }, { - "abstract" : [ - { - "text" : "Encodes this polygon into the given encoder.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -5222,48 +5367,56 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "..." + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "to" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:s16PartialRangeFromV", + "text" : "PartialRangeFrom" }, { "kind" : "text", - "text" : ") " + "text" : "<" }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/encode(to:)", + "path" : "\/documentation\/euclid\/linesegment\/'...(_:)-2uz97", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-2uz97", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid7PolygonV6encode2toys7Encoder_p_tKF" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Returns the reverse (aka transpose) rotation.", + "text" : "Creates an array of glyph contours from an attributed string.", "type" : "text" } ], @@ -5289,40 +5442,74 @@ }, { "kind" : "identifier", - "text" : "-" + "text" : "text" }, { "kind" : "text", - "text" : " " + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:objc(cs)NSAttributedString", + "text" : "NSAttributedString" }, { "kind" : "text", - "text" : "(" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "width" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "detail" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ") -> [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : "]" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/-(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/-(_:)", + "path" : "\/documentation\/euclid\/path\/text(_:width:detail:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:width:detail:)", "taskGroups" : [ ], - "title" : "-(_:)", - "usr" : "s:6Euclid8RotationV1sopyA2CFZ" + "title" : "text(_:width:detail:)", + "usr" : "s:6Euclid4PathV4text_5width6detailSayACGSo18NSAttributedStringC_SdSgSitFZ" }, { "availableLanguages" : [ @@ -5347,7 +5534,7 @@ }, { "kind" : "identifier", - "text" : ">" + "text" : "!=" }, { "kind" : "text", @@ -5381,15 +5568,21 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/_(_:_:)-7i9lp", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-7i9lp", + "path" : "\/documentation\/euclid\/color\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/!=(_:_:)", "taskGroups" : [ ], - "title" : ">(_:_:)", - "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5ColorV" }, { + "abstract" : [ + { + "text" : "Returns the reverse (aka transpose) rotation.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -5412,7 +5605,7 @@ }, { "kind" : "identifier", - "text" : "<=" + "text" : "-" }, { "kind" : "text", @@ -5424,15 +5617,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -5440,42 +5626,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/_=(_:_:)-1oq2t", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-1oq2t", + "path" : "\/documentation\/euclid\/rotation\/-(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/-(_:)", "taskGroups" : [ ], - "title" : "<=(_:_:)", - "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" + "title" : "-(_:)", + "usr" : "s:6Euclid8RotationV1sopyA2CFZ" }, { "abstract" : [ { - "text" : "Creates a conical mesh.", + "text" : "A plane located at the origin, aligned with the Y and Z axes.", "type" : "text" } ], @@ -5493,7 +5661,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -5501,15 +5669,7 @@ }, { "kind" : "identifier", - "text" : "cone" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "radius" + "text" : "yz" }, { "kind" : "text", @@ -5517,178 +5677,101 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/yz", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/yz", + "taskGroups" : [ + + ], + "title" : "yz", + "usr" : "s:6Euclid5PlaneV2yzACvpZ" + }, + { + "abstract" : [ + { + "text" : "Returns a Boolean value that indicates if the specified point is within the bounds.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "height" + "kind" : "identifier", + "text" : "containsPoint" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "slices" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "stacks" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "poleDetail" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "addDetailAtBottomPole" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sb", "text" : "Bool" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "faces" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "wrapMode" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "material" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" - }, - { - "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cone(radius:height:slices:stacks:poledetail:adddetailatbottompole:faces:wrapmode:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)", + "path" : "\/documentation\/euclid\/bounds\/containspoint(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/containsPoint(_:)", "taskGroups" : [ ], - "title" : "cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV4cone6radius6height6slices6stacks10poleDetail03addI12AtBottomPole5faces8wrapMode8materialACSd_SdS3iSgSbAC5FacesOAC04WrapP0Os11AnyHashableVSgtFZ" + "title" : "containsPoint(_:)", + "usr" : "s:6Euclid6BoundsV13containsPointySbAA6VectorVF" }, { "availableLanguages" : [ "swift" ], - "fragments" : [ + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/bounded-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Bounded-Implementations", + "taskGroups" : [ { - "kind" : "keyword", - "text" : "static" - }, + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds" + ], + "title" : "Instance Properties" + } + ], + "title" : "Bounded Implementations" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : " " - }, + "text" : "Returns a Boolean value that indicates if the bounds intersects the specified plane.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -5699,11 +5782,7 @@ }, { "kind" : "identifier", - "text" : ">" - }, - { - "kind" : "text", - "text" : " " + "text" : "intersects" }, { "kind" : "text", @@ -5711,15 +5790,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", @@ -5731,28 +5803,20 @@ "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/_(_:_:)-filj", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-filj", + "path" : "\/documentation\/euclid\/bounds\/intersects(_:)-7br6p", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-7br6p", "taskGroups" : [ ], - "title" : ">(_:_:)", - "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "intersects(_:)", + "usr" : "s:6Euclid6BoundsV10intersectsySbAA5PlaneVF" }, { "abstract" : [ { - "text" : "Creates a ", - "type" : "text" - }, - { - "code" : "Quaternion", - "type" : "codeVoice" - }, - { - "text" : " from a simd quaternion.", + "text" : "Creates a new transform by decoding from the given decoder.", "type" : "text" } ], @@ -5768,30 +5832,42 @@ "kind" : "text", "text" : "(" }, + { + "kind" : "externalParam", + "text" : "from" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@SA@simd_quatd", - "text" : "simd_quatd" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ")" + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(_:)-27eol", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-27eol", + "path" : "\/documentation\/euclid\/transform\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(from:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid10QuaternionVyACSo10simd_quatdacfc" + "title" : "init(from:)", + "usr" : "s:6Euclid9TransformV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -5801,48 +5877,52 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "identifier", + "text" : "scale" }, { "kind" : "text", - "text" : ", " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/init(_:_:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(_:_:)", + "path" : "\/documentation\/euclid\/pathpoint\/scale(by:)-4egi6", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-4egi6", "taskGroups" : [ ], - "title" : "init(_:_:)", - "usr" : "s:6Euclid11LineSegmentVyACSgAA6VectorV_AFtcfc" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -5860,7 +5940,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "scale" }, { "kind" : "text", @@ -5876,33 +5956,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/scaled(by:)-5dvvh", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh", + "path" : "\/documentation\/euclid\/mesh\/scale(by:)-1h2f7", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-1h2f7", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid6BoundsV6scaled2byAcA6VectorV_tF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Divides the rotation angle by the specified value.", + "text" : "Quaternion has no effect.", "type" : "text" } ], @@ -5912,15 +5987,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -5928,66 +5995,39 @@ }, { "kind" : "identifier", - "text" : "\/=" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "keyword", - "text" : "inout" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "isIdentity" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/\/=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/=(_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/isidentity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isIdentity", "taskGroups" : [ ], - "title" : "\/=(_:_:)", - "usr" : "s:6Euclid8RotationV2deoiyyACz_SdtFZ" + "title" : "isIdentity", + "usr" : "s:6Euclid10QuaternionV10isIdentitySbvp" }, { + "abstract" : [ + { + "text" : "Deprecated.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -5998,57 +6038,67 @@ }, { "kind" : "identifier", - "text" : ">" - }, - { - "kind" : "text", - "text" : " " + "text" : "with" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/_(_:_:)-3fd8h", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-3fd8h", + "path" : "\/documentation\/euclid\/polygon\/with(material:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/with(material:)", "taskGroups" : [ ], - "title" : ">(_:_:)", - "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "with(material:)", + "usr" : "s:6Euclid7PolygonV4with8materialACs11AnyHashableVSg_tF" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the quaternion has a length of ", + "text" : "A vertex represents a corner of a ", "type" : "text" }, { - "code" : "1", - "type" : "codeVoice" + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " or a point on the surface of a ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "isActive" : true, + "type" : "reference" }, { "text" : ".", @@ -6061,7 +6111,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "struct" }, { "kind" : "text", @@ -6069,32 +6119,72 @@ }, { "kind" : "identifier", - "text" : "isNormalized" + "text" : "Vertex" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/vertex", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:_:_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-5517j", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-7go25" + ], + "title" : "Creating Vertices" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/position", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/normal", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/texcoord", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/color" + ], + "title" : "Vertex Properties" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/inverted()", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)" + ], + "title" : "Transforming Vertices" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/lerp(_:_:)" + ], + "title" : "Interpolating Vertices" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)" + ], + "title" : "Encoding and Decoding Vertices" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Transformable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/isnormalized", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isNormalized", - "taskGroups" : [ - - ], - "title" : "isNormalized", - "usr" : "s:6Euclid10QuaternionV12isNormalizedSbvp" + "title" : "Vertex", + "usr" : "s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Creates a mesh by extruding a path along its face normal.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -6102,14 +6192,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -6120,24 +6202,15 @@ }, { "kind" : "identifier", - "text" : "extrude" + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : ", " - }, { "kind" : "externalParam", - "text" : "depth" + "text" : "by" }, { "kind" : "text", @@ -6145,67 +6218,58 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "twist" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "sections" - }, - { - "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, + "text" : "Self" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/transformable\/scaled(by:)-3shbk", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-3shbk", + "taskGroups" : [ + + ], + "title" : "scaled(by:)", + "usr" : "s:6Euclid13TransformableP6scaled2byxAA6VectorV_tF" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ", " - }, + "text" : "Translate the value in place.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "externalParam", - "text" : "faces" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "kind" : "identifier", + "text" : "translate" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "material" + "text" : "by" }, { "kind" : "text", @@ -6213,59 +6277,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/extrude(_:depth:twist:sections:faces:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:)", + "path" : "\/documentation\/euclid\/bounds\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translate(by:)", "taskGroups" : [ ], - "title" : "extrude(_:depth:twist:sections:faces:material:)", - "usr" : "s:6Euclid4MeshV7extrude_5depth5twist8sections5faces8materialAcA4PathV_SdAA5AngleVSiAC5FacesOs11AnyHashableVSgtFZ" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Supported ", - "type" : "text" - }, - { - "code" : "NSSecureCodable", - "type" : "codeVoice" - }, - { - "text" : " Material base classes.", + "text" : "A polygon in 3D space.", "type" : "text" } ], @@ -6275,52 +6308,146 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "struct" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "var" + "kind" : "identifier", + "text" : "Polygon" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-8gsiw", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-9mns5", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(shape:material:)" + ], + "title" : "Creating Polygons" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/vertices", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/plane", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/center", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/material-swift.property", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/isConvex", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasTexcoords", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexColors", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/orderedEdges", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/undirectedEdges", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/area" + ], + "title" : "Polygon Properties" }, { - "kind" : "identifier", - "text" : "codableClasses" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/containsPoint(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/edges(intersecting:)" + ], + "title" : "Comparing Polygons" }, { - "kind" : "text", - "text" : ": [" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/merge(_:ensureConvex:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/inverted()", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withMaterial(_:)" + ], + "title" : "Transforming Polygons" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s8AnyClassa", - "text" : "AnyClass" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/clip(to:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/split(along:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/tessellate(maxSides:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/triangulate()" + ], + "title" : "Splitting Polygons" }, { - "kind" : "text", - "text" : "]" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexNormals" + ], + "title" : "Instance Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/with(material:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withoutTexcoords()" + ], + "title" : "Instance Methods" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias" + ], + "title" : "Type Aliases" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/codableClasses" + ], + "title" : "Type Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Bounded-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Transformable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "title" : "Polygon", + "usr" : "s:6Euclid7PolygonV" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/codableclasses", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/codableClasses", + "path" : "\/documentation\/euclid\/angle\/additivearithmetic-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/AdditiveArithmetic-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero" + ], + "title" : "Type Properties" + } ], - "title" : "codableClasses", - "usr" : "s:6Euclid7PolygonV14codableClassesSayyXlXpGvpZ" + "title" : "AdditiveArithmetic Implementations" }, { "abstract" : [ { - "text" : "Creates a scale transform.", + "text" : "Returns a vector with all components inverted.", "type" : "text" } ], @@ -6346,7 +6473,11 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "-" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -6363,24 +6494,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scale(_:)-55t4p", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-55t4p", + "path" : "\/documentation\/euclid\/vector\/-(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:)", "taskGroups" : [ ], - "title" : "scale(_:)", - "usr" : "s:6Euclid9TransformV5scaleyAcA6VectorVFZ" + "title" : "-(_:)", + "usr" : "s:6Euclid6VectorV1sopyA2CFZ" }, { "abstract" : [ { - "text" : "Divides the components of the vector by the specified value.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -6388,14 +6519,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -6406,104 +6529,67 @@ }, { "kind" : "identifier", - "text" : "\/=" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotated" }, { "kind" : "text", "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/\/=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/=(_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)", "taskGroups" : [ ], - "title" : "\/=(_:_:)", - "usr" : "s:6Euclid10QuaternionV2deoiyyACz_SdtFZ" + "title" : "rotated(by:)", + "usr" : "s:6Euclid11LineSegmentV7rotated2byAcA8RotationV_tF" }, { - "abstract" : [ - { - "text" : "Alignment mode to use when extruding along a path.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "enum" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "Alignment" - } - ], - "kind" : "org.swift.docc.kind.enumeration", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/alignment", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment", + "path" : "\/documentation\/euclid\/line\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Encodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/axis", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/default", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/tangent" - ], - "title" : "Enumeration Cases" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/Equatable-Implementations" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/encode(to:)" ], - "title" : "Default Implementations" + "title" : "Instance Methods" } ], - "title" : "Path.Alignment", - "usr" : "s:6Euclid4PathV9AlignmentO" + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "Creates a new color by decoding from the given decoder.", + "text" : "Encodes the vector into the given encoder.", "type" : "text" } ], @@ -6513,7 +6599,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "encode" }, { "kind" : "text", @@ -6521,7 +6615,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "to" }, { "kind" : "text", @@ -6529,8 +6623,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", @@ -6541,15 +6635,15 @@ "text" : "throws" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(from:)", + "path" : "\/documentation\/euclid\/vector\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/encode(to:)", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid5ColorV4fromACs7Decoder_p_tKcfc" + "title" : "encode(to:)", + "usr" : "s:6Euclid6VectorV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ @@ -6597,24 +6691,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/scaled(by:)-37r1v", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v", + "path" : "\/documentation\/euclid\/path\/scaled(by:)-84xdd", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd", "taskGroups" : [ ], "title" : "scaled(by:)", - "usr" : "s:6Euclid11LineSegmentV6scaled2byACSd_tF" + "usr" : "s:6Euclid4PathV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "Returns the distance between the vector (representing a position in space) from the specified plane.", + "text" : "Callback used to cancel a long-running operation.", "type" : "text" } ], @@ -6624,7 +6718,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "typealias" }, { "kind" : "text", @@ -6632,49 +6726,23 @@ }, { "kind" : "identifier", - "text" : "distance" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "from" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "CancellationHandler" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeAlias", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/distance(from:)-5p7ko", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-5p7ko", + "path" : "\/documentation\/euclid\/mesh\/cancellationhandler", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/CancellationHandler", "taskGroups" : [ ], - "title" : "distance(from:)", - "usr" : "s:6Euclid6VectorV8distance4fromSdAA5PlaneV_tF" + "title" : "Mesh.CancellationHandler", + "usr" : "s:6Euclid4MeshV19CancellationHandlera" }, { "abstract" : [ { - "text" : "Angle representing a half-rotation.", + "text" : "Returns the point where the specified plane intersects the line.", "type" : "text" } ], @@ -6684,23 +6752,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "intersection" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "pi" + "kind" : "externalParam", + "text" : "with" }, { "kind" : "text", @@ -6708,24 +6776,37 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : "?" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/pi", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/pi", + "path" : "\/documentation\/euclid\/line\/intersection(with:)-7s1sd", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-7s1sd", "taskGroups" : [ ], - "title" : "pi", - "usr" : "s:6Euclid5AngleV2piACvpZ" + "title" : "intersection(with:)", + "usr" : "s:6Euclid4LineV12intersection4withAA6VectorVSgAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Returns the product of two quaternions (i.e. the effect of rotating the left by the right).", "type" : "text" } ], @@ -6763,7 +6844,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -6771,8 +6853,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -6780,23 +6862,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*(_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/*(_:_:)-305tn", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-305tn", "taskGroups" : [ ], "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9PathPointV" + "usr" : "s:6Euclid10QuaternionV1moiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "Computes the convex hull of a set of polygons.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -6804,14 +6887,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -6822,7 +6897,7 @@ }, { "kind" : "identifier", - "text" : "convexHull" + "text" : "scale" }, { "kind" : "text", @@ -6830,41 +6905,36 @@ }, { "kind" : "externalParam", - "text" : "of" + "text" : "by" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "]) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:)-6c896", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-6c896", + "path" : "\/documentation\/euclid\/vertex\/scale(by:)-1hyw0", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-1hyw0", "taskGroups" : [ ], - "title" : "convexHull(of:)", - "usr" : "s:6Euclid4MeshV10convexHull2ofACSayAA7PolygonVG_tFZ" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Splits a polygon into two or more convex polygons using the “ear clipping” method.", + "text" : "Clip polygon to the specified plane", "type" : "text" } ], @@ -6882,7 +6952,7 @@ }, { "kind" : "identifier", - "text" : "tessellate" + "text" : "clip" }, { "kind" : "text", @@ -6890,7 +6960,7 @@ }, { "kind" : "externalParam", - "text" : "maxSides" + "text" : "to" }, { "kind" : "text", @@ -6898,8 +6968,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", @@ -6917,18 +6987,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/tessellate(maxsides:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/tessellate(maxSides:)", + "path" : "\/documentation\/euclid\/polygon\/clip(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/clip(to:)", "taskGroups" : [ ], - "title" : "tessellate(maxSides:)", - "usr" : "s:6Euclid7PolygonV10tessellate8maxSidesSayACGSi_tF" + "title" : "clip(to:)", + "usr" : "s:6Euclid7PolygonV4clip2toSayACGAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Creates an axis-aligned cuboidal mesh.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -6936,14 +7006,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -6954,7 +7016,7 @@ }, { "kind" : "identifier", - "text" : "cube" + "text" : "scaled" }, { "kind" : "text", @@ -6962,7 +7024,7 @@ }, { "kind" : "externalParam", - "text" : "center" + "text" : "by" }, { "kind" : "text", @@ -6970,67 +7032,106 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "size" - }, + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/vertex\/scaled(by:)-1dtbr", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr", + "taskGroups" : [ + + ], + "title" : "scaled(by:)", + "usr" : "s:6Euclid6VertexV6scaled2byACSd_tF" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ": " + "text" : "Creates a ", + "type" : "text" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "code" : "Quaternion", + "type" : "codeVoice" }, { - "kind" : "text", - "text" : ", " - }, + "text" : " from a simd quaternion.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "externalParam", - "text" : "faces" + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "preciseIdentifier" : "c:@SA@simd_quatd", + "text" : "simd_quatd" }, { "kind" : "text", - "text" : ", " - }, + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/init(_:)-27eol", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-27eol", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid10QuaternionVyACSo10simd_quatdacfc" + }, + { + "abstract" : [ { - "kind" : "externalParam", - "text" : "wrapMode" + "text" : "Rotate the value in place.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" + "kind" : "identifier", + "text" : "rotate" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "material" + "text" : "by" }, { "kind" : "text", @@ -7038,51 +7139,73 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cube(center:size:faces:wrapmode:material:)-8t5q8", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-8t5q8", + "path" : "\/documentation\/euclid\/linesegment\/rotate(by:)-l48f", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-l48f", "taskGroups" : [ ], - "title" : "cube(center:size:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV4cube6center4size5faces8wrapMode8materialAcA6VectorV_AkC5FacesOAC04WrapH0Os11AnyHashableVSgtFZ" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Encodable-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/encode(to:)" - ], - "title" : "Instance Methods" + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "let" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "black" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "title" : "Encodable Implementations" + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/color\/black", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/black", + "taskGroups" : [ + + ], + "title" : "black", + "usr" : "s:6Euclid5ColorV5blackACvpZ" }, { "abstract" : [ { - "text" : "The size of the bounds. The minimum returned size is zero, even if max < min.", + "text" : "Replace\/remove path point colors.", "type" : "text" } ], @@ -7092,7 +7215,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -7100,32 +7223,41 @@ }, { "kind" : "identifier", - "text" : "size" + "text" : "withColor" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/size", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/size", + "path" : "\/documentation\/euclid\/path\/withcolor(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/withColor(_:)", "taskGroups" : [ ], - "title" : "size", - "usr" : "s:6Euclid6BoundsV4sizeAA6VectorVvp" + "title" : "withColor(_:)", + "usr" : "s:6Euclid4PathV9withColoryAcA0D0VSgF" }, { "abstract" : [ { - "text" : "Computes the convex hull of a set of path points.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -7133,14 +7265,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -7151,23 +7275,15 @@ }, { "kind" : "identifier", - "text" : "convexHull" - }, - { - "kind" : "text", - "text" : "<" - }, - { - "kind" : "genericParameter", - "text" : "T" + "text" : "scale" }, { "kind" : "text", - "text" : ">(" + "text" : "(" }, { "kind" : "externalParam", - "text" : "of" + "text" : "by" }, { "kind" : "text", @@ -7175,50 +7291,75 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA9PathPointV7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " - }, + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/bounds\/scale(by:)-mpk5", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-mpk5", + "taskGroups" : [ + + ], + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + }, + { + "abstract" : [ { - "kind" : "externalParam", - "text" : "material" + "text" : "Creates a ", + "type" : "text" }, { - "kind" : "text", - "text" : ": " + "code" : "Vector", + "type" : "codeVoice" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "text" : " from a simd vector 3.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : "?) -> " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "c:@T@simd_double3", + "text" : "simd_double3" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-5ztum", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-5ztum", + "path" : "\/documentation\/euclid\/vector\/init(_:)-5n3j", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5n3j", "taskGroups" : [ ], - "title" : "convexHull(of:material:)", - "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA9PathPointV7ElementRtzlFZ" + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACs5SIMD3VySdGcfc" }, { "abstract" : [ { - "text" : "Creates a composite path from an array of subpaths.", + "text" : "Creates a vector from an array of coordinates.", "type" : "text" } ], @@ -7232,20 +7373,12 @@ }, { "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "subpaths" - }, - { - "kind" : "text", - "text" : ": [" + "text" : "([" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -7254,18 +7387,18 @@ ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(subpaths:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(subpaths:)", + "path" : "\/documentation\/euclid\/vector\/init(_:)-63ct7", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-63ct7", "taskGroups" : [ ], - "title" : "init(subpaths:)", - "usr" : "s:6Euclid4PathV8subpathsACSayACG_tcfc" + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACSaySdGcfc" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -7283,7 +7416,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "translate" }, { "kind" : "text", @@ -7299,8 +7432,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -7309,18 +7442,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/rotate(by:)-1l9u5", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-1l9u5", + "path" : "\/documentation\/euclid\/polygon\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translate(by:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { "abstract" : [ { - "text" : "Returns the inverse angle.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -7328,14 +7461,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -7346,45 +7471,44 @@ }, { "kind" : "identifier", - "text" : "-" - }, - { - "kind" : "text", - "text" : " " + "text" : "translate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/-(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:)", + "path" : "\/documentation\/euclid\/vertex\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translate(by:)", "taskGroups" : [ ], - "title" : "-(_:)", - "usr" : "s:6Euclid5AngleV1sopyA2CFZ" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "Computes the point of intersection between a line segment and a plane.", "type" : "text" } ], @@ -7402,7 +7526,7 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "intersection" }, { "kind" : "text", @@ -7410,12 +7534,21 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "with" }, { "kind" : "text", "text" : ": " }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" + }, + { + "kind" : "text", + "text" : ") -> " + }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", @@ -7423,23 +7556,23 @@ }, { "kind" : "text", - "text" : ")" + "text" : "?" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translate(by:)", + "path" : "\/documentation\/euclid\/plane\/intersection(with:)-9o28g", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-9o28g", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "intersection(with:)", + "usr" : "s:6Euclid5PlaneV12intersection4withAA6VectorVSgAA11LineSegmentV_tF" }, { "abstract" : [ { - "text" : "Returns the perpendicular distance from another line to this one.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -7457,7 +7590,7 @@ }, { "kind" : "identifier", - "text" : "distance" + "text" : "translated" }, { "kind" : "text", @@ -7465,7 +7598,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "by" }, { "kind" : "text", @@ -7473,8 +7606,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -7482,86 +7615,67 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/distance(from:)-77i61", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-77i61", + "path" : "\/documentation\/euclid\/vector\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)", "taskGroups" : [ ], - "title" : "distance(from:)", - "usr" : "s:6Euclid4LineV8distance4fromSdAC_tF" + "title" : "translated(by:)", + "usr" : "s:6Euclid6VectorV10translated2byA2C_tF" }, { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/comparable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Comparable-Implementations", - "taskGroups" : [ + "abstract" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-14arr", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-8feph", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-7i9lp", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-9obdn", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-9s7pp", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-j6oq" - ], - "title" : "Operators" + "text" : "A Boolean value that indicates whether the polygon is convex.", + "type" : "text" } ], - "title" : "Comparable Implementations" - }, - { "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Decodable-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/hashable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Hashable-Implementations", - "taskGroups" : [ + "kind" : "keyword", + "text" : "var" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/hash(into:)" - ], - "title" : "Instance Methods" + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "isConvex" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "title" : "Hashable Implementations" + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/isconvex", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/isConvex", + "taskGroups" : [ + + ], + "title" : "isConvex", + "usr" : "s:6Euclid7PolygonV8isConvexSbvp" }, { "abstract" : [ { - "text" : "Creates a quaternion representing a rotation around the X axis.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -7571,32 +7685,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "rotated" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "pitch" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -7604,67 +7718,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/pitch(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch(_:)", + "path" : "\/documentation\/euclid\/transform\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)", "taskGroups" : [ ], - "title" : "pitch(_:)", - "usr" : "s:6Euclid10QuaternionV5pitchyAcA5AngleVFZ" + "title" : "rotated(by:)", + "usr" : "s:6Euclid9TransformV7rotated2byAcA8RotationV_tF" }, { - "abstract" : [ - { - "text" : "The square of the length of the quaternion. This is less expensive to compute than the length itself.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "lengthSquared" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/lengthsquared", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/lengthSquared", + "path" : "\/documentation\/euclid\/path\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Decodable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(from:)" + ], + "title" : "Initializers" + } ], - "title" : "lengthSquared", - "usr" : "s:6Euclid10QuaternionV13lengthSquaredSdvp" + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Encodes this quaternion into the given encoder.", + "text" : "Encodes this path into the given encoder.", "type" : "text" } ], @@ -7712,18 +7801,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/encode(to:)", + "path" : "\/documentation\/euclid\/path\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/encode(to:)", "taskGroups" : [ ], "title" : "encode(to:)", - "usr" : "s:6Euclid10QuaternionV6encode2toys7Encoder_p_tKF" + "usr" : "s:6Euclid4PathV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Returns a new vector representing the maximum of the components of the two vectors.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -7741,20 +7830,19 @@ }, { "kind" : "identifier", - "text" : "max" + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", @@ -7767,24 +7855,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.function", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/max(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/max(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/scaled(by:)-5dvvh", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh", "taskGroups" : [ ], - "title" : "max(_:_:)", - "usr" : "s:6Euclid3maxyAA6VectorVAD_ADtF" + "title" : "scaled(by:)", + "usr" : "s:6Euclid6BoundsV6scaled2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Creates a rotation from a quaternion.", "type" : "text" } ], @@ -7794,65 +7882,36 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "scaled" + "text" : "init" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/scaled(by:)-1dtbr", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr", + "path" : "\/documentation\/euclid\/rotation\/init(_:)-5w6mn", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-5w6mn", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid6VertexV6scaled2byACSd_tF" + "title" : "init(_:)", + "usr" : "s:6Euclid8RotationVyAcA10QuaternionVcfc" }, { "abstract" : [ { - "text" : "Splits all polygons in the mesh that are concave or have more than the specified number of", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "sides into two or more convex polygons.", + "text" : "Returns the perpendicular distance from another line to this one.", "type" : "text" } ], @@ -7870,7 +7929,7 @@ }, { "kind" : "identifier", - "text" : "tessellate" + "text" : "distance" }, { "kind" : "text", @@ -7878,7 +7937,7 @@ }, { "kind" : "externalParam", - "text" : "maxSides" + "text" : "from" }, { "kind" : "text", @@ -7886,8 +7945,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" }, { "kind" : "text", @@ -7895,24 +7954,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/tessellate(maxsides:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/tessellate(maxSides:)", + "path" : "\/documentation\/euclid\/line\/distance(from:)-77i61", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-77i61", "taskGroups" : [ ], - "title" : "tessellate(maxSides:)", - "usr" : "s:6Euclid4MeshV10tessellate8maxSidesACSi_tF" + "title" : "distance(from:)", + "usr" : "s:6Euclid4LineV8distance4fromSdAC_tF" }, { "abstract" : [ { - "text" : "The rotation or orientation component of the transform.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -7922,7 +7981,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -7930,7 +7989,15 @@ }, { "kind" : "identifier", - "text" : "rotation" + "text" : "rotate" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -7940,22 +8007,26 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid8RotationV", "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/rotation", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation", + "path" : "\/documentation\/euclid\/pathpoint\/rotate(by:)-4cg0v", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-4cg0v", "taskGroups" : [ ], - "title" : "rotation", - "usr" : "s:6Euclid9TransformV8rotationAA8RotationVvp" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -7973,7 +8044,7 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "scaled" }, { "kind" : "text", @@ -7989,8 +8060,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -7998,18 +8069,19 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)", + "path" : "\/documentation\/euclid\/vector\/scaled(by:)-356zr", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "scaled(by:)", + "usr" : "s:6Euclid6VectorV6scaled2byA2C_tF" }, { "availableLanguages" : [ @@ -8017,22 +8089,22 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Decodable-Implementations", + "path" : "\/documentation\/euclid\/mesh\/faces\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/Equatable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(from:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/!=(_:_:)" ], - "title" : "Initializers" + "title" : "Operators" } ], - "title" : "Decodable Implementations" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "The red component of the color.", "type" : "text" } ], @@ -8042,7 +8114,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -8050,138 +8122,57 @@ }, { "kind" : "identifier", - "text" : "smoothNormals" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "r" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/smoothnormals(_:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothNormals(_:)", + "path" : "\/documentation\/euclid\/color\/r", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/r", "taskGroups" : [ ], - "title" : "smoothNormals(_:)", - "usr" : "s:6Euclid4MeshV13smoothNormalsyAcA5AngleVF" + "title" : "r", + "usr" : "s:6Euclid5ColorV1rSdvp" }, { - "abstract" : [ - { - "text" : "A finite line segment in 3D space.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "struct" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "LineSegment" - } - ], - "kind" : "org.swift.docc.kind.structure", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment", + "path" : "\/documentation\/euclid\/polygon\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Decodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(_:_:)" - ], - "title" : "Creating Line Segments" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/start", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/end", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/length", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/direction" - ], - "title" : "Line Segment Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/containsPoint(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-1tffl", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-2u7vo", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersects(_:)" - ], - "title" : "Comparing Line Segments" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/inverted()" - ], - "title" : "Transforming Line Segments" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(start:end:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(from:)" ], "title" : "Initializers" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Bounded-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Comparable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Transformable-Implementations" - ], - "title" : "Default Implementations" } ], - "title" : "LineSegment", - "usr" : "s:6Euclid11LineSegmentV" + "title" : "Decodable Implementations" }, { + "abstract" : [ + { + "text" : "Returns a transformed copy of the value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -8192,56 +8183,48 @@ }, { "kind" : "identifier", - "text" : "..." - }, - { - "kind" : "text", - "text" : " " + "text" : "transformed" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeFromV", - "text" : "PartialRangeFrom" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "<" + "text" : ") -> " }, { "kind" : "typeIdentifier", "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/'...(_:)-14arr", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-14arr", + "path" : "\/documentation\/euclid\/bounds\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Creates a rotation from Euler angles applied in yaw\/pitch\/roll order.", + "text" : "Creates a vector of uniform size.", "type" : "text" } ], @@ -8259,41 +8242,7 @@ }, { "kind" : "externalParam", - "text" : "yaw" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "pitch" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "roll" + "text" : "size" }, { "kind" : "text", @@ -8301,8 +8250,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -8311,86 +8260,96 @@ ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(yaw:pitch:roll:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(yaw:pitch:roll:)", + "path" : "\/documentation\/euclid\/vector\/init(size:)-nkyk", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-nkyk", "taskGroups" : [ ], - "title" : "init(yaw:pitch:roll:)", - "usr" : "s:6Euclid8RotationV3yaw5pitch4rollAcA5AngleV_A2Htcfc" + "title" : "init(size:)", + "usr" : "s:6Euclid6VectorV4sizeACSd_tcfc" }, { "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Transformable-Implementations", + "taskGroups" : [ { - "kind" : "identifier", - "text" : "+=" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*=(_:_:)" + ], + "title" : "Operators" }, { - "kind" : "text", - "text" : " " - }, + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-1azi6", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-2ix6y", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-677dp", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-758tv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Transformable Implementations" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : "(" - }, + "text" : "All vector components are zero (or close to zero) in length.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "inout" + "text" : "var" }, { "kind" : "text", "text" : " " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "identifier", + "text" : "isZero" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/+=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)", + "path" : "\/documentation\/euclid\/vector\/iszero", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isZero", "taskGroups" : [ ], - "title" : "+=(_:_:)", - "usr" : "s:s18AdditiveArithmeticPsE2peoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "isZero", + "usr" : "s:6Euclid6VectorV6isZeroSbvp" }, { "abstract" : [ { - "text" : "Returns a vector with its components divided by the specified value.", + "text" : "Computes the convex hull of a set of path points.", "type" : "text" } ], @@ -8416,80 +8375,40 @@ }, { "kind" : "identifier", - "text" : "\/" - }, - { - "kind" : "text", - "text" : " " + "text" : "convexHull" }, { "kind" : "text", - "text" : "(" + "text" : "<" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : ", " + "text" : ">(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "externalParam", + "text" : "of" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/\/(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/(_:_:)", - "taskGroups" : [ - - ], - "title" : "\/(_:_:)", - "usr" : "s:6Euclid6VectorV1doiyA2C_SdtFZ" - }, - { - "abstract" : [ - { - "text" : "The unique polygon edges in the mesh.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" + "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA9PathPointV7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "uniqueEdges" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", @@ -8497,32 +8416,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sh", - "text" : "Set" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : "<" + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/uniqueedges", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/uniqueEdges", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-5ztum", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-5ztum", "taskGroups" : [ ], - "title" : "uniqueEdges", - "usr" : "s:6Euclid4MeshV11uniqueEdgesShyAA11LineSegmentVGvp" + "title" : "convexHull(of:material:)", + "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA9PathPointV7ElementRtzlFZ" }, { "abstract" : [ @@ -8571,18 +8486,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/scale(by:)-7pxnt", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-7pxnt", + "path" : "\/documentation\/euclid\/vertex\/scale(by:)-6c0wl", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-6c0wl", "taskGroups" : [ ], "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9PathPointV" + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Returns a normalized vector.", + "text" : "Creates a color from an array of component values.", "type" : "text" } ], @@ -8592,35 +8507,31 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?([" }, { - "kind" : "identifier", - "text" : "normalized" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "() -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/normalized()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/normalized()", + "path" : "\/documentation\/euclid\/color\/init(_:)-53lhy", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-53lhy", "taskGroups" : [ ], - "title" : "normalized()", - "usr" : "s:6Euclid6VectorV10normalizedACyF" + "title" : "init(_:)", + "usr" : "s:6Euclid5ColorVyACSgSaySdGcfc" }, { "availableLanguages" : [ @@ -8629,15 +8540,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "typealias" }, { "kind" : "text", @@ -8645,31 +8548,56 @@ }, { "kind" : "identifier", - "text" : ">=" - }, + "text" : "MaterialProvider" + } + ], + "kind" : "org.swift.docc.kind.typeAlias", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/materialprovider", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider", + "taskGroups" : [ + + ], + "title" : "Mesh.MaterialProvider", + "usr" : "s:6Euclid4MeshV16MaterialProvidera" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : " " + "text" : "A Boolean value that indicates whether the quaternion has a length of ", + "type" : "text" }, { - "kind" : "text", - "text" : "(" + "code" : "1", + "type" : "codeVoice" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : ".", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "identifier", + "text" : "isNormalized" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", @@ -8677,20 +8605,28 @@ "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/_=(_:_:)-9s7pp", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-9s7pp", + "path" : "\/documentation\/euclid\/quaternion\/isnormalized", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isNormalized", "taskGroups" : [ ], - "title" : ">=(_:_:)", - "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "isNormalized", + "usr" : "s:6Euclid10QuaternionV12isNormalizedSbvp" }, { "abstract" : [ { - "text" : "Merges any coplanar polygons that share one or more edges.", + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 3.", "type" : "text" } ], @@ -8700,7 +8636,48 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float3", + "text" : "simd_float3" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/init(_:)-5s4mt", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACs5SIMD3VySfGcfc" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", @@ -8708,32 +8685,32 @@ }, { "kind" : "identifier", - "text" : "detessellate" + "text" : "red" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/detessellate()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detessellate()", + "path" : "\/documentation\/euclid\/color\/red", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/red", "taskGroups" : [ ], - "title" : "detessellate()", - "usr" : "s:6Euclid4MeshV12detessellateACyF" + "title" : "red", + "usr" : "s:6Euclid5ColorV3redACvpZ" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -8751,7 +8728,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "scale" }, { "kind" : "text", @@ -8767,8 +8744,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -8777,13 +8754,13 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/rotate(by:)-11t07", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-11t07", + "path" : "\/documentation\/euclid\/vector\/scale(by:)-8g7t0", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-8g7t0", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VectorV" }, { "availableLanguages" : [ @@ -8791,17 +8768,17 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Encodable-Implementations", + "path" : "\/documentation\/euclid\/bounds\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Equatable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/encode(to:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/!=(_:_:)" ], - "title" : "Instance Methods" + "title" : "Operators" } ], - "title" : "Encodable Implementations" + "title" : "Equatable Implementations" }, { "availableLanguages" : [ @@ -8826,7 +8803,7 @@ }, { "kind" : "identifier", - "text" : "..<" + "text" : "..." }, { "kind" : "text", @@ -8846,8 +8823,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeUpToV", - "text" : "PartialRangeUpTo" + "preciseIdentifier" : "s:s16PartialRangeFromV", + "text" : "PartialRangeFrom" }, { "kind" : "text", @@ -8864,54 +8841,65 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/'.._(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:)", + "path" : "\/documentation\/euclid\/angle\/'...(_:)-7xdsm", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-7xdsm", "taskGroups" : [ ], - "title" : "..<(_:)", - "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Decodable-Implementations", - "taskGroups" : [ + "abstract" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(from:)" - ], - "title" : "Initializers" + "text" : "An array containing the raw components of the quaternion.", + "type" : "text" } ], - "title" : "Decodable Implementations" - }, - { "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/line\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Encodable-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/encode(to:)" - ], - "title" : "Instance Methods" + "kind" : "keyword", + "text" : "var" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "components" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : "]" } ], - "title" : "Encodable Implementations" + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/components", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components", + "taskGroups" : [ + + ], + "title" : "components", + "usr" : "s:6Euclid10QuaternionV10componentsSaySdGvp" }, { "abstract" : [ { - "text" : "Creates a mesh by filling a path to form one or more polygons.", + "text" : "Creates an angle representing the trigonometric arc cosine of the value you provide.", "type" : "text" } ], @@ -8937,7 +8925,7 @@ }, { "kind" : "identifier", - "text" : "fill" + "text" : "acos" }, { "kind" : "text", @@ -8945,112 +8933,141 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "faces" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + } + ], + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/acos(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/acos(_:)", + "taskGroups" : [ + + ], + "title" : "acos(_:)", + "usr" : "s:6Euclid5AngleV4acosyACSdFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "identifier", + "text" : ">" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "text" : "Self" }, { "kind" : "text", - "text" : "?) -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/fill(_:faces:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:)", + "path" : "\/documentation\/euclid\/linesegment\/_(_:_:)-9688a", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-9688a", "taskGroups" : [ ], - "title" : "fill(_:faces:material:)", - "usr" : "s:6Euclid4MeshV4fill_5faces8materialAcA4PathV_AC5FacesOs11AnyHashableVSgtFZ" + "title" : ">(_:_:)", + "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { + "abstract" : [ + { + "text" : "Merges coplanar polygons that share one or more edges, provided the result will be convex.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Decodable-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" - }, - { - "abstract" : [ + "kind" : "keyword", + "text" : "func" + }, { - "text" : "Define 3D objects by constructing meshes.", - "type" : "text" + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "detriangulate" + }, + { + "kind" : "text", + "text" : "() -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.article", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/constructingmeshes", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/ConstructingMeshes", + "path" : "\/documentation\/euclid\/mesh\/detriangulate()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detriangulate()", "taskGroups" : [ ], - "title" : "Constructing Meshes" + "title" : "detriangulate()", + "usr" : "s:6Euclid4MeshV13detriangulateACyF" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the mesh is watertight, meaning that every edge is", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "attached to two polygons (or a multiple of two).", + "text" : "Texture coordinates for the vertex. Set this to zero if you are not using a texture map.", "type" : "text" } ], @@ -9068,7 +9085,7 @@ }, { "kind" : "identifier", - "text" : "isWatertight" + "text" : "texcoord" }, { "kind" : "text", @@ -9076,27 +9093,21 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/iswatertight", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/isWatertight", + "path" : "\/documentation\/euclid\/vertex\/texcoord", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/texcoord", "taskGroups" : [ ], - "title" : "isWatertight", - "usr" : "s:6Euclid4MeshV12isWatertightSbvp" + "title" : "texcoord", + "usr" : "s:6Euclid6VertexV8texcoordAA6VectorVvp" }, { - "abstract" : [ - { - "text" : "Efficiently forms a union from multiple meshes.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -9111,7 +9122,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -9119,32 +9130,58 @@ }, { "kind" : "identifier", - "text" : "union" + "text" : "cyan" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/color\/cyan", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/cyan", + "taskGroups" : [ + + ], + "title" : "cyan", + "usr" : "s:6Euclid5ColorV4cyanACvpZ" + }, + { + "abstract" : [ + { + "text" : "Returns a scaled copy of the value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ">(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5union_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "kind" : "identifier", + "text" : "scaled" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "by" }, { "kind" : "text", @@ -9152,8 +9189,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -9161,42 +9198,71 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/union(_:iscancelled:)-swift.type.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.type.method", + "path" : "\/documentation\/euclid\/plane\/scaled(by:)-6axqe", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe", "taskGroups" : [ ], - "title" : "union(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV5union_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + "title" : "scaled(by:)", + "usr" : "s:6Euclid5PlaneV6scaled2byACSd_tF" }, { + "abstract" : [ + { + "text" : "Creates a vector from a CoreGraphics ", + "type" : "text" + }, + { + "code" : "CGPoint", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/bounded-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Bounded-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds" - ], - "title" : "Instance Properties" + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@S@CGPoint", + "text" : "CGPoint" + }, + { + "kind" : "text", + "text" : ")" } ], - "title" : "Bounded Implementations" + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/init(_:)-4eop9", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-4eop9", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACSo7CGPointVcfc" }, { "abstract" : [ { - "text" : "Returns the product of two quaternions (i.e. the effect of rotating the left by the right).", + "text" : "Encodes this quaternion into the given encoder.", "type" : "text" } ], @@ -9206,70 +9272,99 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "encode" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "*" + "kind" : "externalParam", + "text" : "to" }, { "kind" : "text", - "text" : " " + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : "(" + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "keyword", + "text" : "throws" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/encode(to:)", + "taskGroups" : [ + + ], + "title" : "encode(to:)", + "usr" : "s:6Euclid10QuaternionV6encode2toys7Encoder_p_tKF" + }, + { + "abstract" : [ + { + "text" : "Rotation has no effect.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "identifier", + "text" : "isIdentity" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/*(_:_:)-305tn", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-305tn", + "path" : "\/documentation\/euclid\/rotation\/isidentity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/isIdentity", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid10QuaternionV1moiyA2C_ACtFZ" + "title" : "isIdentity", + "usr" : "s:6Euclid8RotationV10isIdentitySbvp" }, { "abstract" : [ { - "text" : "Creates an angle representing the trigonometric arc tangent of the vector you provide.", + "text" : "Efficiently fills an array of paths, avoiding unecessary work if there are duplicates.", "type" : "text" } ], @@ -9295,15 +9390,24 @@ }, { "kind" : "identifier", - "text" : "atan2" + "text" : "fill" }, { "kind" : "text", - "text" : "(" + "text" : "([" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : "], " }, { "kind" : "externalParam", - "text" : "y" + "text" : "faces" }, { "kind" : "text", @@ -9311,8 +9415,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", @@ -9320,7 +9424,7 @@ }, { "kind" : "externalParam", - "text" : "x" + "text" : "material" }, { "kind" : "text", @@ -9328,8 +9432,25 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "isCancelled" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", @@ -9337,79 +9458,77 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/atan2(y:x:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan2(y:x:)", + "path" : "\/documentation\/euclid\/mesh\/fill(_:faces:material:iscancelled:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:isCancelled:)", "taskGroups" : [ ], - "title" : "atan2(y:x:)", - "usr" : "s:6Euclid5AngleV5atan21y1xACSd_SdtFZ" + "title" : "fill(_:faces:material:isCancelled:)", + "usr" : "s:6Euclid4MeshV4fill_5faces8material11isCancelledACSayAA4PathVG_AC5FacesOs11AnyHashableVSgSbyXEtFZ" }, { - "abstract" : [ - { - "text" : "Rotate the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "rotate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/bounds\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Transformable-Implementations", + "taskGroups" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*=(_:_:)" + ], + "title" : "Operators" }, { - "kind" : "text", - "text" : ")" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-15yni", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-ntgj", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-7dhh3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-mpk5", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)" + ], + "title" : "Instance Methods" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "title" : "Transformable Implementations" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/rotate(by:)-hj8h", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-hj8h", + "path" : "\/documentation\/euclid\/mesh\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Equatable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/!=(_:_:)" + ], + "title" : "Operators" + } ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -9427,7 +9546,7 @@ }, { "kind" : "identifier", - "text" : "with" + "text" : "rotate" }, { "kind" : "text", @@ -9435,7 +9554,7 @@ }, { "kind" : "externalParam", - "text" : "color" + "text" : "by" }, { "kind" : "text", @@ -9443,31 +9562,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/with(color:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/with(color:)", + "path" : "\/documentation\/euclid\/polygon\/rotate(by:)-7073s", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-7073s", "taskGroups" : [ ], - "title" : "with(color:)", - "usr" : "s:6Euclid4PathV4with5colorAcA5ColorVSg_tF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { "availableLanguages" : [ @@ -9526,18 +9637,18 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/!=(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/!=(_:_:)", "taskGroups" : [ ], "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6BoundsV" + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether two line segements intersect.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -9555,16 +9666,24 @@ }, { "kind" : "identifier", - "text" : "intersects" + "text" : "rotated" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -9572,39 +9691,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/intersects(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersects(_:)", + "path" : "\/documentation\/euclid\/plane\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)", "taskGroups" : [ ], - "title" : "intersects(_:)", - "usr" : "s:6Euclid11LineSegmentV10intersectsySbACF" + "title" : "rotated(by:)", + "usr" : "s:6Euclid5PlaneV7rotated2byAcA8RotationV_tF" }, { - "abstract" : [ - { - "text" : "Returns a new mesh reprenting only the volume exclusively occupied by", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "one shape or the other, but not both.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -9615,7 +9728,11 @@ }, { "kind" : "identifier", - "text" : "symmetricDifference" + "text" : "..." + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -9623,50 +9740,53 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "Self" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "isCancelled" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s19PartialRangeThroughV", + "text" : "PartialRangeThrough" }, { "kind" : "text", - "text" : ": " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ">" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/symmetricdifference(_:iscancelled:)-swift.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.method", + "path" : "\/documentation\/euclid\/angle\/'...(_:)-3s6ak", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-3s6ak", "taskGroups" : [ ], - "title" : "symmetricDifference(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV19symmetricDifference_11isCancelledA2C_SbyXEtF" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Creates a Euclid", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " from a simd matrix.", "type" : "text" } ], @@ -9676,70 +9796,52 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "scale" + "text" : "init" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "c:@SA@simd_float4x4", + "text" : "simd_float4x4" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/scale(by:)-9pjki", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-9pjki", - "taskGroups" : [ - - ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4MeshV" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Encodable-Implementations", - "taskGroups" : [ + "path" : "\/documentation\/euclid\/transform\/init(_:)-7hvb3", + "platforms" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/encode(to:)" - ], - "title" : "Instance Methods" + "beta" : false, + "deprecated" : false, + "introducedAt" : "13.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "10.15", + "name" : "macOS", + "unavailable" : false } ], - "title" : "Encodable Implementations" + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid9TransformVyACSo13simd_float4x4acfc" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Creates a rotation around the X axis.", "type" : "text" } ], @@ -9765,11 +9867,7 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "pitch" }, { "kind" : "text", @@ -9777,16 +9875,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -9794,88 +9884,105 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*(_:_:)", + "path" : "\/documentation\/euclid\/rotation\/pitch(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch(_:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "pitch(_:)", + "usr" : "s:6Euclid8RotationV5pitchyAcA5AngleVFZ" }, { + "abstract" : [ + { + "text" : "Creates a Path from a ", + "type" : "text" + }, + { + "code" : "CGPath", + "type" : "codeVoice" + }, + { + "text" : ". The returned path may contain nested subpaths.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@CGPathRef", + "text" : "CGPath" }, { "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "!=" + "text" : ", " }, { - "kind" : "text", - "text" : " " + "kind" : "externalParam", + "text" : "detail" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", "text" : ", " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "color" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/!=(_:_:)", + "path" : "\/documentation\/euclid\/path\/init(_:detail:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:detail:color:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4MeshV8WrapModeO" + "title" : "init(_:detail:color:)", + "usr" : "s:6Euclid4PathV_6detail5colorACSo9CGPathRefa_SiAA5ColorVSgtcfc" }, { "abstract" : [ { - "text" : "The magnitude of the vector.", + "text" : "An empty path.", "type" : "text" } ], @@ -9885,7 +9992,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", @@ -9893,7 +10008,7 @@ }, { "kind" : "identifier", - "text" : "length" + "text" : "empty" }, { "kind" : "text", @@ -9901,24 +10016,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/length", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/length", + "path" : "\/documentation\/euclid\/path\/empty", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/empty", "taskGroups" : [ ], - "title" : "length", - "usr" : "s:6Euclid6VectorV6lengthSdvp" + "title" : "empty", + "usr" : "s:6Euclid4PathV5emptyACvpZ" }, { "abstract" : [ { - "text" : "Returns a copy of the mesh with the new material applied to all polygons.", + "text" : "Replace\/remove point color.", "type" : "text" } ], @@ -9936,7 +10051,7 @@ }, { "kind" : "identifier", - "text" : "withMaterial" + "text" : "withColor" }, { "kind" : "text", @@ -9944,8 +10059,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", @@ -9953,24 +10068,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/withmaterial(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withMaterial(_:)", + "path" : "\/documentation\/euclid\/pathpoint\/withcolor(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/withColor(_:)", "taskGroups" : [ ], - "title" : "withMaterial(_:)", - "usr" : "s:6Euclid4MeshV12withMaterialyACs11AnyHashableVSgF" + "title" : "withColor(_:)", + "usr" : "s:6Euclid9PathPointV9withColoryAcA0E0VSgF" }, { "abstract" : [ { - "text" : "Creates a closed path from a polygon.", + "text" : "Alignment mode to use when extruding along a path.", "type" : "text" } ], @@ -9980,36 +10095,31 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "typealias" }, { "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "text" : " " }, { - "kind" : "text", - "text" : ")" + "kind" : "identifier", + "text" : "Alignment" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeAlias", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(_:)-3c0eo", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-3c0eo", + "path" : "\/documentation\/euclid\/mesh\/alignment", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Alignment", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid4PathVyAcA7PolygonVcfc" + "title" : "Mesh.Alignment", + "usr" : "s:6Euclid4MeshV9Alignmenta" }, { "abstract" : [ { - "text" : "Computes the line of intersection between two planes.", + "text" : "Returns a rotation multiplied by the specified value.", "type" : "text" } ], @@ -10017,6 +10127,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -10027,24 +10145,29 @@ }, { "kind" : "identifier", - "text" : "intersection" + "text" : "*" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "with" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -10052,36 +10175,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" - }, - { - "kind" : "text", - "text" : "?" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/intersection(with:)-4v7tg", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-4v7tg", + "path" : "\/documentation\/euclid\/rotation\/*(_:_:)-5fe82", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-5fe82", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid5PlaneV12intersection4withAA4LineVSgAC_tF" + "title" : "*(_:_:)", + "usr" : "s:6Euclid8RotationV1moiyA2C_SdtFZ" }, { "abstract" : [ { - "text" : "Creates a color from an ", - "type" : "text" - }, - { - "code" : "NSColor", - "type" : "codeVoice" - }, - { - "text" : ".", + "text" : "The points that make up the corners of the bounds.", "type" : "text" } ], @@ -10091,45 +10202,51 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "(" + "text" : " " + }, + { + "kind" : "identifier", + "text" : "corners" + }, + { + "kind" : "text", + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)NSColor", - "text" : "NSColor" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ")" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/init(_:)-7d8un", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-7d8un", + "path" : "\/documentation\/euclid\/bounds\/corners", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/corners", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid5ColorVyACSo7NSColorCcfc" + "title" : "corners", + "usr" : "s:6Euclid6BoundsV7cornersSayAA6VectorVGvp" }, { + "abstract" : [ + { + "text" : "Returns a rotated copy of the value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -10140,27 +10257,24 @@ }, { "kind" : "identifier", - "text" : "<=" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotated" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -10168,24 +10282,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/_=(_:_:)-375to", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-375to", + "path" : "\/documentation\/euclid\/vertex\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)", "taskGroups" : [ ], - "title" : "<=(_:_:)", - "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "rotated(by:)", + "usr" : "s:6Euclid6VertexV7rotated2byAcA8RotationV_tF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/bounded-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Bounded-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds" + ], + "title" : "Instance Properties" + } + ], + "title" : "Bounded Implementations" }, { "abstract" : [ { - "text" : "Creates a line from an origin and direction.", + "text" : "The position of the vertex.", "type" : "text" } ], @@ -10195,32 +10327,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "?(" - }, - { - "kind" : "externalParam", - "text" : "origin" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "direction" + "kind" : "identifier", + "text" : "position" }, { "kind" : "text", @@ -10230,26 +10345,22 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/init(origin:direction:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(origin:direction:)", + "path" : "\/documentation\/euclid\/vertex\/position", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/position", "taskGroups" : [ ], - "title" : "init(origin:direction:)", - "usr" : "s:6Euclid4LineV6origin9directionACSgAA6VectorV_AHtcfc" + "title" : "position", + "usr" : "s:6Euclid6VertexV8positionAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a new vector from a SceneKit vector.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -10259,78 +10370,70 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "rotate" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@S@SCNVector3", - "text" : "SCNVector3" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(_:)-228p6", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-228p6", + "path" : "\/documentation\/euclid\/transform\/rotate(by:)-11t07", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-11t07", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VectorVyACSo10SCNVector3Vcfc" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid9TransformV" }, { - "abstract" : [ - { - "text" : "Do not generate texture coordinates.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "case" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "none" - } - ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode\/none", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/none", + "path" : "\/documentation\/euclid\/vertex\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Encodable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)" + ], + "title" : "Instance Methods" + } ], - "title" : "Mesh.WrapMode.none", - "usr" : "s:6Euclid4MeshV8WrapModeO4noneyA2EmF" + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "Returns a new mesh representing the combined volume of the", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "mesh parameter and the receiver, with inner faces removed.", + "text" : "Efficiently gets the difference between multiple meshes.", "type" : "text" } ], @@ -10340,24 +10443,40 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "union" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " + }, + { + "kind" : "identifier", + "text" : "difference" + }, + { + "kind" : "text", + "text" : "<" + }, + { + "kind" : "genericParameter", + "text" : "T" + }, + { + "kind" : "text", + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid4MeshV10difference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", @@ -10386,71 +10505,38 @@ "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/union(_:iscancelled:)-swift.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.method", + "path" : "\/documentation\/euclid\/mesh\/difference(_:iscancelled:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/difference(_:isCancelled:)", "taskGroups" : [ ], - "title" : "union(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV5union_11isCancelledA2C_SbyXEtF" + "title" : "difference(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV10difference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" }, { - "abstract" : [ - { - "text" : "Material used by the mesh polygons.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "See ", - "type" : "text" - }, - { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", - "isActive" : true, - "type" : "reference" - }, - { - "text" : " for details.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "typealias" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "Material" - } - ], - "kind" : "org.swift.docc.kind.typeAlias", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/material", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", + "path" : "\/documentation\/euclid\/path\/alignment\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/Equatable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/!=(_:_:)" + ], + "title" : "Operators" + } ], - "title" : "Mesh.Material", - "usr" : "s:6Euclid4MeshV8Materiala" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Merges the polygons from two meshes.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -10468,59 +10554,15 @@ }, { "kind" : "identifier", - "text" : "merge" + "text" : "transform" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/merge(_:)-swift.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.method", - "taskGroups" : [ - - ], - "title" : "merge(_:)", - "usr" : "s:6Euclid4MeshV5mergeyA2CF" - }, - { - "abstract" : [ - { - "text" : "A normalized direction vector pointing forwards relative to the current rotation.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "forward" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -10528,63 +10570,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/forward", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/forward", - "taskGroups" : [ - - ], - "title" : "forward", - "usr" : "s:6Euclid8RotationV7forwardAA6VectorVvp" - }, - { - "abstract" : [ - { - "text" : "Creates a quaternion from a rotation matrix.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(_:)-7xa5o", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-7xa5o", + "path" : "\/documentation\/euclid\/path\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transform(by:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid10QuaternionVyAcA8RotationVcfc" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid4PathV" }, { "abstract" : [ { - "text" : "Linearly interpolate between this vector and another.", + "text" : "Returns a Boolean value that indicates whether two line segements intersect.", "type" : "text" } ], @@ -10602,7 +10609,7 @@ }, { "kind" : "identifier", - "text" : "lerp" + "text" : "intersects" }, { "kind" : "text", @@ -10610,17 +10617,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" }, { "kind" : "text", @@ -10628,19 +10626,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/lerp(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lerp(_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/intersects(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersects(_:)", "taskGroups" : [ ], - "title" : "lerp(_:_:)", - "usr" : "s:6Euclid6VectorV4lerpyA2C_SdtF" + "title" : "intersects(_:)", + "usr" : "s:6Euclid11LineSegmentV10intersectsySbACF" }, { "availableLanguages" : [ @@ -10665,7 +10663,7 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "..." }, { "kind" : "text", @@ -10681,36 +10679,40 @@ }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s19PartialRangeThroughV", + "text" : "PartialRangeThrough" }, { "kind" : "text", - "text" : ") -> " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/!=(_:_:)", + "path" : "\/documentation\/euclid\/plane\/'...(_:)-49h2f", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-49h2f", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4LineV" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -10728,7 +10730,7 @@ }, { "kind" : "identifier", - "text" : "translated" + "text" : "translate" }, { "kind" : "text", @@ -10749,28 +10751,23 @@ }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)", + "path" : "\/documentation\/euclid\/path\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translate(by:)", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid9PathPointV10translated2byAcA6VectorV_tF" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4PathV" }, { "abstract" : [ { - "text" : "Returns a rotation divided by the specified value.", + "text" : "Creates a new mesh from an array of polygons.", "type" : "text" } ], @@ -10780,70 +10777,87 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "([" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : " " - }, + "text" : "])" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/init(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:)", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid4MeshVyACSayAA7PolygonVGcfc" + }, + { + "abstract" : [ { - "kind" : "identifier", - "text" : "\/" - }, + "text" : "Creates a new vector by decoding from the given decoder.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "text", - "text" : " " + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/\/(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(from:)", "taskGroups" : [ ], - "title" : "\/(_:_:)", - "usr" : "s:6Euclid8RotationV1doiyA2C_SdtFZ" + "title" : "init(from:)", + "usr" : "s:6Euclid6BoundsV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -10861,7 +10875,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "scale" }, { "kind" : "text", @@ -10882,28 +10896,23 @@ }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/scaled(by:)-94kks", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-94kks", + "path" : "\/documentation\/euclid\/transform\/scale(by:)-55r4j", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-55r4j", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid4MeshV6scaled2byACSd_tF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid9TransformV" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -10911,14 +10920,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -10929,28 +10930,24 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "translated" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -10958,23 +10955,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*(_:_:)", + "path" : "\/documentation\/euclid\/pathpoint\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "translated(by:)", + "usr" : "s:6Euclid9PathPointV10translated2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Creates a curved path point at the specified position.", + "text" : "Creates an angle representing the trigonometric arc tangent of the value you provide.", "type" : "text" } ], @@ -11000,7 +10998,7 @@ }, { "kind" : "identifier", - "text" : "curve" + "text" : "atan" }, { "kind" : "text", @@ -11008,67 +11006,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "texcoord" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "color" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/curve(_:texcoord:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:texcoord:color:)", + "path" : "\/documentation\/euclid\/angle\/atan(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan(_:)", "taskGroups" : [ ], - "title" : "curve(_:texcoord:color:)", - "usr" : "s:6Euclid9PathPointV5curve_8texcoord5colorAcA6VectorV_AHSgAA5ColorVSgtFZ" + "title" : "atan(_:)", + "usr" : "s:6Euclid5AngleV4atanyACSdFZ" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "Creates a new vertex by decoding from the given decoder.", "type" : "text" } ], @@ -11078,15 +11042,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "rotated" + "text" : "init" }, { "kind" : "text", @@ -11094,7 +11050,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -11102,33 +11058,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)", + "path" : "\/documentation\/euclid\/vertex\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid4PathV7rotated2byAcA8RotationV_tF" + "title" : "init(from:)", + "usr" : "s:6Euclid6VertexV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "The translation or position component of the transform.", + "text" : "The bounds of the object.", "type" : "text" } ], @@ -11146,7 +11101,7 @@ }, { "kind" : "identifier", - "text" : "offset" + "text" : "bounds" }, { "kind" : "text", @@ -11154,24 +11109,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/offset", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset", + "path" : "\/documentation\/euclid\/bounded\/bounds", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded\/bounds", "taskGroups" : [ ], - "title" : "offset", - "usr" : "s:6Euclid9TransformV6offsetAA6VectorVvp" + "title" : "bounds", + "usr" : "s:6Euclid7BoundedP6boundsAA6BoundsVvp" }, { "abstract" : [ { - "text" : "Creates an angle representing the trigonometric arc cosine of the value you provide.", + "text" : "Creates a new path point by decoding from the given decoder.", "type" : "text" } ], @@ -11181,96 +11136,48 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "acos" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : "(" + "text" : ") " }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - } - ], - "kind" : "org.swift.docc.kind.typeMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/acos(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/acos(_:)", - "taskGroups" : [ - - ], - "title" : "acos(_:)", - "usr" : "s:6Euclid5AngleV4acosyACSdFZ" - }, - { - "abstract" : [ - { - "text" : "Creates a new mesh from an array of polygons.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "([" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" - }, - { - "kind" : "text", - "text" : "])" + "text" : "throws" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:)", + "path" : "\/documentation\/euclid\/pathpoint\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(from:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid4MeshVyACSayAA7PolygonVGcfc" + "title" : "init(from:)", + "usr" : "s:6Euclid9PathPointV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Axis of rotation", + "text" : "The face normal for the path.", "type" : "text" } ], @@ -11288,7 +11195,7 @@ }, { "kind" : "identifier", - "text" : "axis" + "text" : "faceNormal" }, { "kind" : "text", @@ -11302,74 +11209,36 @@ ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/axis", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/axis", + "path" : "\/documentation\/euclid\/path\/facenormal", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceNormal", "taskGroups" : [ ], - "title" : "axis", - "usr" : "s:6Euclid8RotationV4axisAA6VectorVvp" + "title" : "faceNormal", + "usr" : "s:6Euclid4PathV10faceNormalAA6VectorVvp" }, { - "abstract" : [ - { - "text" : "Protocol for transformable types.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "protocol" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "Transformable" - } - ], - "kind" : "org.swift.docc.kind.protocol", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable", + "path" : "\/documentation\/euclid\/bounds\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Encodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-1l9u5", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-5a3iz", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-76uyz", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-89xwv", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-8ec9r", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-3shbk", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-5p6di", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-9m686", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translated(by:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/encode(to:)" ], "title" : "Instance Methods" } ], - "title" : "Transformable", - "usr" : "s:6Euclid13TransformableP" + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "The quaternion Y component.", + "text" : "Creates a quaternion from an axis and angle.", "type" : "text" } ], @@ -11379,15 +11248,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?(" }, { - "kind" : "identifier", - "text" : "y" + "kind" : "externalParam", + "text" : "axis" }, { "kind" : "text", @@ -11395,24 +11264,45 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "angle" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/y", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/y", + "path" : "\/documentation\/euclid\/quaternion\/init(axis:angle:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(axis:angle:)", "taskGroups" : [ ], - "title" : "y", - "usr" : "s:6Euclid10QuaternionV1ySdvp" + "title" : "init(axis:angle:)", + "usr" : "s:6Euclid10QuaternionV4axis5angleACSgAA6VectorV_AA5AngleVtcfc" }, { "abstract" : [ { - "text" : "Computes the point of intersection between a line segment and a plane.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -11430,7 +11320,7 @@ }, { "kind" : "identifier", - "text" : "intersection" + "text" : "scaled" }, { "kind" : "text", @@ -11438,7 +11328,7 @@ }, { "kind" : "externalParam", - "text" : "with" + "text" : "by" }, { "kind" : "text", @@ -11446,8 +11336,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -11455,28 +11345,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/intersection(with:)-9o28g", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-9o28g", + "path" : "\/documentation\/euclid\/polygon\/scaled(by:)-69m6m", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid5PlaneV12intersection4withAA6VectorVSgAA11LineSegmentV_tF" + "title" : "scaled(by:)", + "usr" : "s:6Euclid7PolygonV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "The angle of rotation.", + "text" : "Returns the componentwise difference between two vectors.", "type" : "text" } ], @@ -11486,47 +11372,12 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" }, { "kind" : "text", "text" : " " }, - { - "kind" : "identifier", - "text" : "angle" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/angle", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/angle", - "taskGroups" : [ - - ], - "title" : "angle", - "usr" : "s:6Euclid8RotationV5angleAA5AngleVvp" - }, - { - "abstract" : [ - { - "text" : "Returns a scaled copy of the value.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -11537,19 +11388,24 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "-" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -11562,24 +11418,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scaled(by:)-9vwak", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak", + "path" : "\/documentation\/euclid\/vector\/-(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid9TransformV6scaled2byAcA6VectorV_tF" + "title" : "-(_:_:)", + "usr" : "s:6Euclid6VectorV1soiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "A combined rotation, position, and scale that can be applied to a 3D object.", "type" : "text" } ], @@ -11589,7 +11445,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "struct" }, { "kind" : "text", @@ -11597,49 +11453,83 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "Transform" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(offset:rotation:scale:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-55t4p", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-7a30s", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(from:)" + ], + "title" : "Creating Transforms" }, { - "kind" : "text", - "text" : "(" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/identity" + ], + "title" : "Default Transforms" }, { - "kind" : "externalParam", - "text" : "by" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isFlipped", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isIdentity" + ], + "title" : "Transform properties" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)" + ], + "title" : "Combining Transforms" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)" + ], + "title" : "Operators" }, { - "kind" : "text", - "text" : ") -> " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-7hvb3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-cys2" + ], + "title" : "Initializers" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Transformable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/scaled(by:)-6epo6", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6", - "taskGroups" : [ - - ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid6BoundsV6scaled2byACSd_tF" + "title" : "Transform", + "usr" : "s:6Euclid9TransformV" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -11657,7 +11547,7 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "scale" }, { "kind" : "text", @@ -11673,8 +11563,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -11683,21 +11573,15 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transform(by:)", + "path" : "\/documentation\/euclid\/transform\/scale(by:)-9i9s9", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-9i9s9", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid9PathPointV" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9TransformV" }, { - "abstract" : [ - { - "text" : "Divides the components of the vector by the value you provide.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -11720,66 +11604,76 @@ }, { "kind" : "identifier", - "text" : "\/=" + "text" : "xor" }, { "kind" : "text", - "text" : " " + "text" : "<" + }, + { + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : "(" + "text" : ">(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV3xor_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "isCancelled" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/\/=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/=(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/xor(_:iscancelled:)-swift.type.method", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.type.method", "taskGroups" : [ ], - "title" : "\/=(_:_:)", - "usr" : "s:6Euclid6VectorV2deoiyyACz_SdtFZ" + "title" : "xor(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV3xor_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" }, { + "abstract" : [ + { + "text" : "Returns a Boolean value that indicates whether a point lies inside the polygon, on the same plane.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -11790,11 +11684,7 @@ }, { "kind" : "identifier", - "text" : "..<" - }, - { - "kind" : "text", - "text" : " " + "text" : "containsPoint" }, { "kind" : "text", @@ -11802,7 +11692,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -11810,36 +11701,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeUpToV", - "text" : "PartialRangeUpTo" - }, - { - "kind" : "text", - "text" : "<" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/'.._(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:)", + "path" : "\/documentation\/euclid\/polygon\/containspoint(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/containsPoint(_:)", "taskGroups" : [ ], - "title" : "..<(_:)", - "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "containsPoint(_:)", + "usr" : "s:6Euclid7PolygonV13containsPointySbAA6VectorVF" }, { "abstract" : [ { - "text" : "Returns a vector with its components multiplied by the specified value.", + "text" : "The zero quaternion.", "type" : "text" } ], @@ -11857,7 +11736,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -11865,49 +11744,27 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "zero" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/*(_:_:)-5mcy5", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-5mcy5", + "path" : "\/documentation\/euclid\/quaternion\/zero", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/zero", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid6VectorV1moiyA2C_SdtFZ" + "title" : "zero", + "usr" : "s:6Euclid10QuaternionV4zeroACvpZ" }, { "availableLanguages" : [ @@ -11915,30 +11772,39 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/comparable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Comparable-Implementations", + "path" : "\/documentation\/euclid\/path\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Transformable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-2uz97", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-732z3", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-2si4j", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-9688a", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-5dvuy", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-8q2nt" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*=(_:_:)" ], "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-3m9le", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-93ypi", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-1kdd7", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-vnel", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)" + ], + "title" : "Instance Methods" } ], - "title" : "Comparable Implementations" + "title" : "Transformable Implementations" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Creates a new angle by decoding from the given decoder.", "type" : "text" } ], @@ -11948,72 +11814,98 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "*=" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : " " + "text" : ") " }, { - "kind" : "text", - "text" : "(" - }, + "kind" : "keyword", + "text" : "throws" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(from:)", + "taskGroups" : [ + + ], + "title" : "init(from:)", + "usr" : "s:6Euclid5AngleV4fromACs7Decoder_p_tKcfc" + }, + { + "abstract" : [ + { + "text" : "Deprecated.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "inout" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "bounds" }, { "kind" : "text", - "text" : ", " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" }, { "kind" : "text", - "text" : ")" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*=(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/init(bounds:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(bounds:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ" + "title" : "init(bounds:)", + "usr" : "s:6Euclid6BoundsV6boundsACSayACG_tcfc" }, { "abstract" : [ { - "text" : "Flips the polygon along its plane and reverses the order and surface normals of the vertices.", + "text" : "Return a copy of the mesh with spherically-mapped texture coordinates.", "type" : "text" } ], @@ -12031,7 +11923,7 @@ }, { "kind" : "identifier", - "text" : "inverted" + "text" : "sphereMapped" }, { "kind" : "text", @@ -12039,24 +11931,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/inverted()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/inverted()", + "path" : "\/documentation\/euclid\/mesh\/spheremapped()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphereMapped()", "taskGroups" : [ ], - "title" : "inverted()", - "usr" : "s:6Euclid7PolygonV8invertedACyF" + "title" : "sphereMapped()", + "usr" : "s:6Euclid4MeshV12sphereMappedACyF" }, { "abstract" : [ { - "text" : "The array of points that makes up this path.", + "text" : "The magnitude of the quaternion.", "type" : "text" } ], @@ -12066,7 +11958,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -12074,36 +11966,32 @@ }, { "kind" : "identifier", - "text" : "points" + "text" : "length" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" - }, - { - "kind" : "text", - "text" : "]" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/points", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/points", + "path" : "\/documentation\/euclid\/quaternion\/length", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/length", "taskGroups" : [ ], - "title" : "points", - "usr" : "s:6Euclid4PathV6pointsSayAA0B5PointVGvp" + "title" : "length", + "usr" : "s:6Euclid10QuaternionV6lengthSdvp" }, { "abstract" : [ { - "text" : "Creates a transform from the current position, scale and orientation of a SceneKit node.", + "text" : "Return a copy of the mesh with cube-mapped texture coordinates.", "type" : "text" } ], @@ -12111,14 +11999,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -12129,59 +12009,44 @@ }, { "kind" : "identifier", - "text" : "transform" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "from" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)SCNNode", - "text" : "SCNNode" + "text" : "cubeMapped" }, { "kind" : "text", - "text" : ") -> " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/transform(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(from:)", + "path" : "\/documentation\/euclid\/mesh\/cubemapped()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cubeMapped()", "taskGroups" : [ ], - "title" : "transform(from:)", - "usr" : "s:6Euclid9TransformV9transform4fromACSo7SCNNodeC_tFZ" + "title" : "cubeMapped()", + "usr" : "s:6Euclid4MeshV10cubeMappedACyF" }, { - "abstract" : [ - { - "text" : "Creates a vertex from a path point.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "subtract" }, { "kind" : "text", @@ -12189,85 +12054,53 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/init(_:)-7go25", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-7go25", - "taskGroups" : [ - - ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VertexVyAcA9PathPointVcfc" - }, - { - "abstract" : [ - { - "text" : "Creates a vector from an array of coordinates.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "text" : ", " + }, { - "kind" : "keyword", - "text" : "init" + "kind" : "externalParam", + "text" : "isCancelled" }, { "kind" : "text", - "text" : "([" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : "])" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(_:)-63ct7", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-63ct7", - "taskGroups" : [ + "path" : "\/documentation\/euclid\/mesh\/subtract(_:iscancelled:)", + "platforms" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VectorVyACSaySdGcfc" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Encodable-Implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtract(_:isCancelled:)", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/encode(to:)" - ], - "title" : "Instance Methods" - } + ], - "title" : "Encodable Implementations" + "title" : "subtract(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV8subtract_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "Returns the product of an angle and numeric multiplier.", + "text" : "Linearly interpolates between two path points.", "type" : "text" } ], @@ -12275,14 +12108,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -12293,11 +12118,7 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "lerp" }, { "kind" : "text", @@ -12305,8 +12126,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" }, { "kind" : "text", @@ -12323,24 +12144,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/*(_:_:)-8l78z", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-8l78z", + "path" : "\/documentation\/euclid\/pathpoint\/lerp(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/lerp(_:_:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid5AngleV1moiyA2C_SdtFZ" + "title" : "lerp(_:_:)", + "usr" : "s:6Euclid9PathPointV4lerpyA2C_SdtF" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "Angle representing a zero (identity) rotation.", "type" : "text" } ], @@ -12350,23 +12171,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "translated" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "zero" }, { "kind" : "text", @@ -12374,33 +12195,59 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)", + "path" : "\/documentation\/euclid\/angle\/zero", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid7PolygonV10translated2byAcA6VectorV_tF" + "title" : "zero", + "usr" : "s:6Euclid5AngleV4zeroACvpZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Transformable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-4cg0v", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-r7j4", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-4egi6", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-7pxnt", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Transformable Implementations" }, { "abstract" : [ { - "text" : "The quaternion X component.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -12410,7 +12257,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -12418,7 +12265,15 @@ }, { "kind" : "identifier", - "text" : "x" + "text" : "scale" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -12426,19 +12281,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/x", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/x", + "path" : "\/documentation\/euclid\/plane\/scale(by:)-677dp", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-677dp", "taskGroups" : [ ], - "title" : "x", - "usr" : "s:6Euclid10QuaternionV1xSdvp" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ @@ -12486,7 +12345,7 @@ { "abstract" : [ { - "text" : "Clip polygon to the specified plane", + "text" : "Create a mesh from an STL string.", "type" : "text" } ], @@ -12496,23 +12355,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "clip" + "text" : "init" }, { "kind" : "text", - "text" : "(" + "text" : "?(" }, { "kind" : "externalParam", - "text" : "to" + "text" : "stlString" }, { "kind" : "text", @@ -12520,32 +12371,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - }, - { - "kind" : "text", - "text" : ") -> [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:SS", + "text" : "String" }, { "kind" : "text", - "text" : "]" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/clip(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/clip(to:)", + "path" : "\/documentation\/euclid\/mesh\/init(stlstring:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)", "taskGroups" : [ ], - "title" : "clip(to:)", - "usr" : "s:6Euclid7PolygonV4clip2toSayACGAA5PlaneV_tF" + "title" : "init(stlString:)", + "usr" : "s:6Euclid4MeshV9stlStringACSgSS_tcfc" }, { "availableLanguages" : [ @@ -12570,7 +12412,7 @@ }, { "kind" : "identifier", - "text" : "+=" + "text" : "..<" }, { "kind" : "text", @@ -12581,20 +12423,21 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s16PartialRangeUpToV", + "text" : "PartialRangeUpTo" }, { "kind" : "text", - "text" : ", " + "text" : "<" }, { "kind" : "typeIdentifier", @@ -12602,23 +12445,23 @@ }, { "kind" : "text", - "text" : ")" + "text" : ">" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/+=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)", + "path" : "\/documentation\/euclid\/vector\/'.._(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:)", "taskGroups" : [ ], - "title" : "+=(_:_:)", - "usr" : "s:s18AdditiveArithmeticPsE2peoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "..<(_:)", + "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "The bounds of the mesh.", + "text" : "The square of the length of the quaternion. This is less expensive to compute than the length itself.", "type" : "text" } ], @@ -12636,7 +12479,7 @@ }, { "kind" : "identifier", - "text" : "bounds" + "text" : "lengthSquared" }, { "kind" : "text", @@ -12644,37 +12487,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/bounds", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/bounds", + "path" : "\/documentation\/euclid\/quaternion\/lengthsquared", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/lengthSquared", "taskGroups" : [ ], - "title" : "bounds", - "usr" : "s:6Euclid4MeshV6boundsAA6BoundsVvp" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "lengthSquared", + "usr" : "s:6Euclid10QuaternionV13lengthSquaredSdvp" }, { "availableLanguages" : [ @@ -12699,7 +12524,7 @@ }, { "kind" : "identifier", - "text" : "-=" + "text" : ">=" }, { "kind" : "text", @@ -12710,12 +12535,12 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -12723,31 +12548,28 @@ }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/-=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)", + "path" : "\/documentation\/euclid\/plane\/_=(_:_:)-5nk27", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-5nk27", "taskGroups" : [ ], - "title" : "-=(_:_:)", - "usr" : "s:s18AdditiveArithmeticPsE2seoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : ">=(_:_:)", + "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Returns the product of a numeric multiplier and an angle.", + "text" : "Reduces the bounds to contain just the intersection of itself and the specified bounds.", "type" : "text" } ], @@ -12757,67 +12579,98 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "formIntersection" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "*" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" }, { "kind" : "text", - "text" : " " - }, + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/bounds\/formintersection(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formIntersection(_:)", + "taskGroups" : [ + + ], + "title" : "formIntersection(_:)", + "usr" : "s:6Euclid6BoundsV16formIntersectionyyACF" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : "(" - }, + "text" : "The size or scale component of the transform.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "kind" : "identifier", + "text" : "scale" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/*(_:_:)-2ew65", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-2ew65", + "path" : "\/documentation\/euclid\/transform\/scale", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid5AngleV1moiyACSd_ACtFZ" + "title" : "scale", + "usr" : "s:6Euclid9TransformV5scaleAA6VectorVvp" }, { + "abstract" : [ + { + "text" : "Supported ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " Material base classes.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -12832,7 +12685,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -12840,53 +12693,39 @@ }, { "kind" : "identifier", - "text" : "..<" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeUpToV", - "text" : "PartialRangeUpTo" + "text" : "codableClasses" }, { "kind" : "text", - "text" : "<" + "text" : ": [" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s8AnyClassa", + "text" : "AnyClass" }, { "kind" : "text", - "text" : ">" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/'.._(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:)", + "path" : "\/documentation\/euclid\/polygon\/codableclasses", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/codableClasses", "taskGroups" : [ ], - "title" : "..<(_:)", - "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "codableClasses", + "usr" : "s:6Euclid7PolygonV14codableClassesSayyXlXpGvpZ" }, { + "abstract" : [ + { + "text" : "Returns a scaled copy of the value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -12901,24 +12740,15 @@ }, { "kind" : "identifier", - "text" : "subtract" + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - }, - { - "kind" : "text", - "text" : ", " - }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "by" }, { "kind" : "text", @@ -12926,8 +12756,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -12935,27 +12765,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/subtract(_:iscancelled:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtract(_:isCancelled:)", + "path" : "\/documentation\/euclid\/bounds\/scaled(by:)-6epo6", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6", "taskGroups" : [ ], - "title" : "subtract(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV8subtract_11isCancelledA2C_SbyXEtF" + "title" : "scaled(by:)", + "usr" : "s:6Euclid6BoundsV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Returns the sum of two angles.", "type" : "text" } ], @@ -12981,7 +12808,7 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "+" }, { "kind" : "text", @@ -12992,45 +12819,43 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*=(_:_:)", + "path" : "\/documentation\/euclid\/angle\/+(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "+(_:_:)", + "usr" : "s:6Euclid5AngleV1poiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "The identity transform (i.e. no transform).", + "text" : "Creates a new line segment by decoding from the given decoder.", "type" : "text" } ], @@ -13040,113 +12865,112 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "let" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "identity" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ": " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/identity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/identity", + "path" : "\/documentation\/euclid\/linesegment\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(from:)", "taskGroups" : [ ], - "title" : "identity", - "usr" : "s:6Euclid9TransformV8identityACvpZ" + "title" : "init(from:)", + "usr" : "s:6Euclid11LineSegmentV4fromACs7Decoder_p_tKcfc" }, { + "abstract" : [ + { + "text" : "Creates a single polygon from a path.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "shape" }, { "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "!=" + "text" : ": " }, { - "kind" : "text", - "text" : " " + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/!=(_:_:)", + "path" : "\/documentation\/euclid\/polygon\/init(shape:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(shape:material:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5ColorV" + "title" : "init(shape:material:)", + "usr" : "s:6Euclid7PolygonV5shape8materialACSgAA4PathV_s11AnyHashableVSgtcfc" }, { "abstract" : [ { - "text" : "The polygons in the mesh, grouped by material.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -13156,98 +12980,72 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "polygonsByMaterial" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": [" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "kind" : "identifier", + "text" : "*=" }, { "kind" : "text", - "text" : "? : [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "text" : " " }, { "kind" : "text", - "text" : "]]" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/polygonsbymaterial", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygonsByMaterial", - "taskGroups" : [ - - ], - "title" : "polygonsByMaterial", - "usr" : "s:6Euclid4MeshV18polygonsByMaterialSDys11AnyHashableVSgSayAA7PolygonVGGvp" - }, - { - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "text" : "(" + }, { "kind" : "keyword", - "text" : "static" + "text" : "inout" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "cyan" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/cyan", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/cyan", + "path" : "\/documentation\/euclid\/vector\/*=(_:_:)-3ur4e", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e", "taskGroups" : [ ], - "title" : "cyan", - "usr" : "s:6Euclid5ColorV4cyanACvpZ" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Efficiently extrudes an array of paths along their respective face normals, avoiding duplicate work.", + "text" : "Efficiently computes the intersection of multiple meshes.", "type" : "text" } ], @@ -13273,33 +13071,24 @@ }, { "kind" : "identifier", - "text" : "extrude" - }, - { - "kind" : "text", - "text" : "([" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "intersection" }, { "kind" : "text", - "text" : "], " + "text" : "<" }, { - "kind" : "externalParam", - "text" : "depth" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : ": " + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV12intersection_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", @@ -13307,7 +13096,7 @@ }, { "kind" : "externalParam", - "text" : "twist" + "text" : "isCancelled" }, { "kind" : "text", @@ -13315,80 +13104,80 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "sections" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "faces" - }, + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" + } + ], + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/intersection(_:iscancelled:)-swift.type.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.type.method", + "taskGroups" : [ + + ], + "title" : "intersection(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV12intersection_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ": " - }, + "text" : "Computes the convex hull of one or more meshes.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "kind" : "identifier", + "text" : "convexHull" }, { "kind" : "text", - "text" : "?, " + "text" : "(" }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "of" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : ") -> " + "text" : "]) -> " }, { "kind" : "typeIdentifier", @@ -13398,65 +13187,83 @@ ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/extrude(_:depth:twist:sections:faces:material:iscancelled:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:isCancelled:)", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:)-8x4al", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-8x4al", "taskGroups" : [ ], - "title" : "extrude(_:depth:twist:sections:faces:material:isCancelled:)", - "usr" : "s:6Euclid4MeshV7extrude_5depth5twist8sections5faces8material11isCancelledACSayAA4PathVG_SdAA5AngleVSiAC5FacesOs11AnyHashableVSgSbyXEtFZ" + "title" : "convexHull(of:)", + "usr" : "s:6Euclid4MeshV10convexHull2ofACSayACG_tFZ" }, { - "abstract" : [ - { - "text" : "Creates an angle from a radians value.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "radians" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, + "kind" : "identifier", + "text" : "!=" + }, { "kind" : "text", - "text" : ")" + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/init(radians:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(radians:)", + "path" : "\/documentation\/euclid\/transform\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/!=(_:_:)", "taskGroups" : [ ], - "title" : "init(radians:)", - "usr" : "s:6Euclid5AngleV7radiansACSd_tcfc" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid9TransformV" }, { "abstract" : [ { - "text" : "The angle of rotation around the Z-axis.", + "text" : "Flips the face direction and vertex normals of all polygons within the mesh.", "type" : "text" } ], @@ -13466,7 +13273,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -13474,66 +13281,50 @@ }, { "kind" : "identifier", - "text" : "roll" + "text" : "inverted" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/roll", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll", + "path" : "\/documentation\/euclid\/mesh\/inverted()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/inverted()", "taskGroups" : [ ], - "title" : "roll", - "usr" : "s:6Euclid10QuaternionV4rollAA5AngleVvp" + "title" : "inverted()", + "usr" : "s:6Euclid4MeshV8invertedACyF" }, { - "abstract" : [ - { - "text" : "Generate back faces.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "case" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "back" - } - ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces\/back", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/back", + "path" : "\/documentation\/euclid\/quaternion\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Equatable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/!=(_:_:)" + ], + "title" : "Operators" + } ], - "title" : "Mesh.Faces.back", - "usr" : "s:6Euclid4MeshV5FacesO4backyA2EmF" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Creates a closed rectangular path.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -13559,83 +13350,56 @@ }, { "kind" : "identifier", - "text" : "rectangle" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "width" + "text" : "*=" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : " " }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { - "kind" : "externalParam", - "text" : "height" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, - { - "kind" : "externalParam", - "text" : "color" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/rectangle(width:height:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rectangle(width:height:color:)", + "path" : "\/documentation\/euclid\/transformable\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*=(_:_:)", "taskGroups" : [ ], - "title" : "rectangle(width:height:color:)", - "usr" : "s:6Euclid4PathV9rectangle5width6height5colorACSd_SdAA5ColorVSgtFZ" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ" }, { "abstract" : [ { - "text" : "Return a copy of the mesh with transformed texture coordinates.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -13643,6 +13407,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -13653,12 +13425,24 @@ }, { "kind" : "identifier", - "text" : "withTextureTransform" + "text" : "*" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid9TransformV", @@ -13670,24 +13454,57 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/withtexturetransform(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withTextureTransform(_:)", + "path" : "\/documentation\/euclid\/polygon\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*(_:_:)", "taskGroups" : [ ], - "title" : "withTextureTransform(_:)", - "usr" : "s:6Euclid4MeshV20withTextureTransformyAcA0E0VF" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid7PolygonV" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "A closure that maps an STL facet color to a Euclid material.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "STLMaterialProvider" + } + ], + "kind" : "org.swift.docc.kind.typeAlias", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/stlmaterialprovider", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider", + "taskGroups" : [ + + ], + "title" : "Mesh.STLMaterialProvider", + "usr" : "s:6Euclid4MeshV19STLMaterialProvidera" + }, + { + "abstract" : [ + { + "text" : "Scale the value in place.", "type" : "text" } ], @@ -13705,7 +13522,7 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "scale" }, { "kind" : "text", @@ -13731,21 +13548,15 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translate(by:)", + "path" : "\/documentation\/euclid\/path\/scale(by:)-1kdd7", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-1kdd7", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4PathV" }, { - "abstract" : [ - { - "text" : "Creates a rotation transform.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -13768,7 +13579,11 @@ }, { "kind" : "identifier", - "text" : "rotation" + "text" : ">=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -13776,8 +13591,15 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", @@ -13785,40 +13607,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/rotation(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation(_:)", + "path" : "\/documentation\/euclid\/angle\/_=(_:_:)-9rm6o", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-9rm6o", "taskGroups" : [ ], - "title" : "rotation(_:)", - "usr" : "s:6Euclid9TransformV8rotationyAcA8RotationVFZ" + "title" : ">=(_:_:)", + "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "All materials used by the mesh.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "The array may contain ", - "type" : "text" - }, - { - "code" : "nil", - "type" : "codeVoice" - }, - { - "text" : " if some or all of the mesh uses the default material.", + "text" : "Creates a rounded rectangle path.", "type" : "text" } ], @@ -13828,7 +13634,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -13836,36 +13650,117 @@ }, { "kind" : "identifier", - "text" : "materials" + "text" : "roundedRectangle" }, { "kind" : "text", - "text" : ": [" + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "width" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?]" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "height" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "radius" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "detail" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/materials", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/materials", + "path" : "\/documentation\/euclid\/path\/roundedrectangle(width:height:radius:detail:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/roundedRectangle(width:height:radius:detail:color:)", "taskGroups" : [ ], - "title" : "materials", - "usr" : "s:6Euclid4MeshV9materialsSays11AnyHashableVSgGvp" + "title" : "roundedRectangle(width:height:radius:detail:color:)", + "usr" : "s:6Euclid4PathV16roundedRectangle5width6height6radius6detail5colorACSd_S2dSiAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Return a copy of the mesh with cylindrically-mapped texture coordinates.", "type" : "text" } ], @@ -13883,44 +13778,32 @@ }, { "kind" : "identifier", - "text" : "rotate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "cylinderMapped" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/rotate(by:)-2ix6y", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-2ix6y", + "path" : "\/documentation\/euclid\/mesh\/cylindermapped()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinderMapped()", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "cylinderMapped()", + "usr" : "s:6Euclid4MeshV14cylinderMappedACyF" }, { "abstract" : [ { - "text" : "The quaternion W component.", + "text" : "Returns the point where the specified plane intersects the line segment.", "type" : "text" } ], @@ -13930,7 +13813,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -13938,7 +13821,15 @@ }, { "kind" : "identifier", - "text" : "w" + "text" : "intersection" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "with" }, { "kind" : "text", @@ -13946,24 +13837,37 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : "?" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/w", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/w", + "path" : "\/documentation\/euclid\/linesegment\/intersection(with:)-1tffl", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-1tffl", "taskGroups" : [ ], - "title" : "w", - "usr" : "s:6Euclid10QuaternionV1wSdvp" + "title" : "intersection(with:)", + "usr" : "s:6Euclid11LineSegmentV12intersection4withAA6VectorVSgAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "The maximum coordinate of the bounds.", + "text" : "The length of the line segment.", "type" : "text" } ], @@ -13973,7 +13877,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -13981,7 +13885,7 @@ }, { "kind" : "identifier", - "text" : "max" + "text" : "length" }, { "kind" : "text", @@ -13989,32 +13893,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/max", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/max", + "path" : "\/documentation\/euclid\/linesegment\/length", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/length", "taskGroups" : [ ], - "title" : "max", - "usr" : "s:6Euclid6BoundsV3maxAA6VectorVvp" + "title" : "length", + "usr" : "s:6Euclid11LineSegmentV6lengthSdvp" }, { "abstract" : [ { - "text" : "Returns whether the leftmost vector has the lower value.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "This provides a stable order when sorting collections of vectors.", + "text" : "Computes the convex hull of a set of polygons.", "type" : "text" } ], @@ -14040,54 +13936,49 @@ }, { "kind" : "identifier", - "text" : "<" - }, - { - "kind" : "text", - "text" : " " + "text" : "convexHull" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "of" }, { "kind" : "text", - "text" : ", " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ") -> " + "text" : "]) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/_(_:_:)-9obdn", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-9obdn", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:)-6c896", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-6c896", "taskGroups" : [ ], - "title" : "<(_:_:)", - "usr" : "s:6Euclid6VectorV1loiySbAC_ACtFZ" + "title" : "convexHull(of:)", + "usr" : "s:6Euclid4MeshV10convexHull2ofACSayAA7PolygonVG_tFZ" }, { "abstract" : [ { - "text" : "Creates a rotation around the Z axis.", + "text" : "The end point of the line segment.", "type" : "text" } ], @@ -14097,15 +13988,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -14113,41 +13996,32 @@ }, { "kind" : "identifier", - "text" : "roll" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "end" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/roll(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll(_:)", + "path" : "\/documentation\/euclid\/linesegment\/end", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/end", "taskGroups" : [ ], - "title" : "roll(_:)", - "usr" : "s:6Euclid8RotationV4rollyAcA5AngleVFZ" + "title" : "end", + "usr" : "s:6Euclid11LineSegmentV3endAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a new quaternion by decoding from the given decoder.", + "text" : "The plane upon which all path points lie. Will be nil for non-planar paths.", "type" : "text" } ], @@ -14157,15 +14031,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "identifier", + "text" : "plane" }, { "kind" : "text", @@ -14173,42 +14047,40 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : "?" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(from:)", + "path" : "\/documentation\/euclid\/path\/plane", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/plane", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid10QuaternionV4fromACs7Decoder_p_tKcfc" + "title" : "plane", + "usr" : "s:6Euclid4PathV5planeAA5PlaneVSgvp" }, { - "abstract" : [ - { - "text" : "Texture coordinates for the vertex. Set this to zero if you are not using a texture map.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -14216,35 +14088,91 @@ }, { "kind" : "identifier", - "text" : "texcoord" + "text" : "..." }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SN", + "text" : "ClosedRange" + }, + { + "kind" : "text", + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/texcoord", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/texcoord", + "path" : "\/documentation\/euclid\/angle\/'...(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:_:)", "taskGroups" : [ ], - "title" : "texcoord", - "usr" : "s:6Euclid6VertexV8texcoordAA6VectorVvp" + "title" : "...(_:_:)", + "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "A plane located at the origin, aligned with the Y and Z axes.", + "text" : "Creates a new identity rotation.", "type" : "text" } ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "()" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/init()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init()", + "taskGroups" : [ + + ], + "title" : "init()", + "usr" : "s:6Euclid8RotationVACycfc" + }, + { "availableLanguages" : [ "swift" ], @@ -14259,7 +14187,7 @@ }, { "kind" : "keyword", - "text" : "let" + "text" : "func" }, { "kind" : "text", @@ -14267,40 +14195,99 @@ }, { "kind" : "identifier", - "text" : "yz" + "text" : "<=" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/yz", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/yz", + "path" : "\/documentation\/euclid\/plane\/_=(_:_:)-1oq2t", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-1oq2t", "taskGroups" : [ ], - "title" : "yz", - "usr" : "s:6Euclid5PlaneV2yzACvpZ" + "title" : "<=(_:_:)", + "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Returns a new mesh created by subtracting the volume of the", + "text" : "Creates a ", "type" : "text" }, { - "text" : " ", + "code" : "Rotation", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { - "text" : "mesh parameter from the receiver.", + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/init(_:)-8izj", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-8izj", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid8RotationVyACSo10simd_quatfacfc" + }, + { + "abstract" : [ + { + "text" : "Creates a cylindrical mesh.", "type" : "text" } ], @@ -14308,6 +14295,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -14318,16 +14313,24 @@ }, { "kind" : "identifier", - "text" : "subtracting" + "text" : "cylinder" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "externalParam", + "text" : "radius" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -14335,7 +14338,7 @@ }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "height" }, { "kind" : "text", @@ -14343,12 +14346,97 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "slices" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "poleDetail" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "faces" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "wrapMode" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " }, { "kind" : "typeIdentifier", @@ -14356,20 +14444,20 @@ "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/subtracting(_:iscancelled:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/subtracting(_:isCancelled:)", + "path" : "\/documentation\/euclid\/mesh\/cylinder(radius:height:slices:poledetail:faces:wrapmode:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)", "taskGroups" : [ ], - "title" : "subtracting(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV11subtracting_11isCancelledA2C_SbyXEtF" + "title" : "cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV8cylinder6radius6height6slices10poleDetail5faces8wrapMode8materialACSd_SdS2iAC5FacesOAC04WrapK0Os11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Returns whether the leftmost angle has the lower value.", + "text" : "Returns the difference between two angles.", "type" : "text" } ], @@ -14395,7 +14483,7 @@ }, { "kind" : "identifier", - "text" : "<" + "text" : "-" }, { "kind" : "text", @@ -14425,24 +14513,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/_(_:_:)-1aqv9", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-1aqv9", + "path" : "\/documentation\/euclid\/angle\/-(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)", "taskGroups" : [ ], - "title" : "<(_:_:)", - "usr" : "s:6Euclid5AngleV1loiySbAC_ACtFZ" + "title" : "-(_:_:)", + "usr" : "s:6Euclid5AngleV1soiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "Return a copy of the mesh with spherically-mapped texture coordinates.", + "text" : "The bounds of all the path’s points.", "type" : "text" } ], @@ -14452,7 +14540,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -14460,32 +14548,32 @@ }, { "kind" : "identifier", - "text" : "sphereMapped" + "text" : "bounds" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/spheremapped()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphereMapped()", + "path" : "\/documentation\/euclid\/path\/bounds", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds", "taskGroups" : [ ], - "title" : "sphereMapped()", - "usr" : "s:6Euclid4MeshV12sphereMappedACyF" + "title" : "bounds", + "usr" : "s:6Euclid4PathV6boundsAA6BoundsVvp" }, { "abstract" : [ { - "text" : "Return ASCII STL string data for the mesh.", + "text" : "Creates a new bounds that contains both the specified bounds and this one.", "type" : "text" } ], @@ -14503,24 +14591,16 @@ }, { "kind" : "identifier", - "text" : "stlString" + "text" : "union" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "name" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SS", - "text" : "String" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" }, { "kind" : "text", @@ -14528,24 +14608,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SS", - "text" : "String" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stlstring(name:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stlString(name:)", + "path" : "\/documentation\/euclid\/bounds\/union(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/union(_:)", "taskGroups" : [ ], - "title" : "stlString(name:)", - "usr" : "s:6Euclid4MeshV9stlString4nameS2S_tF" + "title" : "union(_:)", + "usr" : "s:6Euclid6BoundsV5unionyA2CF" }, { "abstract" : [ { - "text" : "Closes the path by joining last point to first.", + "text" : "Clip mesh to the specified plane and optionally fill sheared faces with specified material.", "type" : "text" } ], @@ -14563,32 +14643,66 @@ }, { "kind" : "identifier", - "text" : "closed" + "text" : "clip" }, { "kind" : "text", - "text" : "() -> " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "to" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "fill" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/closed()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/closed()", + "path" : "\/documentation\/euclid\/mesh\/clip(to:fill:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/clip(to:fill:)", "taskGroups" : [ ], - "title" : "closed()", - "usr" : "s:6Euclid4PathV6closedACyF" + "title" : "clip(to:fill:)", + "usr" : "s:6Euclid4MeshV4clip2to4fillAcA5PlaneV_s11AnyHashableVSgtF" }, { "abstract" : [ { - "text" : "The angle of rotation around the Z-axis.", + "text" : "The green component of the color.", "type" : "text" } ], @@ -14606,7 +14720,7 @@ }, { "kind" : "identifier", - "text" : "roll" + "text" : "g" }, { "kind" : "text", @@ -14614,24 +14728,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/roll", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll", + "path" : "\/documentation\/euclid\/color\/g", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/g", "taskGroups" : [ ], - "title" : "roll", - "usr" : "s:6Euclid8RotationV4rollAA5AngleVvp" + "title" : "g", + "usr" : "s:6Euclid5ColorV1gSdvp" }, { "abstract" : [ { - "text" : "The Z component of the vector.", + "text" : "Returns a new vector representing the maximum of the components of the two vectors.", "type" : "text" } ], @@ -14641,7 +14755,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -14649,32 +14763,68 @@ }, { "kind" : "identifier", - "text" : "z" + "text" : "max" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.function", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/z", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/z", + "path" : "\/documentation\/euclid\/max(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/max(_:_:)", "taskGroups" : [ ], - "title" : "z", - "usr" : "s:6Euclid6VectorV1zSdvp" + "title" : "max(_:_:)", + "usr" : "s:6Euclid3maxyAA6VectorVAD_ADtF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/bounds\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Decodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(from:)" + ], + "title" : "Initializers" + } + ], + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Encodes this path into the given encoder.", + "text" : "Deprecated.", "type" : "text" } ], @@ -14692,7 +14842,7 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "with" }, { "kind" : "text", @@ -14700,7 +14850,7 @@ }, { "kind" : "externalParam", - "text" : "to" + "text" : "color" }, { "kind" : "text", @@ -14708,40 +14858,55 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ") " + "text" : "?) -> " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/encode(to:)", + "path" : "\/documentation\/euclid\/path\/with(color:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/with(color:)", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid4PathV6encode2toys7Encoder_p_tKF" + "title" : "with(color:)", + "usr" : "s:6Euclid4PathV4with5colorAcA5ColorVSg_tF" }, { "abstract" : [ { - "text" : "A vector of length ", + "text" : "Define 3D objects by constructing meshes.", "type" : "text" - }, - { - "code" : "1", - "type" : "codeVoice" - }, + } + ], + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.article", + "language" : "swift", + "path" : "\/documentation\/euclid\/constructingmeshes", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/ConstructingMeshes", + "taskGroups" : [ + + ], + "title" : "Constructing Meshes" + }, + { + "abstract" : [ { - "text" : " along the Y axis.", + "text" : "Generate both the front and back faces.", "type" : "text" } ], @@ -14751,15 +14916,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "let" + "text" : "case" }, { "kind" : "text", @@ -14767,32 +14924,23 @@ }, { "kind" : "identifier", - "text" : "unitY" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "frontAndBack" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/unity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitY", + "path" : "\/documentation\/euclid\/mesh\/faces\/frontandback", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/frontAndBack", "taskGroups" : [ ], - "title" : "unitY", - "usr" : "s:6Euclid6VectorV5unitYACvpZ" + "title" : "Mesh.Faces.frontAndBack", + "usr" : "s:6Euclid4MeshV5FacesO12frontAndBackyA2EmF" }, { "abstract" : [ { - "text" : "Creates a closed circular path.", + "text" : "Performs a spherical linear interpolation between two rotations.", "type" : "text" } ], @@ -14800,14 +14948,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -14818,19 +14958,20 @@ }, { "kind" : "identifier", - "text" : "circle" + "text" : "slerp" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "radius" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -14839,28 +14980,54 @@ }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "segments" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/slerp(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/slerp(_:_:)", + "taskGroups" : [ + + ], + "title" : "slerp(_:_:)", + "usr" : "s:6Euclid8RotationV5slerpyA2C_SdtF" + }, + { + "abstract" : [ + { + "text" : "Returns a transformed copy of the value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "kind" : "identifier", + "text" : "transformed" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "color" + "text" : "by" }, { "kind" : "text", @@ -14868,110 +15035,214 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/circle(radius:segments:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/circle(radius:segments:color:)", + "path" : "\/documentation\/euclid\/plane\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)", "taskGroups" : [ ], - "title" : "circle(radius:segments:color:)", - "usr" : "s:6Euclid4PathV6circle6radius8segments5colorACSd_SiAA5ColorVSgtFZ" + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid5PlaneV" }, { + "abstract" : [ + { + "text" : "A path made up of a sequence of straight line segments between points.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "struct" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "Path" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/path", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/empty" + ], + "title" : "Default Paths" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-3c0eo", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-4jhkw", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(subpaths:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:detail:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/curve(_:detail:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:_:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/arc(angle:radius:segments:color:)" + ], + "title" : "Creating Paths" }, { - "kind" : "identifier", - "text" : "..<" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/circle(radius:segments:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/ellipse(width:height:segments:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rectangle(width:height:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/roundedRectangle(width:height:radius:detail:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/square(size:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/polygon(radius:sides:color:)" + ], + "title" : "Creating Shape Paths" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:font:width:detail:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:width:detail:)" + ], + "title" : "Creating Text Paths" }, { - "kind" : "text", - "text" : "(" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/points", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/plane", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/length", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isClosed", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isPlanar" + ], + "title" : "Path Properties" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/withColor(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/closed()" + ], + "title" : "Transforming Paths" }, { - "kind" : "text", - "text" : ", " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(cgPath:detail:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(polygon:)" + ], + "title" : "Initializers" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceNormal", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceVertices", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/latheProfile", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/subpaths" + ], + "title" : "Instance Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices(for:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/extrusionContours(along:twist:align:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/facePolygons(material:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/with(color:)" + ], + "title" : "Instance Methods" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment" + ], + "title" : "Enumerations" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Bounded-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Transformable-Implementations" + ], + "title" : "Default Implementations" + } + ], + "title" : "Path", + "usr" : "s:6Euclid4PathV" + }, + { + "abstract" : [ + { + "text" : "Creates a plane from a set of points.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ") -> " + "text" : "?(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sn", - "text" : "Range" + "kind" : "externalParam", + "text" : "points" }, { "kind" : "text", - "text" : "<" + "text" : ": [" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ">" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/'.._(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:_:)", + "path" : "\/documentation\/euclid\/plane\/init(points:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(points:)", "taskGroups" : [ ], - "title" : "..<(_:_:)", - "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "init(points:)", + "usr" : "s:6Euclid5PlaneV6pointsACSgSayAA6VectorVG_tcfc" }, { "abstract" : [ { - "text" : "Multiplies the components of the quaternion by the specified value.", + "text" : "Creates a quadratic bezier spline.", "type" : "text" } ], @@ -14997,57 +15268,58 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "curve" }, { "kind" : "text", - "text" : " " + "text" : "([" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" }, { "kind" : "text", - "text" : "(" + "text" : "], " }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "externalParam", + "text" : "detail" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/*=(_:_:)-lsgo", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-lsgo", + "path" : "\/documentation\/euclid\/path\/curve(_:detail:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/curve(_:detail:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid10QuaternionV2meoiyyACz_SdtFZ" + "title" : "curve(_:detail:)", + "usr" : "s:6Euclid4PathV5curve_6detailACSayAA0B5PointVG_SitFZ" }, { "abstract" : [ { - "text" : "Generate front faces.", + "text" : "Align extruded cross-sections to the tangent of the path curve.", "type" : "text" } ], @@ -15065,33 +15337,35 @@ }, { "kind" : "identifier", - "text" : "front" + "text" : "tangent" } ], "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces\/front", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/front", + "path" : "\/documentation\/euclid\/path\/alignment\/tangent", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/tangent", "taskGroups" : [ ], - "title" : "Mesh.Faces.front", - "usr" : "s:6Euclid4MeshV5FacesO5frontyA2EmF" + "title" : "Path.Alignment.tangent", + "usr" : "s:6Euclid4PathV9AlignmentO7tangentyA2EmF" }, { - "abstract" : [ - { - "text" : "The blue component of the color.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -15099,78 +15373,99 @@ }, { "kind" : "identifier", - "text" : "b" + "text" : "!=" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/b", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/b", + "path" : "\/documentation\/euclid\/quaternion\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/!=(_:_:)", "taskGroups" : [ ], - "title" : "b", - "usr" : "s:6Euclid5ColorV1bSdvp" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid10QuaternionV" }, { + "abstract" : [ + { + "text" : "The color of the path point (optional).", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/additivearithmetic-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/AdditiveArithmetic-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)" - ], - "title" : "Operators" + "kind" : "keyword", + "text" : "var" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero" - ], - "title" : "Type Properties" + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?" } ], - "title" : "AdditiveArithmetic Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/bounded-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Bounded-Implementations", + "path" : "\/documentation\/euclid\/pathpoint\/color", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/color", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/bounds" - ], - "title" : "Instance Properties" - } + ], - "title" : "Bounded Implementations" + "title" : "color", + "usr" : "s:6Euclid9PathPointV5colorAA5ColorVSgvp" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "The total length of the path.", "type" : "text" } ], @@ -15180,7 +15475,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -15188,15 +15483,7 @@ }, { "kind" : "identifier", - "text" : "scaled" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "length" }, { "kind" : "text", @@ -15206,31 +15493,22 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sd", "text" : "Double" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/scaled(by:)-6axqe", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe", + "path" : "\/documentation\/euclid\/path\/length", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/length", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid5PlaneV6scaled2byACSd_tF" + "title" : "length", + "usr" : "s:6Euclid4PathV6lengthSdvp" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Creates a new line from the specified line segment.", "type" : "text" } ], @@ -15246,50 +15524,37 @@ "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "polygons" - }, - { - "kind" : "text", - "text" : ": [" - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" }, { "kind" : "text", - "text" : "])" + "text" : ")" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(polygons:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(polygons:)", + "path" : "\/documentation\/euclid\/line\/init(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(_:)", "taskGroups" : [ ], - "title" : "init(polygons:)", - "usr" : "s:6Euclid6BoundsV8polygonsACSayAA7PolygonVG_tcfc" + "title" : "init(_:)", + "usr" : "s:6Euclid4LineVyAcA0B7SegmentVcfc" }, { + "abstract" : [ + { + "text" : "Splits a polygon into two or more convex polygons using the “ear clipping” method.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -15300,52 +15565,53 @@ }, { "kind" : "identifier", - "text" : "!=" - }, - { - "kind" : "text", - "text" : " " + "text" : "tessellate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "maxSides" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : ") -> " + "text" : ") -> [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "]" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/!=(_:_:)", + "path" : "\/documentation\/euclid\/polygon\/tessellate(maxsides:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/tessellate(maxSides:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "tessellate(maxSides:)", + "usr" : "s:6Euclid7PolygonV10tessellate8maxSidesSayACGSi_tF" }, { "abstract" : [ { - "text" : "The texture coordinate of the path point (optional). If omitted, will be inferred automatically.", + "text" : "The direction of the line segment as a normalized vector.", "type" : "text" } ], @@ -15363,7 +15629,7 @@ }, { "kind" : "identifier", - "text" : "texcoord" + "text" : "direction" }, { "kind" : "text", @@ -15373,26 +15639,22 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/texcoord", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/texcoord", + "path" : "\/documentation\/euclid\/linesegment\/direction", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/direction", "taskGroups" : [ ], - "title" : "texcoord", - "usr" : "s:6Euclid9PathPointV8texcoordAA6VectorVSgvp" + "title" : "direction", + "usr" : "s:6Euclid11LineSegmentV9directionAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a corner path point at the specified position.", + "text" : "Merges any coplanar polygons that share one or more edges.", "type" : "text" } ], @@ -15400,14 +15662,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -15418,75 +15672,32 @@ }, { "kind" : "identifier", - "text" : "point" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "texcoord" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "color" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "text" : "detessellate" }, { "kind" : "text", - "text" : "?) -> " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/point(_:texcoord:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:texcoord:color:)", + "path" : "\/documentation\/euclid\/mesh\/detessellate()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detessellate()", "taskGroups" : [ ], - "title" : "point(_:texcoord:color:)", - "usr" : "s:6Euclid9PathPointV5point_8texcoord5colorAcA6VectorV_AHSgAA5ColorVSgtFZ" + "title" : "detessellate()", + "usr" : "s:6Euclid4MeshV12detessellateACyF" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Creates an Angle from a degrees value.", "type" : "text" } ], @@ -15496,68 +15707,44 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "degrees" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)", + "path" : "\/documentation\/euclid\/angle\/init(degrees:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(degrees:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "init(degrees:)", + "usr" : "s:6Euclid5AngleV7degreesACSd_tcfc" }, { "abstract" : [ { - "text" : "Returns the normalized quaternion.", + "text" : "Creates a rotation from Euler angles applied in pitch\/yaw\/roll order.", "type" : "text" } ], @@ -15567,66 +15754,49 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "normalized" + "kind" : "externalParam", + "text" : "pitch" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/normalized()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/normalized()", - "taskGroups" : [ - - ], - "title" : "normalized()", - "usr" : "s:6Euclid10QuaternionV10normalizedACyF" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, { - "text" : "Scale the value in place.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "yaw" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "scale" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "by" + "text" : "roll" }, { "kind" : "text", @@ -15634,28 +15804,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/scale(by:)-vnel", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-vnel", + "path" : "\/documentation\/euclid\/rotation\/init(pitch:yaw:roll:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(pitch:yaw:roll:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid4PathV" + "title" : "init(pitch:yaw:roll:)", + "usr" : "s:6Euclid8RotationV5pitch3yaw4rollAcA5AngleV_A2Htcfc" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Returns the distance between the vector (representing a position in space) from the specified line.", "type" : "text" } ], @@ -15673,7 +15843,7 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "distance" }, { "kind" : "text", @@ -15681,7 +15851,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -15689,28 +15859,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transform(by:)", + "path" : "\/documentation\/euclid\/vector\/distance(from:)-3eglz", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-3eglz", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "distance(from:)", + "usr" : "s:6Euclid6VectorV8distance4fromSdAA4LineV_tF" }, { "abstract" : [ { - "text" : "Cropped and flattened version of path suitable for lathing around the Y axis.", + "text" : "Returns a vector with its components divided by the specified value.", "type" : "text" } ], @@ -15720,70 +15895,40 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "latheProfile" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/latheprofile", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/latheProfile", - "taskGroups" : [ - - ], - "title" : "latheProfile", - "usr" : "s:6Euclid4PathV12latheProfileACvp" - }, - { - "abstract" : [ - { - "text" : "Creates a uniform scale transform.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" + "kind" : "identifier", + "text" : "\/" }, { "kind" : "text", "text" : " " }, - { - "kind" : "keyword", - "text" : "func" - }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "scale" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "typeIdentifier", @@ -15796,27 +15941,21 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scale(_:)-7a30s", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-7a30s", + "path" : "\/documentation\/euclid\/vector\/\/(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/(_:_:)", "taskGroups" : [ ], - "title" : "scale(_:)", - "usr" : "s:6Euclid9TransformV5scaleyACSdFZ" + "title" : "\/(_:_:)", + "usr" : "s:6Euclid6VectorV1doiyA2C_SdtFZ" }, { - "abstract" : [ - { - "text" : "Transform the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -15839,7 +15978,7 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "!=" }, { "kind" : "text", @@ -15850,12 +15989,12 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -15863,32 +16002,28 @@ }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*=(_:_:)", + "path" : "\/documentation\/euclid\/path\/alignment\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/!=(_:_:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4PathV9AlignmentO" }, { "abstract" : [ { - "text" : "Multiplies the rotation angle by the specified value.", + "text" : "A point along a path.", "type" : "text" } ], @@ -15898,15 +16033,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "struct" }, { "kind" : "text", @@ -15914,54 +16041,121 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "PathPoint" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:texcoord:color:isCurved:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:_:_:texcoord:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:texcoord:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:_:_:texcoord:color:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:texcoord:color:)" + ], + "title" : "Creating Path Points" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/position", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/color", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/texcoord", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/isCurved" + ], + "title" : "Path Point Properties" }, { - "kind" : "text", - "text" : "(" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/lerp(_:_:)" + ], + "title" : "Interpolating Path Points" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/withColor(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curved(_:)" + ], + "title" : "Transforming Path Points" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/with(color:)" + ], + "title" : "Instance Methods" }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Transformable-Implementations" + ], + "title" : "Default Implementations" + } + ], + "title" : "PathPoint", + "usr" : "s:6Euclid9PathPointV" + }, + { + "abstract" : [ + { + "text" : "A surface normal vector, perpendicular to the plane.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "inout" + "text" : "let" }, { "kind" : "text", "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "identifier", + "text" : "normal" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/*=(_:_:)-7u9hf", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-7u9hf", + "path" : "\/documentation\/euclid\/plane\/normal", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/normal", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid8RotationV2meoiyyACz_SdtFZ" + "title" : "normal", + "usr" : "s:6Euclid5PlaneV6normalAA6VectorVvp" }, { + "abstract" : [ + { + "text" : "Divides the rotation angle by the specified value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -15984,7 +16178,7 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "\/=" }, { "kind" : "text", @@ -15995,61 +16189,72 @@ "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/!=(_:_:)", + "path" : "\/documentation\/euclid\/rotation\/\/=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/=(_:_:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid8RotationV" + "title" : "\/=(_:_:)", + "usr" : "s:6Euclid8RotationV2deoiyyACz_SdtFZ" }, { + "abstract" : [ + { + "text" : "Translate the value in place.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "translate" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "magenta" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -16057,24 +16262,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/magenta", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/magenta", + "path" : "\/documentation\/euclid\/pathpoint\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translate(by:)", "taskGroups" : [ ], - "title" : "magenta", - "usr" : "s:6Euclid5ColorV7magentaACvpZ" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "Callback used to cancel a long-running operation.", + "text" : "Creates a transform from a SceneKit transform matrix.", "type" : "text" } ], @@ -16084,46 +16293,93 @@ "fragments" : [ { "kind" : "keyword", - "text" : "typealias" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "CancellationHandler" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@SCNMatrix4", + "text" : "SCNMatrix4" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeAlias", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cancellationhandler", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/CancellationHandler", + "path" : "\/documentation\/euclid\/transform\/init(_:)-83oy3", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3", "taskGroups" : [ ], - "title" : "Mesh.CancellationHandler", - "usr" : "s:6Euclid4MeshV19CancellationHandlera" + "title" : "init(_:)", + "usr" : "s:6Euclid9TransformVyACSo13CATransform3DVcfc" }, { "abstract" : [ { - "text" : "Returns a new mesh representing the volume shared by both the mesh", + "text" : "The face generation policy for Euclid to use when creating a mesh.", "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "enum" }, { - "text" : " ", - "type" : "text" + "kind" : "text", + "text" : " " }, { - "text" : "parameter and the receiver. If these do not intersect, an empty mesh will be returned.", - "type" : "text" + "kind" : "identifier", + "text" : "Faces" + } + ], + "kind" : "org.swift.docc.kind.enumeration", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/faces", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/back", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/default", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/front", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/frontAndBack" + ], + "title" : "Enumeration Cases" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/Equatable-Implementations" + ], + "title" : "Default Implementations" } ], + "title" : "Mesh.Faces", + "usr" : "s:6Euclid4MeshV5FacesO" + }, + { "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -16134,7 +16390,11 @@ }, { "kind" : "identifier", - "text" : "intersection" + "text" : "..<" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -16142,50 +16402,44 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "Self" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "isCancelled" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s16PartialRangeUpToV", + "text" : "PartialRangeUpTo" }, { "kind" : "text", - "text" : ": " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ">" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/intersection(_:iscancelled:)-swift.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.method", + "path" : "\/documentation\/euclid\/angle\/'.._(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:)", "taskGroups" : [ ], - "title" : "intersection(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV12intersection_11isCancelledA2C_SbyXEtF" + "title" : "..<(_:)", + "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "Creates a bounds from two SceneKit vectors.", + "text" : "Merges this polygon with another, removing redundant vertices where possible.", "type" : "text" } ], @@ -16195,24 +16449,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "((min" + "text" : " " + }, + { + "kind" : "identifier", + "text" : "merge" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@S@SCNVector3", - "text" : "SCNVector3" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ", max" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "ensureConvex" }, { "kind" : "text", @@ -16220,28 +16482,37 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@S@SCNVector3", - "text" : "SCNVector3" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" }, { "kind" : "text", - "text" : "))" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "?" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(_:)-5bh7b", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-5bh7b", + "path" : "\/documentation\/euclid\/polygon\/merge(_:ensureconvex:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/merge(_:ensureConvex:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6BoundsVyACSo10SCNVector3V3min_AE3maxt_tcfc" + "title" : "merge(_:ensureConvex:)", + "usr" : "s:6Euclid7PolygonV5merge_12ensureConvexACSgAC_SbtF" }, { "abstract" : [ { - "text" : "An array of vertices suitable for constructing a polygon from the path.", + "text" : "Protocol for transformable types.", "type" : "text" } ], @@ -16251,7 +16522,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "protocol" }, { "kind" : "text", @@ -16259,36 +16530,53 @@ }, { "kind" : "identifier", - "text" : "faceVertices" - }, - { - "kind" : "text", - "text" : ": [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" - }, - { - "kind" : "text", - "text" : "]?" + "text" : "Transformable" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.protocol", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/facevertices", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceVertices", + "path" : "\/documentation\/euclid\/transformable", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-1l9u5", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-5a3iz", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-76uyz", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-89xwv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-8ec9r", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-3shbk", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-5p6di", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-9m686", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translated(by:)" + ], + "title" : "Instance Methods" + } ], - "title" : "faceVertices", - "usr" : "s:6Euclid4PathV12faceVerticesSayAA6VertexVGSgvp" + "title" : "Transformable", + "usr" : "s:6Euclid13TransformableP" }, { "abstract" : [ { - "text" : "Creates a path point from a vertex.", + "text" : "An unordered set of polygon edges.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", "type" : "text" } ], @@ -16298,36 +16586,53 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "(" + "text" : " " + }, + { + "kind" : "identifier", + "text" : "undirectedEdges" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "preciseIdentifier" : "s:Sh", + "text" : "Set" }, { "kind" : "text", - "text" : ")" + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/init(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:)", + "path" : "\/documentation\/euclid\/polygon\/undirectededges", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/undirectedEdges", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid9PathPointVyAcA6VertexVcfc" + "title" : "undirectedEdges", + "usr" : "s:6Euclid7PolygonV15undirectedEdgesShyAA11LineSegmentVGvp" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -16345,7 +16650,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "translated" }, { "kind" : "text", @@ -16361,8 +16666,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -16376,18 +16681,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scaled(by:)-19ukh", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh", + "path" : "\/documentation\/euclid\/transform\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid9TransformV6scaled2byACSd_tF" + "title" : "translated(by:)", + "usr" : "s:6Euclid9TransformV10translated2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "The angle in radians.", + "text" : "Creates a closed circular path.", "type" : "text" } ], @@ -16397,7 +16702,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -16405,7 +16718,15 @@ }, { "kind" : "identifier", - "text" : "radians" + "text" : "circle" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "radius" }, { "kind" : "text", @@ -16415,40 +16736,14 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sd", "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/radians", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians", - "taskGroups" : [ - - ], - "title" : "radians", - "usr" : "s:6Euclid5AngleV7radiansSdvp" - }, - { - "abstract" : [ - { - "text" : "The quaternion Z component.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "z" + "kind" : "externalParam", + "text" : "segments" }, { "kind" : "text", @@ -16456,32 +16751,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + } + ], + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/z", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/z", + "path" : "\/documentation\/euclid\/path\/circle(radius:segments:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/circle(radius:segments:color:)", "taskGroups" : [ ], - "title" : "z", - "usr" : "s:6Euclid10QuaternionV1zSdvp" + "title" : "circle(radius:segments:color:)", + "usr" : "s:6Euclid4PathV6circle6radius8segments5colorACSd_SiAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the vector has a length of ", - "type" : "text" - }, - { - "code" : "1", - "type" : "codeVoice" - }, - { - "text" : ".", + "text" : "Axis of rotation", "type" : "text" } ], @@ -16499,7 +16812,7 @@ }, { "kind" : "identifier", - "text" : "isNormalized" + "text" : "axis" }, { "kind" : "text", @@ -16507,24 +16820,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/isnormalized", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isNormalized", + "path" : "\/documentation\/euclid\/rotation\/axis", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/axis", "taskGroups" : [ ], - "title" : "isNormalized", - "usr" : "s:6Euclid6VectorV12isNormalizedSbvp" + "title" : "axis", + "usr" : "s:6Euclid8RotationV4axisAA6VectorVvp" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "The Z component of the vector.", "type" : "text" } ], @@ -16534,7 +16847,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -16542,19 +16855,55 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "z" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/z", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/z", + "taskGroups" : [ + + ], + "title" : "z", + "usr" : "s:6Euclid6VectorV1zSdvp" + }, + { + "abstract" : [ + { + "text" : "Creates a bounds from two points.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -16566,20 +16915,20 @@ "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translate(by:)", + "path" : "\/documentation\/euclid\/bounds\/init(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:_:)", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "init(_:_:)", + "usr" : "s:6Euclid6BoundsVyAcA6VectorV_AEtcfc" }, { "abstract" : [ { - "text" : "A combined rotation, position, and scale that can be applied to a 3D object.", + "text" : "Creates a closed rectangular path.", "type" : "text" } ], @@ -16589,7 +16938,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -16597,81 +16954,83 @@ }, { "kind" : "identifier", - "text" : "Transform" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/transform", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", - "taskGroups" : [ + "text" : "rectangle" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(offset:rotation:scale:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-55t4p", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-7a30s", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(from:)" - ], - "title" : "Creating Transforms" + "kind" : "text", + "text" : "(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/identity" - ], - "title" : "Default Transforms" + "kind" : "externalParam", + "text" : "width" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isFlipped", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isIdentity" - ], - "title" : "Transform properties" + "kind" : "text", + "text" : ": " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)" - ], - "title" : "Combining Transforms" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)" - ], - "title" : "Operators" + "kind" : "text", + "text" : ", " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(_:)-83oy3" - ], - "title" : "Initializers" + "kind" : "externalParam", + "text" : "height" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Transformable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "title" : "Transform", - "usr" : "s:6Euclid9TransformV" + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/rectangle(width:height:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rectangle(width:height:color:)", + "taskGroups" : [ + + ], + "title" : "rectangle(width:height:color:)", + "usr" : "s:6Euclid4PathV9rectangle5width6height5colorACSd_SdAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "An array of the subpaths that make up the path.", + "text" : "The quaternion Z component.", "type" : "text" } ], @@ -16689,36 +17048,50 @@ }, { "kind" : "identifier", - "text" : "subpaths" + "text" : "z" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : "]" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/subpaths", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/subpaths", + "path" : "\/documentation\/euclid\/quaternion\/z", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/z", "taskGroups" : [ ], - "title" : "subpaths", - "usr" : "s:6Euclid4PathV8subpathsSayACGvp" + "title" : "z", + "usr" : "s:6Euclid10QuaternionV1zSdvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Creates a bounds with min and max coordinates.", "type" : "text" } ], @@ -16728,23 +17101,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "rotate" + "kind" : "externalParam", + "text" : "min" }, { "kind" : "text", - "text" : "(" + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " }, { "kind" : "externalParam", - "text" : "by" + "text" : "max" }, { "kind" : "text", @@ -16752,28 +17134,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/rotate(by:)-16elu", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-16elu", + "path" : "\/documentation\/euclid\/bounds\/init(min:max:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(min:max:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "init(min:max:)", + "usr" : "s:6Euclid6BoundsV3min3maxAcA6VectorV_AGtcfc" }, { "abstract" : [ { - "text" : "A point along a path.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -16783,7 +17165,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "func" }, { "kind" : "text", @@ -16791,75 +17173,48 @@ }, { "kind" : "identifier", - "text" : "PathPoint" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint", - "taskGroups" : [ + "text" : "transformed" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:texcoord:color:isCurved:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:_:_:texcoord:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:texcoord:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:_:_:texcoord:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:texcoord:color:)" - ], - "title" : "Creating Path Points" + "kind" : "text", + "text" : "(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/position", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/color", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/texcoord", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/isCurved" - ], - "title" : "Path Point Properties" + "kind" : "externalParam", + "text" : "by" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/lerp(_:_:)" - ], - "title" : "Interpolating Path Points" + "kind" : "text", + "text" : ": " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/withColor(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curved(_:)" - ], - "title" : "Transforming Path Points" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/with(color:)" - ], - "title" : "Instance Methods" + "kind" : "text", + "text" : ") -> " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Transformable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "typeIdentifier", + "text" : "Self" } ], - "title" : "PathPoint", - "usr" : "s:6Euclid9PathPointV" + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)", + "taskGroups" : [ + + ], + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { "abstract" : [ { - "text" : "The X component of the vector.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -16869,7 +17224,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -16877,7 +17232,15 @@ }, { "kind" : "identifier", - "text" : "x" + "text" : "transformed" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -16885,24 +17248,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/x", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/x", + "path" : "\/documentation\/euclid\/vector\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)", "taskGroups" : [ ], - "title" : "x", - "usr" : "s:6Euclid6VectorV1xSdvp" + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", "type" : "text" } ], @@ -16912,23 +17283,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "rotate" + "kind" : "externalParam", + "text" : "roll" }, { "kind" : "text", - "text" : "(" + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ", " }, { "kind" : "externalParam", - "text" : "by" + "text" : "yaw" }, { "kind" : "text", @@ -16936,194 +17316,92 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "pitch" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/rotate(by:)-ntgj", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-ntgj", + "path" : "\/documentation\/euclid\/rotation\/init(roll:yaw:pitch:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(roll:yaw:pitch:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "init(roll:yaw:pitch:)", + "usr" : "s:6Euclid8RotationV4roll3yaw5pitchAcA5AngleV_A2Htcfc" }, { + "abstract" : [ + { + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Rotation", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/comparable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Comparable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-3s6ak", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-7xdsm", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-1aqv9", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-filj", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-375to", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-9rm6o" - ], - "title" : "Operators" - } - ], - "title" : "Comparable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Encodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/encode(to:)" - ], - "title" : "Instance Methods" - } - ], - "title" : "Encodable Implementations" - }, - { - "abstract" : [ - { - "text" : "An orientation or rotation in 3D space.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "Quaternion" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@SA@simd_quatd", + "text" : "simd_quatd" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.structure", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion", + "path" : "\/documentation\/euclid\/rotation\/init(_:)-7j4ql", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-7j4ql", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-27eol", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-7xa5o", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-b3v3", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-fyhx", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:_:_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(axis:angle:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(roll:yaw:pitch:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw(_:)" - ], - "title" : "Creating Quaternions" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/zero", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/identity" - ], - "title" : "Default Quaternions" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/axis", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/angle", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isIdentity" - ], - "title" : "Quaternion Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/dot(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/normalized()" - ], - "title" : "Computing Quaternions" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/slerp(_:_:)" - ], - "title" : "Interpolating Quaternions" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-2drke", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-305tn", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-5ic2j", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-lsgo" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isNormalized", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/length", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/lengthSquared", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/w", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/x", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/y", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/z" - ], - "title" : "Instance Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Hashable-Implementations" - ], - "title" : "Default Implementations" - } + ], - "title" : "Quaternion", - "usr" : "s:6Euclid10QuaternionV" + "title" : "init(_:)", + "usr" : "s:6Euclid8RotationVyACSo10simd_quatdacfc" }, { "abstract" : [ { - "text" : "Returns a rotation multiplied by the specified value.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -17161,8 +17439,7 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "Self" }, { "kind" : "text", @@ -17170,8 +17447,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -17179,24 +17456,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "Self" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/*(_:_:)-5fe82", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-5fe82", + "path" : "\/documentation\/euclid\/vertex\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*(_:_:)", "taskGroups" : [ ], "title" : "*(_:_:)", - "usr" : "s:6Euclid8RotationV1moiyA2C_SdtFZ" + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Alignment mode to use when extruding along a path.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -17206,7 +17482,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "typealias" + "text" : "func" }, { "kind" : "text", @@ -17214,23 +17490,44 @@ }, { "kind" : "identifier", - "text" : "Alignment" + "text" : "transform" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeAlias", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/alignment", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Alignment", + "path" : "\/documentation\/euclid\/vertex\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transform(by:)", "taskGroups" : [ ], - "title" : "Mesh.Alignment", - "usr" : "s:6Euclid4MeshV9Alignmenta" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Creates an angle representing the trigonometric arc sine of the value you provide.", + "text" : "Returns a quaternion with its components multiplied by the specified value.", "type" : "text" } ], @@ -17256,12 +17553,25 @@ }, { "kind" : "identifier", - "text" : "asin" + "text" : "*" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sd", @@ -17273,24 +17583,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/asin(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/asin(_:)", + "path" : "\/documentation\/euclid\/quaternion\/*(_:_:)-2drke", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-2drke", "taskGroups" : [ ], - "title" : "asin(_:)", - "usr" : "s:6Euclid5AngleV4asinyACSdFZ" + "title" : "*(_:_:)", + "usr" : "s:6Euclid10QuaternionV1moiyA2C_SdtFZ" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Returns a new bounds inset by the specified distance.", "type" : "text" } ], @@ -17308,7 +17618,7 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "inset" }, { "kind" : "text", @@ -17324,8 +17634,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -17333,77 +17643,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/transformed(by:)-9m686", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-9m686", + "path" : "\/documentation\/euclid\/bounds\/inset(by:)-49ykf", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-49ykf", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformableP11transformed2byxAA9TransformV_tF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" + "title" : "inset(by:)", + "usr" : "s:6Euclid6BoundsV5inset2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Creates a sphere by subdividing an icosahedron.", + "text" : "Returns a quaternion with its components divided by the specified value.", "type" : "text" } ], @@ -17429,113 +17686,49 @@ }, { "kind" : "identifier", - "text" : "icosahedron" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "radius" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "faces" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "text" : "\/" }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "wrapMode" + "text" : " " }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", "text" : ", " }, - { - "kind" : "externalParam", - "text" : "material" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/icosahedron(radius:faces:wrapmode:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/icosahedron(radius:faces:wrapMode:material:)", + "path" : "\/documentation\/euclid\/quaternion\/\/(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/(_:_:)", "taskGroups" : [ ], - "title" : "icosahedron(radius:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV11icosahedron6radius5faces8wrapMode8materialACSd_AC5FacesOAC04WrapG0Os11AnyHashableVSgtFZ" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Encodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/encode(to:)" - ], - "title" : "Instance Methods" - } - ], - "title" : "Encodable Implementations" + "title" : "\/(_:_:)", + "usr" : "s:6Euclid10QuaternionV1doiyA2C_SdtFZ" }, { "availableLanguages" : [ @@ -17543,39 +17736,22 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Transformable-Implementations", + "path" : "\/documentation\/euclid\/line\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Equatable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/!=(_:_:)" ], "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-15yni", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-ntgj", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-7dhh3", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-mpk5", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)" - ], - "title" : "Instance Methods" } ], - "title" : "Transformable Implementations" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Deprecated.", "type" : "text" } ], @@ -17583,14 +17759,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -17601,11 +17769,7 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "smoothNormals" }, { "kind" : "text", @@ -17613,16 +17777,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -17630,23 +17786,27 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/smoothnormals(_:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothNormals(_:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4PathV" + "title" : "smoothNormals(_:)", + "usr" : "s:6Euclid4MeshV13smoothNormalsyAcA5AngleVF" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -17664,7 +17824,7 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "translate" }, { "kind" : "text", @@ -17680,8 +17840,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -17690,18 +17850,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transform(by:)", + "path" : "\/documentation\/euclid\/plane\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translate(by:)", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "A plane located at the origin, aligned with the X and Y axes.", + "text" : "Creates an axis-aligned cuboidal mesh.", "type" : "text" } ], @@ -17719,7 +17879,7 @@ }, { "kind" : "keyword", - "text" : "let" + "text" : "func" }, { "kind" : "text", @@ -17727,7 +17887,15 @@ }, { "kind" : "identifier", - "text" : "xy" + "text" : "cube" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "center" }, { "kind" : "text", @@ -17735,186 +17903,101 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - } - ], - "kind" : "org.swift.docc.kind.typeProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/xy", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xy", - "taskGroups" : [ - - ], - "title" : "xy", - "usr" : "s:6Euclid5PlaneV2xyACvpZ" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, { - "text" : "An infinite 2D plane in 3D space.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "struct" + "kind" : "externalParam", + "text" : "size" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "Plane" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane", - "taskGroups" : [ + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(normal:pointOnPlane:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(points:)" - ], - "title" : "Creating Planes" + "kind" : "text", + "text" : ", " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xy", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xz", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/yz" - ], - "title" : "Default Planes" + "kind" : "externalParam", + "text" : "faces" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/normal", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/w" - ], - "title" : "Plane Properties" + "kind" : "text", + "text" : ": " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/containsPoint(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/distance(from:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-4v7tg", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-79olr" - ], - "title" : "Comparing Planes" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/inverted()", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)" - ], - "title" : "Transforming Planes" + "kind" : "text", + "text" : ", " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-9o28g" - ], - "title" : "Instance Methods" + "kind" : "externalParam", + "text" : "wrapMode" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Comparable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Transformable-Implementations" - ], - "title" : "Default Implementations" - } - ], - "title" : "Plane", - "usr" : "s:6Euclid5PlaneV" - }, - { - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ": " + }, { - "kind" : "keyword", - "text" : "static" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "yellow" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ": " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/yellow", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/yellow", + "path" : "\/documentation\/euclid\/mesh\/cube(center:size:faces:wrapmode:material:)-8t5q8", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-8t5q8", "taskGroups" : [ ], - "title" : "yellow", - "usr" : "s:6Euclid5ColorV6yellowACvpZ" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/comparable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Comparable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-49h2f", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-4yucl", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-3fd8h", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-6eeco", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-1oq2t", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-5nk27" - ], - "title" : "Operators" - } - ], - "title" : "Comparable Implementations" + "title" : "cube(center:size:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV4cube6center4size5faces8wrapMode8materialAcA6VectorV_AkC5FacesOAC04WrapH0Os11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "The angle of rotation.", "type" : "text" } ], @@ -17924,7 +18007,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -17932,15 +18015,7 @@ }, { "kind" : "identifier", - "text" : "scale" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "angle" }, { "kind" : "text", @@ -17948,28 +18023,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/scale(by:)-1kdd7", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-1kdd7", + "path" : "\/documentation\/euclid\/quaternion\/angle", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/angle", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4PathV" + "title" : "angle", + "usr" : "s:6Euclid10QuaternionV5angleAA5AngleVvp" }, { "abstract" : [ { - "text" : "Creates a copy of the polygon with the specified material.", + "text" : "An array of vertices suitable for constructing a set of edge polygons for the path.", "type" : "text" } ], @@ -17979,7 +18050,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -17987,49 +18058,44 @@ }, { "kind" : "identifier", - "text" : "withMaterial" + "text" : "edgeVertices" }, { "kind" : "text", - "text" : "(" + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/withmaterial(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withMaterial(_:)", + "path" : "\/documentation\/euclid\/path\/edgevertices", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices", "taskGroups" : [ ], - "title" : "withMaterial(_:)", - "usr" : "s:6Euclid7PolygonV12withMaterialyACs11AnyHashableVSgF" + "title" : "edgeVertices", + "usr" : "s:6Euclid4PathV12edgeVerticesSayAA6VertexVGvp" }, { "abstract" : [ { - "text" : "Creates a ", + "text" : "Creates a mesh from a RealityKit ", "type" : "text" }, { - "code" : "Rotation", + "code" : "ModelEntity", "type" : "codeVoice" }, { - "text" : " from a simd quaternion.", + "text" : " with optional material mapping.", "type" : "text" } ], @@ -18047,28 +18113,61 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@SA@simd_quatd", - "text" : "simd_quatd" + "preciseIdentifier" : "s:17RealityFoundation11ModelEntityC", + "text" : "ModelEntity" }, { "kind" : "text", - "text" : ")" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV26RealityKitMaterialProvidera", + "text" : "RealityKitMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(_:)-7j4ql", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-7j4ql", + "path" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-3drza", + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid8RotationVyACSo10simd_quatdacfc" + "title" : "init(_:materialLookup:)", + "usr" : "s:6Euclid4MeshV_14materialLookupAC17RealityFoundation11ModelEntityC_s11AnyHashableVSgAE8Material_pcSgtcfc" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -18076,6 +18175,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -18086,84 +18193,56 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "*=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/scaled(by:)-84xdd", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd", + "path" : "\/documentation\/euclid\/pathpoint\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*=(_:_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid4PathV6scaled2byACSd_tF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Transformable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-1umln", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-622p8", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-1hyw0", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-6c0wl", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)" - ], - "title" : "Instance Methods" - } - ], - "title" : "Transformable Implementations" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "The bounds of the object.", + "text" : "The maximum coordinate of the bounds.", "type" : "text" } ], @@ -18173,7 +18252,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "let" }, { "kind" : "text", @@ -18181,7 +18260,7 @@ }, { "kind" : "identifier", - "text" : "bounds" + "text" : "max" }, { "kind" : "text", @@ -18189,24 +18268,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/bounded\/bounds", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded\/bounds", + "path" : "\/documentation\/euclid\/bounds\/max", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/max", "taskGroups" : [ ], - "title" : "bounds", - "usr" : "s:6Euclid7BoundedP6boundsAA6BoundsVvp" + "title" : "max", + "usr" : "s:6Euclid6BoundsV3maxAA6VectorVvp" }, { "abstract" : [ { - "text" : "The minimum coordinate of the bounds.", + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Vector", + "type" : "codeVoice" + }, + { + "text" : " from a simd vector 2.", "type" : "text" } ], @@ -18216,40 +18303,36 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "min" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@simd_float2", + "text" : "simd_float2" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/min", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/min", + "path" : "\/documentation\/euclid\/vector\/init(_:)-7r7et", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et", "taskGroups" : [ ], - "title" : "min", - "usr" : "s:6Euclid6BoundsV3minAA6VectorVvp" + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACs5SIMD2VySfGcfc" }, { "abstract" : [ { - "text" : "All vector components are zero (or close to zero) in length.", + "text" : "Multiplies the components of the vector by the specified value.", "type" : "text" } ], @@ -18259,7 +18342,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -18267,32 +18358,57 @@ }, { "kind" : "identifier", - "text" : "isZero" + "text" : "*=" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "keyword", + "text" : "inout" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/iszero", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isZero", + "path" : "\/documentation\/euclid\/vector\/*=(_:_:)-9l46a", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-9l46a", "taskGroups" : [ ], - "title" : "isZero", - "usr" : "s:6Euclid6VectorV6isZeroSbvp" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid6VectorV2meoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "The angle of rotation around the Y-axis.", + "text" : "Returns a copy of the mesh with the new material applied to all polygons.", "type" : "text" } ], @@ -18302,7 +18418,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -18310,32 +18426,41 @@ }, { "kind" : "identifier", - "text" : "yaw" + "text" : "withMaterial" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/yaw", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw", + "path" : "\/documentation\/euclid\/mesh\/withmaterial(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withMaterial(_:)", "taskGroups" : [ ], - "title" : "yaw", - "usr" : "s:6Euclid10QuaternionV3yawAA5AngleVvp" + "title" : "withMaterial(_:)", + "usr" : "s:6Euclid4MeshV12withMaterialyACs11AnyHashableVSgF" }, { "abstract" : [ { - "text" : "Creates a new vertex.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -18345,29 +18470,27 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "identifier", + "text" : "translated" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "?, " + "text" : ": " }, { "kind" : "typeIdentifier", @@ -18376,32 +18499,28 @@ }, { "kind" : "text", - "text" : "?, " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" - }, - { - "kind" : "text", - "text" : "?)" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/init(_:_:_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:_:_:_:)", + "path" : "\/documentation\/euclid\/plane\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)", "taskGroups" : [ ], - "title" : "init(_:_:_:_:)", - "usr" : "s:6Euclid6VertexVyAcA6VectorV_AESgAfA5ColorVSgtcfc" + "title" : "translated(by:)", + "usr" : "s:6Euclid5PlaneV10translated2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Creates a closed square path.", + "text" : "Creates a new mesh that is the combination of the polygons from all the specified meshes.", "type" : "text" } ], @@ -18427,84 +18546,49 @@ }, { "kind" : "identifier", - "text" : "square" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "size" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "merge" }, { "kind" : "text", - "text" : ", " + "text" : "<" }, { - "kind" : "externalParam", - "text" : "color" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : ": " + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4MeshV5mergeyACxSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/square(size:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/square(size:color:)", + "path" : "\/documentation\/euclid\/mesh\/merge(_:)-swift.type.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.type.method", "taskGroups" : [ ], - "title" : "square(size:color:)", - "usr" : "s:6Euclid4PathV6square4size5colorACSd_AA5ColorVSgtFZ" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" + "title" : "merge(_:)", + "usr" : "s:6Euclid4MeshV5mergeyACxSlRzAC7ElementRtzlFZ" }, { "abstract" : [ { - "text" : "Creates a quaternion from an axis and angle.", + "text" : "The texture coordinate of the path point (optional). If omitted, will be inferred automatically.", "type" : "text" } ], @@ -18514,15 +18598,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "axis" + "kind" : "identifier", + "text" : "texcoord" }, { "kind" : "text", @@ -18535,40 +18619,23 @@ }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "angle" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ")" + "text" : "?" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(axis:angle:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(axis:angle:)", + "path" : "\/documentation\/euclid\/pathpoint\/texcoord", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/texcoord", "taskGroups" : [ ], - "title" : "init(axis:angle:)", - "usr" : "s:6Euclid10QuaternionV4axis5angleACSgAA6VectorV_AA5AngleVtcfc" + "title" : "texcoord", + "usr" : "s:6Euclid9PathPointV8texcoordAA6VectorVSgvp" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the polygon includes vertex normals that differ from the face normal.", + "text" : "Split the mesh along a plane.", "type" : "text" } ], @@ -18578,7 +18645,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -18586,7 +18653,15 @@ }, { "kind" : "identifier", - "text" : "hasVertexNormals" + "text" : "split" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "along" }, { "kind" : "text", @@ -18594,24 +18669,54 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + }, + { + "kind" : "text", + "text" : ") -> (front" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" + }, + { + "kind" : "text", + "text" : "?, back" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" + }, + { + "kind" : "text", + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/hasvertexnormals", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexNormals", + "path" : "\/documentation\/euclid\/mesh\/split(along:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/split(along:)", "taskGroups" : [ ], - "title" : "hasVertexNormals", - "usr" : "s:6Euclid7PolygonV16hasVertexNormalsSbvp" + "title" : "split(along:)", + "usr" : "s:6Euclid4MeshV5split5alongACSg5front_AF4backtAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -18619,14 +18724,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -18637,103 +18734,94 @@ }, { "kind" : "identifier", - "text" : "*=" - }, - { - "kind" : "text", - "text" : " " + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid9TransformV", "text" : "Transform" - }, - { - "kind" : "text", - "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*=(_:_:)", + "path" : "\/documentation\/euclid\/transform\/scaled(by:)-9vwak", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "scaled(by:)", + "usr" : "s:6Euclid9TransformV6scaled2byAcA6VectorV_tF" }, { - "abstract" : [ - { - "text" : "Creates a ", - "type" : "text" - }, - { - "code" : "Vector", - "type" : "codeVoice" - }, - { - "text" : " from a simd vector 3.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@simd_double3", - "text" : "simd_double3" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : ")" + "text" : " " + }, + { + "kind" : "identifier", + "text" : "gray" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(_:)-5n3j", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5n3j", + "path" : "\/documentation\/euclid\/color\/gray", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/gray", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VectorVyACs5SIMD3VySdGcfc" + "title" : "gray", + "usr" : "s:6Euclid5ColorV4grayACvpZ" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Creates a mesh from a SceneKit geometry, with the material you provide.", "type" : "text" } ], @@ -18743,23 +18831,24 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?(" }, { - "kind" : "identifier", - "text" : "transform" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:objc(cs)SCNGeometry", + "text" : "SCNGeometry" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "by" + "text" : "material" }, { "kind" : "text", @@ -18767,28 +18856,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ")" + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transform(by:)", + "path" : "\/documentation\/euclid\/mesh\/init(_:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:material:)", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "init(_:material:)", + "usr" : "s:6Euclid4MeshV_8materialACSgSo11SCNGeometryC_s11AnyHashableVSgtcfc" }, { "abstract" : [ { - "text" : "Transform has no effect.", + "text" : "Creates a scale transform.", "type" : "text" } ], @@ -18798,7 +18887,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -18806,32 +18903,41 @@ }, { "kind" : "identifier", - "text" : "isIdentity" + "text" : "scale" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/isidentity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isIdentity", + "path" : "\/documentation\/euclid\/transform\/scale(_:)-55t4p", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-55t4p", "taskGroups" : [ ], - "title" : "isIdentity", - "usr" : "s:6Euclid9TransformV10isIdentitySbvp" + "title" : "scale(_:)", + "usr" : "s:6Euclid9TransformV5scaleyAcA6VectorVFZ" }, { "abstract" : [ { - "text" : "Creates a quaternion representing a rotation around the Z axis.", + "text" : "Creates a quaternion representing a rotation around the Y axis.", "type" : "text" } ], @@ -18857,7 +18963,7 @@ }, { "kind" : "identifier", - "text" : "roll" + "text" : "yaw" }, { "kind" : "text", @@ -18880,25 +18986,27 @@ ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/roll(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll(_:)", + "path" : "\/documentation\/euclid\/quaternion\/yaw(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw(_:)", "taskGroups" : [ ], - "title" : "roll(_:)", - "usr" : "s:6Euclid10QuaternionV4rollyAcA5AngleVFZ" + "title" : "yaw(_:)", + "usr" : "s:6Euclid10QuaternionV3yawyAcA5AngleVFZ" }, { - "abstract" : [ - { - "text" : "Translate the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -18909,44 +19017,52 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "!=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translate(by:)", + "path" : "\/documentation\/euclid\/path\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/!=(_:_:)", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4PathV" }, { "abstract" : [ { - "text" : "The array of vertices that make up the polygon.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -18956,7 +19072,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -18964,36 +19088,52 @@ }, { "kind" : "identifier", - "text" : "vertices" + "text" : "*" }, { "kind" : "text", - "text" : ": [" + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "text" : "Self" }, { "kind" : "text", - "text" : "]" + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/vertices", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/vertices", + "path" : "\/documentation\/euclid\/vector\/*(_:_:)-98mbu", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-98mbu", "taskGroups" : [ ], - "title" : "vertices", - "usr" : "s:6Euclid7PolygonV8verticesSayAA6VertexVGvp" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "The array of points that makes up this path.", "type" : "text" } ], @@ -19003,7 +19143,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -19011,44 +19151,36 @@ }, { "kind" : "identifier", - "text" : "translate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "points" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" }, { "kind" : "text", - "text" : ")" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translate(by:)", + "path" : "\/documentation\/euclid\/path\/points", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/points", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF" + "title" : "points", + "usr" : "s:6Euclid4PathV6pointsSayAA0B5PointVGvp" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Creates a corner path point at the specified position.", "type" : "text" } ], @@ -19056,6 +19188,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -19066,15 +19206,24 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "point" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", - "text" : "by" + "text" : "texcoord" }, { "kind" : "text", @@ -19082,28 +19231,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/rotate(by:)-3m9le", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-3m9le", - "taskGroups" : [ - - ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid4PathV" + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" + } + ], + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/point(_:texcoord:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/point(_:texcoord:color:)", + "taskGroups" : [ + + ], + "title" : "point(_:texcoord:color:)", + "usr" : "s:6Euclid9PathPointV5point_8texcoord5colorAcA6VectorV_AHSgAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "The default wrap behavior. Context-dependent.", + "text" : "Computes the trigonometric sine of an angle.", "type" : "text" } ], @@ -19113,7 +19284,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "func" }, { "kind" : "text", @@ -19121,18 +19292,36 @@ }, { "kind" : "identifier", - "text" : "`default`" + "text" : "sin" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.function", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode\/default", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/default", + "path" : "\/documentation\/euclid\/sin(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/sin(_:)", "taskGroups" : [ ], - "title" : "Mesh.WrapMode.default", - "usr" : "s:6Euclid4MeshV8WrapModeO7defaultyA2EmF" + "title" : "sin(_:)", + "usr" : "s:6Euclid3sinySdAA5AngleVF" }, { "availableLanguages" : [ @@ -19149,7 +19338,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -19157,59 +19346,88 @@ }, { "kind" : "identifier", - "text" : "..." - }, - { - "kind" : "text", - "text" : " " + "text" : "orange" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/color\/orange", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/orange", + "taskGroups" : [ + + ], + "title" : "orange", + "usr" : "s:6Euclid5ColorV6orangeACvpZ" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ", " - }, + "text" : "The angle of rotation around the X-axis.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ") -> " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SN", - "text" : "ClosedRange" + "kind" : "identifier", + "text" : "pitch" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/'...(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/pitch", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch", "taskGroups" : [ ], - "title" : "...(_:_:)", - "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "pitch", + "usr" : "s:6Euclid10QuaternionV5pitchAA5AngleVvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { "abstract" : [ @@ -19248,8 +19466,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -19258,18 +19476,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/scale(by:)-8v4ag", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-8v4ag", + "path" : "\/documentation\/euclid\/polygon\/scale(by:)-3en6y", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-3en6y", "taskGroups" : [ ], "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Creates an array of contours by extruding one path along another path.", "type" : "text" } ], @@ -19287,7 +19505,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "extrusionContours" }, { "kind" : "text", @@ -19295,7 +19513,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "along" }, { "kind" : "text", @@ -19303,33 +19521,71 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "twist" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "align" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV9AlignmentO", + "text" : "Alignment" + }, + { + "kind" : "text", + "text" : ") -> [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : "]" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/scaled(by:)-2lm8c", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c", + "path" : "\/documentation\/euclid\/path\/extrusioncontours(along:twist:align:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/extrusionContours(along:twist:align:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid11LineSegmentV6scaled2byAcA6VectorV_tF" + "title" : "extrusionContours(along:twist:align:)", + "usr" : "s:6Euclid4PathV17extrusionContours5along5twist5alignSayACGAC_AA5AngleVAC9AlignmentOtF" }, { "abstract" : [ { - "text" : "The bounding box containing the polygon.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -19339,7 +19595,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -19347,7 +19603,15 @@ }, { "kind" : "identifier", - "text" : "bounds" + "text" : "translated" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -19355,24 +19619,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/bounds", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds", + "path" : "\/documentation\/euclid\/path\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)", "taskGroups" : [ ], - "title" : "bounds", - "usr" : "s:6Euclid7PolygonV6boundsAA6BoundsVvp" + "title" : "translated(by:)", + "usr" : "s:6Euclid4PathV10translated2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Encodes this line segment into the given encoder.", + "text" : "Merges the polygons from two meshes.", "type" : "text" } ], @@ -19390,55 +19663,50 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "merge" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "to" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : ") " + "text" : ") -> " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/encode(to:)", + "path" : "\/documentation\/euclid\/mesh\/merge(_:)-swift.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/merge(_:)-swift.method", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid11LineSegmentV6encode2toys7Encoder_p_tKF" + "title" : "merge(_:)", + "usr" : "s:6Euclid4MeshV5mergeyA2CF" }, { - "abstract" : [ - { - "text" : "Translate the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -19449,47 +19717,49 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "!=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translate(by:)", + "path" : "\/documentation\/euclid\/polygon\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/!=(_:_:)", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid7PolygonV" }, { - "abstract" : [ - { - "text" : "Returns a rotated copy of the bounds.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -19504,7 +19774,7 @@ }, { "kind" : "identifier", - "text" : "rotated" + "text" : "hash" }, { "kind" : "text", @@ -19512,41 +19782,44 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "into" }, { "kind" : "text", "text" : ": " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ") -> " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:s6HasherV", + "text" : "Hasher" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)", + "path" : "\/documentation\/euclid\/quaternion\/hash(into:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/hash(into:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid6BoundsV7rotated2byAcA8RotationV_tF" + "title" : "hash(into:)", + "usr" : "s:6Euclid10QuaternionV4hash4intoys6HasherVz_tF" }, { "abstract" : [ { - "text" : "Angle representing a quarter rotation.", + "text" : "Computes the line of intersection between two planes.", "type" : "text" } ], @@ -19556,23 +19829,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "intersection" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "halfPi" + "kind" : "externalParam", + "text" : "with" }, { "kind" : "text", @@ -19580,19 +19853,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" + }, + { + "kind" : "text", + "text" : "?" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/halfpi", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/halfPi", + "path" : "\/documentation\/euclid\/plane\/intersection(with:)-4v7tg", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-4v7tg", "taskGroups" : [ ], - "title" : "halfPi", - "usr" : "s:6Euclid5AngleV6halfPiACvpZ" + "title" : "intersection(with:)", + "usr" : "s:6Euclid5PlaneV12intersection4withAA4LineVSgAC_tF" }, { "abstract" : [ @@ -19661,18 +19947,18 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*=(_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*=(_:_:)", "taskGroups" : [ ], "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4PathV" + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -19690,7 +19976,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "scaled" }, { "kind" : "text", @@ -19706,28 +19992,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/rotate(by:)-1umln", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-1umln", + "path" : "\/documentation\/euclid\/linesegment\/scaled(by:)-37r1v", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "scaled(by:)", + "usr" : "s:6Euclid11LineSegmentV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "Creates a vector from the values you provide.", + "text" : "Returns the inverse angle.", "type" : "text" } ], @@ -19737,54 +20028,61 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "identifier", + "text" : "-" }, { "kind" : "text", - "text" : ", " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(_:_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:_:_:)", + "path" : "\/documentation\/euclid\/angle\/-(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:)", "taskGroups" : [ ], - "title" : "init(_:_:_:)", - "usr" : "s:6Euclid6VectorVyACSd_S2dtcfc" + "title" : "-(_:)", + "usr" : "s:6Euclid5AngleV1sopyA2CFZ" }, { "abstract" : [ { - "text" : "Encodes this angle into the given encoder.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -19802,7 +20100,7 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "transform" }, { "kind" : "text", @@ -19810,7 +20108,7 @@ }, { "kind" : "externalParam", - "text" : "to" + "text" : "by" }, { "kind" : "text", @@ -19818,32 +20116,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/encode(to:)", + "path" : "\/documentation\/euclid\/plane\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transform(by:)", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid5AngleV6encode2toys7Encoder_p_tKF" - }, + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Creates a path from an array of path points.", "type" : "text" } ], @@ -19853,108 +20147,51 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "transformed" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "init" }, { "kind" : "text", - "text" : ": " + "text" : "([" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)", + "path" : "\/documentation\/euclid\/path\/init(_:)-4jhkw", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-4jhkw", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "init(_:)", + "usr" : "s:6Euclid4PathVyACSayAA0B5PointVGcfc" }, { "abstract" : [ { - "text" : "Returns a new vertex with the normal inverted.", + "text" : "Returns a new mesh representing the combined volume of the", "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "inverted" }, { - "kind" : "text", - "text" : "() -> " + "text" : " ", + "type" : "text" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "text" : "mesh parameter and the receiver, with inner faces removed.", + "type" : "text" } ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/inverted()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/inverted()", - "taskGroups" : [ - - ], - "title" : "inverted()", - "usr" : "s:6Euclid6VertexV8invertedACyF" - }, - { "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -19965,11 +20202,7 @@ }, { "kind" : "identifier", - "text" : "!=" - }, - { - "kind" : "text", - "text" : " " + "text" : "union" }, { "kind" : "text", @@ -19977,15 +20210,25 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "isCancelled" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", @@ -19993,24 +20236,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/!=(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/union(_:iscancelled:)-swift.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/union(_:isCancelled:)-swift.method", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "union(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV5union_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Encodes this vertex into the given encoder.", "type" : "text" } ], @@ -20028,7 +20271,7 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "encode" }, { "kind" : "text", @@ -20036,7 +20279,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "to" }, { "kind" : "text", @@ -20044,28 +20287,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ")" + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transform(by:)", + "path" : "\/documentation\/euclid\/vertex\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "encode(to:)", + "usr" : "s:6Euclid6VertexV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Creates a linear path from a line segment.", + "text" : "Creates a mesh by extruding one path along another path.", "type" : "text" } ], @@ -20091,7 +20338,7 @@ }, { "kind" : "identifier", - "text" : "line" + "text" : "extrude" }, { "kind" : "text", @@ -20099,8 +20346,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", @@ -20108,7 +20355,7 @@ }, { "kind" : "externalParam", - "text" : "color" + "text" : "along" }, { "kind" : "text", @@ -20116,77 +20363,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : "?) -> " + "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - } - ], - "kind" : "org.swift.docc.kind.typeMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/line(_:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:color:)", - "taskGroups" : [ - - ], - "title" : "line(_:color:)", - "usr" : "s:6Euclid4PathV4line_5colorAcA11LineSegmentV_AA5ColorVSgtFZ" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Decodable-Implementations", - "taskGroups" : [ + "kind" : "externalParam", + "text" : "twist" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" - }, - { - "abstract" : [ + "kind" : "text", + "text" : ": " + }, { - "text" : "The zero quaternion.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, { - "kind" : "keyword", - "text" : "static" + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "align" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV9Alignmenta", + "text" : "Alignment" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "zero" + "kind" : "externalParam", + "text" : "faces" }, { "kind" : "text", @@ -20194,80 +20414,70 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - } - ], - "kind" : "org.swift.docc.kind.typeProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/zero", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/zero", - "taskGroups" : [ - - ], - "title" : "zero", - "usr" : "s:6Euclid10QuaternionV4zeroACvpZ" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" + }, { - "text" : "A vector of length ", - "type" : "text" + "kind" : "text", + "text" : ", " }, { - "code" : "1", - "type" : "codeVoice" + "kind" : "externalParam", + "text" : "material" }, { - "text" : " along the Z axis.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ": " + }, { - "kind" : "keyword", - "text" : "static" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : " " + "text" : "?, " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "externalParam", + "text" : "isCancelled" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "unitZ" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/unitz", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitZ", + "path" : "\/documentation\/euclid\/mesh\/extrude(_:along:twist:align:faces:material:iscancelled:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:along:twist:align:faces:material:isCancelled:)", "taskGroups" : [ ], - "title" : "unitZ", - "usr" : "s:6Euclid6VectorV5unitZACvpZ" + "title" : "extrude(_:along:twist:align:faces:material:isCancelled:)", + "usr" : "s:6Euclid4MeshV7extrude_5along5twist5align5faces8material11isCancelledAcA4PathV_AlA5AngleVAL9AlignmentOAC5FacesOs11AnyHashableVSgSbyXEtFZ" }, { + "abstract" : [ + { + "text" : "Multiplies the quaternion rotation on the left by the one on the right.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -20290,7 +20500,7 @@ }, { "kind" : "identifier", - "text" : "-=" + "text" : "*=" }, { "kind" : "text", @@ -20310,7 +20520,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -20318,7 +20529,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -20327,18 +20539,18 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/-=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/*=(_:_:)-5ic2j", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-5ic2j", "taskGroups" : [ ], - "title" : "-=(_:_:)", - "usr" : "s:s18AdditiveArithmeticPsE2seoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid10QuaternionV2meoiyyACz_ACtFZ" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "Return ASCII STL string data for the mesh.", "type" : "text" } ], @@ -20356,7 +20568,7 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "stlString" }, { "kind" : "text", @@ -20364,7 +20576,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "name" }, { "kind" : "text", @@ -20372,28 +20584,41 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:SS", + "text" : "String" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:SS", + "text" : "String" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translate(by:)", + "path" : "\/documentation\/euclid\/mesh\/stlstring(name:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stlString(name:)", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "stlString(name:)", + "usr" : "s:6Euclid4MeshV9stlString4nameS2S_tF" }, { "abstract" : [ { - "text" : "Creates a new vector by decoding from the given decoder.", + "text" : "A vector of length ", + "type" : "text" + }, + { + "code" : "1", + "type" : "codeVoice" + }, + { + "text" : " along the Y axis.", "type" : "text" } ], @@ -20403,43 +20628,43 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "kind" : "identifier", + "text" : "unitY" }, { "kind" : "text", - "text" : ") " + "text" : ": " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(from:)", + "path" : "\/documentation\/euclid\/vector\/unity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitY", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid6BoundsV4fromACs7Decoder_p_tKcfc" + "title" : "unitY", + "usr" : "s:6Euclid6VectorV5unitYACvpZ" }, { "availableLanguages" : [ @@ -20464,7 +20689,7 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "+=" }, { "kind" : "text", @@ -20475,12 +20700,12 @@ "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { "kind" : "typeIdentifier", @@ -20488,46 +20713,31 @@ }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/!=(_:_:)", + "path" : "\/documentation\/euclid\/vector\/+=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4MeshV" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "+=(_:_:)", + "usr" : "s:s18AdditiveArithmeticPsE2peoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "An empty mesh.", + "text" : "Creates a color from a luminance value and optional alpha component.", "type" : "text" } ], @@ -20537,48 +20747,45 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "let" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "empty" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/empty", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/empty", + "path" : "\/documentation\/euclid\/color\/init(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:)", "taskGroups" : [ ], - "title" : "empty", - "usr" : "s:6Euclid4MeshV5emptyACvpZ" + "title" : "init(_:_:)", + "usr" : "s:6Euclid5ColorVyACSd_Sdtcfc" }, { "abstract" : [ { - "text" : "Returns the difference between two angles.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -20586,14 +20793,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -20604,29 +20803,24 @@ }, { "kind" : "identifier", - "text" : "-" - }, - { - "kind" : "text", - "text" : " " + "text" : "translated" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -20634,24 +20828,31 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/-(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)", + "path" : "\/documentation\/euclid\/transformable\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translated(by:)", "taskGroups" : [ ], - "title" : "-(_:_:)", - "usr" : "s:6Euclid5AngleV1soiyA2C_ACtFZ" + "title" : "translated(by:)", + "usr" : "s:6Euclid13TransformableP10translated2byxAA6VectorV_tF" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "The surface normal of the vertex, used to calculate lighting.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "Set this to zero if you want the normal to be calculated automatically from the polygon face normal.", "type" : "text" } ], @@ -20661,7 +20862,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -20669,15 +20870,7 @@ }, { "kind" : "identifier", - "text" : "translate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "normal" }, { "kind" : "text", @@ -20687,26 +20880,22 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/translate(by:)", + "path" : "\/documentation\/euclid\/vertex\/normal", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/normal", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9PathPointV" + "title" : "normal", + "usr" : "s:6Euclid6VertexV6normalAA6VectorVvp" }, { "abstract" : [ { - "text" : "The red component of the color.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -20716,7 +20905,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -20724,7 +20913,15 @@ }, { "kind" : "identifier", - "text" : "r" + "text" : "rotated" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -20732,48 +20929,43 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/r", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/r", + "path" : "\/documentation\/euclid\/pathpoint\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotated(by:)", "taskGroups" : [ ], - "title" : "r", - "usr" : "s:6Euclid5ColorV1rSdvp" + "title" : "rotated(by:)", + "usr" : "s:6Euclid9PathPointV7rotated2byAcA8RotationV_tF" }, { + "abstract" : [ + { + "text" : "Creates a rotation from a SceneKit quaternion.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "..." - }, - { - "kind" : "text", - "text" : " " + "text" : "init" }, { "kind" : "text", @@ -20781,44 +20973,28 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeFromV", - "text" : "PartialRangeFrom" - }, - { - "kind" : "text", - "text" : "<" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "c:@T@SCNQuaternion", + "text" : "SCNQuaternion" }, { "kind" : "text", - "text" : ">" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/'...(_:)-7xdsm", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-7xdsm", + "path" : "\/documentation\/euclid\/rotation\/init(_:)-68leo", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-68leo", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "init(_:)", + "usr" : "s:6Euclid8RotationVyACSo10SCNVector4Vcfc" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Returns the sum of two quaternion rotations.", "type" : "text" } ], @@ -20828,96 +21004,70 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "scaled" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "+" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : " " }, { "kind" : "text", - "text" : ") -> " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/scaled(by:)-20sq4", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4", - "taskGroups" : [ - - ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid6VertexV6scaled2byAcA6VectorV_tF" - }, - { - "abstract" : [ - { - "text" : "Creates a rotation from a SceneKit quaternion.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@SCNQuaternion", - "text" : "SCNQuaternion" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(_:)-68leo", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-68leo", + "path" : "\/documentation\/euclid\/quaternion\/+(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+(_:_:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid8RotationVyACSo10SCNVector4Vcfc" + "title" : "+(_:_:)", + "usr" : "s:6Euclid10QuaternionV1poiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "Splits all polygons in the mesh into triangles.", + "text" : "The angle in radians.", "type" : "text" } ], @@ -20927,7 +21077,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -20935,32 +21085,32 @@ }, { "kind" : "identifier", - "text" : "triangulate" + "text" : "radians" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/triangulate()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/triangulate()", + "path" : "\/documentation\/euclid\/angle\/radians", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians", "taskGroups" : [ ], - "title" : "triangulate()", - "usr" : "s:6Euclid4MeshV11triangulateACyF" + "title" : "radians", + "usr" : "s:6Euclid5AngleV7radiansSdvp" }, { "abstract" : [ { - "text" : "Creates a spherical mesh.", + "text" : "Efficiently extrudes an array of paths along their respective face normals, avoiding duplicate work.", "type" : "text" } ], @@ -20986,32 +21136,24 @@ }, { "kind" : "identifier", - "text" : "sphere" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "radius" + "text" : "extrude" }, { "kind" : "text", - "text" : ": " + "text" : "([" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : ", " + "text" : "], " }, { "kind" : "externalParam", - "text" : "slices" + "text" : "depth" }, { "kind" : "text", @@ -21019,8 +21161,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -21028,7 +21170,7 @@ }, { "kind" : "externalParam", - "text" : "stacks" + "text" : "twist" }, { "kind" : "text", @@ -21036,16 +21178,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : "?, " + "text" : ", " }, { "kind" : "externalParam", - "text" : "poleDetail" + "text" : "sections" }, { "kind" : "text", @@ -21079,7 +21221,7 @@ }, { "kind" : "externalParam", - "text" : "wrapMode" + "text" : "material" }, { "kind" : "text", @@ -21087,16 +21229,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ", " + "text" : "?, " }, { "kind" : "externalParam", - "text" : "material" + "text" : "isCancelled" }, { "kind" : "text", @@ -21104,12 +21246,12 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", @@ -21119,18 +21261,18 @@ ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/sphere(radius:slices:stacks:poledetail:faces:wrapmode:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)", + "path" : "\/documentation\/euclid\/mesh\/extrude(_:depth:twist:sections:faces:material:iscancelled:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:isCancelled:)", "taskGroups" : [ ], - "title" : "sphere(radius:slices:stacks:poleDetail:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV6sphere6radius6slices6stacks10poleDetail5faces8wrapMode8materialACSd_S2iSgSiAC5FacesOAC04WrapK0Os11AnyHashableVSgtFZ" + "title" : "extrude(_:depth:twist:sections:faces:material:isCancelled:)", + "usr" : "s:6Euclid4MeshV7extrude_5depth5twist8sections5faces8material11isCancelledACSayAA4PathVG_SdAA5AngleVSiAC5FacesOs11AnyHashableVSgSbyXEtFZ" }, { "abstract" : [ { - "text" : "Creates a single polygon from a path.", + "text" : "Returns the product of an angle and numeric multiplier.", "type" : "text" } ], @@ -21140,61 +21282,70 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "shape" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "kind" : "identifier", + "text" : "*" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?)" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/init(shape:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(shape:material:)", + "path" : "\/documentation\/euclid\/angle\/*(_:_:)-8l78z", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-8l78z", "taskGroups" : [ ], - "title" : "init(shape:material:)", - "usr" : "s:6Euclid7PolygonV5shape8materialACSgAA4PathV_s11AnyHashableVSgtcfc" + "title" : "*(_:_:)", + "usr" : "s:6Euclid5AngleV1moiyA2C_SdtFZ" }, { "abstract" : [ { - "text" : "Returns the intersection point between the specified line segment and this one.", + "text" : "A finite line segment in 3D space.", "type" : "text" } ], @@ -21204,7 +21355,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "struct" }, { "kind" : "text", @@ -21212,53 +21363,138 @@ }, { "kind" : "identifier", - "text" : "intersection" + "text" : "LineSegment" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(_:_:)" + ], + "title" : "Creating Line Segments" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/start", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/end", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/length", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/direction" + ], + "title" : "Line Segment Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/containsPoint(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-1tffl", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-2u7vo", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersects(_:)" + ], + "title" : "Comparing Line Segments" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/inverted()" + ], + "title" : "Transforming Line Segments" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(start:end:)" + ], + "title" : "Initializers" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Bounded-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Comparable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Transformable-Implementations" + ], + "title" : "Default Implementations" + } + ], + "title" : "LineSegment", + "usr" : "s:6Euclid11LineSegmentV" + }, + { + "abstract" : [ + { + "text" : "Returns the reverse quaternion rotation.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "with" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "kind" : "identifier", + "text" : "-" }, { "kind" : "text", - "text" : ") -> " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : "?" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/intersection(with:)-2u7vo", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-2u7vo", + "path" : "\/documentation\/euclid\/quaternion\/-(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:)", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid11LineSegmentV12intersection4withAA6VectorVSgAC_tF" + "title" : "-(_:)", + "usr" : "s:6Euclid10QuaternionV1sopyA2CFZ" }, { "abstract" : [ { - "text" : "Creates a vector of uniform size.", + "text" : "Creates a composite mesh from an array of submeshes.", "type" : "text" } ], @@ -21276,36 +21512,36 @@ }, { "kind" : "externalParam", - "text" : "size" + "text" : "submeshes" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : ")" + "text" : "])" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(size:)-nkyk", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-nkyk", + "path" : "\/documentation\/euclid\/mesh\/init(submeshes:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(submeshes:)", "taskGroups" : [ ], - "title" : "init(size:)", - "usr" : "s:6Euclid6VectorV4sizeACSd_tcfc" + "title" : "init(submeshes:)", + "usr" : "s:6Euclid4MeshV9submeshesACSayACG_tcfc" }, { "abstract" : [ { - "text" : "Computes the convex hull of one or more meshes.", + "text" : "The angle of rotation around the X-axis.", "type" : "text" } ], @@ -21315,15 +21551,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -21331,77 +21559,44 @@ }, { "kind" : "identifier", - "text" : "convexHull" + "text" : "pitch" }, { "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "of" - }, - { - "kind" : "text", - "text" : ": [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - }, - { - "kind" : "text", - "text" : "]) -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:)-8x4al", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:)-8x4al", + "path" : "\/documentation\/euclid\/rotation\/pitch", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch", "taskGroups" : [ ], - "title" : "convexHull(of:)", - "usr" : "s:6Euclid4MeshV10convexHull2ofACSayACG_tFZ" + "title" : "pitch", + "usr" : "s:6Euclid8RotationV5pitchAA5AngleVvp" }, { "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/bounded-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Bounded-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/bounds" - ], - "title" : "Instance Properties" - } - ], - "title" : "Bounded Implementations" - }, - { - "abstract" : [ + "kind" : "keyword", + "text" : "static" + }, { - "text" : "An array of vertices suitable for constructing a set of edge polygons for the path.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -21409,36 +21604,55 @@ }, { "kind" : "identifier", - "text" : "edgeVertices" + "text" : "-=" }, { "kind" : "text", - "text" : ": [" + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "keyword", + "text" : "inout" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "text" : "Self" }, { "kind" : "text", - "text" : "]" + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/edgevertices", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices", + "path" : "\/documentation\/euclid\/angle\/-=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)", "taskGroups" : [ ], - "title" : "edgeVertices", - "usr" : "s:6Euclid4PathV12edgeVerticesSayAA6VertexVGvp" + "title" : "-=(_:_:)", + "usr" : "s:s18AdditiveArithmeticPsE2seoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "Efficiently gets the difference between multiple meshes.", + "text" : "The square of the length of the vector. This is less expensive to compute than the length itself.", "type" : "text" } ], @@ -21448,15 +21662,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -21464,32 +21670,7 @@ }, { "kind" : "identifier", - "text" : "difference" - }, - { - "kind" : "text", - "text" : "<" - }, - { - "kind" : "genericParameter", - "text" : "T" - }, - { - "kind" : "text", - "text" : ">(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV10difference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "isCancelled" + "text" : "lengthSquared" }, { "kind" : "text", @@ -21497,33 +21678,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/difference(_:iscancelled:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/difference(_:isCancelled:)", + "path" : "\/documentation\/euclid\/vector\/lengthsquared", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lengthSquared", "taskGroups" : [ ], - "title" : "difference(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV10difference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + "title" : "lengthSquared", + "usr" : "s:6Euclid6VectorV13lengthSquaredSdvp" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Expands this bounds (if necessary) to contain the specified bounds.", "type" : "text" } ], @@ -21541,48 +21713,36 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "formUnion" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/scaled(by:)-3shbk", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-3shbk", + "path" : "\/documentation\/euclid\/bounds\/formunion(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formUnion(_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid13TransformableP6scaled2byxAA6VectorV_tF" + "title" : "formUnion(_:)", + "usr" : "s:6Euclid6BoundsV9formUnionyyACF" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Smooth vertex normals for corners with angles greater (more obtuse) than the specified threshold.", "type" : "text" } ], @@ -21590,14 +21750,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -21608,28 +21760,24 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "smoothingNormals" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "forAnglesGreaterThan" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -21637,23 +21785,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/smoothingnormals(foranglesgreaterthan:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothingNormals(forAnglesGreaterThan:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "smoothingNormals(forAnglesGreaterThan:)", + "usr" : "s:6Euclid4MeshV16smoothingNormals20forAnglesGreaterThanAcA5AngleV_tF" }, { "abstract" : [ { - "text" : "Computes the convex hull of a set of points.", + "text" : "A closure that maps a Euclid material to an STL facet color.", "type" : "text" } ], @@ -21663,15 +21812,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "typealias" }, { "kind" : "text", @@ -21679,44 +21820,61 @@ }, { "kind" : "identifier", - "text" : "convexHull" - }, + "text" : "STLColorProvider" + } + ], + "kind" : "org.swift.docc.kind.typeAlias", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/stlcolorprovider", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider", + "taskGroups" : [ + + ], + "title" : "Mesh.STLColorProvider", + "usr" : "s:6Euclid4MeshV16STLColorProvidera" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : "<" + "text" : "All materials used by the mesh.", + "type" : "text" }, { - "kind" : "genericParameter", - "text" : "T" + "text" : " ", + "type" : "text" }, { - "kind" : "text", - "text" : ">(" + "text" : "The array may contain ", + "type" : "text" }, { - "kind" : "externalParam", - "text" : "of" + "code" : "nil", + "type" : "codeVoice" }, { - "kind" : "text", - "text" : ": " - }, + "text" : " if some or all of the mesh uses the default material.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VectorV7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "identifier", + "text" : "materials" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", @@ -21725,35 +21883,50 @@ }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "?]" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-6176", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-6176", + "path" : "\/documentation\/euclid\/mesh\/materials", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/materials", "taskGroups" : [ ], - "title" : "convexHull(of:material:)", - "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VectorV7ElementRtzlFZ" + "title" : "materials", + "usr" : "s:6Euclid4MeshV9materialsSays11AnyHashableVSgGvp" }, { - "abstract" : [ + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vertex\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Decodable-Implementations", + "taskGroups" : [ { - "text" : "Returns a rotated copy of the value.", - "type" : "text" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)" + ], + "title" : "Initializers" } ], + "title" : "Decodable Implementations" + }, + { "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -21764,49 +21937,56 @@ }, { "kind" : "identifier", - "text" : "rotated" + "text" : "..<" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:s16PartialRangeUpToV", + "text" : "PartialRangeUpTo" }, { "kind" : "text", - "text" : ") -> " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)", + "path" : "\/documentation\/euclid\/plane\/'.._(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid11LineSegmentV7rotated2byAcA8RotationV_tF" + "title" : "..<(_:)", + "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Computes a set of edges where the polygon intersects a plane.", + "text" : "Encodes this line into the given encoder.", "type" : "text" } ], @@ -21824,7 +22004,7 @@ }, { "kind" : "identifier", - "text" : "edges" + "text" : "encode" }, { "kind" : "text", @@ -21832,7 +22012,7 @@ }, { "kind" : "externalParam", - "text" : "intersecting" + "text" : "to" }, { "kind" : "text", @@ -21840,46 +22020,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sh", - "text" : "Set" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : "<" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "text" : ") " }, { - "kind" : "text", - "text" : ">" + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/edges(intersecting:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/edges(intersecting:)", + "path" : "\/documentation\/euclid\/line\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/encode(to:)", "taskGroups" : [ ], - "title" : "edges(intersecting:)", - "usr" : "s:6Euclid7PolygonV5edges12intersectingShyAA11LineSegmentVGAA5PlaneV_tF" + "title" : "encode(to:)", + "usr" : "s:6Euclid4LineV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Texture is shrink-wrapped.", + "text" : "Creates a bounds from a collection of bounds.", "type" : "text" } ], @@ -21889,59 +22055,44 @@ "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "<" }, { - "kind" : "identifier", - "text" : "shrink" + "kind" : "genericParameter", + "text" : "T" + }, + { + "kind" : "text", + "text" : ">(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6BoundsVyACxcSlRzAC7ElementRtzlufc1TL_xmfp", + "text" : "T" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode\/shrink", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/shrink", + "path" : "\/documentation\/euclid\/bounds\/init(_:)-r54o", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-r54o", "taskGroups" : [ ], - "title" : "Mesh.WrapMode.shrink", - "usr" : "s:6Euclid4MeshV8WrapModeO6shrinkyA2EmF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/additivearithmetic-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/AdditiveArithmetic-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero" - ], - "title" : "Type Properties" - } - ], - "title" : "AdditiveArithmetic Implementations" + "title" : "init(_:)", + "usr" : "s:6Euclid6BoundsVyACxcSlRzAC7ElementRtzlufc" }, { "abstract" : [ { - "text" : "Creates an angle representing the trigonometric arc tangent of the value you provide.", + "text" : "Creates a quaternion representing a rotation around the X axis.", "type" : "text" } ], @@ -21967,7 +22118,7 @@ }, { "kind" : "identifier", - "text" : "atan" + "text" : "pitch" }, { "kind" : "text", @@ -21975,8 +22126,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -21984,19 +22135,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/atan(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan(_:)", + "path" : "\/documentation\/euclid\/quaternion\/pitch(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch(_:)", "taskGroups" : [ ], - "title" : "atan(_:)", - "usr" : "s:6Euclid5AngleV4atanyACSdFZ" + "title" : "pitch(_:)", + "usr" : "s:6Euclid10QuaternionV5pitchyAcA5AngleVFZ" }, { "availableLanguages" : [ @@ -22004,29 +22155,37 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Equatable-Implementations", + "path" : "\/documentation\/euclid\/angle\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Decodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/!=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(from:)" ], - "title" : "Operators" + "title" : "Initializers" } ], - "title" : "Equatable Implementations" + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Encodes this transform into the given encoder.", + "text" : "Returns a new mesh that retains the shape of the receiver, but with", "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "the intersecting area colored using material from the parameter.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -22037,15 +22196,24 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "stencil" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", - "text" : "to" + "text" : "isCancelled" }, { "kind" : "text", @@ -22053,32 +22221,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : ") " + "text" : ") -> " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/encode(to:)", + "path" : "\/documentation\/euclid\/mesh\/stencil(_:iscancelled:)-swift.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.method", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid9TransformV6encode2toys7Encoder_p_tKF" + "title" : "stencil(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV7stencil_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "A path made up of a sequence of straight line segments between points.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -22088,7 +22257,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "func" }, { "kind" : "text", @@ -22096,124 +22265,96 @@ }, { "kind" : "identifier", - "text" : "Path" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/path", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path", - "taskGroups" : [ + "text" : "rotate" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/empty" - ], - "title" : "Default Paths" + "kind" : "text", + "text" : "(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-3c0eo", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-4jhkw", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(subpaths:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:detail:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/curve(_:detail:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:_:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/arc(angle:radius:segments:color:)" - ], - "title" : "Creating Paths" + "kind" : "externalParam", + "text" : "by" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/circle(radius:segments:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/ellipse(width:height:segments:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rectangle(width:height:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/roundedRectangle(width:height:radius:detail:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/square(size:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/polygon(radius:sides:color:)" - ], - "title" : "Creating Shape Paths" + "kind" : "text", + "text" : ": " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:font:width:detail:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:width:detail:)" - ], - "title" : "Creating Text Paths" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/points", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/plane", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/length", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isClosed", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isPlanar" - ], - "title" : "Path Properties" + "kind" : "text", + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/rotate(by:)-93ypi", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-93ypi", + "taskGroups" : [ + + ], + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid4PathV" + }, + { + "abstract" : [ + { + "text" : "Returns a Boolean value that indicates whether the specified point lies on the line segment.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/withColor(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/closed()" - ], - "title" : "Transforming Paths" + "kind" : "text", + "text" : " " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(cgPath:detail:color:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(polygon:)" - ], - "title" : "Initializers" + "kind" : "identifier", + "text" : "containsPoint" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceNormal", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceVertices", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/latheProfile", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/subpaths" - ], - "title" : "Instance Properties" + "kind" : "text", + "text" : "(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices(for:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/extrusionContours(along:twist:align:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/facePolygons(material:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/with(color:)" - ], - "title" : "Instance Methods" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment" - ], - "title" : "Enumerations" + "kind" : "text", + "text" : ") -> " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Bounded-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Transformable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "title" : "Path", - "usr" : "s:6Euclid4PathV" + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/containspoint(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/containsPoint(_:)", + "taskGroups" : [ + + ], + "title" : "containsPoint(_:)", + "usr" : "s:6Euclid11LineSegmentV13containsPointySbAA6VectorVF" }, { "abstract" : [ { - "text" : "Creates a closed regular polygon.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -22223,23 +22364,67 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "scaled" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "polygon" + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/scaled(by:)-8sjrv", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv", + "taskGroups" : [ + + ], + "title" : "scaled(by:)", + "usr" : "s:6Euclid7PolygonV6scaled2byAcA6VectorV_tF" + }, + { + "abstract" : [ + { + "text" : "Creates a rotation from Euler angles applied in yaw\/pitch\/roll order.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", @@ -22247,7 +22432,7 @@ }, { "kind" : "externalParam", - "text" : "radius" + "text" : "yaw" }, { "kind" : "text", @@ -22255,8 +22440,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -22264,7 +22449,7 @@ }, { "kind" : "externalParam", - "text" : "sides" + "text" : "pitch" }, { "kind" : "text", @@ -22272,8 +22457,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -22281,7 +22466,7 @@ }, { "kind" : "externalParam", - "text" : "color" + "text" : "roll" }, { "kind" : "text", @@ -22289,33 +22474,162 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : "?) -> " + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/init(yaw:pitch:roll:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(yaw:pitch:roll:)", + "taskGroups" : [ + + ], + "title" : "init(yaw:pitch:roll:)", + "usr" : "s:6Euclid8RotationV3yaw5pitch4rollAcA5AngleV_A2Htcfc" + }, + { + "abstract" : [ + { + "text" : "The array of vertices that make up the polygon.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "var" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "vertices" + }, + { + "kind" : "text", + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" + }, + { + "kind" : "text", + "text" : "]" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/polygon(radius:sides:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/polygon(radius:sides:color:)", + "path" : "\/documentation\/euclid\/polygon\/vertices", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/vertices", "taskGroups" : [ ], - "title" : "polygon(radius:sides:color:)", - "usr" : "s:6Euclid4PathV7polygon6radius5sides5colorACSd_SiAA5ColorVSgtFZ" + "title" : "vertices", + "usr" : "s:6Euclid7PolygonV8verticesSayAA6VertexVGvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/color\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Creates a cylindrical mesh.", + "text" : "Creates a new plane by decoding from the given decoder.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "from" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" + }, + { + "kind" : "text", + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(from:)", + "taskGroups" : [ + + ], + "title" : "init(from:)", + "usr" : "s:6Euclid5PlaneV4fromACs7Decoder_p_tKcfc" + }, + { + "abstract" : [ + { + "text" : "Creates a conical mesh.", "type" : "text" } ], @@ -22341,7 +22655,7 @@ }, { "kind" : "identifier", - "text" : "cylinder" + "text" : "cone" }, { "kind" : "text", @@ -22398,6 +22712,23 @@ "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "stacks" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", "text" : "poleDetail" @@ -22411,6 +22742,23 @@ "preciseIdentifier" : "s:Si", "text" : "Int" }, + { + "kind" : "text", + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "addDetailAtBottomPole" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + }, { "kind" : "text", "text" : ", " @@ -22474,18 +22822,18 @@ ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cylinder(radius:height:slices:poledetail:faces:wrapmode:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)", + "path" : "\/documentation\/euclid\/mesh\/cone(radius:height:slices:stacks:poledetail:adddetailatbottompole:faces:wrapmode:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)", "taskGroups" : [ ], - "title" : "cylinder(radius:height:slices:poleDetail:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV8cylinder6radius6height6slices10poleDetail5faces8wrapMode8materialACSd_SdS2iAC5FacesOAC04WrapK0Os11AnyHashableVSgtFZ" + "title" : "cone(radius:height:slices:stacks:poleDetail:addDetailAtBottomPole:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV4cone6radius6height6slices6stacks10poleDetail03addI12AtBottomPole5faces8wrapMode8materialACSd_SdS3iSgSbAC5FacesOAC04WrapP0Os11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates if the specified point is within the bounds.", + "text" : "Creates an axis-aligned cubical mesh.", "type" : "text" } ], @@ -22493,6 +22841,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -22503,12 +22859,20 @@ }, { "kind" : "identifier", - "text" : "containsPoint" + "text" : "cube" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "externalParam", + "text" : "center" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", @@ -22516,111 +22880,143 @@ }, { "kind" : "text", - "text" : ") -> " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "size" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/containspoint(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/containsPoint(_:)", - "taskGroups" : [ - - ], - "title" : "containsPoint(_:)", - "usr" : "s:6Euclid6BoundsV13containsPointySbAA6VectorVF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Decodable-Implementations", - "taskGroups" : [ + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" - }, - { - "abstract" : [ + "kind" : "text", + "text" : ", " + }, { - "text" : "Reduces the bounds to contain just the intersection of itself and the specified bounds.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "externalParam", + "text" : "faces" + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "formIntersection" + "kind" : "externalParam", + "text" : "wrapMode" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" }, { "kind" : "text", - "text" : ")" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/formintersection(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formIntersection(_:)", + "path" : "\/documentation\/euclid\/mesh\/cube(center:size:faces:wrapmode:material:)-eado", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-eado", "taskGroups" : [ ], - "title" : "formIntersection(_:)", - "usr" : "s:6Euclid6BoundsV16formIntersectionyyACF" + "title" : "cube(center:size:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV4cube6center4size5faces8wrapMode8materialAcA6VectorV_SdAC5FacesOAC04WrapH0Os11AnyHashableVSgtFZ" }, { + "abstract" : [ + { + "text" : "Alignment mode to use when extruding along a path.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", + "fragments" : [ + { + "kind" : "keyword", + "text" : "enum" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Alignment" + } + ], + "kind" : "org.swift.docc.kind.enumeration", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Decodable-Implementations", + "path" : "\/documentation\/euclid\/path\/alignment", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(from:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/axis", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/default", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/tangent" ], - "title" : "Initializers" + "title" : "Enumeration Cases" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/Equatable-Implementations" + ], + "title" : "Default Implementations" } ], - "title" : "Decodable Implementations" + "title" : "Path.Alignment", + "usr" : "s:6Euclid4PathV9AlignmentO" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Creates a mesh by extruding a path along its face normal.", "type" : "text" } ], @@ -22646,99 +23042,121 @@ }, { "kind" : "identifier", - "text" : "*" + "text" : "extrude" }, { "kind" : "text", - "text" : " " + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : "(" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "depth" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "twist" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "sections" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*(_:_:)", - "taskGroups" : [ - - ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6BoundsV" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, { - "text" : "Returns a Boolean value that indicates if the specified point is inside the mesh.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "faces" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "containsPoint" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", - "text" : "(" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/containspoint(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/containsPoint(_:)", + "path" : "\/documentation\/euclid\/mesh\/extrude(_:depth:twist:sections:faces:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:depth:twist:sections:faces:material:)", "taskGroups" : [ ], - "title" : "containsPoint(_:)", - "usr" : "s:6Euclid4MeshV13containsPointySbAA6VectorVF" + "title" : "extrude(_:depth:twist:sections:faces:material:)", + "usr" : "s:6Euclid4MeshV7extrude_5depth5twist8sections5faces8materialAcA4PathV_SdAA5AngleVSiAC5FacesOs11AnyHashableVSgtFZ" }, { "availableLanguages" : [ @@ -22755,7 +23173,7 @@ }, { "kind" : "keyword", - "text" : "let" + "text" : "func" }, { "kind" : "text", @@ -22763,32 +23181,52 @@ }, { "kind" : "identifier", - "text" : "gray" + "text" : ">" }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/gray", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/gray", + "path" : "\/documentation\/euclid\/plane\/_(_:_:)-3fd8h", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-3fd8h", "taskGroups" : [ ], - "title" : "gray", - "usr" : "s:6Euclid5ColorV4grayACvpZ" + "title" : ">(_:_:)", + "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -22806,7 +23244,7 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "transform" }, { "kind" : "text", @@ -22822,8 +23260,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -22832,18 +23270,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/scale(by:)-1h2f7", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-1h2f7", + "path" : "\/documentation\/euclid\/bounds\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transform(by:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Creates a mesh by stroking a path with the line width, detail, and material you provide.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -22851,14 +23289,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -22869,24 +23299,15 @@ }, { "kind" : "identifier", - "text" : "stroke" + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : ", " - }, { "kind" : "externalParam", - "text" : "width" + "text" : "by" }, { "kind" : "text", @@ -22894,50 +23315,59 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "detail" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/scaled(by:)-19jpq", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq", + "taskGroups" : [ + + ], + "title" : "scaled(by:)", + "usr" : "s:6Euclid4PathV6scaled2byAcA6VectorV_tF" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ", " - }, + "text" : "Encodes this polygon into the given encoder.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "externalParam", - "text" : "material" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "kind" : "identifier", + "text" : "encode" }, { "kind" : "text", - "text" : "?, " + "text" : "(" }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "to" }, { "kind" : "text", @@ -22945,33 +23375,58 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stroke(_:width:detail:material:iscancelled:)-85o14", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-85o14", + "path" : "\/documentation\/euclid\/polygon\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/encode(to:)", "taskGroups" : [ ], - "title" : "stroke(_:width:detail:material:isCancelled:)", - "usr" : "s:6Euclid4MeshV6stroke_5width6detail8material11isCancelledAcA4PathV_SdSis11AnyHashableVSgSbyXEtFZ" + "title" : "encode(to:)", + "usr" : "s:6Euclid7PolygonV6encode2toys7Encoder_p_tKF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/comparable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Comparable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-3s6ak", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-7xdsm", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-1aqv9", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-filj", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-375to", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-9rm6o" + ], + "title" : "Operators" + } + ], + "title" : "Comparable Implementations" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether the specified point lies on the line segment.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -22989,41 +23444,44 @@ }, { "kind" : "identifier", - "text" : "containsPoint" + "text" : "rotate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/containspoint(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/containsPoint(_:)", + "path" : "\/documentation\/euclid\/transformable\/rotate(by:)-5a3iz", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-5a3iz", "taskGroups" : [ ], - "title" : "containsPoint(_:)", - "usr" : "s:6Euclid11LineSegmentV13containsPointySbAA6VectorVF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF" }, { "abstract" : [ { - "text" : "Encodes this vertex into the given encoder.", + "text" : "Linearly interpolate between this vector and another.", "type" : "text" } ], @@ -23041,48 +23499,50 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "lerp" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "to" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") " + "text" : ") -> " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)", + "path" : "\/documentation\/euclid\/vector\/lerp(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lerp(_:_:)", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid6VertexV6encode2toys7Encoder_p_tKF" + "title" : "lerp(_:_:)", + "usr" : "s:6Euclid6VectorV4lerpyA2C_SdtF" }, { "abstract" : [ { - "text" : "An arbitrary point on the line selected as the origin.", + "text" : "The magnitude of the vector.", "type" : "text" } ], @@ -23092,7 +23552,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -23100,7 +23560,7 @@ }, { "kind" : "identifier", - "text" : "origin" + "text" : "length" }, { "kind" : "text", @@ -23108,24 +23568,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/origin", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/origin", + "path" : "\/documentation\/euclid\/vector\/length", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/length", "taskGroups" : [ ], - "title" : "origin", - "usr" : "s:6Euclid4LineV6originAA6VectorVvp" + "title" : "length", + "usr" : "s:6Euclid6VectorV6lengthSdvp" }, { "abstract" : [ { - "text" : "A Boolean indicating whether the point is curved or sharp.", + "text" : "The starting point of the line segment.", "type" : "text" } ], @@ -23135,7 +23595,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "let" }, { "kind" : "text", @@ -23143,7 +23603,7 @@ }, { "kind" : "identifier", - "text" : "isCurved" + "text" : "start" }, { "kind" : "text", @@ -23151,24 +23611,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/iscurved", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/isCurved", + "path" : "\/documentation\/euclid\/linesegment\/start", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/start", "taskGroups" : [ ], - "title" : "isCurved", - "usr" : "s:6Euclid9PathPointV8isCurvedSbvp" + "title" : "start", + "usr" : "s:6Euclid11LineSegmentV5startAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a line segment with a start and end point.", + "text" : "Creates a new line by decoding from the given decoder.", "type" : "text" } ], @@ -23182,11 +23642,11 @@ }, { "kind" : "text", - "text" : "?(" + "text" : "(" }, { "kind" : "externalParam", - "text" : "start" + "text" : "from" }, { "kind" : "text", @@ -23194,45 +23654,49 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "end" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : ") " }, { - "kind" : "text", - "text" : ")" + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/init(start:end:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(start:end:)", + "path" : "\/documentation\/euclid\/line\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(from:)", "taskGroups" : [ ], - "title" : "init(start:end:)", - "usr" : "s:6Euclid11LineSegmentV5start3endACSgAA6VectorV_AHtcfc" + "title" : "init(from:)", + "usr" : "s:6Euclid4LineV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Creates a rotation from a quaternion.", + "text" : "Material used by the mesh polygons.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "See ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " for details.", "type" : "text" } ], @@ -23242,36 +23706,31 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "typealias" }, { "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "text" : " " }, { - "kind" : "text", - "text" : ")" + "kind" : "identifier", + "text" : "Material" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeAlias", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(_:)-5w6mn", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-5w6mn", + "path" : "\/documentation\/euclid\/mesh\/material", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Material", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid8RotationVyAcA10QuaternionVcfc" + "title" : "Mesh.Material", + "usr" : "s:6Euclid4MeshV8Materiala" }, { "abstract" : [ { - "text" : "Indicates whether the path is a closed path.", + "text" : "A Boolean value that indicates whether the polygon includes texture coordinates.", "type" : "text" } ], @@ -23281,7 +23740,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -23289,7 +23748,7 @@ }, { "kind" : "identifier", - "text" : "isClosed" + "text" : "hasTexcoords" }, { "kind" : "text", @@ -23303,18 +23762,18 @@ ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/isclosed", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isClosed", + "path" : "\/documentation\/euclid\/polygon\/hastexcoords", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasTexcoords", "taskGroups" : [ ], - "title" : "isClosed", - "usr" : "s:6Euclid4PathV8isClosedSbvp" + "title" : "hasTexcoords", + "usr" : "s:6Euclid7PolygonV12hasTexcoordsSbvp" }, { "abstract" : [ { - "text" : "Creates an Angle from a degrees value.", + "text" : "An angle or 2D rotation.", "type" : "text" } ], @@ -23324,90 +23783,92 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "degrees" + "text" : "struct" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : " " }, { - "kind" : "text", - "text" : ")" + "kind" : "identifier", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.structure", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/init(degrees:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(degrees:)", + "path" : "\/documentation\/euclid\/angle", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle", "taskGroups" : [ - - ], - "title" : "init(degrees:)", - "usr" : "s:6Euclid5AngleV7degreesACSd_tcfc" - }, - { - "abstract" : [ { - "text" : "Indicates whether all the path’s points lie on a single plane.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(degrees:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(radians:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians(_:)" + ], + "title" : "Creating Angles" + }, { - "kind" : "keyword", - "text" : "var" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/halfPi", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/pi", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/twoPi" + ], + "title" : "Default Angles" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/isZero" + ], + "title" : "Angle Properties" }, { - "kind" : "identifier", - "text" : "isPlanar" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/acos(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/asin(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan2(y:x:)" + ], + "title" : "Computing Angles" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-2ew65", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-8l78z", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*=(_:_:)" + ], + "title" : "Operators" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/AdditiveArithmetic-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Comparable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Equatable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/isplanar", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isPlanar", - "taskGroups" : [ - - ], - "title" : "isPlanar", - "usr" : "s:6Euclid4PathV8isPlanarSbvp" + "title" : "Angle", + "usr" : "s:6Euclid5AngleV" }, { - "abstract" : [ - { - "text" : "Multiplies the components of the vector by the specified value.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -23430,7 +23891,7 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : ">" }, { "kind" : "text", @@ -23441,41 +23902,54 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/*=(_:_:)-9l46a", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-9l46a", + "path" : "\/documentation\/euclid\/angle\/_(_:_:)-filj", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-filj", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid6VectorV2meoiyyACz_SdtFZ" + "title" : ">(_:_:)", + "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "availableLanguages" : [ @@ -23484,41 +23958,43 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "xor" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "kind" : "identifier", + "text" : "!=" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "isCancelled" + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "text" : "Self" }, { "kind" : "text", @@ -23526,24 +24002,27 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/xor(_:iscancelled:)-swift.method", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.method", + "path" : "\/documentation\/euclid\/bounds\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/!=(_:_:)", "taskGroups" : [ ], - "title" : "xor(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV3xor_11isCancelledA2C_SbyXEtF" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6BoundsV" }, { + "abstract" : [ + { + "text" : "Returns a vector with its components multiplied by the specified value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -23566,7 +24045,7 @@ }, { "kind" : "identifier", - "text" : "..." + "text" : "*" }, { "kind" : "text", @@ -23578,44 +24057,42 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeFromV", - "text" : "PartialRangeFrom" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "<" + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/'...(_:)-2uz97", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-2uz97", + "path" : "\/documentation\/euclid\/vector\/*(_:_:)-48gl1", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-48gl1", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "*(_:_:)", + "usr" : "s:6Euclid6VectorV1moiyACSd_ACtFZ" }, { "abstract" : [ { - "text" : "Creates a size\/scale vector from an array of two coordinates.", + "text" : "Returns one or more polygons needed to fill the path.", "type" : "text" } ], @@ -23625,7 +24102,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "facePolygons" }, { "kind" : "text", @@ -23633,31 +24118,49 @@ }, { "kind" : "externalParam", - "text" : "size" + "text" : "material" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : "])" + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "]" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(size:)-8b34m", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-8b34m", + "path" : "\/documentation\/euclid\/path\/facepolygons(material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/facePolygons(material:)", "taskGroups" : [ ], - "title" : "init(size:)", - "usr" : "s:6Euclid6VectorV4sizeACSaySdG_tcfc" + "title" : "facePolygons(material:)", + "usr" : "s:6Euclid4PathV12facePolygons8materialSayAA7PolygonVGs11AnyHashableVSg_tF" }, { "abstract" : [ @@ -23705,24 +24208,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/scaled(by:)-350oy", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy", + "path" : "\/documentation\/euclid\/pathpoint\/scaled(by:)-7e3o7", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7", "taskGroups" : [ ], "title" : "scaled(by:)", - "usr" : "s:6Euclid6VectorV6scaled2byACSd_tF" + "usr" : "s:6Euclid9PathPointV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "A closure that maps a SceneKit material to a Euclid material.", + "text" : "The color for the vertex.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This will be multiplied by the material color, so set it to white if you do not require per-vertex colors.", "type" : "text" } ], @@ -23732,7 +24243,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "typealias" + "text" : "var" }, { "kind" : "text", @@ -23740,23 +24251,40 @@ }, { "kind" : "identifier", - "text" : "MaterialProvider" + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.typeAlias", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/materialprovider", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/MaterialProvider", + "path" : "\/documentation\/euclid\/vertex\/color", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/color", "taskGroups" : [ ], - "title" : "Mesh.MaterialProvider", - "usr" : "s:6Euclid4MeshV16MaterialProvidera" + "title" : "color", + "usr" : "s:6Euclid6VertexV5colorAA5ColorVvp" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Returns a new mesh reprenting only the volume exclusively occupied by", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "one shape or the other, but not both.", "type" : "text" } ], @@ -23774,15 +24302,24 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "symmetricDifference" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", - "text" : "by" + "text" : "isCancelled" }, { "kind" : "text", @@ -23790,37 +24327,40 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/rotate(by:)-622p8", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-622p8", + "path" : "\/documentation\/euclid\/mesh\/symmetricdifference(_:iscancelled:)-swift.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.method", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "symmetricDifference(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV19symmetricDifference_11isCancelledA2C_SbyXEtF" }, { + "abstract" : [ + { + "text" : "Encodes this bounds into the given encoder.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -23831,52 +24371,48 @@ }, { "kind" : "identifier", - "text" : "!=" - }, - { - "kind" : "text", - "text" : " " + "text" : "encode" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "to" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/!=(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/encode(to:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4MeshV5FacesO" + "title" : "encode(to:)", + "usr" : "s:6Euclid6BoundsV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Creates a rotation around the X axis.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -23886,32 +24422,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "transformed" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "pitch" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -23919,24 +24455,66 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/pitch(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch(_:)", + "path" : "\/documentation\/euclid\/transformable\/transformed(by:)-21ah6", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-21ah6", "taskGroups" : [ ], - "title" : "pitch(_:)", - "usr" : "s:6Euclid8RotationV5pitchyAcA5AngleVFZ" + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Does the transform apply a mirror operation (negative scale)?", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "var" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "isFlipped" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/isflipped", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isFlipped", + "taskGroups" : [ + + ], + "title" : "isFlipped", + "usr" : "s:6Euclid9TransformV9isFlippedSbvp" + }, + { + "abstract" : [ + { + "text" : "Translate the value in place.", "type" : "text" } ], @@ -23954,7 +24532,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "translate" }, { "kind" : "text", @@ -23975,46 +24553,23 @@ }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/scaled(by:)-19jpq", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq", + "path" : "\/documentation\/euclid\/vector\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translate(by:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid4PathV6scaled2byAcA6VectorV_tF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "A color in RGBA format.", "type" : "text" } ], @@ -24024,7 +24579,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "struct" }, { "kind" : "text", @@ -24032,49 +24587,83 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "Color" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/color", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-25eby", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-53lhy", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-7d8un" + ], + "title" : "Creating a Color" }, { - "kind" : "text", - "text" : "(" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/clear", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/black", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/white", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/gray", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/red", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/green", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/blue", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/yellow", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/cyan", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/magenta", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/orange" + ], + "title" : "Default Colors" }, { - "kind" : "externalParam", - "text" : "by" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/r", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/g", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/b", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/a" + ], + "title" : "Color properties" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/withAlpha(_:)" + ], + "title" : "Mutating Colors" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/components" + ], + "title" : "Instance Properties" }, { - "kind" : "text", - "text" : ") -> " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/lerp(_:_:)" + ], + "title" : "Instance Methods" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Equatable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/scaled(by:)-8sjrv", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv", - "taskGroups" : [ - - ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid7PolygonV6scaled2byAcA6VectorV_tF" + "title" : "Color", + "usr" : "s:6Euclid5ColorV" }, { "abstract" : [ { - "text" : "Computes a set of edges where the mesh intersects a plane.", + "text" : "Creates a mesh by filling a path to form one or more polygons.", "type" : "text" } ], @@ -24082,6 +24671,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -24092,15 +24689,24 @@ }, { "kind" : "identifier", - "text" : "edges" + "text" : "fill" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", - "text" : "intersecting" + "text" : "faces" }, { "kind" : "text", @@ -24108,46 +24714,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sh", - "text" : "Set" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ">" + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/edges(intersecting:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/edges(intersecting:)", + "path" : "\/documentation\/euclid\/mesh\/fill(_:faces:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:)", "taskGroups" : [ ], - "title" : "edges(intersecting:)", - "usr" : "s:6Euclid4MeshV5edges12intersectingShyAA11LineSegmentVGAA5PlaneV_tF" + "title" : "fill(_:faces:material:)", + "usr" : "s:6Euclid4MeshV4fill_5faces8materialAcA4PathV_AC5FacesOs11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Encodes this color into the given encoder.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -24165,7 +24775,7 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "scale" }, { "kind" : "text", @@ -24173,7 +24783,7 @@ }, { "kind" : "externalParam", - "text" : "to" + "text" : "by" }, { "kind" : "text", @@ -24181,32 +24791,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/encode(to:)", + "path" : "\/documentation\/euclid\/polygon\/scale(by:)-2pycj", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-2pycj", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid5ColorV6encode2toys7Encoder_p_tKF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { "abstract" : [ { - "text" : "Creates a new transform by decoding from the given decoder.", + "text" : "Return a copy of the polygon without texture coordinates", "type" : "text" } ], @@ -24216,48 +24822,40 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "identifier", + "text" : "withoutTexcoords" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" - }, - { - "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(from:)", + "path" : "\/documentation\/euclid\/polygon\/withouttexcoords()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withoutTexcoords()", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid9TransformV4fromACs7Decoder_p_tKcfc" + "title" : "withoutTexcoords()", + "usr" : "s:6Euclid7PolygonV16withoutTexcoordsACyF" }, { "abstract" : [ { - "text" : "Creates a bounds from a collection of points.", + "text" : "Returns a Boolean value that indicates whether the lines intersect.", "type" : "text" } ], @@ -24267,44 +24865,49 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "<" + "text" : " " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "identifier", + "text" : "intersects" }, { "kind" : "text", - "text" : ">(" + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsVyACxcSlRzAA6VectorV7ElementRtzlufc1TL_xmfp", - "text" : "T" + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(_:)-27jri", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-27jri", + "path" : "\/documentation\/euclid\/line\/intersects(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersects(_:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6BoundsVyACxcSlRzAA6VectorV7ElementRtzlufc" + "title" : "intersects(_:)", + "usr" : "s:6Euclid4LineV10intersectsySbACF" }, { "abstract" : [ { - "text" : "Returns a new bounds inset by the specified distance.", + "text" : "Creates an extruded text model from an attributed string", "type" : "text" } ], @@ -24312,6 +24915,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -24322,15 +24933,24 @@ }, { "kind" : "identifier", - "text" : "inset" + "text" : "text" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:objc(cs)NSAttributedString", + "text" : "NSAttributedString" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", - "text" : "by" + "text" : "width" }, { "kind" : "text", @@ -24338,33 +24958,84 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "depth" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "detail" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/inset(by:)-49ykf", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-49ykf", + "path" : "\/documentation\/euclid\/mesh\/text(_:width:depth:detail:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:width:depth:detail:material:)", "taskGroups" : [ ], - "title" : "inset(by:)", - "usr" : "s:6Euclid6BoundsV5inset2byAcA6VectorV_tF" + "title" : "text(_:width:depth:detail:material:)", + "usr" : "s:6Euclid4MeshV4text_5width5depth6detail8materialACSo18NSAttributedStringC_SdSgSdSis11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Returns a vector with its components multiplied by the specified value.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -24390,7 +25061,7 @@ }, { "kind" : "identifier", - "text" : "*" + "text" : "*=" }, { "kind" : "text", @@ -24401,43 +25072,45 @@ "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/*(_:_:)-48gl1", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-48gl1", + "path" : "\/documentation\/euclid\/path\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*=(_:_:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid6VectorV1moiyACSd_ACtFZ" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4PathV" }, { "abstract" : [ { - "text" : "The distinct (disconnected) submeshes that make up the mesh.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -24447,7 +25120,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -24455,36 +25128,44 @@ }, { "kind" : "identifier", - "text" : "submeshes" + "text" : "rotate" }, { "kind" : "text", - "text" : ": [" + "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "]" + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/submeshes", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/submeshes", + "path" : "\/documentation\/euclid\/plane\/rotate(by:)-2ix6y", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-2ix6y", "taskGroups" : [ ], - "title" : "submeshes", - "usr" : "s:6Euclid4MeshV9submeshesSayACGvp" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Creates a new angle by decoding from the given decoder.", + "text" : "Creates a copy of the color updated with the specified alpha.", "type" : "text" } ], @@ -24494,48 +25175,101 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "identifier", + "text" : "withAlpha" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") " + "text" : ") -> " }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/color\/withalpha(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/withAlpha(_:)", + "taskGroups" : [ + + ], + "title" : "withAlpha(_:)", + "usr" : "s:6Euclid5ColorV9withAlphayACSdF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/bounded-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Bounded-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/bounds" + ], + "title" : "Instance Properties" + } + ], + "title" : "Bounded Implementations" + }, + { + "abstract" : [ + { + "text" : "The default face generation behavior. Context-dependent.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "throws" + "text" : "case" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "`default`" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(from:)", + "path" : "\/documentation\/euclid\/mesh\/faces\/default", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/default", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid5AngleV4fromACs7Decoder_p_tKcfc" + "title" : "Mesh.Faces.default", + "usr" : "s:6Euclid4MeshV5FacesO7defaultyA2EmF" }, { "abstract" : [ { - "text" : "The angle in degrees.", + "text" : "Computes the dot-product of this quaternion and another.", "type" : "text" } ], @@ -24545,7 +25279,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -24553,11 +25287,20 @@ }, { "kind" : "identifier", - "text" : "degrees" + "text" : "dot" }, { "kind" : "text", - "text" : ": " + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ") -> " }, { "kind" : "typeIdentifier", @@ -24565,20 +25308,20 @@ "text" : "Double" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/degrees", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees", + "path" : "\/documentation\/euclid\/quaternion\/dot(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/dot(_:)", "taskGroups" : [ ], - "title" : "degrees", - "usr" : "s:6Euclid5AngleV7degreesSdvp" + "title" : "dot(_:)", + "usr" : "s:6Euclid10QuaternionV3dotySdACF" }, { "abstract" : [ { - "text" : "Angle representing a zero (identity) rotation.", + "text" : "Returns the angle between this vector and another.", "type" : "text" } ], @@ -24588,48 +25331,57 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "angle" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "zero" + "kind" : "externalParam", + "text" : "with" }, { "kind" : "text", "text" : ": " }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ") -> " + }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid5AngleV", "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/zero", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero", + "path" : "\/documentation\/euclid\/vector\/angle(with:)-29paf", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-29paf", "taskGroups" : [ ], - "title" : "zero", - "usr" : "s:6Euclid5AngleV4zeroACvpZ" + "title" : "angle(with:)", + "usr" : "s:6Euclid6VectorV5angle4withAA5AngleVAC_tF" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether a point lies inside the polygon, on the same plane.", + "text" : "Creates a uniform scale transform.", "type" : "text" } ], @@ -24637,6 +25389,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -24647,7 +25407,7 @@ }, { "kind" : "identifier", - "text" : "containsPoint" + "text" : "scale" }, { "kind" : "text", @@ -24655,8 +25415,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -24664,19 +25424,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/containspoint(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/containsPoint(_:)", + "path" : "\/documentation\/euclid\/transform\/scale(_:)-7a30s", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(_:)-7a30s", "taskGroups" : [ ], - "title" : "containsPoint(_:)", - "usr" : "s:6Euclid7PolygonV13containsPointySbAA6VectorVF" + "title" : "scale(_:)", + "usr" : "s:6Euclid9TransformV5scaleyACSdFZ" }, { "abstract" : [ @@ -24745,18 +25505,18 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*=(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*=(_:_:)", "taskGroups" : [ ], "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Encodes the vector into the given encoder.", + "text" : "Divides the components of the vector by the specified value.", "type" : "text" } ], @@ -24764,6 +25524,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -24774,48 +25542,57 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "\/=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "to" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : ") " + "text" : ", " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/encode(to:)", + "path" : "\/documentation\/euclid\/quaternion\/\/=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/=(_:_:)", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid6VectorV6encode2toys7Encoder_p_tKF" + "title" : "\/=(_:_:)", + "usr" : "s:6Euclid10QuaternionV2deoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "Creates a new polygon by decoding from the given decoder.", + "text" : "Creates a vector from the values you provide.", "type" : "text" } ], @@ -24832,51 +25609,71 @@ "text" : "(" }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") " + "text" : ", " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(from:)", + "path" : "\/documentation\/euclid\/vector\/init(_:_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:_:_:)", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid7PolygonV4fromACs7Decoder_p_tKcfc" + "title" : "init(_:_:_:)", + "usr" : "s:6Euclid6VectorVyACSd_S2dtcfc" }, { - "abstract" : [ - { - "text" : "Creates a new vector from a CoreGraphics size.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "..." + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -24884,28 +25681,44 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@S@CGSize", - "text" : "CGSize" + "text" : "Self" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s19PartialRangeThroughV", + "text" : "PartialRangeThrough" + }, + { + "kind" : "text", + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(_:)-6nlm", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-6nlm", + "path" : "\/documentation\/euclid\/vector\/'...(_:)-8feph", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-8feph", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VectorVyACSo6CGSizeVcfc" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Returns the distance between the vector (representing a position in space) from the specified plane.", "type" : "text" } ], @@ -24923,7 +25736,7 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "distance" }, { "kind" : "text", @@ -24931,7 +25744,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -24939,28 +25752,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transform(by:)", + "path" : "\/documentation\/euclid\/vector\/distance(from:)-5p7ko", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-5p7ko", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "distance(from:)", + "usr" : "s:6Euclid6VectorV8distance4fromSdAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Efficiently XORs multiple meshes.", "type" : "text" } ], @@ -24986,28 +25804,41 @@ }, { "kind" : "identifier", - "text" : "*" + "text" : "symmetricDifference" }, { "kind" : "text", - "text" : " " + "text" : "<" + }, + { + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : "(" + "text" : ">(" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV19symmetricDifference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "isCancelled" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", @@ -25015,23 +25846,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/symmetricdifference(_:iscancelled:)-swift.type.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.type.method", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ" + "title" : "symmetricDifference(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV19symmetricDifference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" }, { "abstract" : [ { - "text" : "Creates a linear path from a start and end point.", + "text" : "Creates an extruded text model from a string.", "type" : "text" } ], @@ -25057,7 +25889,7 @@ }, { "kind" : "identifier", - "text" : "line" + "text" : "text" }, { "kind" : "text", @@ -25065,17 +25897,59 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:SS", + "text" : "String" }, { "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "font" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "c:@T@CTFontRef", + "text" : "CTFont" + }, + { + "kind" : "text", + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "width" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : "?, " + }, + { + "kind" : "externalParam", + "text" : "depth" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -25083,7 +25957,7 @@ }, { "kind" : "externalParam", - "text" : "color" + "text" : "detail" }, { "kind" : "text", @@ -25091,8 +25965,25 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", @@ -25100,24 +25991,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/line(_:_:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:_:color:)", + "path" : "\/documentation\/euclid\/mesh\/text(_:font:width:depth:detail:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:font:width:depth:detail:material:)", "taskGroups" : [ ], - "title" : "line(_:_:color:)", - "usr" : "s:6Euclid4PathV4line__5colorAcA6VectorV_AgA5ColorVSgtFZ" + "title" : "text(_:font:width:depth:detail:material:)", + "usr" : "s:6Euclid4MeshV4text_4font5width5depth6detail8materialACSS_So9CTFontRefaSgSdSgSdSis11AnyHashableVSgtFZ" }, { "abstract" : [ { - "text" : "Creates a offset transform.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -25127,27 +26018,27 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "translated" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "offset" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", @@ -25160,24 +26051,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/offset(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset(_:)", + "path" : "\/documentation\/euclid\/linesegment\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)", "taskGroups" : [ ], - "title" : "offset(_:)", - "usr" : "s:6Euclid9TransformV6offsetyAcA6VectorVFZ" + "title" : "translated(by:)", + "usr" : "s:6Euclid11LineSegmentV10translated2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "The alpha component of the color.", + "text" : "Return Wavefront OBJ string data for the mesh.", "type" : "text" } ], @@ -25187,7 +26078,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -25195,101 +26086,139 @@ }, { "kind" : "identifier", - "text" : "a" + "text" : "objString" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:SS", + "text" : "String" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/a", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/a", + "path" : "\/documentation\/euclid\/mesh\/objstring()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/objString()", "taskGroups" : [ ], - "title" : "a", - "usr" : "s:6Euclid5ColorV1aSdvp" + "title" : "objString()", + "usr" : "s:6Euclid4MeshV9objStringSSyF" }, { + "abstract" : [ + { + "text" : "An array of vertices suitable for constructing a polygon from the path.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "var" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "faceVertices" }, { "kind" : "text", - "text" : " " + "text" : ": [" }, { - "kind" : "identifier", - "text" : "..." + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" }, { "kind" : "text", - "text" : " " + "text" : "]?" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/facevertices", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceVertices", + "taskGroups" : [ + + ], + "title" : "faceVertices", + "usr" : "s:6Euclid4PathV12faceVerticesSayAA6VertexVGSgvp" + }, + { + "abstract" : [ + { + "text" : "Creates an angle from a radians value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ") -> " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s19PartialRangeThroughV", - "text" : "PartialRangeThrough" + "kind" : "identifier", + "text" : "radians" }, { "kind" : "text", - "text" : "<" + "text" : "(" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ">" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/'...(_:)-49h2f", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-49h2f", + "path" : "\/documentation\/euclid\/angle\/radians(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians(_:)", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "radians(_:)", + "usr" : "s:6Euclid5AngleV7radiansyACSdFZ" }, { "abstract" : [ { - "text" : "Creates a mesh by extruding one path along another path.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -25315,7 +26244,11 @@ }, { "kind" : "identifier", - "text" : "extrude" + "text" : "*" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -25323,97 +26256,180 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, { - "kind" : "externalParam", - "text" : "along" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "Self" + } + ], + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*(_:_:)", + "taskGroups" : [ + + ], + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9PathPointV" + }, + { + "abstract" : [ + { + "text" : "A closure that converts a RealityKit material to a Euclid material.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "twist" - }, + "kind" : "identifier", + "text" : "RealityKitMaterialProvider" + } + ], + "kind" : "org.swift.docc.kind.typeAlias", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/realitykitmaterialprovider", + "platforms" : [ { - "kind" : "text", - "text" : ": " + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "taskGroups" : [ + + ], + "title" : "Mesh.RealityKitMaterialProvider", + "usr" : "s:6Euclid4MeshV26RealityKitMaterialProvidera" + }, + { + "abstract" : [ + { + "text" : "Creates a composite path from an array of subpaths.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "align" + "text" : "subpaths" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV9Alignmenta", - "text" : "Alignment" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "faces" - }, + "text" : "])" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/init(subpaths:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(subpaths:)", + "taskGroups" : [ + + ], + "title" : "init(subpaths:)", + "usr" : "s:6Euclid4PathV8subpathsACSayACG_tcfc" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Decodable-Implementations", + "taskGroups" : [ { - "kind" : "text", - "text" : ": " - }, + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(from:)" + ], + "title" : "Initializers" + } + ], + "title" : "Decodable Implementations" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "identifier", + "text" : "intersect" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : "?, " + "text" : ", " }, { "kind" : "externalParam", @@ -25438,20 +26454,23 @@ "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/extrude(_:along:twist:align:faces:material:iscancelled:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/extrude(_:along:twist:align:faces:material:isCancelled:)", + "path" : "\/documentation\/euclid\/mesh\/intersect(_:iscancelled:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersect(_:isCancelled:)", "taskGroups" : [ ], - "title" : "extrude(_:along:twist:align:faces:material:isCancelled:)", - "usr" : "s:6Euclid4MeshV7extrude_5along5twist5align5faces8material11isCancelledAcA4PathV_AlA5AngleVAL9AlignmentOAC5FacesOs11AnyHashableVSgSbyXEtFZ" + "title" : "intersect(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV9intersect_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Deprecated.", "type" : "text" } ], @@ -25461,15 +26480,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "scale" + "text" : "init" }, { "kind" : "text", @@ -25477,36 +26488,39 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "polygons" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ")" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/scale(by:)-7dhh3", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-7dhh3", + "path" : "\/documentation\/euclid\/bounds\/init(polygons:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(polygons:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "init(polygons:)", + "usr" : "s:6Euclid6BoundsV8polygonsACSayAA7PolygonVG_tcfc" }, { "abstract" : [ { - "text" : "Does the transform apply a mirror operation (negative scale)?", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -25516,7 +26530,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -25524,7 +26538,15 @@ }, { "kind" : "identifier", - "text" : "isFlipped" + "text" : "rotate" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -25532,24 +26554,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/isflipped", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isFlipped", + "path" : "\/documentation\/euclid\/transform\/rotate(by:)-577nk", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-577nk", "taskGroups" : [ ], - "title" : "isFlipped", - "usr" : "s:6Euclid9TransformV9isFlippedSbvp" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid9TransformV" }, { "abstract" : [ { - "text" : "Efficiently strokes a collection of line segments (useful for drawing wireframes).", + "text" : "Angle representing a full rotation.", "type" : "text" } ], @@ -25567,7 +26593,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -25575,32 +26601,50 @@ }, { "kind" : "identifier", - "text" : "stroke" + "text" : "twoPi" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { - "kind" : "genericParameter", - "text" : "T" - }, + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/twopi", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/twoPi", + "taskGroups" : [ + + ], + "title" : "twoPi", + "usr" : "s:6Euclid5AngleV5twoPiACvpZ" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ">(" - }, + "text" : "A normalized direction vector pointing forwards relative to the current rotation.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV6stroke_5width6detail8materialACx_SdSis11AnyHashableVSgtSlRzAA11LineSegmentV7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "kind" : "keyword", + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "width" + "kind" : "identifier", + "text" : "forward" }, { "kind" : "text", @@ -25608,25 +26652,43 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/forward", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/forward", + "taskGroups" : [ + + ], + "title" : "forward", + "usr" : "s:6Euclid8RotationV7forwardAA6VectorVvp" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : ", " - }, + "text" : "Creates a mesh from a SceneKit geometry, with optional material mapping.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "externalParam", - "text" : "detail" + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ": " + "text" : "?(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "c:objc(cs)SCNGeometry", + "text" : "SCNGeometry" }, { "kind" : "text", @@ -25634,7 +26696,7 @@ }, { "kind" : "externalParam", - "text" : "material" + "text" : "materialLookup" }, { "kind" : "text", @@ -25642,33 +26704,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stroke(_:width:detail:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:)", + "path" : "\/documentation\/euclid\/mesh\/init(_:materiallookup:)-7p5hd", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd", "taskGroups" : [ ], - "title" : "stroke(_:width:detail:material:)", - "usr" : "s:6Euclid4MeshV6stroke_5width6detail8materialACx_SdSis11AnyHashableVSgtSlRzAA11LineSegmentV7ElementRtzlFZ" + "title" : "init(_:materialLookup:)", + "usr" : "s:6Euclid4MeshV_14materialLookupACSgSo11SCNGeometryC_s11AnyHashableVSgSo11SCNMaterialCcSgtcfc" }, { "abstract" : [ { - "text" : "Returns the nearest point on the specified plane to the vector (representing a position in space).", + "text" : "Returns a Boolean value that indicates whether a point lies on the plane.", "type" : "text" } ], @@ -25686,24 +26743,16 @@ }, { "kind" : "identifier", - "text" : "project" + "text" : "containsPoint" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "onto" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -25711,24 +26760,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/project(onto:)-817o2", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-817o2", + "path" : "\/documentation\/euclid\/plane\/containspoint(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/containsPoint(_:)", "taskGroups" : [ ], - "title" : "project(onto:)", - "usr" : "s:6Euclid6VectorV7project4ontoAcA5PlaneV_tF" + "title" : "containsPoint(_:)", + "usr" : "s:6Euclid5PlaneV13containsPointySbAA6VectorVF" }, { "abstract" : [ { - "text" : "Translate the value in place.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -25746,7 +26795,7 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : "translated" }, { "kind" : "text", @@ -25767,35 +26816,38 @@ }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translate(by:)", + "path" : "\/documentation\/euclid\/vertex\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "translated(by:)", + "usr" : "s:6Euclid6VertexV10translated2byAcA6VectorV_tF" }, { - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, + "abstract" : [ { - "kind" : "text", - "text" : " " - }, + "text" : "The minimum coordinate of the bounds.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -25803,52 +26855,32 @@ }, { "kind" : "identifier", - "text" : "!=" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : "min" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/!=(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/min", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/min", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid10QuaternionV" + "title" : "min", + "usr" : "s:6Euclid6BoundsV3minAA6VectorVvp" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "The polygons in the mesh, grouped by material.", "type" : "text" } ], @@ -25858,7 +26890,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -25866,49 +26898,71 @@ }, { "kind" : "identifier", - "text" : "translated" + "text" : "polygonsByMaterial" }, { "kind" : "text", - "text" : "(" + "text" : ": [" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ": " + "text" : "? : [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "text" : "]]" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)", + "path" : "\/documentation\/euclid\/mesh\/polygonsbymaterial", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygonsByMaterial", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid9TransformV10translated2byAcA6VectorV_tF" + "title" : "polygonsByMaterial", + "usr" : "s:6Euclid4MeshV18polygonsByMaterialSDys11AnyHashableVSgSayAA7PolygonVGGvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/comparable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Comparable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-49h2f", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-4yucl", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/.._(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-3fd8h", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_(_:_:)-6eeco", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-1oq2t", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-5nk27" + ], + "title" : "Operators" + } + ], + "title" : "Comparable Implementations" }, { "abstract" : [ { - "text" : "Returns the distance between a point and the plane.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -25926,7 +26980,7 @@ }, { "kind" : "identifier", - "text" : "distance" + "text" : "scale" }, { "kind" : "text", @@ -25934,7 +26988,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "by" }, { "kind" : "text", @@ -25942,33 +26996,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/distance(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/distance(from:)", + "path" : "\/documentation\/euclid\/transformable\/scale(by:)-89xwv", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-89xwv", "taskGroups" : [ ], - "title" : "distance(from:)", - "usr" : "s:6Euclid5PlaneV8distance4fromSdAA6VectorV_tF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF" }, { "abstract" : [ { - "text" : "The identity quaternion (i.e. no rotation).", + "text" : "The blue component of the color.", "type" : "text" } ], @@ -25978,15 +27027,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -25994,7 +27035,7 @@ }, { "kind" : "identifier", - "text" : "identity" + "text" : "b" }, { "kind" : "text", @@ -26002,31 +27043,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/identity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/identity", + "path" : "\/documentation\/euclid\/color\/b", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/b", "taskGroups" : [ ], - "title" : "identity", - "usr" : "s:6Euclid10QuaternionV8identityACvpZ" + "title" : "b", + "usr" : "s:6Euclid5ColorV1bSdvp" }, { - "abstract" : [ - { - "text" : "Rotate the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -26037,44 +27080,56 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "..." + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:s19PartialRangeThroughV", + "text" : "PartialRangeThrough" }, { "kind" : "text", - "text" : ")" + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/rotate(by:)-93ypi", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-93ypi", + "path" : "\/documentation\/euclid\/linesegment\/'...(_:)-732z3", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-732z3", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid4PathV" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Quaternion has no effect.", + "text" : "The angle of rotation around the Z-axis.", "type" : "text" } ], @@ -26092,7 +27147,7 @@ }, { "kind" : "identifier", - "text" : "isIdentity" + "text" : "roll" }, { "kind" : "text", @@ -26100,176 +27155,161 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/isidentity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isIdentity", + "path" : "\/documentation\/euclid\/quaternion\/roll", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll", "taskGroups" : [ ], - "title" : "isIdentity", - "usr" : "s:6Euclid10QuaternionV10isIdentitySbvp" + "title" : "roll", + "usr" : "s:6Euclid10QuaternionV4rollAA5AngleVvp" }, { "abstract" : [ { - "text" : "Material used by a given polygon.", + "text" : "Creates a mesh by stroking a path with the line width, detail, and material you provide.", "type" : "text" - }, + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "text" : " ", - "type" : "text" + "kind" : "keyword", + "text" : "static" }, { - "text" : "This can be any type that conforms to ", - "type" : "text" + "kind" : "text", + "text" : " " }, { - "code" : "Hashable", - "type" : "codeVoice" + "kind" : "keyword", + "text" : "func" }, { - "text" : ", but encoding\/decoding is only supported", - "type" : "text" + "kind" : "text", + "text" : " " }, { - "text" : " ", - "type" : "text" + "kind" : "identifier", + "text" : "stroke" }, { - "text" : "for the following types: ", - "type" : "text" + "kind" : "text", + "text" : "(" }, { - "code" : "Color", - "type" : "codeVoice" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { - "text" : ", ", - "type" : "text" + "kind" : "text", + "text" : ", " }, { - "code" : "String", - "type" : "codeVoice" + "kind" : "externalParam", + "text" : "width" }, { - "text" : ", ", - "type" : "text" + "kind" : "text", + "text" : ": " }, { - "code" : "Int", - "type" : "codeVoice" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { - "text" : ", ", - "type" : "text" + "kind" : "text", + "text" : ", " }, { - "code" : "Data", - "type" : "codeVoice" + "kind" : "externalParam", + "text" : "detail" }, { - "text" : " or any ", - "type" : "text" + "kind" : "text", + "text" : ": " }, { - "code" : "NSSecureCodable", - "type" : "codeVoice" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { - "text" : " type.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "typealias" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", "text" : "Material" - } - ], - "kind" : "org.swift.docc.kind.typeAlias", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/material-swift.typealias", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", - "taskGroups" : [ - - ], - "title" : "Polygon.Material", - "usr" : "s:6Euclid7PolygonV8Materiala" - }, - { - "abstract" : [ - { - "text" : "An array containing the raw components of the quaternion.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" }, { "kind" : "text", - "text" : " " + "text" : "?, " }, { - "kind" : "identifier", - "text" : "components" + "kind" : "externalParam", + "text" : "isCancelled" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", - "text" : "]" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/components", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components", + "path" : "\/documentation\/euclid\/mesh\/stroke(_:width:detail:material:iscancelled:)-85o14", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:isCancelled:)-85o14", "taskGroups" : [ ], - "title" : "components", - "usr" : "s:6Euclid10QuaternionV10componentsSaySdGvp" + "title" : "stroke(_:width:detail:material:isCancelled:)", + "usr" : "s:6Euclid4MeshV6stroke_5width6detail8material11isCancelledAcA4PathV_SdSis11AnyHashableVSgSbyXEtFZ" }, { - "abstract" : [ - { - "text" : "Returns a transformed copy of the value.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -26280,24 +27320,27 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "!=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "text" : "Self" }, { "kind" : "text", @@ -26305,23 +27348,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)", + "path" : "\/documentation\/euclid\/line\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/!=(_:_:)", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4LineV" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -26329,14 +27373,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -26347,56 +27383,52 @@ }, { "kind" : "identifier", - "text" : "*=" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*=(_:_:)", + "path" : "\/documentation\/euclid\/bounds\/rotate(by:)-ntgj", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-ntgj", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "The size or scale component of the transform.", + "text" : "A Boolean value that indicates whether the vector has a length of ", + "type" : "text" + }, + { + "code" : "1", + "type" : "codeVoice" + }, + { + "text" : ".", "type" : "text" } ], @@ -26414,7 +27446,7 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "isNormalized" }, { "kind" : "text", @@ -26422,24 +27454,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scale", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale", + "path" : "\/documentation\/euclid\/vector\/isnormalized", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isNormalized", "taskGroups" : [ ], - "title" : "scale", - "usr" : "s:6Euclid9TransformV5scaleAA6VectorVvp" + "title" : "isNormalized", + "usr" : "s:6Euclid6VectorV12isNormalizedSbvp" }, { "abstract" : [ { - "text" : "Returns the point where the specified line intersects this one.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -26457,7 +27489,7 @@ }, { "kind" : "identifier", - "text" : "intersection" + "text" : "scale" }, { "kind" : "text", @@ -26465,7 +27497,7 @@ }, { "kind" : "externalParam", - "text" : "with" + "text" : "by" }, { "kind" : "text", @@ -26473,80 +27505,67 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/intersection(with:)-2nysu", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-2nysu", + "path" : "\/documentation\/euclid\/vector\/scale(by:)-55ayx", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-55ayx", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid4LineV12intersection4withAA6VectorVSgAC_tF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid6VectorV" }, { - "abstract" : [ - { - "text" : "Rotation has no effect.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Decodable-Implementations", + "taskGroups" : [ { - "kind" : "keyword", - "text" : "var" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(from:)" + ], + "title" : "Initializers" + } + ], + "title" : "Decodable Implementations" + }, + { + "abstract" : [ + { + "text" : "The position of the center of the polygon.", + "type" : "text" }, { - "kind" : "text", - "text" : " " + "text" : " ", + "type" : "text" }, { - "kind" : "identifier", - "text" : "isIdentity" + "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s", + "type" : "text" }, { - "kind" : "text", - "text" : ": " + "text" : " ", + "type" : "text" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/isidentity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/isIdentity", - "taskGroups" : [ - - ], - "title" : "isIdentity", - "usr" : "s:6Euclid8RotationV10isIdentitySbvp" - }, - { - "abstract" : [ + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds", + "isActive" : true, + "type" : "reference" + }, { - "text" : "Return a copy of the polygon without texture coordinates", + "text" : ".", "type" : "text" } ], @@ -26556,7 +27575,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -26564,50 +27583,32 @@ }, { "kind" : "identifier", - "text" : "withoutTexcoords" + "text" : "center" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/withouttexcoords()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withoutTexcoords()", + "path" : "\/documentation\/euclid\/polygon\/center", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/center", "taskGroups" : [ ], - "title" : "withoutTexcoords()", - "usr" : "s:6Euclid7PolygonV16withoutTexcoordsACyF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/line\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "center", + "usr" : "s:6Euclid7PolygonV6centerAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", + "text" : "Computes the trigonometric cosine of an angle.", "type" : "text" } ], @@ -26617,36 +27618,19 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "roll" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "yaw" + "kind" : "identifier", + "text" : "cos" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", @@ -26655,58 +27639,40 @@ }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "pitch" - }, - { - "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.function", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(roll:yaw:pitch:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(roll:yaw:pitch:)", + "path" : "\/documentation\/euclid\/cos(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/cos(_:)", "taskGroups" : [ ], - "title" : "init(roll:yaw:pitch:)", - "usr" : "s:6Euclid8RotationV4roll3yaw5pitchAcA5AngleV_A2Htcfc" + "title" : "cos(_:)", + "usr" : "s:6Euclid3cosySdAA5AngleVF" }, { - "abstract" : [ - { - "text" : "The color of the path point (optional).", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "color" + "kind" : "externalParam", + "text" : "polygon" }, { "kind" : "text", @@ -26714,31 +27680,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : "?" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/color", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/color", + "path" : "\/documentation\/euclid\/path\/init(polygon:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(polygon:)", "taskGroups" : [ ], - "title" : "color", - "usr" : "s:6Euclid9PathPointV5colorAA5ColorVSgvp" + "title" : "init(polygon:)", + "usr" : "s:6Euclid4PathV7polygonAcA7PolygonV_tcfc" }, { - "abstract" : [ - { - "text" : "Creates an array of glyph contours from an attributed string.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -26761,7 +27724,11 @@ }, { "kind" : "identifier", - "text" : "text" + "text" : "..." + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -26769,74 +27736,92 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)NSAttributedString", - "text" : "NSAttributedString" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, { - "kind" : "externalParam", - "text" : "width" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:SN", + "text" : "ClosedRange" }, { "kind" : "text", - "text" : "?, " + "text" : "<" }, { - "kind" : "externalParam", - "text" : "detail" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " - }, + "text" : ">" + } + ], + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/'...(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:_:)", + "taskGroups" : [ + + ], + "title" : "...(_:_:)", + "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + }, + { + "abstract" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "text" : "Returns a normalized vector.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ") -> [" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "kind" : "identifier", + "text" : "normalized" }, { "kind" : "text", - "text" : "]" + "text" : "() -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/text(_:width:detail:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:width:detail:)", + "path" : "\/documentation\/euclid\/vector\/normalized()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/normalized()", "taskGroups" : [ ], - "title" : "text(_:width:detail:)", - "usr" : "s:6Euclid4PathV4text_5width6detailSayACGSo18NSAttributedStringC_SdSgSitFZ" + "title" : "normalized()", + "usr" : "s:6Euclid6VectorV10normalizedACyF" }, { - "abstract" : [ - { - "text" : "Transform the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -26851,7 +27836,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -26859,56 +27844,79 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "yellow" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "text", - "text" : "(" - }, + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/color\/yellow", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/yellow", + "taskGroups" : [ + + ], + "title" : "yellow", + "usr" : "s:6Euclid5ColorV6yellowACvpZ" + }, + { + "abstract" : [ { - "kind" : "keyword", - "text" : "inout" + "text" : "Creates a Euclid ", + "type" : "text" }, { - "kind" : "text", - "text" : " " + "code" : "Quaternion", + "type" : "codeVoice" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : " from a SceneKit quaternion.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "c:@T@SCNQuaternion", + "text" : "SCNQuaternion" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/*=(_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/init(_:)-b3v3", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-b3v3", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9PathPointV" + "title" : "init(_:)", + "usr" : "s:6Euclid10QuaternionVyACSo10SCNVector4Vcfc" }, { "abstract" : [ { - "text" : "Return binary STL data for the mesh.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -26926,7 +27934,7 @@ }, { "kind" : "identifier", - "text" : "stlData" + "text" : "scale" }, { "kind" : "text", @@ -26934,7 +27942,7 @@ }, { "kind" : "externalParam", - "text" : "colorLookup" + "text" : "by" }, { "kind" : "text", @@ -26942,40 +27950,37 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16STLColorProvidera", - "text" : "STLColorProvider" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:10Foundation4DataV", - "text" : "Data" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stldata(colorlookup:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stlData(colorLookup:)", + "path" : "\/documentation\/euclid\/path\/scale(by:)-vnel", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-vnel", "taskGroups" : [ ], - "title" : "stlData(colorLookup:)", - "usr" : "s:6Euclid4MeshV7stlData11colorLookup10Foundation0D0VAA5ColorVSgs11AnyHashableVSgcSg_tF" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid4PathV" }, { - "abstract" : [ - { - "text" : "Returns a scaled copy of the value.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -26986,44 +27991,50 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "-=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/scaled(by:)-356zr", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr", + "path" : "\/documentation\/euclid\/vector\/-=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid6VectorV6scaled2byA2C_tF" + "title" : "-=(_:_:)", + "usr" : "s:s18AdditiveArithmeticPsE2seoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "availableLanguages" : [ @@ -27031,22 +28042,39 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Encodable-Implementations", + "path" : "\/documentation\/euclid\/transform\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Transformable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/encode(to:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-11t07", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-577nk", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-55r4j", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-9i9s9", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-9vwak", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translated(by:)" ], "title" : "Instance Methods" } ], - "title" : "Encodable Implementations" + "title" : "Transformable Implementations" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Computes the cross-product of this vector and another.", "type" : "text" } ], @@ -27064,174 +28092,118 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "cross" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/scale(by:)-677dp", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-677dp", + "path" : "\/documentation\/euclid\/vector\/cross(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/cross(_:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "cross(_:)", + "usr" : "s:6Euclid6VectorV5crossyA2CF" }, { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Encodable-Implementations", - "taskGroups" : [ + "abstract" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)" - ], - "title" : "Instance Methods" + "text" : "Creates an array of glyph contours from a string and font you provide.", + "type" : "text" } ], - "title" : "Encodable Implementations" - }, - { "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "?(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "scnGeometry" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)SCNGeometry", - "text" : "SCNGeometry" + "kind" : "identifier", + "text" : "text" }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "materialLookup" - }, - { - "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" - }, - { - "kind" : "text", - "text" : "?)" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(scngeometry:materiallookup:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)", - "taskGroups" : [ - - ], - "title" : "init(scnGeometry:materialLookup:)", - "usr" : "s:6Euclid4MeshV11scnGeometry14materialLookupACSgSo11SCNGeometryC_s11AnyHashableVSgSo11SCNMaterialCcSgtcfc" - }, - { - "abstract" : [ - { - "text" : "Efficiently XORs multiple meshes.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" + "preciseIdentifier" : "s:SS", + "text" : "String" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "font" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "symmetricDifference" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@CTFontRef", + "text" : "CTFont" }, { "kind" : "text", - "text" : "<" + "text" : "?, " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "externalParam", + "text" : "width" }, { "kind" : "text", - "text" : ">(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19symmetricDifference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ", " + "text" : "?, " }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "detail" }, { "kind" : "text", @@ -27239,53 +28211,63 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : ") -> " + "text" : ") -> [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + }, + { + "kind" : "text", + "text" : "]" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/symmetricdifference(_:iscancelled:)-swift.type.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/symmetricDifference(_:isCancelled:)-swift.type.method", + "path" : "\/documentation\/euclid\/path\/text(_:font:width:detail:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:font:width:detail:)", "taskGroups" : [ ], - "title" : "symmetricDifference(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV19symmetricDifference_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + "title" : "text(_:font:width:detail:)", + "usr" : "s:6Euclid4PathV4text_4font5width6detailSayACGSS_So9CTFontRefaSgSdSgSitFZ" }, { + "abstract" : [ + { + "text" : "Return binary STL data for the mesh.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "stlData" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "clear" + "kind" : "externalParam", + "text" : "colorLookup" }, { "kind" : "text", @@ -27293,24 +28275,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4MeshV16STLColorProvidera", + "text" : "STLColorProvider" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:10Foundation4DataV", + "text" : "Data" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/clear", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/clear", + "path" : "\/documentation\/euclid\/mesh\/stldata(colorlookup:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stlData(colorLookup:)", "taskGroups" : [ ], - "title" : "clear", - "usr" : "s:6Euclid5ColorV5clearACvpZ" + "title" : "stlData(colorLookup:)", + "usr" : "s:6Euclid4MeshV7stlData11colorLookup10Foundation0D0VAA5ColorVSgs11AnyHashableVSgcSg_tF" }, { "abstract" : [ { - "text" : "Creates a bounds with min and max coordinates.", + "text" : "Computes a set of edges where the polygon intersects a plane.", "type" : "text" } ], @@ -27320,32 +28311,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "min" + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "identifier", + "text" : "edges" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "max" + "text" : "intersecting" }, { "kind" : "text", @@ -27353,97 +28335,46 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(min:max:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(min:max:)", - "taskGroups" : [ - - ], - "title" : "init(min:max:)", - "usr" : "s:6Euclid6BoundsV3min3maxAcA6VectorV_AGtcfc" - }, - { - "abstract" : [ - { - "text" : "Creates a new plane by decoding from the given decoder.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", - "text" : "(" + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sh", + "text" : "Set" }, { "kind" : "text", - "text" : ": " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ">" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(from:)", + "path" : "\/documentation\/euclid\/polygon\/edges(intersecting:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/edges(intersecting:)", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid5PlaneV4fromACs7Decoder_p_tKcfc" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/alignment\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "edges(intersecting:)", + "usr" : "s:6Euclid7PolygonV5edges12intersectingShyAA11LineSegmentVGAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Computes the convex hull of a set of paths.", "type" : "text" } ], @@ -27453,145 +28384,93 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "scale" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "convexHull" }, { "kind" : "text", - "text" : ": " + "text" : "<" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/scale(by:)-4egi6", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scale(by:)-4egi6", - "taskGroups" : [ - - ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid9PathPointV" - }, - { - "abstract" : [ - { - "text" : "Performs a spherical interpolation between two quaternions.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "text" : ">(" + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "of" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "slerp" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA4PathV7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/slerp(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/slerp(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-4hvi3", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-4hvi3", "taskGroups" : [ ], - "title" : "slerp(_:_:)", - "usr" : "s:6Euclid10QuaternionV5slerpyA2C_SdtF" + "title" : "convexHull(of:material:)", + "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA4PathV7ElementRtzlFZ" }, { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Transformable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*=(_:_:)" - ], - "title" : "Operators" - }, + "abstract" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-3uymx", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-7y2vv", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-1h2f7", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-9pjki", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-90bab", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-94kks", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translated(by:)" - ], - "title" : "Instance Methods" + "text" : "Efficiently strokes a collection of line segments (useful for drawing wireframes).", + "type" : "text" } ], - "title" : "Transformable Implementations" - }, - { "availableLanguages" : [ "swift" ], @@ -27614,70 +28493,49 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "stroke" }, { "kind" : "text", - "text" : " " + "text" : "<" + }, + { + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : "(" + "text" : ">(" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid4MeshV6stroke_5width6detail8materialACx_SdSis11AnyHashableVSgtSlRzAA11LineSegmentV7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", "text" : ", " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "width" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/!=(_:_:)", - "taskGroups" : [ - - ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid9TransformV" - }, - { - "abstract" : [ - { - "text" : "Creates a rotation from an axis and angle.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "axis" + "text" : "detail" }, { "kind" : "text", @@ -27685,8 +28543,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", @@ -27694,7 +28552,7 @@ }, { "kind" : "externalParam", - "text" : "angle" + "text" : "material" }, { "kind" : "text", @@ -27702,31 +28560,30 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ")" + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(axis:angle:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(axis:angle:)", + "path" : "\/documentation\/euclid\/mesh\/stroke(_:width:detail:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stroke(_:width:detail:material:)", "taskGroups" : [ ], - "title" : "init(axis:angle:)", - "usr" : "s:6Euclid8RotationV4axis5angleACSgAA6VectorV_AA5AngleVtcfc" + "title" : "stroke(_:width:detail:material:)", + "usr" : "s:6Euclid4MeshV6stroke_5width6detail8materialACx_SdSis11AnyHashableVSgtSlRzAA11LineSegmentV7ElementRtzlFZ" }, { - "abstract" : [ - { - "text" : "Efficiently performs a stencil with multiple meshes.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -27741,7 +28598,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -27749,32 +28606,7 @@ }, { "kind" : "identifier", - "text" : "stencil" - }, - { - "kind" : "text", - "text" : "<" - }, - { - "kind" : "genericParameter", - "text" : "T" - }, - { - "kind" : "text", - "text" : ">(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV7stencil_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "isCancelled" + "text" : "clear" }, { "kind" : "text", @@ -27782,33 +28614,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stencil(_:iscancelled:)-swift.type.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.type.method", + "path" : "\/documentation\/euclid\/color\/clear", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/clear", "taskGroups" : [ ], - "title" : "stencil(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV7stencil_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + "title" : "clear", + "usr" : "s:6Euclid5ColorV5clearACvpZ" }, { "abstract" : [ { - "text" : "Curve or uncurve the point.", + "text" : "All vector components are one (or close to one) in length.", "type" : "text" } ], @@ -27818,7 +28641,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -27826,49 +28649,32 @@ }, { "kind" : "identifier", - "text" : "curved" + "text" : "isOne" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sb", "text" : "Bool" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/curved(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curved(_:)", + "path" : "\/documentation\/euclid\/vector\/isone", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isOne", "taskGroups" : [ ], - "title" : "curved(_:)", - "usr" : "s:6Euclid9PathPointV6curvedyACSbF" + "title" : "isOne", + "usr" : "s:6Euclid6VectorV5isOneSbvp" }, { "abstract" : [ { - "text" : "A vector with all coordinates set to ", - "type" : "text" - }, - { - "code" : "1", - "type" : "codeVoice" - }, - { - "text" : ".", + "text" : "Creates a new vector from a SceneKit vector.", "type" : "text" } ], @@ -27878,57 +28684,43 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "let" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "one" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@S@SCNVector3", + "text" : "SCNVector3" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/one", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/one", + "path" : "\/documentation\/euclid\/vector\/init(_:)-228p6", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-228p6", "taskGroups" : [ ], - "title" : "one", - "usr" : "s:6Euclid6VectorV3oneACvpZ" + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACSo10SCNVector3Vcfc" }, { + "abstract" : [ + { + "text" : "Returns a rotated copy of the value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -27939,27 +28731,24 @@ }, { "kind" : "identifier", - "text" : ">=" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotated" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -27967,43 +28756,63 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/_=(_:_:)-5nk27", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/_=(_:_:)-5nk27", + "path" : "\/documentation\/euclid\/vector\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)", "taskGroups" : [ ], - "title" : ">=(_:_:)", - "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "rotated(by:)", + "usr" : "s:6Euclid6VectorV7rotated2byAcA8RotationV_tF" }, { "abstract" : [ { - "text" : "Display the 3D shapes you created with meshes.", + "text" : "Creates a closed path from a polygon.", "type" : "text" } ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.article", + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/renderingmeshes", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/RenderingMeshes", + "path" : "\/documentation\/euclid\/path\/init(_:)-3c0eo", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-3c0eo", "taskGroups" : [ ], - "title" : "Rendering Meshes" + "title" : "init(_:)", + "usr" : "s:6Euclid4PathVyAcA7PolygonVcfc" }, { "abstract" : [ { - "text" : "Returns a new bounds inset by the specified amount.", + "text" : "Creates a vertex from a path point.", "type" : "text" } ], @@ -28013,57 +28822,36 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "inset" + "text" : "init" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/inset(by:)-4gk62", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-4gk62", + "path" : "\/documentation\/euclid\/vertex\/init(_:)-7go25", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-7go25", "taskGroups" : [ ], - "title" : "inset(by:)", - "usr" : "s:6Euclid6BoundsV5inset2byACSd_tF" + "title" : "init(_:)", + "usr" : "s:6Euclid6VertexVyAcA9PathPointVcfc" }, { "abstract" : [ { - "text" : "Merges coplanar polygons that share one or more edges, provided the result will be convex.", + "text" : "Computes the convex hull of a set of line segments.", "type" : "text" } ], @@ -28071,6 +28859,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -28081,52 +28877,40 @@ }, { "kind" : "identifier", - "text" : "detriangulate" + "text" : "convexHull" }, { "kind" : "text", - "text" : "() -> " + "text" : "<" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/detriangulate()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/detriangulate()", - "taskGroups" : [ - - ], - "title" : "detriangulate()", - "usr" : "s:6Euclid4MeshV13detriangulateACyF" - }, - { - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "genericParameter", + "text" : "T" + }, { - "kind" : "keyword", - "text" : "static" + "kind" : "text", + "text" : ">(" + }, + { + "kind" : "externalParam", + "text" : "of" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA11LineSegmentV7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "red" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", @@ -28134,24 +28918,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/red", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/red", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-91swk", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-91swk", "taskGroups" : [ ], - "title" : "red", - "usr" : "s:6Euclid5ColorV3redACvpZ" + "title" : "convexHull(of:material:)", + "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA11LineSegmentV7ElementRtzlFZ" }, { "abstract" : [ { - "text" : "A color in RGBA format.", + "text" : "Efficiently performs a stencil with multiple meshes.", "type" : "text" } ], @@ -28161,7 +28954,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -28169,83 +28970,66 @@ }, { "kind" : "identifier", - "text" : "Color" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/color", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color", - "taskGroups" : [ + "text" : "stencil" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-25eby", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-53lhy", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-7d8un" - ], - "title" : "Creating a Color" + "kind" : "text", + "text" : "<" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/clear", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/black", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/white", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/gray", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/red", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/green", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/blue", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/yellow", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/cyan", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/magenta", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/orange" - ], - "title" : "Default Colors" + "kind" : "genericParameter", + "text" : "T" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/r", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/g", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/b", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/a" - ], - "title" : "Color properties" + "kind" : "text", + "text" : ">(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/withAlpha(_:)" - ], - "title" : "Mutating Colors" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV7stencil_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/components" - ], - "title" : "Instance Properties" + "kind" : "text", + "text" : ", " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/lerp(_:_:)" - ], - "title" : "Instance Methods" + "kind" : "externalParam", + "text" : "isCancelled" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Equatable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "title" : "Color", - "usr" : "s:6Euclid5ColorV" + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/stencil(_:iscancelled:)-swift.type.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/stencil(_:isCancelled:)-swift.type.method", + "taskGroups" : [ + + ], + "title" : "stencil(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV7stencil_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" }, { "abstract" : [ { - "text" : "Returns a quaternion with its components divided by the specified value.", + "text" : "Returns a copy of the mesh with the specified old material replaced by a new one.", "type" : "text" } ], @@ -28253,14 +29037,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -28271,54 +29047,58 @@ }, { "kind" : "identifier", - "text" : "\/" + "text" : "replacing" }, { "kind" : "text", - "text" : " " + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : "(" + "text" : "?, " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "externalParam", + "text" : "with" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/\/(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/replacing(_:with:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/replacing(_:with:)", "taskGroups" : [ ], - "title" : "\/(_:_:)", - "usr" : "s:6Euclid10QuaternionV1doiyA2C_SdtFZ" + "title" : "replacing(_:with:)", + "usr" : "s:6Euclid4MeshV9replacing_4withACs11AnyHashableVSg_AHtF" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether a point lies on the plane.", + "text" : "The quaternion Y component.", "type" : "text" } ], @@ -28328,7 +29108,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -28336,41 +29116,50 @@ }, { "kind" : "identifier", - "text" : "containsPoint" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "y" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/containspoint(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/containsPoint(_:)", + "path" : "\/documentation\/euclid\/quaternion\/y", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/y", "taskGroups" : [ ], - "title" : "containsPoint(_:)", - "usr" : "s:6Euclid5PlaneV13containsPointySbAA6VectorVF" + "title" : "y", + "usr" : "s:6Euclid10QuaternionV1ySdvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vertex\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Returns the reverse quaternion rotation.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -28396,7 +29185,7 @@ }, { "kind" : "identifier", - "text" : "-" + "text" : "*=" }, { "kind" : "text", @@ -28406,43 +29195,46 @@ "kind" : "text", "text" : "(" }, + { + "kind" : "keyword", + "text" : "inout" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/-(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:)", + "path" : "\/documentation\/euclid\/plane\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*=(_:_:)", "taskGroups" : [ ], - "title" : "-(_:)", - "usr" : "s:6Euclid10QuaternionV1sopyA2CFZ" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "The surface normal of the vertex, used to calculate lighting.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "Set this to zero if you want the normal to be calculated automatically from the polygon face normal.", + "text" : "A Boolean value that indicates whether the polygon includes vertex colors.", "type" : "text" } ], @@ -28460,7 +29252,7 @@ }, { "kind" : "identifier", - "text" : "normal" + "text" : "hasVertexColors" }, { "kind" : "text", @@ -28468,59 +29260,63 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/normal", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/normal", + "path" : "\/documentation\/euclid\/polygon\/hasvertexcolors", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasVertexColors", "taskGroups" : [ ], - "title" : "normal", - "usr" : "s:6Euclid6VertexV6normalAA6VectorVvp" + "title" : "hasVertexColors", + "usr" : "s:6Euclid7PolygonV15hasVertexColorsSbvp" }, { + "abstract" : [ + { + "text" : "A common protocol for objects that have a bounds.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Transformable-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-98mbu", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e" - ], - "title" : "Operators" + "kind" : "keyword", + "text" : "protocol" + }, + { + "kind" : "text", + "text" : " " }, + { + "kind" : "identifier", + "text" : "Bounded" + } + ], + "kind" : "org.swift.docc.kind.protocol", + "language" : "swift", + "path" : "\/documentation\/euclid\/bounded", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded", + "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-3ed6z", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-hj8h", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-55ayx", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-8g7t0", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded\/bounds" ], - "title" : "Instance Methods" + "title" : "Instance Properties" } ], - "title" : "Transformable Implementations" + "title" : "Bounded", + "usr" : "s:6Euclid7BoundedP" }, { "abstract" : [ { - "text" : "A normalized direction vector pointing upwards relative to the current rotation.", + "text" : "Do not generate texture coordinates.", "type" : "text" } ], @@ -28530,7 +29326,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "case" }, { "kind" : "text", @@ -28538,77 +29334,88 @@ }, { "kind" : "identifier", - "text" : "up" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "none" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/up", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/up", + "path" : "\/documentation\/euclid\/mesh\/wrapmode\/none", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/none", "taskGroups" : [ ], - "title" : "up", - "usr" : "s:6Euclid8RotationV2upAA6VectorVvp" + "title" : "Mesh.WrapMode.none", + "usr" : "s:6Euclid4MeshV8WrapModeO4noneyA2EmF" }, { + "abstract" : [ + { + "text" : "Tessellates the polygon into triangles.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "triangulate" }, { "kind" : "text", - "text" : " " + "text" : "() -> [" }, { - "kind" : "identifier", - "text" : "blue" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/blue", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/blue", + "path" : "\/documentation\/euclid\/polygon\/triangulate()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/triangulate()", "taskGroups" : [ ], - "title" : "blue", - "usr" : "s:6Euclid5ColorV4blueACvpZ" + "title" : "triangulate()", + "usr" : "s:6Euclid7PolygonV11triangulateSayACGyF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/hashable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Hashable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/hash(into:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Hashable Implementations" }, { "abstract" : [ { - "text" : "Creates a rotationally symmetrical mesh by turning the specified path around the Y axis.", + "text" : "Creates a closed regular polygon.", "type" : "text" } ], @@ -28634,24 +29441,15 @@ }, { "kind" : "identifier", - "text" : "lathe" + "text" : "polygon" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : ", " - }, { "kind" : "externalParam", - "text" : "slices" + "text" : "radius" }, { "kind" : "text", @@ -28659,8 +29457,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -28668,7 +29466,7 @@ }, { "kind" : "externalParam", - "text" : "poleDetail" + "text" : "sides" }, { "kind" : "text", @@ -28685,7 +29483,7 @@ }, { "kind" : "externalParam", - "text" : "addDetailForFlatPoles" + "text" : "color" }, { "kind" : "text", @@ -28693,84 +29491,110 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ", " + "text" : "?) -> " }, { - "kind" : "externalParam", - "text" : "faces" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" + } + ], + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/polygon(radius:sides:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/polygon(radius:sides:color:)", + "taskGroups" : [ + + ], + "title" : "polygon(radius:sides:color:)", + "usr" : "s:6Euclid4PathV7polygon6radius5sides5colorACSd_SiAA5ColorVSgtFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "wrapMode" + "kind" : "identifier", + "text" : "..." }, { "kind" : "text", - "text" : ": " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:SN", + "text" : "ClosedRange" }, { "kind" : "text", - "text" : "?) -> " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/lathe(_:slices:poledetail:adddetailforflatpoles:faces:wrapmode:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)", + "path" : "\/documentation\/euclid\/vector\/'...(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:_:)", "taskGroups" : [ ], - "title" : "lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV5lathe_6slices10poleDetail03addF12ForFlatPoles5faces8wrapMode8materialAcA4PathV_S2iSbAC5FacesOAC04WrapM0Os11AnyHashableVSgtFZ" + "title" : "...(_:_:)", + "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Creates a linear path from a start and end point.", "type" : "text" } ], @@ -28778,6 +29602,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -28788,15 +29620,33 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "line" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, { "kind" : "externalParam", - "text" : "by" + "text" : "color" }, { "kind" : "text", @@ -28804,93 +29654,80 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ")" + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transform(by:)", + "path" : "\/documentation\/euclid\/path\/line(_:_:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:_:color:)", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "line(_:_:color:)", + "usr" : "s:6Euclid4PathV4line__5colorAcA6VectorV_AgA5ColorVSgtFZ" }, { + "abstract" : [ + { + "text" : "Creates a quaternion from raw components.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : ">=" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : "init" }, { "kind" : "text", - "text" : ", " + "text" : "?([" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/_=(_:_:)-5dvuy", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-5dvuy", + "path" : "\/documentation\/euclid\/quaternion\/init(_:)-fyhx", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-fyhx", "taskGroups" : [ ], - "title" : ">=(_:_:)", - "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "init(_:)", + "usr" : "s:6Euclid10QuaternionVyACSgSaySdGcfc" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "A vector with all coordinates set to ", + "type" : "text" + }, + { + "code" : "1", + "type" : "codeVoice" + }, + { + "text" : ".", "type" : "text" } ], @@ -28900,23 +29737,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "rotate" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "one" }, { "kind" : "text", @@ -28924,28 +29761,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/rotate(by:)-8lp0l", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-8lp0l", + "path" : "\/documentation\/euclid\/vector\/one", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/one", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "one", + "usr" : "s:6Euclid6VectorV3oneACvpZ" }, { "abstract" : [ { - "text" : "Creates a new line from the specified line segment.", + "text" : "Texture is tube-wrapped.", "type" : "text" } ], @@ -28955,31 +29788,26 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "case" }, { "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "text" : " " }, { - "kind" : "text", - "text" : ")" + "kind" : "identifier", + "text" : "tube" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/init(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(_:)", + "path" : "\/documentation\/euclid\/mesh\/wrapmode\/tube", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/tube", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid4LineVyAcA0B7SegmentVcfc" + "title" : "Mesh.WrapMode.tube", + "usr" : "s:6Euclid4MeshV8WrapModeO4tubeyA2EmF" }, { "availableLanguages" : [ @@ -28987,22 +29815,22 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Encodable-Implementations", + "path" : "\/documentation\/euclid\/transform\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Equatable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/encode(to:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/!=(_:_:)" ], - "title" : "Instance Methods" + "title" : "Operators" } ], - "title" : "Encodable Implementations" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Returns a new vector that represents the mininum of the components of the two vectors.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -29020,50 +29848,44 @@ }, { "kind" : "identifier", - "text" : "min" + "text" : "rotate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.function", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/min(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/min(_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/rotate(by:)-16elu", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-16elu", "taskGroups" : [ ], - "title" : "min(_:_:)", - "usr" : "s:6Euclid3minyAA6VectorVAD_ADtF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { "abstract" : [ { - "text" : "Computes the convex hull of a set of vertices.", + "text" : "Creates a rotation transform.", "type" : "text" } ], @@ -29089,40 +29911,67 @@ }, { "kind" : "identifier", - "text" : "convexHull" + "text" : "rotation" }, { "kind" : "text", - "text" : "<" + "text" : "(" }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ">(" + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "of" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + } + ], + "kind" : "org.swift.docc.kind.typeMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/rotation(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation(_:)", + "taskGroups" : [ + + ], + "title" : "rotation(_:)", + "usr" : "s:6Euclid9TransformV8rotationyAcA8RotationVFZ" + }, + { + "abstract" : [ + { + "text" : "Transform the value in place.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VertexV7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "kind" : "identifier", + "text" : "transform" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "material" + "text" : "by" }, { "kind" : "text", @@ -29130,102 +29979,102 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-75on2", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-75on2", + "path" : "\/documentation\/euclid\/polygon\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transform(by:)", "taskGroups" : [ ], - "title" : "convexHull(of:material:)", - "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VertexV7ElementRtzlFZ" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { + "abstract" : [ + { + "text" : "Creates a bounds from two SceneKit vectors.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "..<" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "((min" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "c:@S@SCNVector3", + "text" : "SCNVector3" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s16PartialRangeUpToV", - "text" : "PartialRangeUpTo" + "text" : ", max" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "c:@S@SCNVector3", + "text" : "SCNVector3" }, { "kind" : "text", - "text" : ">" + "text" : "))" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/'.._(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:)", + "path" : "\/documentation\/euclid\/bounds\/init(_:)-5bh7b", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-5bh7b", "taskGroups" : [ ], - "title" : "..<(_:)", - "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "init(_:)", + "usr" : "s:6Euclid6BoundsVyACSo10SCNVector3V3min_AE3maxt_tcfc" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/line\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Decodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(from:)" + ], + "title" : "Initializers" + } + ], + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "The axis of rotation.", "type" : "text" } ], @@ -29235,7 +30084,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -29243,15 +30092,7 @@ }, { "kind" : "identifier", - "text" : "translated" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "axis" }, { "kind" : "text", @@ -29261,49 +30102,22 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translated(by:)", + "path" : "\/documentation\/euclid\/quaternion\/axis", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/axis", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid4MeshV10translated2byAcA6VectorV_tF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Encodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/encode(to:)" - ], - "title" : "Instance Methods" - } - ], - "title" : "Encodable Implementations" + "title" : "axis", + "usr" : "s:6Euclid10QuaternionV4axisAA6VectorVvp" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Creates a mesh from a SceneKit node, with optional material mapping.", "type" : "text" } ], @@ -29313,23 +30127,24 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "rotate" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:objc(cs)SCNNode", + "text" : "SCNNode" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "by" + "text" : "ignoringTransforms" }, { "kind" : "text", @@ -29337,25 +30152,48 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" }, { "kind" : "text", - "text" : ")" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19SCNMaterialProvidera", + "text" : "SCNMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/rotate(by:)-1azi6", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-1azi6", + "path" : "\/documentation\/euclid\/mesh\/init(_:ignoringtransforms:materiallookup:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:ignoringTransforms:materialLookup:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "init(_:ignoringTransforms:materialLookup:)", + "usr" : "s:6Euclid4MeshV_18ignoringTransforms14materialLookupACSo7SCNNodeC_Sbs11AnyHashableVSgSo11SCNMaterialCcSgtcfc" }, { + "abstract" : [ + { + "text" : "Returns a transformed copy of the value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -29378,7 +30216,7 @@ }, { "kind" : "identifier", - "text" : "..." + "text" : "*" }, { "kind" : "text", @@ -29394,52 +30232,89 @@ }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s19PartialRangeThroughV", - "text" : "PartialRangeThrough" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "<" + "text" : ") -> " }, { "kind" : "typeIdentifier", "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/'...(_:)-3s6ak", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/...(_:)-3s6ak", + "path" : "\/documentation\/euclid\/transformable\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/*(_:_:)", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ" }, { + "abstract" : [ + { + "text" : "The quaternion W component.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "var" }, { "kind" : "text", "text" : " " }, + { + "kind" : "identifier", + "text" : "w" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/w", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/w", + "taskGroups" : [ + + ], + "title" : "w", + "usr" : "s:6Euclid10QuaternionV1wSdvp" + }, + { + "abstract" : [ + { + "text" : "The quaternion X component.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -29447,32 +30322,58 @@ }, { "kind" : "identifier", - "text" : "xor" + "text" : "x" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/x", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/x", + "taskGroups" : [ + + ], + "title" : "x", + "usr" : "s:6Euclid10QuaternionV1xSdvp" + }, + { + "abstract" : [ + { + "text" : "Returns a scaled copy of the value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ">(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV3xor_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "kind" : "identifier", + "text" : "scaled" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "by" }, { "kind" : "text", @@ -29480,8 +30381,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -29493,23 +30394,20 @@ "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/xor(_:iscancelled:)-swift.type.method", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.type.method", + "path" : "\/documentation\/euclid\/mesh\/scaled(by:)-94kks", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-94kks", "taskGroups" : [ ], - "title" : "xor(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV3xor_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + "title" : "scaled(by:)", + "usr" : "s:6Euclid4MeshV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Returns the distance between a point and the plane.", "type" : "text" } ], @@ -29527,7 +30425,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "distance" }, { "kind" : "text", @@ -29535,7 +30433,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -29543,28 +30441,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/rotate(by:)-577nk", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotate(by:)-577nk", + "path" : "\/documentation\/euclid\/plane\/distance(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/distance(from:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "distance(from:)", + "usr" : "s:6Euclid5PlaneV8distance4fromSdAA6VectorV_tF" }, { "abstract" : [ { - "text" : "Creates a new rotation by decoding from the given decoder.", + "text" : "A Boolean value that indicates whether the mesh includes vertex colors.", "type" : "text" } ], @@ -29574,15 +30477,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "identifier", + "text" : "hasVertexColors" }, { "kind" : "text", @@ -29590,32 +30493,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" - }, - { - "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(from:)", + "path" : "\/documentation\/euclid\/mesh\/hasvertexcolors", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexColors", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid8RotationV4fromACs7Decoder_p_tKcfc" + "title" : "hasVertexColors", + "usr" : "s:6Euclid4MeshV15hasVertexColorsSbvp" }, { "abstract" : [ { - "text" : "Split the polygon along a plane.", + "text" : "Returns the product of a numeric multiplier and an angle.", "type" : "text" } ], @@ -29625,78 +30520,70 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "split" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "along" + "kind" : "identifier", + "text" : "*" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "kind" : "text", + "text" : "(" }, { - "kind" : "text", - "text" : ") -> (front" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": [" + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" - }, - { - "kind" : "text", - "text" : "], back" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ": [" + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" - }, - { - "kind" : "text", - "text" : "])" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/split(along:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/split(along:)", + "path" : "\/documentation\/euclid\/angle\/*(_:_:)-2ew65", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-2ew65", "taskGroups" : [ ], - "title" : "split(along:)", - "usr" : "s:6Euclid7PolygonV5split5alongSayACG5front_AF4backtAA5PlaneV_tF" + "title" : "*(_:_:)", + "usr" : "s:6Euclid5AngleV1moiyACSd_ACtFZ" }, { "abstract" : [ { - "text" : "Returns the point where the specified plane intersects the line.", + "text" : "Deprecated.", "type" : "text" } ], @@ -29706,36 +30593,20 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "intersection" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "with" + "text" : "init" }, { "kind" : "text", - "text" : ": " + "text" : "?(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", @@ -29744,23 +30615,26 @@ }, { "kind" : "text", - "text" : "?" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/intersection(with:)-7s1sd", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-7s1sd", + "path" : "\/documentation\/euclid\/linesegment\/init(_:_:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(_:_:)", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid4LineV12intersection4withAA6VectorVSgAA5PlaneV_tF" + "title" : "init(_:_:)", + "usr" : "s:6Euclid11LineSegmentVyACSgAA6VectorV_AFtcfc" }, { "abstract" : [ { - "text" : "An array of vertices suitable for constructing a set of edge polygons for the path.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -29778,7 +30652,7 @@ }, { "kind" : "identifier", - "text" : "edgeVertices" + "text" : "rotate" }, { "kind" : "text", @@ -29786,7 +30660,7 @@ }, { "kind" : "externalParam", - "text" : "for" + "text" : "by" }, { "kind" : "text", @@ -29794,46 +30668,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : "." - }, + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/rotate(by:)-3ed6z", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-3ed6z", + "taskGroups" : [ + + ], + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid6VectorV" + }, + { + "abstract" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" - }, - { - "kind" : "text", - "text" : ") -> [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" - }, - { - "kind" : "text", - "text" : "]" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/edgevertices(for:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices(for:)", - "taskGroups" : [ - - ], - "title" : "edgeVertices(for:)", - "usr" : "s:6Euclid4PathV12edgeVertices3forSayAA6VertexVGAA4MeshV8WrapModeO_tF" - }, - { - "abstract" : [ - { - "text" : "Creates a new identity rotation.", + "text" : "Creates a new vector by decoding from the given decoder.", "type" : "text" } ], @@ -29847,23 +30703,44 @@ }, { "kind" : "text", - "text" : "()" + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "from" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" + }, + { + "kind" : "text", + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init()", + "path" : "\/documentation\/euclid\/vector\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(from:)", "taskGroups" : [ ], - "title" : "init()", - "usr" : "s:6Euclid8RotationVACycfc" + "title" : "init(from:)", + "usr" : "s:6Euclid6VectorV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -29881,7 +30758,7 @@ }, { "kind" : "identifier", - "text" : "transform" + "text" : "transformed" }, { "kind" : "text", @@ -29902,23 +30779,28 @@ }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transform(by:)", + "path" : "\/documentation\/euclid\/path\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)", "taskGroups" : [ ], - "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF" + "title" : "transformed(by:)", + "usr" : "s:6Euclid4PathV11transformed2byAcA9TransformV_tF" }, { "abstract" : [ { - "text" : "An angle or 2D rotation.", + "text" : "The identity rotation (i.e. no rotation).", "type" : "text" } ], @@ -29928,95 +30810,48 @@ "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "Angle" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(degrees:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(radians:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians(_:)" - ], - "title" : "Creating Angles" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/zero", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/halfPi", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/pi", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/twoPi" - ], - "title" : "Default Angles" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/radians", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/isZero" - ], - "title" : "Angle Properties" + "kind" : "keyword", + "text" : "let" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/acos(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/asin(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/atan2(y:x:)" - ], - "title" : "Computing Angles" + "kind" : "text", + "text" : " " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/-=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-2ew65", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*(_:_:)-8l78z", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*=(_:_:)" - ], - "title" : "Operators" + "kind" : "identifier", + "text" : "identity" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/=(_:_:)" - ], - "title" : "Operators" + "kind" : "text", + "text" : ": " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/AdditiveArithmetic-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Comparable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Equatable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], - "title" : "Angle", - "usr" : "s:6Euclid5AngleV" + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/identity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/identity", + "taskGroups" : [ + + ], + "title" : "identity", + "usr" : "s:6Euclid8RotationV8identityACvpZ" }, { "abstract" : [ { - "text" : "Creates a quaternion representing a rotation around the Y axis.", + "text" : "Creates a new bounds representing the intersection between the specified bounds and this one.", "type" : "text" } ], @@ -30024,14 +30859,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -30042,7 +30869,7 @@ }, { "kind" : "identifier", - "text" : "yaw" + "text" : "intersection" }, { "kind" : "text", @@ -30050,8 +30877,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" }, { "kind" : "text", @@ -30059,79 +30886,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/yaw(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw(_:)", + "path" : "\/documentation\/euclid\/bounds\/intersection(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersection(_:)", "taskGroups" : [ ], - "title" : "yaw(_:)", - "usr" : "s:6Euclid10QuaternionV3yawyAcA5AngleVFZ" + "title" : "intersection(_:)", + "usr" : "s:6Euclid6BoundsV12intersectionyA2CF" }, { - "abstract" : [ - { - "text" : "The face generation policy for Euclid to use when creating a mesh.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "enum" + "text" : "static" }, { "kind" : "text", "text" : " " }, - { - "kind" : "identifier", - "text" : "Faces" - } - ], - "kind" : "org.swift.docc.kind.enumeration", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/back", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/default", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/front", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/frontAndBack" - ], - "title" : "Enumeration Cases" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/Equatable-Implementations" - ], - "title" : "Default Implementations" - } - ], - "title" : "Mesh.Faces", - "usr" : "s:6Euclid4MeshV5FacesO" - }, - { - "abstract" : [ - { - "text" : "Return a copy of the mesh with cylindrically-mapped texture coordinates.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -30142,106 +30923,52 @@ }, { "kind" : "identifier", - "text" : "cylinderMapped" + "text" : "!=" }, { "kind" : "text", - "text" : "() -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cylindermapped()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cylinderMapped()", - "taskGroups" : [ - - ], - "title" : "cylinderMapped()", - "usr" : "s:6Euclid4MeshV14cylinderMappedACyF" - }, - { - "abstract" : [ - { - "text" : "Creates a bounds from a collection of ", - "type" : "text" + "text" : " " }, { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded", - "isActive" : true, - "type" : "reference" + "kind" : "text", + "text" : "(" }, { - "text" : " objects.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : "<" + "text" : ", " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ">(" + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsVyACxcSlRzAA7Bounded7ElementRpzlufc1TL_xmfp", - "text" : "T" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(_:)-1icmf", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-1icmf", + "path" : "\/documentation\/euclid\/vertex\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/!=(_:_:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6BoundsVyACxcSlRzAA7Bounded7ElementRpzlufc" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/decodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Decodable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(from:)" - ], - "title" : "Initializers" - } - ], - "title" : "Decodable Implementations" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Returns the angle between this vector and the specified plane.", "type" : "text" } ], @@ -30259,7 +30986,7 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "angle" }, { "kind" : "text", @@ -30267,7 +30994,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "with" }, { "kind" : "text", @@ -30275,28 +31002,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/scale(by:)-6c0wl", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-6c0wl", + "path" : "\/documentation\/euclid\/vector\/angle(with:)-9sfg1", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-9sfg1", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6VertexV" + "title" : "angle(with:)", + "usr" : "s:6Euclid6VectorV5angle4withAA5AngleVAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Computes the trigonometric cosine of an angle.", + "text" : "The angle of rotation around the Y-axis.", "type" : "text" } ], @@ -30306,7 +31038,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -30314,44 +31046,29 @@ }, { "kind" : "identifier", - "text" : "cos" + "text" : "yaw" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid5AngleV", "text" : "Angle" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" } ], - "kind" : "org.swift.docc.kind.function", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/cos(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/cos(_:)", + "path" : "\/documentation\/euclid\/quaternion\/yaw", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw", "taskGroups" : [ ], - "title" : "cos(_:)", - "usr" : "s:6Euclid3cosySdAA5AngleVF" + "title" : "yaw", + "usr" : "s:6Euclid10QuaternionV3yawAA5AngleVvp" }, { - "abstract" : [ - { - "text" : "Angle representing a full rotation.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -30366,7 +31083,7 @@ }, { "kind" : "keyword", - "text" : "let" + "text" : "func" }, { "kind" : "text", @@ -30374,59 +31091,19 @@ }, { "kind" : "identifier", - "text" : "twoPi" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - } - ], - "kind" : "org.swift.docc.kind.typeProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/twopi", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/twoPi", - "taskGroups" : [ - - ], - "title" : "twoPi", - "usr" : "s:6Euclid5AngleV5twoPiACvpZ" - }, - { - "abstract" : [ - { - "text" : "Linearly interpolates between two path points.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" + "text" : "<=" }, { "kind" : "text", "text" : " " }, - { - "kind" : "identifier", - "text" : "lerp" - }, { "kind" : "text", "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "text" : "Self" }, { "kind" : "text", @@ -30434,8 +31111,7 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", @@ -30443,21 +31119,27 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/lerp(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/lerp(_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/_=(_:_:)-8q2nt", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-8q2nt", "taskGroups" : [ ], - "title" : "lerp(_:_:)", - "usr" : "s:6Euclid9PathPointV4lerpyA2C_SdtF" + "title" : "<=(_:_:)", + "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { + "abstract" : [ + { + "text" : "Creates a circular arc.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -30480,70 +31162,49 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "arc" }, { "kind" : "text", - "text" : " " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "angle" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", "text" : ", " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "radius" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/!=(_:_:)", - "taskGroups" : [ - - ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VertexV" - }, - { - "abstract" : [ - { - "text" : "The total length of the path.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" - }, + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "length" + "kind" : "externalParam", + "text" : "segments" }, { "kind" : "text", @@ -30551,83 +31212,59 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/length", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/length", - "taskGroups" : [ - - ], - "title" : "length", - "usr" : "s:6Euclid4PathV6lengthSdvp" - }, - { - "abstract" : [ - { - "text" : "Returns a Boolean value that indicates if the bounds intersects the specified plane.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : " " + "text" : "?, " }, { - "kind" : "identifier", - "text" : "intersects" + "kind" : "externalParam", + "text" : "color" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/intersects(_:)-7br6p", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-7br6p", + "path" : "\/documentation\/euclid\/path\/arc(angle:radius:segments:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/arc(angle:radius:segments:color:)", "taskGroups" : [ ], - "title" : "intersects(_:)", - "usr" : "s:6Euclid6BoundsV10intersectsySbAA5PlaneVF" + "title" : "arc(angle:radius:segments:color:)", + "usr" : "s:6Euclid4PathV3arc5angle6radius8segments5colorAcA5AngleV_SdSiSgAA5ColorVSgtFZ" }, { - "abstract" : [ - { - "text" : "Translate the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -30638,44 +31275,60 @@ }, { "kind" : "identifier", - "text" : "translate" + "text" : ">" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translate(by:)", + "path" : "\/documentation\/euclid\/vector\/_(_:_:)-7i9lp", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-7i9lp", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4PathV" + "title" : ">(_:_:)", + "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "An array containing the X, Y, and Z components of the vector.", + "text" : "The unique polygon edges in the mesh.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "The direction of each edge is normalized relative to the origin to simplify edge-equality comparisons.", "type" : "text" } ], @@ -30693,80 +31346,57 @@ }, { "kind" : "identifier", - "text" : "components" + "text" : "uniqueEdges" }, { "kind" : "text", - "text" : ": [" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:Sh", + "text" : "Set" }, { "kind" : "text", - "text" : "]" + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" + }, + { + "kind" : "text", + "text" : ">" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/components", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components", + "path" : "\/documentation\/euclid\/mesh\/uniqueedges", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/uniqueEdges", "taskGroups" : [ ], - "title" : "components", - "usr" : "s:6Euclid6VectorV10componentsSaySdGvp" + "title" : "uniqueEdges", + "usr" : "s:6Euclid4MeshV11uniqueEdgesShyAA11LineSegmentVGvp" }, { - "abstract" : [ - { - "text" : "Generate both the front and back faces.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "static" }, { "kind" : "text", "text" : " " }, - { - "kind" : "identifier", - "text" : "frontAndBack" - } - ], - "kind" : "org.swift.docc.kind.enumerationCase", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/faces\/frontandback", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/frontAndBack", - "taskGroups" : [ - - ], - "title" : "Mesh.Faces.frontAndBack", - "usr" : "s:6Euclid4MeshV5FacesO12frontAndBackyA2EmF" - }, - { - "abstract" : [ - { - "text" : "The bounding box containing the line segment.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -30774,75 +31404,52 @@ }, { "kind" : "identifier", - "text" : "bounds" + "text" : "!=" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/bounds", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/bounds", - "taskGroups" : [ - - ], - "title" : "bounds", - "usr" : "s:6Euclid11LineSegmentV6boundsAA6BoundsVvp" - }, - { - "abstract" : [ - { - "text" : "The end point of the line segment.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : "(" + }, { - "kind" : "keyword", - "text" : "let" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "end" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/end", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/end", + "path" : "\/documentation\/euclid\/mesh\/faces\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/!=(_:_:)", "taskGroups" : [ ], - "title" : "end", - "usr" : "s:6Euclid11LineSegmentV3endAA6VectorVvp" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4MeshV5FacesO" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "Returns the perpendicular distance of the line from a specified point.", "type" : "text" } ], @@ -30860,7 +31467,7 @@ }, { "kind" : "identifier", - "text" : "translated" + "text" : "distance" }, { "kind" : "text", @@ -30868,7 +31475,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -30885,24 +31492,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)", + "path" : "\/documentation\/euclid\/line\/distance(from:)-4o41", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-4o41", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid5PlaneV10translated2byAcA6VectorV_tF" + "title" : "distance(from:)", + "usr" : "s:6Euclid4LineV8distance4fromSdAA6VectorV_tF" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Creates a new color by decoding from the given decoder.", "type" : "text" } ], @@ -30912,15 +31519,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "scaled" + "text" : "init" }, { "kind" : "text", @@ -30928,7 +31527,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "from" }, { "kind" : "text", @@ -30936,33 +31535,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/scaled(by:)-7e3o7", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-7e3o7", + "path" : "\/documentation\/euclid\/color\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(from:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid9PathPointV6scaled2byACSd_tF" + "title" : "init(from:)", + "usr" : "s:6Euclid5ColorV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Returns the perpendicular distance of the line from a specified point.", + "text" : "Encodes this transform into the given encoder.", "type" : "text" } ], @@ -30980,7 +31578,7 @@ }, { "kind" : "identifier", - "text" : "distance" + "text" : "encode" }, { "kind" : "text", @@ -30988,7 +31586,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "to" }, { "kind" : "text", @@ -30996,138 +31594,67 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ") -> " + "text" : ") " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/distance(from:)-4o41", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-4o41", + "path" : "\/documentation\/euclid\/transform\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/encode(to:)", "taskGroups" : [ ], - "title" : "distance(from:)", - "usr" : "s:6Euclid4LineV8distance4fromSdAA6VectorV_tF" + "title" : "encode(to:)", + "usr" : "s:6Euclid9TransformV6encode2toys7Encoder_p_tKF" }, { - "abstract" : [ - { - "text" : "A struct that represents an orientation or rotation in 3D space.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "struct" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "Rotation" - } - ], - "kind" : "org.swift.docc.kind.structure", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation", + "path" : "\/documentation\/euclid\/linesegment\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Transformable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init()", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-5w6mn", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-68leo", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(_:)-7j4ql", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(axis:angle:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(pitch:yaw:roll:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(roll:yaw:pitch:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(yaw:pitch:roll:)" - ], - "title" : "Creating Rotations" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/identity" - ], - "title" : "Default Quaternions" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw(_:)" - ], - "title" : "Creating Rotations Around an Axis" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/axis", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/angle", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/forward", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/right", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/up", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/isIdentity" - ], - "title" : "Rotation Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/slerp(_:_:)" - ], - "title" : "Interpolating Rotations" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/-(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-55zcf", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-5fe82", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-68kkw", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-7u9hf" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*=(_:_:)" ], "title" : "Operators" }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Equatable-Implementations" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-16elu", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-l48f", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-2v2ef", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-8v4ag", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)" ], - "title" : "Default Implementations" + "title" : "Instance Methods" } ], - "title" : "Rotation", - "usr" : "s:6Euclid8RotationV" + "title" : "Transformable Implementations" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -31145,7 +31672,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "scale" }, { "kind" : "text", @@ -31161,8 +31688,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -31171,18 +31698,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/rotate(by:)-3uymx", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-3uymx", + "path" : "\/documentation\/euclid\/bounds\/scale(by:)-7dhh3", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-7dhh3", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Computes the convex hull of a set of points.", "type" : "text" } ], @@ -31190,6 +31717,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -31200,15 +31735,23 @@ }, { "kind" : "identifier", - "text" : "with" + "text" : "convexHull" }, { "kind" : "text", - "text" : "(" + "text" : "<" + }, + { + "kind" : "genericParameter", + "text" : "T" + }, + { + "kind" : "text", + "text" : ">(" }, { "kind" : "externalParam", - "text" : "color" + "text" : "of" }, { "kind" : "text", @@ -31216,8 +31759,25 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VectorV7ElementRtzlFZ1TL_xmfp", + "text" : "T" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", @@ -31225,56 +31785,98 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/with(color:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/with(color:)", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-6176", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-6176", "taskGroups" : [ ], - "title" : "with(color:)", - "usr" : "s:6Euclid9PathPointV4with5colorAcA5ColorVSg_tF" + "title" : "convexHull(of:material:)", + "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VectorV7ElementRtzlFZ" }, { - "availableLanguages" : [ - "swift" - ], + "abstract" : [ + { + "text" : "Creates a polygon from an array of vertices.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?([" }, { - "kind" : "identifier", - "text" : "intersect" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" }, { "kind" : "text", - "text" : "(" + "text" : "], " + }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ", " + "text" : "?)" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/polygon\/init(_:material:)-9mns5", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-9mns5", + "taskGroups" : [ + + ], + "title" : "init(_:material:)", + "usr" : "s:6Euclid7PolygonV_8materialACSgSayAA6VertexVG_s11AnyHashableVSgtcfc" + }, + { + "abstract" : [ + { + "text" : "Create a mesh from STL data.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "?(" }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "stlData" }, { "kind" : "text", @@ -31282,36 +31884,45 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:10Foundation4DataV", + "text" : "Data" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materialLookup" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid4MeshV19STLMaterialProvidera", + "text" : "STLMaterialProvider" + }, + { + "kind" : "text", + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/intersect(_:iscancelled:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersect(_:isCancelled:)", + "path" : "\/documentation\/euclid\/mesh\/init(stldata:materiallookup:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)", "taskGroups" : [ ], - "title" : "intersect(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV9intersect_11isCancelledA2C_SbyXEtF" + "title" : "init(stlData:materialLookup:)", + "usr" : "s:6Euclid4MeshV7stlData14materialLookupACSg10Foundation0D0V_s11AnyHashableVSgAA5ColorVSgcSgtcfc" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -31329,7 +31940,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "scaled" }, { "kind" : "text", @@ -31345,28 +31956,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/rotate(by:)-3ed6z", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-3ed6z", + "path" : "\/documentation\/euclid\/vector\/scaled(by:)-350oy", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "scaled(by:)", + "usr" : "s:6Euclid6VectorV6scaled2byACSd_tF" }, { "abstract" : [ { - "text" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -31376,32 +31992,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "roll" + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "kind" : "identifier", + "text" : "transform" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "yaw" + "text" : "by" }, { "kind" : "text", @@ -31409,25 +32016,55 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : ", " + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(by:)", + "taskGroups" : [ + + ], + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid9TransformV" + }, + { + "abstract" : [ + { + "text" : "Creates a color from a CoreGraphics ", + "type" : "text" }, { - "kind" : "externalParam", - "text" : "pitch" + "code" : "CGColor", + "type" : "codeVoice" + }, + { + "text" : ".", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "c:@T@CGColorRef", + "text" : "CGColor" }, { "kind" : "text", @@ -31436,18 +32073,18 @@ ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(roll:yaw:pitch:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(roll:yaw:pitch:)", + "path" : "\/documentation\/euclid\/color\/init(_:)-25eby", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-25eby", "taskGroups" : [ ], - "title" : "init(roll:yaw:pitch:)", - "usr" : "s:6Euclid10QuaternionV4roll3yaw5pitchAcA5AngleV_A2Htcfc" + "title" : "init(_:)", + "usr" : "s:6Euclid5ColorVyACSo10CGColorRefacfc" }, { "abstract" : [ { - "text" : "Creates a curved path point at the specified X, Y and Z coordinates.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -31455,14 +32092,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -31473,29 +32102,19 @@ }, { "kind" : "identifier", - "text" : "curve" + "text" : "scaled" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", @@ -31504,71 +32123,74 @@ }, { "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "texcoord" - }, - { - "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/scaled(by:)-19ukh", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scaled(by:)-19ukh", + "taskGroups" : [ + + ], + "title" : "scaled(by:)", + "usr" : "s:6Euclid9TransformV6scaled2byACSd_tF" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : "?, " - }, + "text" : "Creates a quaternion from a rotation matrix.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "externalParam", - "text" : "color" + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/curve(_:_:_:texcoord:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:_:_:texcoord:color:)", + "path" : "\/documentation\/euclid\/quaternion\/init(_:)-7xa5o", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-7xa5o", "taskGroups" : [ ], - "title" : "curve(_:_:_:texcoord:color:)", - "usr" : "s:6Euclid9PathPointV5curve___8texcoord5colorACSd_S2dAA6VectorVSgAA5ColorVSgtFZ" + "title" : "init(_:)", + "usr" : "s:6Euclid10QuaternionVyAcA8RotationVcfc" }, { + "abstract" : [ + { + "text" : "Returns a new vector that represents the mininum of the components of the two vectors.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -31579,11 +32201,7 @@ }, { "kind" : "identifier", - "text" : ">" - }, - { - "kind" : "text", - "text" : " " + "text" : "min" }, { "kind" : "text", @@ -31591,7 +32209,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -31599,7 +32218,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -31607,19 +32227,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.function", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/_(_:_:)-9688a", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-9688a", + "path" : "\/documentation\/euclid\/min(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/min(_:_:)", "taskGroups" : [ ], - "title" : ">(_:_:)", - "usr" : "s:SLsE1goiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "min(_:_:)", + "usr" : "s:6Euclid3minyAA6VectorVAD_ADtF" }, { "availableLanguages" : [ @@ -31644,7 +32264,7 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "+" }, { "kind" : "text", @@ -31658,38 +32278,29 @@ "kind" : "typeIdentifier", "text" : "Self" }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, { "kind" : "text", "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "Self" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/!=(_:_:)", + "path" : "\/documentation\/euclid\/angle\/+(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4PathV" + "title" : "+(_:)", + "usr" : "s:s18AdditiveArithmeticPsE1popyxxFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "A zero-length vector.", + "text" : "Returns a new bounds inset by the specified amount.", "type" : "text" } ], @@ -31699,23 +32310,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "inset" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "zero" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -31723,24 +32334,41 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/zero", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero", + "path" : "\/documentation\/euclid\/bounds\/inset(by:)-4gk62", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-4gk62", "taskGroups" : [ ], - "title" : "zero", - "usr" : "s:6Euclid6VectorV4zeroACvpZ" + "title" : "inset(by:)", + "usr" : "s:6Euclid6BoundsV5inset2byACSd_tF" }, { "abstract" : [ { - "text" : "Creates a new vector by decoding from the given decoder.", + "text" : "Creates a ", + "type" : "text" + }, + { + "code" : "Quaternion", + "type" : "codeVoice" + }, + { + "text" : " from a simd quaternion.", "type" : "text" } ], @@ -31756,42 +32384,30 @@ "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "from" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "c:@SA@simd_quatf", + "text" : "simd_quatf" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ")" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(from:)", + "path" : "\/documentation\/euclid\/quaternion\/init(_:)-99vxt", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid6VectorV4fromACs7Decoder_p_tKcfc" + "title" : "init(_:)", + "usr" : "s:6Euclid10QuaternionVyACSo10simd_quatfacfc" }, { "abstract" : [ { - "text" : "Encodes this bounds into the given encoder.", + "text" : "Texture is shrink-wrapped.", "type" : "text" } ], @@ -31801,7 +32417,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "case" }, { "kind" : "text", @@ -31809,48 +32425,23 @@ }, { "kind" : "identifier", - "text" : "encode" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "to" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" - }, - { - "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : "shrink" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/encode(to:)", + "path" : "\/documentation\/euclid\/mesh\/wrapmode\/shrink", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/shrink", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid6BoundsV6encode2toys7Encoder_p_tKF" + "title" : "Mesh.WrapMode.shrink", + "usr" : "s:6Euclid4MeshV8WrapModeO6shrinkyA2EmF" }, { "abstract" : [ { - "text" : "Computes the trigonometric sine of an angle.", + "text" : "Creates a bounds from a collection of points.", "type" : "text" } ], @@ -31860,52 +32451,41 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "<" }, { - "kind" : "identifier", - "text" : "sin" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : "(" + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid6BoundsVyACxcSlRzAA6VectorV7ElementRtzlufc1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.function", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/sin(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/sin(_:)", + "path" : "\/documentation\/euclid\/bounds\/init(_:)-27jri", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-27jri", "taskGroups" : [ ], - "title" : "sin(_:)", - "usr" : "s:6Euclid3sinySdAA5AngleVF" + "title" : "init(_:)", + "usr" : "s:6Euclid6BoundsVyACxcSlRzAA6VectorV7ElementRtzlufc" }, { - "abstract" : [ - { - "text" : "Returns the componentwise difference between two vectors.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -31928,7 +32508,7 @@ }, { "kind" : "identifier", - "text" : "-" + "text" : "+" }, { "kind" : "text", @@ -31940,17 +32520,7 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", @@ -31958,24 +32528,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/-(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)", + "path" : "\/documentation\/euclid\/vector\/+(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:)", "taskGroups" : [ ], - "title" : "-(_:_:)", - "usr" : "s:6Euclid6VectorV1soiyA2C_ACtFZ" + "title" : "+(_:)", + "usr" : "s:s18AdditiveArithmeticPsE1popyxxFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the mesh.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -31993,7 +32562,7 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "translate" }, { "kind" : "text", @@ -32009,28 +32578,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transformed(by:)", + "path" : "\/documentation\/euclid\/transform\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/translate(by:)", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid4MeshV11transformed2byAcA9TransformV_tF" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9TransformV" }, { "abstract" : [ @@ -32094,7 +32658,7 @@ { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether the specified point lies on the line.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -32112,49 +32676,44 @@ }, { "kind" : "identifier", - "text" : "containsPoint" + "text" : "transform" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/containspoint(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/containsPoint(_:)", + "path" : "\/documentation\/euclid\/transformable\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transform(by:)", "taskGroups" : [ ], - "title" : "containsPoint(_:)", - "usr" : "s:6Euclid4LineV13containsPointySbAA6VectorVF" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF" }, { "abstract" : [ { - "text" : "Returns whether the leftmost line segment has the lower value.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "This provides a stable order when sorting collections of line segments.", + "text" : "Returns the difference between two quaternion rotations,.", "type" : "text" } ], @@ -32180,7 +32739,7 @@ }, { "kind" : "identifier", - "text" : "<" + "text" : "-" }, { "kind" : "text", @@ -32192,8 +32751,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -32201,8 +32760,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -32210,24 +32769,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/_(_:_:)-2si4j", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_(_:_:)-2si4j", + "path" : "\/documentation\/euclid\/quaternion\/-(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:_:)", "taskGroups" : [ ], - "title" : "<(_:_:)", - "usr" : "s:6Euclid11LineSegmentV1loiySbAC_ACtFZ" + "title" : "-(_:_:)", + "usr" : "s:6Euclid10QuaternionV1soiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "The center of the bounds. If the bounds is empty this will return the zero vector.", + "text" : "Encodes this color into the given encoder.", "type" : "text" } ], @@ -32237,7 +32796,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -32245,7 +32804,15 @@ }, { "kind" : "identifier", - "text" : "center" + "text" : "encode" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "to" }, { "kind" : "text", @@ -32253,64 +32820,110 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" + }, + { + "kind" : "text", + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/center", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/center", + "path" : "\/documentation\/euclid\/color\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/encode(to:)", "taskGroups" : [ ], - "title" : "center", - "usr" : "s:6Euclid6BoundsV6centerAA6VectorVvp" + "title" : "encode(to:)", + "usr" : "s:6Euclid5ColorV6encode2toys7Encoder_p_tKF" }, { + "abstract" : [ + { + "text" : "Transform has no effect.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "var" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "isIdentity" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "!=" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/isidentity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/isIdentity", + "taskGroups" : [ + + ], + "title" : "isIdentity", + "usr" : "s:6Euclid9TransformV10isIdentitySbvp" + }, + { + "abstract" : [ + { + "text" : "Returns a translated copy of the value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", "text" : " " }, + { + "kind" : "identifier", + "text" : "translated" + }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", @@ -32318,24 +32931,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/alignment\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/!=(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translated(by:)", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4PathV9AlignmentO" + "title" : "translated(by:)", + "usr" : "s:6Euclid4MeshV10translated2byAcA6VectorV_tF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the bounds is empty (has zero volume).", + "text" : "An arbitrary point on the line selected as the origin.", "type" : "text" } ], @@ -32345,7 +32976,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "let" }, { "kind" : "text", @@ -32353,7 +32984,7 @@ }, { "kind" : "identifier", - "text" : "isEmpty" + "text" : "origin" }, { "kind" : "text", @@ -32361,24 +32992,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/isempty", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/isEmpty", + "path" : "\/documentation\/euclid\/line\/origin", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/origin", "taskGroups" : [ ], - "title" : "isEmpty", - "usr" : "s:6Euclid6BoundsV7isEmptySbvp" + "title" : "origin", + "usr" : "s:6Euclid4LineV6originAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a new vertex by decoding from the given decoder.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -32388,7 +33019,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "rotate" }, { "kind" : "text", @@ -32396,7 +33035,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "by" }, { "kind" : "text", @@ -32404,32 +33043,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") " - }, - { - "kind" : "keyword", - "text" : "throws" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)", + "path" : "\/documentation\/euclid\/bounds\/rotate(by:)-15yni", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotate(by:)-15yni", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid6VertexV4fromACs7Decoder_p_tKcfc" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "The rotation or orientation component of the transform.", "type" : "text" } ], @@ -32439,7 +33074,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -32447,48 +33082,116 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "rotation" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/rotation", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/rotation", + "taskGroups" : [ + + ], + "title" : "rotation", + "usr" : "s:6Euclid9TransformV8rotationAA8RotationVvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/quaternion\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" + }, + { + "abstract" : [ + { + "text" : "Create a color from RGB values and optional alpha component", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/transformed(by:)-21ah6", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-21ah6", + "path" : "\/documentation\/euclid\/color\/init(_:_:_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:_:_:)", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF" + "title" : "init(_:_:_:_:)", + "usr" : "s:6Euclid5ColorVyACSd_S3dtcfc" }, { "abstract" : [ { - "text" : "Smooth vertex normals for corners with angles greater (more obtuse) than the specified threshold.", + "text" : "Returns the nearest point on the specified line to the vector (representing a position in space).", "type" : "text" } ], @@ -32506,7 +33209,7 @@ }, { "kind" : "identifier", - "text" : "smoothingNormals" + "text" : "project" }, { "kind" : "text", @@ -32514,7 +33217,7 @@ }, { "kind" : "externalParam", - "text" : "forAnglesGreaterThan" + "text" : "onto" }, { "kind" : "text", @@ -32522,8 +33225,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" }, { "kind" : "text", @@ -32531,24 +33234,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/smoothingnormals(foranglesgreaterthan:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/smoothingNormals(forAnglesGreaterThan:)", + "path" : "\/documentation\/euclid\/vector\/project(onto:)-rksk", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-rksk", "taskGroups" : [ ], - "title" : "smoothingNormals(forAnglesGreaterThan:)", - "usr" : "s:6Euclid4MeshV16smoothingNormals20forAnglesGreaterThanAcA5AngleV_tF" + "title" : "project(onto:)", + "usr" : "s:6Euclid6VectorV7project4ontoAcA4LineV_tF" }, { "abstract" : [ { - "text" : "Encodes this plane into the given encoder.", + "text" : "Creates a new vertex.", "type" : "text" } ], @@ -32558,51 +33261,58 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "encode" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "externalParam", - "text" : "to" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : "?, " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") " + "text" : "?, " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?)" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/encode(to:)", + "path" : "\/documentation\/euclid\/vertex\/init(_:_:_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:_:_:_:)", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid5PlaneV6encode2toys7Encoder_p_tKF" + "title" : "init(_:_:_:_:)", + "usr" : "s:6Euclid6VertexVyAcA6VectorV_AESgAfA5ColorVSgtcfc" }, { "availableLanguages" : [ @@ -32627,7 +33337,7 @@ }, { "kind" : "identifier", - "text" : "+" + "text" : "!=" }, { "kind" : "text", @@ -32643,27 +33353,36 @@ }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/+(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:)", + "path" : "\/documentation\/euclid\/pathpoint\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/!=(_:_:)", "taskGroups" : [ ], - "title" : "+(_:)", - "usr" : "s:s18AdditiveArithmeticPsE1popyxxFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "Divides the angle by a numeric denominator.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -32671,14 +33390,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -32689,57 +33400,49 @@ }, { "kind" : "identifier", - "text" : "\/=" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotated" }, { "kind" : "text", "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/\/=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/=(_:_:)", + "path" : "\/documentation\/euclid\/path\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)", "taskGroups" : [ ], - "title" : "\/=(_:_:)", - "usr" : "s:6Euclid5AngleV2deoiyyACz_SdtFZ" + "title" : "rotated(by:)", + "usr" : "s:6Euclid4PathV7rotated2byAcA8RotationV_tF" }, { "abstract" : [ { - "text" : "Combines two rotations to get the cumulative rotation.", + "text" : "Creates a rotationally symmetrical mesh by turning the specified path around the Y axis.", "type" : "text" } ], @@ -32765,11 +33468,7 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "lathe" }, { "kind" : "text", @@ -32777,112 +33476,84 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" }, { "kind" : "text", "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "externalParam", + "text" : "slices" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/*(_:_:)-55zcf", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*(_:_:)-55zcf", - "taskGroups" : [ - - ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid8RotationV1moiyA2C_ACtFZ" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, { - "text" : "Computes the trigonometric tangent of an angle.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "poleDetail" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "tan" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "kind" : "externalParam", + "text" : "addDetailForFlatPoles" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.function", - "language" : "swift", - "path" : "\/documentation\/euclid\/tan(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/tan(_:)", - "taskGroups" : [ - - ], - "title" : "tan(_:)", - "usr" : "s:6Euclid3tanySdAA5AngleVF" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + }, { - "text" : "The plane on which all vertices lie.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "var" + "kind" : "externalParam", + "text" : "faces" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "plane" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", + "text" : "Faces" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "wrapMode" }, { "kind" : "text", @@ -32890,58 +33561,45 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/plane", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/plane", - "taskGroups" : [ - - ], - "title" : "plane", - "usr" : "s:6Euclid7PolygonV5planeAA5PlaneVvp" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" + }, { - "text" : "Creates a color from an array of component values.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "init" + "kind" : "externalParam", + "text" : "material" }, { "kind" : "text", - "text" : "?([" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : "])" + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/init(_:)-53lhy", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-53lhy", + "path" : "\/documentation\/euclid\/mesh\/lathe(_:slices:poledetail:adddetailforflatpoles:faces:wrapmode:material:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid5ColorVyACSgSaySdGcfc" + "title" : "lathe(_:slices:poleDetail:addDetailForFlatPoles:faces:wrapMode:material:)", + "usr" : "s:6Euclid4MeshV5lathe_6slices10poleDetail03addF12ForFlatPoles5faces8wrapMode8materialAcA4PathV_S2iSbAC5FacesOAC04WrapM0Os11AnyHashableVSgtFZ" }, { "availableLanguages" : [ @@ -32949,22 +33607,39 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/Equatable-Implementations", + "path" : "\/documentation\/euclid\/polygon\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Transformable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/!=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*=(_:_:)" ], "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-7073s", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-8lp0l", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-2pycj", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-3en6y", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)" + ], + "title" : "Instance Methods" } ], - "title" : "Equatable Implementations" + "title" : "Transformable Implementations" }, { "abstract" : [ { - "text" : "Creates a rounded rectangle path.", + "text" : "Creates a line from an origin and direction.", "type" : "text" } ], @@ -32974,31 +33649,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "origin" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "roundedRectangle" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "width" + "text" : "direction" }, { "kind" : "text", @@ -33006,33 +33682,54 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " - }, + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/line\/init(origin:direction:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(origin:direction:)", + "taskGroups" : [ + + ], + "title" : "init(origin:direction:)", + "usr" : "s:6Euclid4LineV6origin9directionACSgAA6VectorV_AHtcfc" + }, + { + "abstract" : [ { - "kind" : "externalParam", - "text" : "height" + "text" : "Returns a scaled copy of the value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "identifier", + "text" : "scaled" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "radius" + "text" : "by" }, { "kind" : "text", @@ -33040,33 +33737,53 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "detail" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/scaled(by:)-29v7y", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y", + "taskGroups" : [ + + ], + "title" : "scaled(by:)", + "usr" : "s:6Euclid5PlaneV6scaled2byAcA6VectorV_tF" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "color" + "kind" : "identifier", + "text" : "magenta" }, { "kind" : "text", @@ -33076,34 +33793,19 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid5ColorV", "text" : "Color" - }, - { - "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/roundedrectangle(width:height:radius:detail:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/roundedRectangle(width:height:radius:detail:color:)", + "path" : "\/documentation\/euclid\/color\/magenta", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/magenta", "taskGroups" : [ ], - "title" : "roundedRectangle(width:height:radius:detail:color:)", - "usr" : "s:6Euclid4PathV16roundedRectangle5width6height6radius6detail5colorACSd_S2dSiAA5ColorVSgtFZ" + "title" : "magenta", + "usr" : "s:6Euclid5ColorV7magentaACvpZ" }, { - "abstract" : [ - { - "text" : "Computes the convex hull of a set of line segments.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -33126,74 +33828,55 @@ }, { "kind" : "identifier", - "text" : "convexHull" + "text" : "+=" }, { "kind" : "text", - "text" : "<" - }, - { - "kind" : "genericParameter", - "text" : "T" + "text" : " " }, { "kind" : "text", - "text" : ">(" + "text" : "(" }, { - "kind" : "externalParam", - "text" : "of" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA11LineSegmentV7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "text" : "Self" }, { "kind" : "text", "text" : ", " }, - { - "kind" : "externalParam", - "text" : "material" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "text" : "Self" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-91swk", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-91swk", + "path" : "\/documentation\/euclid\/angle\/+=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+=(_:_:)", "taskGroups" : [ ], - "title" : "convexHull(of:material:)", - "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA11LineSegmentV7ElementRtzlFZ" + "title" : "+=(_:_:)", + "usr" : "s:s18AdditiveArithmeticPsE2peoiyyxz_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ { - "text" : "Adds the quaternion rotation on the right to the one on the left.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -33219,7 +33902,7 @@ }, { "kind" : "identifier", - "text" : "+=" + "text" : "*=" }, { "kind" : "text", @@ -33239,8 +33922,7 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "text" : "Self" }, { "kind" : "text", @@ -33248,8 +33930,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -33258,18 +33940,18 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/+=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+=(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*=(_:_:)", "taskGroups" : [ ], - "title" : "+=(_:_:)", - "usr" : "s:6Euclid10QuaternionV2peoiyyACz_ACtFZ" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Creates a polygon from a set of vertex positions.", + "text" : "Angle representing a half-rotation.", "type" : "text" } ], @@ -33279,32 +33961,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "?<" - }, - { - "kind" : "genericParameter", - "text" : "T" + "text" : "static" }, { "kind" : "text", - "text" : ">(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV_8materialACSgx_s11AnyHashableVSgtcSTRzAA6VectorV7ElementRtzlufc1TL_xmfp", - "text" : "T" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "identifier", + "text" : "pi" }, { "kind" : "text", @@ -33312,28 +33985,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", - "text" : "Material" - }, - { - "kind" : "text", - "text" : "?)" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/init(_:material:)-8gsiw", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-8gsiw", + "path" : "\/documentation\/euclid\/angle\/pi", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/pi", "taskGroups" : [ ], - "title" : "init(_:material:)", - "usr" : "s:6Euclid7PolygonV_8materialACSgx_s11AnyHashableVSgtcSTRzAA6VectorV7ElementRtzlufc" + "title" : "pi", + "usr" : "s:6Euclid5AngleV2piACvpZ" }, { "abstract" : [ { - "text" : "Creates a rotation from Euler angles applied in pitch\/yaw\/roll order.", + "text" : "A Boolean indicating whether the point is curved or sharp.", "type" : "text" } ], @@ -33343,49 +34012,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "pitch" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "yaw" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "var" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "roll" + "kind" : "identifier", + "text" : "isCurved" }, { "kind" : "text", @@ -33393,28 +34028,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/init(pitch:yaw:roll:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(pitch:yaw:roll:)", + "path" : "\/documentation\/euclid\/pathpoint\/iscurved", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/isCurved", "taskGroups" : [ ], - "title" : "init(pitch:yaw:roll:)", - "usr" : "s:6Euclid8RotationV5pitch3yaw4rollAcA5AngleV_A2Htcfc" + "title" : "isCurved", + "usr" : "s:6Euclid9PathPointV8isCurvedSbvp" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Closes the path by joining last point to first.", "type" : "text" } ], @@ -33424,47 +34055,40 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "points" + "kind" : "identifier", + "text" : "closed" }, { "kind" : "text", - "text" : ": [" + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "])" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(points:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(points:)", + "path" : "\/documentation\/euclid\/path\/closed()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/closed()", "taskGroups" : [ ], - "title" : "init(points:)", - "usr" : "s:6Euclid6BoundsV6pointsACSayAA6VectorVG_tcfc" + "title" : "closed()", + "usr" : "s:6Euclid4PathV6closedACyF" }, { "abstract" : [ { - "text" : "Returns the flip-side of the plane.", + "text" : "Deprecated.", "type" : "text" } ], @@ -33482,32 +34106,52 @@ }, { "kind" : "identifier", - "text" : "inverted" + "text" : "with" }, { "kind" : "text", - "text" : "() -> " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/inverted()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/inverted()", + "path" : "\/documentation\/euclid\/pathpoint\/with(color:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/with(color:)", "taskGroups" : [ ], - "title" : "inverted()", - "usr" : "s:6Euclid5PlaneV8invertedACyF" + "title" : "with(color:)", + "usr" : "s:6Euclid9PathPointV4with5colorAcA5ColorVSg_tF" }, { "abstract" : [ { - "text" : "Multiplies the quaternion rotation on the left by the one on the right.", + "text" : "The angle in degrees.", "type" : "text" } ], @@ -33517,73 +34161,135 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "var" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "degrees" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "*=" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/degrees", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees", + "taskGroups" : [ + + ], + "title" : "degrees", + "usr" : "s:6Euclid5AngleV7degreesSdvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Transformable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-3uymx", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-7y2vv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-1h2f7", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scale(by:)-9pjki", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-90bab", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-94kks", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translated(by:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Transformable Implementations" + }, + { + "abstract" : [ + { + "text" : "Returns a scaled copy of the value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", "text" : " " }, + { + "kind" : "identifier", + "text" : "scaled" + }, { "kind" : "text", "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/*=(_:_:)-5ic2j", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-5ic2j", + "path" : "\/documentation\/euclid\/linesegment\/scaled(by:)-2lm8c", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid10QuaternionV2meoiyyACz_ACtFZ" + "title" : "scaled(by:)", + "usr" : "s:6Euclid11LineSegmentV6scaled2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -33591,14 +34297,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -33609,52 +34307,44 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*(_:_:)", + "path" : "\/documentation\/euclid\/pathpoint\/rotate(by:)-r7j4", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/rotate(by:)-r7j4", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "The identity rotation (i.e. no rotation).", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -33664,23 +34354,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "identifier", + "text" : "transformed" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "identity" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -33688,24 +34378,96 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/identity", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/identity", + "path" : "\/documentation\/euclid\/transformable\/transformed(by:)-9m686", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/transformed(by:)-9m686", "taskGroups" : [ ], - "title" : "identity", - "usr" : "s:6Euclid8RotationV8identityACvpZ" + "title" : "transformed(by:)", + "usr" : "s:6Euclid13TransformableP11transformed2byxAA9TransformV_tF" }, { "abstract" : [ { - "text" : "Creates a path from an array of path points.", + "text" : "Material used by a given polygon.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This can be any type that conforms to ", + "type" : "text" + }, + { + "code" : "Hashable", + "type" : "codeVoice" + }, + { + "text" : ", but encoding\/decoding is only supported", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "for the following types: ", + "type" : "text" + }, + { + "code" : "Color", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "String", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Int", + "type" : "codeVoice" + }, + { + "text" : ", ", + "type" : "text" + }, + { + "code" : "Data", + "type" : "codeVoice" + }, + { + "text" : " or any ", + "type" : "text" + }, + { + "code" : "NSSecureCodable", + "type" : "codeVoice" + }, + { + "text" : " type.", "type" : "text" } ], @@ -33715,33 +34477,34 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "typealias" }, { "kind" : "text", - "text" : "([" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "text" : " " }, { - "kind" : "text", - "text" : "])" + "kind" : "identifier", + "text" : "Material" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeAlias", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(_:)-4jhkw", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:)-4jhkw", + "path" : "\/documentation\/euclid\/polygon\/material-swift.typealias", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid4PathVyACSayAA0B5PointVGcfc" + "title" : "Polygon.Material", + "usr" : "s:6Euclid7PolygonV8Materiala" }, { + "abstract" : [ + { + "text" : "Computes a set of edges where the mesh intersects a plane.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -33756,7 +34519,7 @@ }, { "kind" : "identifier", - "text" : "hash" + "text" : "edges" }, { "kind" : "text", @@ -33764,53 +34527,79 @@ }, { "kind" : "externalParam", - "text" : "into" + "text" : "intersecting" }, { "kind" : "text", "text" : ": " }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", - "text" : " " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s6HasherV", - "text" : "Hasher" + "preciseIdentifier" : "s:Sh", + "text" : "Set" }, { "kind" : "text", - "text" : ")" + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" + }, + { + "kind" : "text", + "text" : ">" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/hash(into:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/hash(into:)", + "path" : "\/documentation\/euclid\/mesh\/edges(intersecting:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/edges(intersecting:)", "taskGroups" : [ ], - "title" : "hash(into:)", - "usr" : "s:6Euclid10QuaternionV4hash4intoys6HasherVz_tF" + "title" : "edges(intersecting:)", + "usr" : "s:6Euclid4MeshV5edges12intersectingShyAA11LineSegmentVGAA5PlaneV_tF" }, { "availableLanguages" : [ "swift" ], - "fragments" : [ + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Encodable-Implementations", + "taskGroups" : [ { - "kind" : "keyword", - "text" : "static" - }, + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : " " - }, + "text" : "Rotate the value in place.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", "text" : "func" @@ -33821,52 +34610,44 @@ }, { "kind" : "identifier", - "text" : "<=" - }, - { - "kind" : "text", - "text" : " " + "text" : "rotate" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/_=(_:_:)-8q2nt", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-8q2nt", + "path" : "\/documentation\/euclid\/mesh\/rotate(by:)-7y2vv", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-7y2vv", "taskGroups" : [ ], - "title" : "<=(_:_:)", - "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Creates a rotation around the Y axis.", + "text" : "The distinct (disconnected) submeshes that make up the mesh.", "type" : "text" } ], @@ -33876,57 +34657,172 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "var" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "submeshes" }, { "kind" : "text", - "text" : " " + "text" : ": [" }, { - "kind" : "identifier", - "text" : "yaw" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : "(" - }, + "text" : "]" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/submeshes", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/submeshes", + "taskGroups" : [ + + ], + "title" : "submeshes", + "usr" : "s:6Euclid4MeshV9submeshesSayACGvp" + }, + { + "abstract" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "An orientation or rotation in 3D space.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" }, { "kind" : "text", - "text" : ") -> " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "identifier", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.structure", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/yaw(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw(_:)", + "path" : "\/documentation\/euclid\/quaternion", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-27eol", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-7xa5o", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-b3v3", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-fyhx", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:_:_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(axis:angle:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(roll:yaw:pitch:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw(_:)" + ], + "title" : "Creating Quaternions" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/zero", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/identity" + ], + "title" : "Default Quaternions" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/pitch", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/roll", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/yaw", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/axis", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/angle", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isIdentity" + ], + "title" : "Quaternion Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/dot(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/normalized()" + ], + "title" : "Computing Quaternions" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/slerp(_:_:)" + ], + "title" : "Interpolating Quaternions" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-2drke", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*(_:_:)-305tn", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-5ic2j", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-lsgo" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/\/=(_:_:)" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-99vxt" + ], + "title" : "Initializers" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/components", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/isNormalized", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/length", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/lengthSquared", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/w", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/x", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/y", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/z" + ], + "title" : "Instance Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Hashable-Implementations" + ], + "title" : "Default Implementations" + } ], - "title" : "yaw(_:)", - "usr" : "s:6Euclid8RotationV3yawyAcA5AngleVFZ" + "title" : "Quaternion", + "usr" : "s:6Euclid10QuaternionV" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Returns the intersection point between the specified line segment and this one.", "type" : "text" } ], @@ -33944,7 +34840,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "intersection" }, { "kind" : "text", @@ -33952,7 +34848,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "with" }, { "kind" : "text", @@ -33960,8 +34856,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" }, { "kind" : "text", @@ -33969,24 +34865,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : "?" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/scaled(by:)-90bab", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-90bab", + "path" : "\/documentation\/euclid\/linesegment\/intersection(with:)-2u7vo", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/intersection(with:)-2u7vo", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid4MeshV6scaled2byAcA6VectorV_tF" + "title" : "intersection(with:)", + "usr" : "s:6Euclid11LineSegmentV12intersection4withAA6VectorVSgAC_tF" }, { "abstract" : [ { - "text" : "Align extruded cross-sections to the tangent of the path curve.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -33996,7 +34896,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "func" }, { "kind" : "text", @@ -34004,23 +34904,44 @@ }, { "kind" : "identifier", - "text" : "tangent" + "text" : "rotate" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/alignment\/tangent", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/tangent", + "path" : "\/documentation\/euclid\/polygon\/rotate(by:)-8lp0l", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-8lp0l", "taskGroups" : [ ], - "title" : "Path.Alignment.tangent", - "usr" : "s:6Euclid4PathV9AlignmentO7tangentyA2EmF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid7PolygonV" }, { "abstract" : [ { - "text" : "The bounds of all the path’s points.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -34030,7 +34951,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -34038,7 +34959,15 @@ }, { "kind" : "identifier", - "text" : "bounds" + "text" : "rotate" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -34046,33 +34975,35 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/bounds", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds", + "path" : "\/documentation\/euclid\/plane\/rotate(by:)-1azi6", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-1azi6", "taskGroups" : [ ], - "title" : "bounds", - "usr" : "s:6Euclid4PathV6boundsAA6BoundsVvp" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid5PlaneV" }, { + "abstract" : [ + { + "text" : "Encodes this path point into the given encoder.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -34083,64 +35014,99 @@ }, { "kind" : "identifier", - "text" : "..<" + "text" : "encode" }, { "kind" : "text", - "text" : " " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "to" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ", " + "text" : ") " }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "throws" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/encode(to:)", + "taskGroups" : [ + + ], + "title" : "encode(to:)", + "usr" : "s:6Euclid9PathPointV6encode2toys7Encoder_p_tKF" + }, + { + "abstract" : [ + { + "text" : "Creates a new mesh by decoding from the given decoder.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ") -> " + "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sn", - "text" : "Range" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ">" + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/'.._(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:_:)", + "path" : "\/documentation\/euclid\/mesh\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(from:)", "taskGroups" : [ ], - "title" : "..<(_:_:)", - "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "init(from:)", + "usr" : "s:6Euclid4MeshV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Returns a copy of the mesh with the specified old material replaced by a new one.", + "text" : "Returns a transformed copy of the mesh.", "type" : "text" } ], @@ -34158,24 +35124,15 @@ }, { "kind" : "identifier", - "text" : "replacing" + "text" : "transformed" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" - }, - { - "kind" : "text", - "text" : "?, " - }, { "kind" : "externalParam", - "text" : "with" + "text" : "by" }, { "kind" : "text", @@ -34183,12 +35140,12 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", @@ -34198,18 +35155,18 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/replacing(_:with:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/replacing(_:with:)", + "path" : "\/documentation\/euclid\/mesh\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transformed(by:)", "taskGroups" : [ ], - "title" : "replacing(_:with:)", - "usr" : "s:6Euclid4MeshV9replacing_4withACs11AnyHashableVSg_AHtF" + "title" : "transformed(by:)", + "usr" : "s:6Euclid4MeshV11transformed2byAcA9TransformV_tF" }, { "abstract" : [ { - "text" : "Returns the difference between two quaternion rotations,.", + "text" : "Flips the polygon along its plane and reverses the order and surface normals of the vertices.", "type" : "text" } ], @@ -34217,14 +35174,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -34235,54 +35184,32 @@ }, { "kind" : "identifier", - "text" : "-" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "text" : "inverted" }, { "kind" : "text", - "text" : ") -> " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/-(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-(_:_:)", + "path" : "\/documentation\/euclid\/polygon\/inverted()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/inverted()", "taskGroups" : [ ], - "title" : "-(_:_:)", - "usr" : "s:6Euclid10QuaternionV1soiyA2C_ACtFZ" + "title" : "inverted()", + "usr" : "s:6Euclid7PolygonV8invertedACyF" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "Creates an angle from a degrees value.", "type" : "text" } ], @@ -34292,32 +35219,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "rotated" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "degrees" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -34325,24 +35252,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)", + "path" : "\/documentation\/euclid\/angle\/degrees(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees(_:)", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid7PolygonV7rotated2byAcA8RotationV_tF" + "title" : "degrees(_:)", + "usr" : "s:6Euclid5AngleV7degreesyACSdFZ" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Returns a rotation divided by the specified value.", "type" : "text" } ], @@ -34368,7 +35295,7 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "\/" }, { "kind" : "text", @@ -34379,45 +35306,61 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/*=(_:_:)-3ur4e", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e", + "path" : "\/documentation\/euclid\/rotation\/\/(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/\/(_:_:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "\/(_:_:)", + "usr" : "s:6Euclid8RotationV1doiyA2C_SdtFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Creates a new vertex from a position with default values for normal, texcoord and color.", "type" : "text" } ], @@ -34427,28 +35370,12 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "scale" + "text" : "init" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", @@ -34459,20 +35386,20 @@ "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/scale(by:)-2v2ef", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-2v2ef", + "path" : "\/documentation\/euclid\/vertex\/init(_:)-5517j", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-5517j", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "init(_:)", + "usr" : "s:6Euclid6VertexVyAcA6VectorVcfc" }, { "abstract" : [ { - "text" : "The texture wrapping mode to use when generating a mesh.", + "text" : "Returns the angle divided by a numeric denominator.", "type" : "text" } ], @@ -34482,7 +35409,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "enum" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", @@ -34490,176 +35425,175 @@ }, { "kind" : "identifier", - "text" : "WrapMode" + "text" : "\/" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.enumeration", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode", + "path" : "\/documentation\/euclid\/angle\/\/(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/\/(_:_:)", + "taskGroups" : [ + + ], + "title" : "\/(_:_:)", + "usr" : "s:6Euclid5AngleV1doiyA2C_SdtFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vertex\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Transformable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/default", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/none", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/shrink", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/tube" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*=(_:_:)" ], - "title" : "Enumeration Cases" + "title" : "Operators" }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/Equatable-Implementations" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-1umln", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-622p8", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-1hyw0", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scale(by:)-6c0wl", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)" ], - "title" : "Default Implementations" + "title" : "Instance Methods" } ], - "title" : "Mesh.WrapMode", - "usr" : "s:6Euclid4MeshV8WrapModeO" + "title" : "Transformable Implementations" }, { - "abstract" : [ + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Decodable-Implementations", + "taskGroups" : [ { - "text" : "A distance or position in 3D space.", - "type" : "text" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(from:)" + ], + "title" : "Initializers" } ], + "title" : "Decodable Implementations" + }, + { "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "struct" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "Vector" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-228p6", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-4eop9", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5n3j", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-63ct7", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-6nlm", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-8b34m", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-nkyk" - ], - "title" : "Creating Vectors" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/one", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitX", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitY", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitZ" - ], - "title" : "Default Vectors" + "kind" : "keyword", + "text" : "func" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/x", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/y", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/z", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/length", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lengthSquared", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isZero", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isOne" - ], - "title" : "Vector Properties" + "kind" : "text", + "text" : " " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/dot(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/cross(_:)" - ], - "title" : "Computing Vectors" + "kind" : "identifier", + "text" : "!=" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lerp(_:_:)" - ], - "title" : "Interpolating Vectors" + "kind" : "text", + "text" : " " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/normalized()", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)" - ], - "title" : "Transforming Vectors" + "kind" : "text", + "text" : "(" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-29paf", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-9sfg1", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-3eglz", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-5p7ko", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-817o2", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-rksk" - ], - "title" : "Comparing Vectors" + "kind" : "typeIdentifier", + "text" : "Self" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-48gl1", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-5mcy5", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e" - ], - "title" : "Operators" + "kind" : "text", + "text" : ", " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-9l46a", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/=(_:_:)" - ], - "title" : "Operators" + "kind" : "typeIdentifier", + "text" : "Self" }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isNormalized" - ], - "title" : "Instance Properties" + "kind" : "text", + "text" : ") -> " }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/AdditiveArithmetic-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Comparable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Transformable-Implementations" - ], - "title" : "Default Implementations" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "title" : "Vector", - "usr" : "s:6Euclid6VectorV" + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/!=(_:_:)", + "taskGroups" : [ + + ], + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid8RotationV" }, { + "abstract" : [ + { + "text" : "Creates an angle representing the trigonometric arc sine of the value you provide.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -34674,7 +35608,7 @@ }, { "kind" : "keyword", - "text" : "let" + "text" : "func" }, { "kind" : "text", @@ -34682,32 +35616,41 @@ }, { "kind" : "identifier", - "text" : "black" + "text" : "asin" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/black", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/black", + "path" : "\/documentation\/euclid\/angle\/asin(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/asin(_:)", "taskGroups" : [ ], - "title" : "black", - "usr" : "s:6Euclid5ColorV5blackACvpZ" + "title" : "asin(_:)", + "usr" : "s:6Euclid5AngleV4asinyACSdFZ" }, { "abstract" : [ { - "text" : "Transform the value in place.", + "text" : "Split the polygon along a plane.", "type" : "text" } ], @@ -34717,72 +35660,78 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "func" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "split" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "*=" + "kind" : "externalParam", + "text" : "along" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "text", - "text" : "(" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "text", + "text" : ") -> (front" }, { "kind" : "text", - "text" : " " + "text" : ": [" }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ", " + "text" : "], back" + }, + { + "kind" : "text", + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ")" + "text" : "])" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)", + "path" : "\/documentation\/euclid\/polygon\/split(along:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/split(along:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "split(along:)", + "usr" : "s:6Euclid7PolygonV5split5alongSayACG5front_AF4backtAA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -34800,7 +35749,7 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "rotate" }, { "kind" : "text", @@ -34816,8 +35765,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -34826,22 +35775,22 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scale(by:)-55r4j", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-55r4j", + "path" : "\/documentation\/euclid\/vertex\/rotate(by:)-1umln", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-1umln", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Creates a vector from a CoreGraphics ", + "text" : "Creates a mesh from a RealityKit ", "type" : "text" }, { - "code" : "CGPoint", + "code" : "MeshResource", "type" : "codeVoice" }, { @@ -34863,28 +35812,70 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@S@CGPoint", - "text" : "CGPoint" + "preciseIdentifier" : "s:17RealityFoundation12MeshResourceC", + "text" : "MeshResource" }, { "kind" : "text", - "text" : ")" + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "materials" + }, + { + "kind" : "text", + "text" : ": [" + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" + }, + { + "kind" : "text", + "text" : "." + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?])" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/init(_:)-4eop9", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-4eop9", + "path" : "\/documentation\/euclid\/mesh\/init(_:materials:)-4k8gs", + "platforms" : [ + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "15.0", + "name" : "iOS", + "unavailable" : false + }, + { + "beta" : false, + "deprecated" : false, + "introducedAt" : "12.0", + "name" : "macOS", + "unavailable" : false + } + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VectorVyACSo7CGPointVcfc" + "title" : "init(_:materials:)", + "usr" : "s:6Euclid4MeshV_9materialsAC17RealityFoundation0B8ResourceC_Says11AnyHashableVSgGtcfc" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Returns a Boolean value that indicates if the specified point is inside the mesh.", "type" : "text" } ], @@ -34902,20 +35893,12 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "containsPoint" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", @@ -34927,24 +35910,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/scaled(by:)-4wtbg", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg", + "path" : "\/documentation\/euclid\/mesh\/containspoint(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/containsPoint(_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid9PathPointV6scaled2byAcA6VectorV_tF" + "title" : "containsPoint(_:)", + "usr" : "s:6Euclid4MeshV13containsPointySbAA6VectorVF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "The length of the line segment.", + "text" : "Creates a size\/scale vector from an array of two coordinates.", "type" : "text" } ], @@ -34954,40 +35955,44 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "length" + "kind" : "externalParam", + "text" : "size" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:Sd", "text" : "Double" + }, + { + "kind" : "text", + "text" : "])" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/length", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/length", + "path" : "\/documentation\/euclid\/vector\/init(size:)-8b34m", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-8b34m", "taskGroups" : [ ], - "title" : "length", - "usr" : "s:6Euclid11LineSegmentV6lengthSdvp" + "title" : "init(size:)", + "usr" : "s:6Euclid6VectorV4sizeACSaySdG_tcfc" }, { "abstract" : [ { - "text" : "Return Wavefront OBJ string data for the mesh.", + "text" : "Adds the quaternion rotation on the right to the one on the left.", "type" : "text" } ], @@ -34995,6 +36000,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -35005,32 +36018,75 @@ }, { "kind" : "identifier", - "text" : "objString" + "text" : "+=" }, { "kind" : "text", - "text" : "() -> " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "keyword", + "text" : "inout" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SS", - "text" : "String" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/objstring()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/objString()", + "path" : "\/documentation\/euclid\/quaternion\/+=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+=(_:_:)", "taskGroups" : [ ], - "title" : "objString()", - "usr" : "s:6Euclid4MeshV9objStringSSyF" + "title" : "+=(_:_:)", + "usr" : "s:6Euclid10QuaternionV2peoiyyACz_ACtFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/transform\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/encode(to:)" + ], + "title" : "Instance Methods" + } + ], + "title" : "Encodable Implementations" }, { "abstract" : [ { - "text" : "Encodes this line into the given encoder.", + "text" : "Encodes this rotation into the given encoder.", "type" : "text" } ], @@ -35076,23 +36132,137 @@ "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/encode(to:)", + "taskGroups" : [ + + ], + "title" : "encode(to:)", + "usr" : "s:6Euclid8RotationV6encode2toys7Encoder_p_tKF" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "..<" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sn", + "text" : "Range" + }, + { + "kind" : "text", + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" + } + ], + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/'.._(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:_:)", + "taskGroups" : [ + + ], + "title" : "..<(_:_:)", + "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + }, + { + "abstract" : [ + { + "text" : "Indicates whether the path is a closed path.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "let" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "isClosed" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/encode(to:)", + "path" : "\/documentation\/euclid\/path\/isclosed", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/isClosed", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid4LineV6encode2toys7Encoder_p_tKF" + "title" : "isClosed", + "usr" : "s:6Euclid4PathV8isClosedSbvp" }, { - "abstract" : [ - { - "text" : "Creates a mesh from a SceneKit node, with optional material mapping.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -35103,20 +36273,11 @@ }, { "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)SCNNode", - "text" : "SCNNode" - }, - { - "kind" : "text", - "text" : ", " + "text" : "?(" }, { "kind" : "externalParam", - "text" : "ignoringTransforms" + "text" : "scnGeometry" }, { "kind" : "text", @@ -35124,8 +36285,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "c:objc(cs)SCNGeometry", + "text" : "SCNGeometry" }, { "kind" : "text", @@ -35151,18 +36312,21 @@ ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(_:ignoringtransforms:materiallookup:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:ignoringTransforms:materialLookup:)", + "path" : "\/documentation\/euclid\/mesh\/init(scngeometry:materiallookup:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)", "taskGroups" : [ ], - "title" : "init(_:ignoringTransforms:materialLookup:)", - "usr" : "s:6Euclid4MeshV_18ignoringTransforms14materialLookupACSo7SCNNodeC_Sbs11AnyHashableVSgSo11SCNMaterialCcSgtcfc" + "title" : "init(scnGeometry:materialLookup:)", + "usr" : "s:6Euclid4MeshV11scnGeometry14materialLookupACSgSo11SCNGeometryC_s11AnyHashableVSgSo11SCNMaterialCcSgtcfc" }, { "abstract" : [ { - "text" : "Returns the angle between this vector and another.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -35170,6 +36334,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -35180,24 +36352,28 @@ }, { "kind" : "identifier", - "text" : "angle" + "text" : "*" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "with" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -35205,24 +36381,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/angle(with:)-29paf", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-29paf", + "path" : "\/documentation\/euclid\/plane\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*(_:_:)", "taskGroups" : [ ], - "title" : "angle(with:)", - "usr" : "s:6Euclid6VectorV5angle4withAA5AngleVAC_tF" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Subtracts the quaternion rotation on the right from the one on the left.", + "text" : "The perpendicular distance from the world origin to the plane.", "type" : "text" } ], @@ -35232,76 +36407,92 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "let" }, { "kind" : "text", "text" : " " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "identifier", + "text" : "w" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "-=" - }, + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/w", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/w", + "taskGroups" : [ + + ], + "title" : "w", + "usr" : "s:6Euclid5PlaneV1wSdvp" + }, + { + "abstract" : [ { - "kind" : "text", - "text" : " " + "text" : "Translate the value in place.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "identifier", + "text" : "translate" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/-=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-=(_:_:)", + "path" : "\/documentation\/euclid\/linesegment\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translate(by:)", "taskGroups" : [ ], - "title" : "-=(_:_:)", - "usr" : "s:6Euclid10QuaternionV2seoiyyACz_ACtFZ" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { - "abstract" : [ - { - "text" : "Transform the value in place.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -35324,7 +36515,7 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "..." }, { "kind" : "text", @@ -35335,45 +36526,45 @@ "text" : "(" }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : " " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s16PartialRangeFromV", + "text" : "PartialRangeFrom" }, { "kind" : "text", - "text" : ", " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "text" : "Self" }, { "kind" : "text", - "text" : ")" + "text" : ">" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*=(_:_:)", + "path" : "\/documentation\/euclid\/plane\/'...(_:)-4yucl", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:)-4yucl", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "Return a copy of the mesh without texture coordinates.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -35391,32 +36582,44 @@ }, { "kind" : "identifier", - "text" : "withoutTexcoords" + "text" : "rotate" }, { "kind" : "text", - "text" : "() -> " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/withouttexcoords()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withoutTexcoords()", + "path" : "\/documentation\/euclid\/vector\/rotate(by:)-hj8h", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-hj8h", "taskGroups" : [ ], - "title" : "withoutTexcoords()", - "usr" : "s:6Euclid4MeshV16withoutTexcoordsACyF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA10QuaternionV_tF::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "The angle of rotation.", + "text" : "A Boolean value that indicates whether the bounds is empty (has zero volume).", "type" : "text" } ], @@ -35434,7 +36637,7 @@ }, { "kind" : "identifier", - "text" : "angle" + "text" : "isEmpty" }, { "kind" : "text", @@ -35442,21 +36645,35 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/angle", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/angle", + "path" : "\/documentation\/euclid\/bounds\/isempty", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/isEmpty", "taskGroups" : [ ], - "title" : "angle", - "usr" : "s:6Euclid10QuaternionV5angleAA5AngleVvp" + "title" : "isEmpty", + "usr" : "s:6Euclid6BoundsV7isEmptySbvp" }, { + "abstract" : [ + { + "text" : "Returns whether the leftmost vector has the lower value.", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "This provides a stable order when sorting collections of vectors.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -35479,7 +36696,7 @@ }, { "kind" : "identifier", - "text" : "..." + "text" : "<" }, { "kind" : "text", @@ -35491,96 +36708,62 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s19PartialRangeThroughV", - "text" : "PartialRangeThrough" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "<" + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/'...(_:)-732z3", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:)-732z3", + "path" : "\/documentation\/euclid\/vector\/_(_:_:)-9obdn", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_(_:_:)-9obdn", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "title" : "<(_:_:)", + "usr" : "s:6Euclid6VectorV1loiySbAC_ACtFZ" }, { - "abstract" : [ - { - "text" : "Loads a mesh from a file using any format supported by SceneKit, with optional material mapping.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "url" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:10Foundation3URLV", - "text" : "URL" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "ignoringTransforms" + "text" : "static" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "materialLookup" + "kind" : "identifier", + "text" : "blue" }, { "kind" : "text", @@ -35588,32 +36771,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV16MaterialProvidera", - "text" : "MaterialProvider" - }, - { - "kind" : "text", - "text" : "?) " - }, - { - "kind" : "keyword", - "text" : "throws" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(url:ignoringtransforms:materiallookup:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(url:ignoringTransforms:materialLookup:)", + "path" : "\/documentation\/euclid\/color\/blue", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/blue", "taskGroups" : [ ], - "title" : "init(url:ignoringTransforms:materialLookup:)", - "usr" : "s:6Euclid4MeshV3url18ignoringTransforms14materialLookupAC10Foundation3URLV_Sbs11AnyHashableVSgSo11SCNMaterialCcSgtKcfc" + "title" : "blue", + "usr" : "s:6Euclid5ColorV4blueACvpZ" }, { "abstract" : [ { - "text" : "Creates a quaternion from raw components.", + "text" : "Multiplies the components of the quaternion by the specified value.", "type" : "text" } ], @@ -35623,11 +36798,48 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "?([" + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "*=" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "keyword", + "text" : "inout" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" + }, + { + "kind" : "text", + "text" : ", " }, { "kind" : "typeIdentifier", @@ -35636,23 +36848,23 @@ }, { "kind" : "text", - "text" : "])" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(_:)-fyhx", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-fyhx", + "path" : "\/documentation\/euclid\/quaternion\/*=(_:_:)-lsgo", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/*=(_:_:)-lsgo", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid10QuaternionVyACSgSaySdGcfc" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid10QuaternionV2meoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "A closure that maps a Euclid material to an STL facet color.", + "text" : "Generate front faces.", "type" : "text" } ], @@ -35662,7 +36874,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "typealias" + "text" : "case" }, { "kind" : "text", @@ -35670,23 +36882,23 @@ }, { "kind" : "identifier", - "text" : "STLColorProvider" + "text" : "front" } ], - "kind" : "org.swift.docc.kind.typeAlias", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/stlcolorprovider", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider", + "path" : "\/documentation\/euclid\/mesh\/faces\/front", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/front", "taskGroups" : [ ], - "title" : "Mesh.STLColorProvider", - "usr" : "s:6Euclid4MeshV16STLColorProvidera" + "title" : "Mesh.Faces.front", + "usr" : "s:6Euclid4MeshV5FacesO5frontyA2EmF" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the polygon includes texture coordinates.", + "text" : "Scale the value in place.", "type" : "text" } ], @@ -35696,7 +36908,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -35704,7 +36916,15 @@ }, { "kind" : "identifier", - "text" : "hasTexcoords" + "text" : "scale" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -35712,19 +36932,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/hastexcoords", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/hasTexcoords", + "path" : "\/documentation\/euclid\/plane\/scale(by:)-758tv", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-758tv", "taskGroups" : [ ], - "title" : "hasTexcoords", - "usr" : "s:6Euclid7PolygonV12hasTexcoordsSbvp" + "title" : "scale(by:)", + "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid5PlaneV" }, { "availableLanguages" : [ @@ -35742,12 +36966,78 @@ "title" : "Instance Methods" } ], - "title" : "Encodable Implementations" + "title" : "Encodable Implementations" + }, + { + "abstract" : [ + { + "text" : "An infinite line in 3D space.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "struct" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "Line" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/line", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(origin:direction:)" + ], + "title" : "Creating Lines" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/origin", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/direction" + ], + "title" : "Line Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/containsPoint(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-4o41", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-77i61", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-2nysu", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-7s1sd", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersects(_:)" + ], + "title" : "Comparing Lines" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Equatable-Implementations" + ], + "title" : "Default Implementations" + } + ], + "title" : "Line", + "usr" : "s:6Euclid4LineV" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "The angle of rotation.", "type" : "text" } ], @@ -35757,7 +37047,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -35765,15 +37055,7 @@ }, { "kind" : "identifier", - "text" : "rotate" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "angle" }, { "kind" : "text", @@ -35781,28 +37063,58 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/angle", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/angle", + "taskGroups" : [ + + ], + "title" : "angle", + "usr" : "s:6Euclid8RotationV5angleAA5AngleVvp" + }, + { + "abstract" : [ + { + "text" : "A closure that maps a SceneKit material to a Euclid material.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "typealias" }, { "kind" : "text", - "text" : ")" + "text" : " " + }, + { + "kind" : "identifier", + "text" : "SCNMaterialProvider" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeAlias", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/rotate(by:)-7073s", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-7073s", + "path" : "\/documentation\/euclid\/mesh\/scnmaterialprovider", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid7PolygonV" + "title" : "Mesh.SCNMaterialProvider", + "usr" : "s:6Euclid4MeshV19SCNMaterialProvidera" }, { "abstract" : [ { - "text" : "Creates a closed elliptical path.", + "text" : "Creates a closed square path.", "type" : "text" } ], @@ -35828,7 +37140,7 @@ }, { "kind" : "identifier", - "text" : "ellipse" + "text" : "square" }, { "kind" : "text", @@ -35836,24 +37148,7 @@ }, { "kind" : "externalParam", - "text" : "width" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "height" + "text" : "size" }, { "kind" : "text", @@ -35868,23 +37163,6 @@ "kind" : "text", "text" : ", " }, - { - "kind" : "externalParam", - "text" : "segments" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : ", " - }, { "kind" : "externalParam", "text" : "color" @@ -35910,21 +37188,15 @@ ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/ellipse(width:height:segments:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/ellipse(width:height:segments:color:)", + "path" : "\/documentation\/euclid\/path\/square(size:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/square(size:color:)", "taskGroups" : [ ], - "title" : "ellipse(width:height:segments:color:)", - "usr" : "s:6Euclid4PathV7ellipse5width6height8segments5colorACSd_SdSiAA5ColorVSgtFZ" + "title" : "square(size:color:)", + "usr" : "s:6Euclid4PathV6square4size5colorACSd_AA5ColorVSgtFZ" }, { - "abstract" : [ - { - "text" : "Returns the sum of two quaternion rotations.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -35939,7 +37211,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -35947,54 +37219,32 @@ }, { "kind" : "identifier", - "text" : "+" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "text" : "white" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid10QuaternionV", - "text" : "Quaternion" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/+(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/+(_:_:)", + "path" : "\/documentation\/euclid\/color\/white", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/white", "taskGroups" : [ ], - "title" : "+(_:_:)", - "usr" : "s:6Euclid10QuaternionV1poiyA2C_ACtFZ" + "title" : "white", + "usr" : "s:6Euclid5ColorV5whiteACvpZ" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Use default alignment heuristic for the given path.", "type" : "text" } ], @@ -36004,7 +37254,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "case" }, { "kind" : "text", @@ -36012,49 +37262,23 @@ }, { "kind" : "identifier", - "text" : "transformed" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "text" : "`default`" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)", + "path" : "\/documentation\/euclid\/path\/alignment\/default", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/default", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid9TransformV11transformed2byA2C_tF" + "title" : "Path.Alignment.default", + "usr" : "s:6Euclid4PathV9AlignmentO7defaultyA2EmF" }, { "abstract" : [ { - "text" : "Creates a polygon from an array of vertices.", + "text" : "An array of vertices suitable for constructing a set of edge polygons for the path.", "type" : "text" } ], @@ -36064,24 +37288,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "?([" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "kind" : "identifier", + "text" : "edgeVertices" }, { "kind" : "text", - "text" : "], " + "text" : "(" }, { "kind" : "externalParam", - "text" : "material" + "text" : "for" }, { "kind" : "text", @@ -36089,147 +37312,56 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", - "text" : "?)" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/init(_:material:)-9mns5", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-9mns5", - "taskGroups" : [ - - ], - "title" : "init(_:material:)", - "usr" : "s:6Euclid7PolygonV_8materialACSgSayAA6VertexVG_s11AnyHashableVSgtcfc" - }, - { - "abstract" : [ - { - "text" : "An axially-aligned bounding box in 3D space.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "text" : "." + }, { - "kind" : "keyword", - "text" : "struct" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", + "text" : "WrapMode" }, { "kind" : "text", - "text" : " " + "text" : ") -> [" }, { - "kind" : "identifier", - "text" : "Bounds" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" + }, + { + "kind" : "text", + "text" : "]" } ], - "kind" : "org.swift.docc.kind.structure", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds", + "path" : "\/documentation\/euclid\/path\/edgevertices(for:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/edgeVertices(for:)", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-1icmf", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-27jri", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(min:max:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:_:)" - ], - "title" : "Creating Bounds" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/empty" - ], - "title" : "Default Bounds" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/min", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/max", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/size", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/center", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/corners", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/isEmpty" - ], - "title" : "Bounds Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/containsPoint(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-7br6p", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-95v17" - ], - "title" : "Comparing Bounds" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-49ykf", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-4gk62", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersection(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/union(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formIntersection(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formUnion(_:)" - ], - "title" : "Combining and Modifying Bounds" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)" - ], - "title" : "Transforming Bounds" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-5bh7b", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-r54o", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(bounds:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(points:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(polygons:)" - ], - "title" : "Initializers" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Transformable-Implementations" - ], - "title" : "Default Implementations" - } + ], - "title" : "Bounds", - "usr" : "s:6Euclid6BoundsV" + "title" : "edgeVertices(for:)", + "usr" : "s:6Euclid4PathV12edgeVertices3forSayAA6VertexVGAA4MeshV8WrapModeO_tF" }, { + "abstract" : [ + { + "text" : "The Y component of the vector.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -36237,56 +37369,32 @@ }, { "kind" : "identifier", - "text" : "..." - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s19PartialRangeThroughV", - "text" : "PartialRangeThrough" + "text" : "y" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/'...(_:)-8feph", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-8feph", + "path" : "\/documentation\/euclid\/vector\/y", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/y", "taskGroups" : [ ], - "title" : "...(_:)", - "usr" : "s:SLsE3zzzopys19PartialRangeThroughVyxGxFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "y", + "usr" : "s:6Euclid6VectorV1ySdvp" }, { "abstract" : [ { - "text" : "Return a copy of the mesh with cube-mapped texture coordinates.", + "text" : "The bounds of the mesh.", "type" : "text" } ], @@ -36296,7 +37404,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -36304,32 +37412,50 @@ }, { "kind" : "identifier", - "text" : "cubeMapped" + "text" : "bounds" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cubemapped()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cubeMapped()", + "path" : "\/documentation\/euclid\/mesh\/bounds", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/bounds", "taskGroups" : [ ], - "title" : "cubeMapped()", - "usr" : "s:6Euclid4MeshV10cubeMappedACyF" + "title" : "bounds", + "usr" : "s:6Euclid4MeshV6boundsAA6BoundsVvp" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Decodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(from:)" + ], + "title" : "Initializers" + } + ], + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Creates a curved path point at the specified X, Y and Z coordinates.", "type" : "text" } ], @@ -36337,6 +37463,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -36347,104 +37481,88 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "curve" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)", - "taskGroups" : [ - - ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid4PathV11transformed2byAcA9TransformV_tF" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, { - "text" : "Creates an angle from a degrees value.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : ", " + }, { - "kind" : "keyword", - "text" : "static" + "kind" : "externalParam", + "text" : "texcoord" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : " " + "text" : "?, " }, { - "kind" : "identifier", - "text" : "degrees" + "kind" : "externalParam", + "text" : "color" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ") -> " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/degrees(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/degrees(_:)", + "path" : "\/documentation\/euclid\/pathpoint\/curve(_:_:_:texcoord:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curve(_:_:_:texcoord:color:)", "taskGroups" : [ ], - "title" : "degrees(_:)", - "usr" : "s:6Euclid5AngleV7degreesyACSdFZ" + "title" : "curve(_:_:_:texcoord:color:)", + "usr" : "s:6Euclid9PathPointV5curve___8texcoord5colorACSd_S2dAA6VectorVSgAA5ColorVSgtFZ" }, { "abstract" : [ @@ -36493,15 +37611,29 @@ ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/transform(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transform(by:)", + "path" : "\/documentation\/euclid\/mesh\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/transform(by:)", "taskGroups" : [ ], "title" : "transform(by:)", - "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid9TransformV" + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid4MeshV" }, { + "abstract" : [ + { + "text" : "A vector of length ", + "type" : "text" + }, + { + "code" : "1", + "type" : "codeVoice" + }, + { + "text" : " along the X axis.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -36516,7 +37648,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -36524,64 +37656,32 @@ }, { "kind" : "identifier", - "text" : "..." - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SN", - "text" : "ClosedRange" + "text" : "unitX" }, { "kind" : "text", - "text" : "<" + "text" : ": " }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/'...(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/...(_:_:)", + "path" : "\/documentation\/euclid\/vector\/unitx", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitX", "taskGroups" : [ ], - "title" : "...(_:_:)", - "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "unitX", + "usr" : "s:6Euclid6VectorV5unitXACvpZ" }, { "abstract" : [ { - "text" : "A common protocol for objects that have a bounds.", + "text" : "Returns a translated copy of the value.", "type" : "text" } ], @@ -36591,7 +37691,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "protocol" + "text" : "func" }, { "kind" : "text", @@ -36599,28 +37699,49 @@ }, { "kind" : "identifier", - "text" : "Bounded" + "text" : "translated" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], - "kind" : "org.swift.docc.kind.protocol", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounded", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded", + "path" : "\/documentation\/euclid\/polygon\/translated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded\/bounds" - ], - "title" : "Instance Properties" - } + ], - "title" : "Bounded", - "usr" : "s:6Euclid7BoundedP" + "title" : "translated(by:)", + "usr" : "s:6Euclid7PolygonV10translated2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Returns the area of the polygon.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -36630,7 +37751,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -36638,7 +37759,15 @@ }, { "kind" : "identifier", - "text" : "area" + "text" : "rotate" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -36646,24 +37775,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/area", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/area", + "path" : "\/documentation\/euclid\/transformable\/rotate(by:)-1l9u5", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotate(by:)-1l9u5", "taskGroups" : [ ], - "title" : "area", - "usr" : "s:6Euclid7PolygonV4areaSdvp" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF" }, { "abstract" : [ { - "text" : "Efficiently fills an array of paths, avoiding unecessary work if there are duplicates.", + "text" : "Creates a closed elliptical path.", "type" : "text" } ], @@ -36689,24 +37822,15 @@ }, { "kind" : "identifier", - "text" : "fill" - }, - { - "kind" : "text", - "text" : "([" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "ellipse" }, { "kind" : "text", - "text" : "], " + "text" : "(" }, { "kind" : "externalParam", - "text" : "faces" + "text" : "width" }, { "kind" : "text", @@ -36714,8 +37838,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -36723,7 +37847,7 @@ }, { "kind" : "externalParam", - "text" : "material" + "text" : "height" }, { "kind" : "text", @@ -36731,16 +37855,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "?, " + "text" : ", " }, { "kind" : "externalParam", - "text" : "isCancelled" + "text" : "segments" }, { "kind" : "text", @@ -36748,162 +37872,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" - } - ], - "kind" : "org.swift.docc.kind.typeMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/fill(_:faces:material:iscancelled:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/fill(_:faces:material:isCancelled:)", - "taskGroups" : [ - - ], - "title" : "fill(_:faces:material:isCancelled:)", - "usr" : "s:6Euclid4MeshV4fill_5faces8material11isCancelledACSayAA4PathVG_AC5FacesOs11AnyHashableVSgSbyXEtFZ" - }, - { - "abstract" : [ - { - "text" : "A plane located at the origin, aligned with the X and Z axes.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" + "preciseIdentifier" : "s:Si", + "text" : "Int" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "externalParam", + "text" : "color" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "xz" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ": " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/xz", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xz", + "path" : "\/documentation\/euclid\/path\/ellipse(width:height:segments:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/ellipse(width:height:segments:color:)", "taskGroups" : [ ], - "title" : "xz", - "usr" : "s:6Euclid5PlaneV2xzACvpZ" - }, - { - "abstract" : [ - { - "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.module", - "language" : "swift", - "path" : "\/documentation\/euclid", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/ConstructingMeshes", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/RenderingMeshes" - ], - "title" : "Using Euclid" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon" - ], - "title" : "Surfaces" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment" - ], - "title" : "Lines and Paths" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle" - ], - "title" : "Rotations and Transforms" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color" - ], - "title" : "Fundamental Types" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/sin(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/cos(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/tan(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/min(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/max(_:_:)" - ], - "title" : "Supporting Functions" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable" - ], - "title" : "Protocols" - } - ], - "title" : "Euclid", - "usr" : "Euclid" + "title" : "ellipse(width:height:segments:color:)", + "usr" : "s:6Euclid4PathV7ellipse5width6height8segments5colorACSd_SdSiAA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "Creates an array of contours by extruding one path along another path.", + "text" : "Translate the value in place.", "type" : "text" } ], @@ -36921,7 +37933,7 @@ }, { "kind" : "identifier", - "text" : "extrusionContours" + "text" : "translate" }, { "kind" : "text", @@ -36929,41 +37941,7 @@ }, { "kind" : "externalParam", - "text" : "along" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "twist" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "align" + "text" : "by" }, { "kind" : "text", @@ -36971,37 +37949,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV9AlignmentO", - "text" : "Alignment" - }, - { - "kind" : "text", - "text" : ") -> [" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "]" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/extrusioncontours(along:twist:align:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/extrusionContours(along:twist:align:)", + "path" : "\/documentation\/euclid\/mesh\/translate(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/translate(by:)", "taskGroups" : [ ], - "title" : "extrusionContours(along:twist:align:)", - "usr" : "s:6Euclid4PathV17extrusionContours5along5twist5alignSayACGAC_AA5AngleVAC9AlignmentOtF" + "title" : "translate(by:)", + "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid4MeshV" }, { "abstract" : [ { - "text" : "Rotate the value in place.", + "text" : "Encodes this mesh into the given encoder.", "type" : "text" } ], @@ -37019,7 +37988,7 @@ }, { "kind" : "identifier", - "text" : "rotate" + "text" : "encode" }, { "kind" : "text", @@ -37027,7 +37996,7 @@ }, { "kind" : "externalParam", - "text" : "by" + "text" : "to" }, { "kind" : "text", @@ -37035,28 +38004,32 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:s7EncoderP", + "text" : "Encoder" }, { "kind" : "text", - "text" : ")" + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/rotate(by:)-7y2vv", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotate(by:)-7y2vv", + "path" : "\/documentation\/euclid\/mesh\/encode(to:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/encode(to:)", "taskGroups" : [ ], - "title" : "rotate(by:)", - "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid4MeshV" + "title" : "encode(to:)", + "usr" : "s:6Euclid4MeshV6encode2toys7Encoder_p_tKF" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Creates a rotation around the Z axis.", "type" : "text" } ], @@ -37082,11 +38055,7 @@ }, { "kind" : "identifier", - "text" : "*" - }, - { - "kind" : "text", - "text" : " " + "text" : "roll" }, { "kind" : "text", @@ -37094,16 +38063,8 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -37111,23 +38072,24 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/*(_:_:)-98mbu", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-98mbu", + "path" : "\/documentation\/euclid\/rotation\/roll(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll(_:)", "taskGroups" : [ ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "roll(_:)", + "usr" : "s:6Euclid8RotationV4rollyAcA5AngleVFZ" }, { "abstract" : [ { - "text" : "Linearly interpolates between two vertices.", + "text" : "The angle of rotation around the Y-axis.", "type" : "text" } ], @@ -37137,7 +38099,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -37145,50 +38107,32 @@ }, { "kind" : "identifier", - "text" : "lerp" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "yaw" }, { "kind" : "text", - "text" : ") -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/lerp(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/lerp(_:_:)", + "path" : "\/documentation\/euclid\/rotation\/yaw", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw", "taskGroups" : [ ], - "title" : "lerp(_:_:)", - "usr" : "s:6Euclid6VertexV4lerpyA2C_SdtF" + "title" : "yaw", + "usr" : "s:6Euclid8RotationV3yawAA5AngleVvp" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the polygon is convex.", + "text" : "The identity quaternion (i.e. no rotation).", "type" : "text" } ], @@ -37198,7 +38142,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", @@ -37206,7 +38158,7 @@ }, { "kind" : "identifier", - "text" : "isConvex" + "text" : "identity" }, { "kind" : "text", @@ -37214,24 +38166,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/isconvex", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/isConvex", + "path" : "\/documentation\/euclid\/quaternion\/identity", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/identity", "taskGroups" : [ ], - "title" : "isConvex", - "usr" : "s:6Euclid7PolygonV8isConvexSbvp" + "title" : "identity", + "usr" : "s:6Euclid10QuaternionV8identityACvpZ" }, { "abstract" : [ { - "text" : "Returns the nearest point on the specified line to the vector (representing a position in space).", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -37239,6 +38191,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -37249,85 +38209,56 @@ }, { "kind" : "identifier", - "text" : "project" + "text" : "*=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "onto" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/project(onto:)-rksk", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-rksk", - "taskGroups" : [ - - ], - "title" : "project(onto:)", - "usr" : "s:6Euclid6VectorV7project4ontoAcA4LineV_tF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Encodable-Implementations", - "taskGroups" : [ + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/encode(to:)" - ], - "title" : "Instance Methods" + "kind" : "text", + "text" : ")" } ], - "title" : "Encodable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/bounded-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Bounded-Implementations", + "path" : "\/documentation\/euclid\/transform\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/*=(_:_:)", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/bounds" - ], - "title" : "Instance Properties" - } + ], - "title" : "Bounded Implementations" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid9TransformV" }, { "abstract" : [ { - "text" : "Creates a bounds from a collection of bounds.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -37337,39 +38268,47 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "<" + "text" : " " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "identifier", + "text" : "transform" }, { "kind" : "text", - "text" : ">(" + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsVyACxcSlRzAC7ElementRtzlufc1TL_xmfp", - "text" : "T" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(_:)-r54o", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-r54o", + "path" : "\/documentation\/euclid\/vector\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transform(by:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid6BoundsVyACxcSlRzAC7ElementRtzlufc" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid6VectorV" }, { "availableLanguages" : [ @@ -37377,12 +38316,12 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/encodable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Encodable-Implementations", + "path" : "\/documentation\/euclid\/rotation\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Encodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/encode(to:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/encode(to:)" ], "title" : "Instance Methods" } @@ -37392,67 +38331,85 @@ { "abstract" : [ { - "text" : "The position of the center of the polygon.", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "This is calculated as the average of the vertex positions, and may not be equal to the center of the polygon’s ", - "type" : "text" - }, - { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/bounds", - "isActive" : true, - "type" : "reference" - }, - { - "text" : ".", + "text" : "Euclid is a library for creating and manipulating 3D geometry using techniques such as extruding or “lathing” 2D paths to create solid 3D shapes, and CSG (Constructive Solid Geometry) to combine or subtract those shapes from one another.", "type" : "text" } ], "availableLanguages" : [ "swift" ], - "fragments" : [ + "kind" : "org.swift.docc.kind.module", + "language" : "swift", + "path" : "\/documentation\/euclid", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid", + "taskGroups" : [ { - "kind" : "keyword", - "text" : "var" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/ConstructingMeshes", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/RenderingMeshes" + ], + "title" : "Using Euclid" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon" + ], + "title" : "Surfaces" }, { - "kind" : "identifier", - "text" : "center" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment" + ], + "title" : "Lines and Paths" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle" + ], + "title" : "Rotations and Transforms" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color" + ], + "title" : "Fundamental Types" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/sin(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/cos(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/tan(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/min(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/max(_:_:)" + ], + "title" : "Supporting Functions" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable" + ], + "title" : "Protocols" } ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/center", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/center", - "taskGroups" : [ - - ], - "title" : "center", - "usr" : "s:6Euclid7PolygonV6centerAA6VectorVvp" + "title" : "Euclid", + "usr" : "Euclid" }, { "abstract" : [ { - "text" : "The Y component of the vector.", + "text" : "Creates a path point.", "type" : "text" } ], @@ -37462,15 +38419,24 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "y" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "texcoord" }, { "kind" : "text", @@ -37478,50 +38444,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/y", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/y", - "taskGroups" : [ - - ], - "title" : "y", - "usr" : "s:6Euclid6VectorV1ySdvp" - }, - { - "abstract" : [ + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, { - "text" : "Returns a translated copy of the value.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ + "kind" : "text", + "text" : "?, " + }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "color" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "identifier", - "text" : "translated" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : "(" + "text" : "?, " }, { "kind" : "externalParam", - "text" : "by" + "text" : "isCurved" }, { "kind" : "text", @@ -37529,32 +38478,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/translated(by:)", + "path" : "\/documentation\/euclid\/pathpoint\/init(_:texcoord:color:iscurved:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:texcoord:color:isCurved:)", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid13TransformableP10translated2byxAA6VectorV_tF" + "title" : "init(_:texcoord:color:isCurved:)", + "usr" : "s:6Euclid9PathPointV_8texcoord5color8isCurvedAcA6VectorV_AHSgAA5ColorVSgSbtcfc" }, { "abstract" : [ { - "text" : "Returns the distance between the vector (representing a position in space) from the specified line.", + "text" : "Returns the nearest point on the specified plane to the vector (representing a position in space).", "type" : "text" } ], @@ -37572,7 +38517,7 @@ }, { "kind" : "identifier", - "text" : "distance" + "text" : "project" }, { "kind" : "text", @@ -37580,7 +38525,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "onto" }, { "kind" : "text", @@ -37588,8 +38533,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" }, { "kind" : "text", @@ -37597,24 +38542,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/distance(from:)-3eglz", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-3eglz", + "path" : "\/documentation\/euclid\/vector\/project(onto:)-817o2", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-817o2", "taskGroups" : [ ], - "title" : "distance(from:)", - "usr" : "s:6Euclid6VectorV8distance4fromSdAA4LineV_tF" + "title" : "project(onto:)", + "usr" : "s:6Euclid6VectorV7project4ontoAcA5PlaneV_tF" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "An infinite 2D plane in 3D space.", "type" : "text" } ], @@ -37624,7 +38569,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "struct" }, { "kind" : "text", @@ -37632,49 +38577,80 @@ }, { "kind" : "identifier", - "text" : "translated" + "text" : "Plane" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(normal:pointOnPlane:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(points:)" + ], + "title" : "Creating Planes" }, { - "kind" : "text", - "text" : "(" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xy", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/xz", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/yz" + ], + "title" : "Default Planes" }, { - "kind" : "externalParam", - "text" : "by" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/normal", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/w" + ], + "title" : "Plane Properties" }, { - "kind" : "text", - "text" : ": " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/containsPoint(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/distance(from:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-4v7tg", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-79olr" + ], + "title" : "Comparing Planes" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/inverted()", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)" + ], + "title" : "Transforming Planes" }, { - "kind" : "text", - "text" : ") -> " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-9o28g" + ], + "title" : "Instance Methods" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Comparable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Transformable-Implementations" + ], + "title" : "Default Implementations" } ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)", - "taskGroups" : [ - - ], - "title" : "translated(by:)", - "usr" : "s:6Euclid4PathV10translated2byAcA6VectorV_tF" + "title" : "Plane", + "usr" : "s:6Euclid5PlaneV" }, { "abstract" : [ { - "text" : "The direction of the line segment as a normalized vector.", + "text" : "The X component of the vector.", "type" : "text" } ], @@ -37692,7 +38668,7 @@ }, { "kind" : "identifier", - "text" : "direction" + "text" : "x" }, { "kind" : "text", @@ -37700,24 +38676,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/direction", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/direction", + "path" : "\/documentation\/euclid\/vector\/x", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/x", "taskGroups" : [ ], - "title" : "direction", - "usr" : "s:6Euclid11LineSegmentV9directionAA6VectorVvp" + "title" : "x", + "usr" : "s:6Euclid6VectorV1xSdvp" }, { "abstract" : [ { - "text" : "The position of the vertex.", + "text" : "Creates a copy of the polygon with the specified material.", "type" : "text" } ], @@ -37727,7 +38703,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -37735,32 +38711,41 @@ }, { "kind" : "identifier", - "text" : "position" + "text" : "withMaterial" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" + }, + { + "kind" : "text", + "text" : "?) -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/position", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/position", + "path" : "\/documentation\/euclid\/polygon\/withmaterial(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/withMaterial(_:)", "taskGroups" : [ ], - "title" : "position", - "usr" : "s:6Euclid6VertexV8positionAA6VectorVvp" + "title" : "withMaterial(_:)", + "usr" : "s:6Euclid7PolygonV12withMaterialyACs11AnyHashableVSgF" }, { "abstract" : [ { - "text" : "Combines with the specified rotation.", + "text" : "The angle of rotation around the Z-axis.", "type" : "text" } ], @@ -37770,15 +38755,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -37786,52 +38763,74 @@ }, { "kind" : "identifier", - "text" : "*=" + "text" : "roll" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { - "kind" : "text", - "text" : "(" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/roll", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/roll", + "taskGroups" : [ + + ], + "title" : "roll", + "usr" : "s:6Euclid8RotationV4rollAA5AngleVvp" + }, + { + "abstract" : [ + { + "text" : "Creates a color from an ", + "type" : "text" }, { - "kind" : "keyword", - "text" : "inout" + "code" : "NSColor", + "type" : "codeVoice" }, { - "kind" : "text", - "text" : " " - }, + "text" : ".", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "c:objc(cs)NSColor", + "text" : "NSColor" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/*=(_:_:)-68kkw", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-68kkw", + "path" : "\/documentation\/euclid\/color\/init(_:)-7d8un", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-7d8un", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid8RotationV2meoiyyACz_ACtFZ" + "title" : "init(_:)", + "usr" : "s:6Euclid5ColorVyACSo7NSColorCcfc" }, { "availableLanguages" : [ @@ -37856,7 +38855,7 @@ }, { "kind" : "identifier", - "text" : "!=" + "text" : "..." }, { "kind" : "text", @@ -37872,36 +38871,40 @@ }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:s16PartialRangeFromV", + "text" : "PartialRangeFrom" }, { "kind" : "text", - "text" : ") -> " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/!=(_:_:)", + "path" : "\/documentation\/euclid\/vector\/'...(_:)-14arr", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/...(_:)-14arr", "taskGroups" : [ ], - "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "...(_:)", + "usr" : "s:SLsE3zzzoPys16PartialRangeFromVyxGxFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "The face normal for the path.", + "text" : "Creates a rotation from Euler angles applied in roll\/yaw\/pitch order.", "type" : "text" } ], @@ -37911,15 +38914,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "faceNormal" + "kind" : "externalParam", + "text" : "roll" }, { "kind" : "text", @@ -37927,95 +38930,57 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/path\/facenormal", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/faceNormal", - "taskGroups" : [ - - ], - "title" : "faceNormal", - "usr" : "s:6Euclid4PathV10faceNormalAA6VectorVvp" - }, - { - "abstract" : [ - { - "text" : "Multiplies the angle by a numeric value.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "keyword", - "text" : "func" + "kind" : "externalParam", + "text" : "yaw" }, { "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "*=" + "text" : ": " }, { - "kind" : "text", - "text" : " " + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "keyword", - "text" : "inout" + "kind" : "externalParam", + "text" : "pitch" }, { "kind" : "text", - "text" : " " + "text" : ": " }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid5AngleV", "text" : "Angle" }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/*=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*=(_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/init(roll:yaw:pitch:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(roll:yaw:pitch:)", "taskGroups" : [ ], - "title" : "*=(_:_:)", - "usr" : "s:6Euclid5AngleV2meoiyyACz_SdtFZ" + "title" : "init(roll:yaw:pitch:)", + "usr" : "s:6Euclid10QuaternionV4roll3yaw5pitchAcA5AngleV_A2Htcfc" }, { "availableLanguages" : [ @@ -38040,7 +39005,7 @@ }, { "kind" : "identifier", - "text" : ">=" + "text" : "..<" }, { "kind" : "text", @@ -38068,24 +39033,54 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:Sn", + "text" : "Range" + }, + { + "kind" : "text", + "text" : "<" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" + }, + { + "kind" : "text", + "text" : ">" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/_=(_:_:)-9rm6o", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_=(_:_:)-9rm6o", + "path" : "\/documentation\/euclid\/vector\/'.._(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/.._(_:_:)", "taskGroups" : [ ], - "title" : ">=(_:_:)", - "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" + "title" : "..<(_:_:)", + "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "The angle of rotation around the X-axis.", + "text" : "Creates a new polygon by decoding from the given decoder.", "type" : "text" } ], @@ -38095,15 +39090,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "pitch" + "kind" : "externalParam", + "text" : "from" }, { "kind" : "text", @@ -38111,24 +39106,40 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" + }, + { + "kind" : "text", + "text" : ") " + }, + { + "kind" : "keyword", + "text" : "throws" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/pitch", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/pitch", + "path" : "\/documentation\/euclid\/polygon\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(from:)", "taskGroups" : [ ], - "title" : "pitch", - "usr" : "s:6Euclid8RotationV5pitchAA5AngleVvp" + "title" : "init(from:)", + "usr" : "s:6Euclid7PolygonV4fromACs7Decoder_p_tKcfc" }, { "abstract" : [ { - "text" : "Returns a Boolean value that indicates whether the lines intersect.", + "text" : "Returns a new mesh representing the volume shared by both the mesh", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "parameter and the receiver. If these do not intersect, an empty mesh will be returned.", "type" : "text" } ], @@ -38146,7 +39157,7 @@ }, { "kind" : "identifier", - "text" : "intersects" + "text" : "intersection" }, { "kind" : "text", @@ -38154,8 +39165,25 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "isCancelled" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", @@ -38163,24 +39191,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/line\/intersects(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersects(_:)", + "path" : "\/documentation\/euclid\/mesh\/intersection(_:iscancelled:)-swift.method", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.method", "taskGroups" : [ ], - "title" : "intersects(_:)", - "usr" : "s:6Euclid4LineV10intersectsySbACF" + "title" : "intersection(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV12intersection_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "Efficiently computes the intersection of multiple meshes.", + "text" : "An axially-aligned bounding box in 3D space.", "type" : "text" } ], @@ -38190,57 +39218,152 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "struct" }, { "kind" : "text", "text" : " " }, + { + "kind" : "identifier", + "text" : "Bounds" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/bounds", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-1icmf", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-27jri", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(min:max:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:_:)" + ], + "title" : "Creating Bounds" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/empty" + ], + "title" : "Default Bounds" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/min", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/max", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/size", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/center", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/corners", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/isEmpty" + ], + "title" : "Bounds Properties" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/containsPoint(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-7br6p", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-95v17" + ], + "title" : "Comparing Bounds" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-49ykf", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/inset(by:)-4gk62", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersection(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/union(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formIntersection(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/formUnion(_:)" + ], + "title" : "Combining and Modifying Bounds" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-5dvvh", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scaled(by:)-6epo6", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)" + ], + "title" : "Transforming Bounds" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-5bh7b", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-r54o", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(bounds:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(points:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(polygons:)" + ], + "title" : "Initializers" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Transformable-Implementations" + ], + "title" : "Default Implementations" + } + ], + "title" : "Bounds", + "usr" : "s:6Euclid6BoundsV" + }, + { + "abstract" : [ + { + "text" : "Returns a vector with its components multiplied by the specified value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "intersection" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "<" + "text" : " " }, { - "kind" : "genericParameter", - "text" : "T" + "kind" : "identifier", + "text" : "*" }, { "kind" : "text", - "text" : ">(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV12intersection_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ1TL_xmfp", - "text" : "T" + "text" : " " }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { - "kind" : "externalParam", - "text" : "isCancelled" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", - "text" : "CancellationHandler" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", @@ -38248,24 +39371,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/intersection(_:iscancelled:)-swift.type.method", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/intersection(_:isCancelled:)-swift.type.method", + "path" : "\/documentation\/euclid\/vector\/*(_:_:)-5mcy5", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-5mcy5", "taskGroups" : [ ], - "title" : "intersection(_:isCancelled:)", - "usr" : "s:6Euclid4MeshV12intersection_11isCancelledACx_SbyXEtSlRzAC7ElementRtzlFZ" + "title" : "*(_:_:)", + "usr" : "s:6Euclid6VectorV1moiyA2C_SdtFZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/rotation\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "A zero-length vector.", "type" : "text" } ], @@ -38283,7 +39424,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -38291,52 +39432,132 @@ }, { "kind" : "identifier", - "text" : "*" + "text" : "zero" }, { "kind" : "text", - "text" : " " + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/zero", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero", + "taskGroups" : [ + + ], + "title" : "zero", + "usr" : "s:6Euclid6VectorV4zeroACvpZ" + }, + { + "abstract" : [ + { + "text" : "Creates an angle from a radians value.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "externalParam", + "text" : "radians" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/init(radians:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/init(radians:)", + "taskGroups" : [ + + ], + "title" : "init(radians:)", + "usr" : "s:6Euclid5AngleV7radiansACSd_tcfc" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/encodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Encodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/encode(to:)" + ], + "title" : "Instance Methods" } ], - "kind" : "org.swift.docc.kind.operator", + "title" : "Encodable Implementations" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/*(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*(_:_:)", + "path" : "\/documentation\/euclid\/vector\/transformable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Transformable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-98mbu", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e" + ], + "title" : "Operators" + }, + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-3ed6z", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotate(by:)-hj8h", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-55ayx", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-8g7t0", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transform(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translate(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)" + ], + "title" : "Instance Methods" + } ], - "title" : "*(_:_:)", - "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + "title" : "Transformable Implementations" }, { "abstract" : [ { - "text" : "Deprecated.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -38354,7 +39575,7 @@ }, { "kind" : "identifier", - "text" : "with" + "text" : "transformed" }, { "kind" : "text", @@ -38362,7 +39583,7 @@ }, { "kind" : "externalParam", - "text" : "material" + "text" : "by" }, { "kind" : "text", @@ -38370,75 +39591,51 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", - "text" : "Material" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/with(material:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/with(material:)", + "path" : "\/documentation\/euclid\/pathpoint\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)", "taskGroups" : [ ], - "title" : "with(material:)", - "usr" : "s:6Euclid7PolygonV4with8materialACs11AnyHashableVSg_tF" + "title" : "transformed(by:)", + "usr" : "s:6Euclid9PathPointV11transformed2byAcA9TransformV_tF" }, { - "abstract" : [ - { - "text" : "Creates a new vertex from a position with default values for normal, texcoord and color.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/init(_:)-5517j", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-5517j", + "path" : "\/documentation\/euclid\/mesh\/wrapmode\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/Equatable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/!=(_:_:)" + ], + "title" : "Operators" + } ], - "title" : "init(_:)", - "usr" : "s:6Euclid6VertexVyAcA6VectorVcfc" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Linearly interpolate between two colors.", "type" : "text" } ], @@ -38456,44 +39653,50 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "lerp" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/scale(by:)-9i9s9", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/scale(by:)-9i9s9", + "path" : "\/documentation\/euclid\/color\/lerp(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/lerp(_:_:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid9TransformV" + "title" : "lerp(_:_:)", + "usr" : "s:6Euclid5ColorV4lerpyA2C_SdtF" }, { "abstract" : [ { - "text" : "Creates a path point.", + "text" : "Creates a linear path from a line segment.", "type" : "text" } ], @@ -38503,37 +39706,36 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "texcoord" + "kind" : "identifier", + "text" : "line" }, { "kind" : "text", - "text" : ": " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" }, { "kind" : "text", - "text" : "?, " + "text" : ", " }, { "kind" : "externalParam", @@ -38550,40 +39752,28 @@ }, { "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "isCurved" - }, - { - "kind" : "text", - "text" : ": " + "text" : "?) -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/init(_:texcoord:color:iscurved:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:texcoord:color:isCurved:)", + "path" : "\/documentation\/euclid\/path\/line(_:color:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/line(_:color:)", "taskGroups" : [ ], - "title" : "init(_:texcoord:color:isCurved:)", - "usr" : "s:6Euclid9PathPointV_8texcoord5color8isCurvedAcA6VectorV_AHSgAA5ColorVSgSbtcfc" + "title" : "line(_:color:)", + "usr" : "s:6Euclid4PathV4line_5colorAcA11LineSegmentV_AA5ColorVSgtFZ" }, { "abstract" : [ { - "text" : "The plane upon which all path points lie. Will be nil for non-planar paths.", + "text" : "Returns the normalized quaternion.", "type" : "text" } ], @@ -38593,7 +39783,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -38601,36 +39791,50 @@ }, { "kind" : "identifier", - "text" : "plane" + "text" : "normalized" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - }, - { - "kind" : "text", - "text" : "?" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/plane", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/plane", + "path" : "\/documentation\/euclid\/quaternion\/normalized()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/normalized()", "taskGroups" : [ ], - "title" : "plane", - "usr" : "s:6Euclid4PathV5planeAA5PlaneVSgvp" + "title" : "normalized()", + "usr" : "s:6Euclid10QuaternionV10normalizedACyF" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Decodable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(from:)" + ], + "title" : "Initializers" + } + ], + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Returns a transformed copy of the value.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -38648,7 +39852,7 @@ }, { "kind" : "identifier", - "text" : "transformed" + "text" : "rotate" }, { "kind" : "text", @@ -38664,33 +39868,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9PathPointV", - "text" : "PathPoint" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transformed(by:)", + "path" : "\/documentation\/euclid\/vertex\/rotate(by:)-622p8", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotate(by:)-622p8", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid9PathPointV11transformed2byAcA9TransformV_tF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "Creates a new transform.", + "text" : "Generate back faces.", "type" : "text" } ], @@ -38700,78 +39899,31 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "offset" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "rotation" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" - }, - { - "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "scale" + "text" : "case" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : " " }, { - "kind" : "text", - "text" : "?)" + "kind" : "identifier", + "text" : "back" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.enumerationCase", "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/init(offset:rotation:scale:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/init(offset:rotation:scale:)", + "path" : "\/documentation\/euclid\/mesh\/faces\/back", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Faces\/back", "taskGroups" : [ ], - "title" : "init(offset:rotation:scale:)", - "usr" : "s:6Euclid9TransformV6offset8rotation5scaleAcA6VectorVSg_AA8RotationVSgAItcfc" + "title" : "Mesh.Faces.back", + "usr" : "s:6Euclid4MeshV5FacesO4backyA2EmF" }, { "abstract" : [ { - "text" : "All vector components are one (or close to one) in length.", + "text" : "Returns the flip-side of the plane.", "type" : "text" } ], @@ -38781,7 +39933,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -38789,32 +39941,32 @@ }, { "kind" : "identifier", - "text" : "isOne" + "text" : "inverted" }, { "kind" : "text", - "text" : ": " + "text" : "() -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/isone", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isOne", + "path" : "\/documentation\/euclid\/plane\/inverted()", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/inverted()", "taskGroups" : [ ], - "title" : "isOne", - "usr" : "s:6Euclid6VectorV5isOneSbvp" + "title" : "inverted()", + "usr" : "s:6Euclid5PlaneV8invertedACyF" }, { "abstract" : [ { - "text" : "Computes the point of intersection between a line and a plane.", + "text" : "An empty mesh.", "type" : "text" } ], @@ -38824,23 +39976,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "intersection" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "with" + "kind" : "identifier", + "text" : "empty" }, { "kind" : "text", @@ -38848,37 +40000,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4LineV", - "text" : "Line" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : "?" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/intersection(with:)-79olr", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-79olr", + "path" : "\/documentation\/euclid\/mesh\/empty", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/empty", "taskGroups" : [ ], - "title" : "intersection(with:)", - "usr" : "s:6Euclid5PlaneV12intersection4withAA6VectorVSgAA4LineV_tF" + "title" : "empty", + "usr" : "s:6Euclid4MeshV5emptyACvpZ" }, { "abstract" : [ { - "text" : "Creates a new line segment by decoding from the given decoder.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -38888,7 +40027,15 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "scaled" }, { "kind" : "text", @@ -38896,7 +40043,7 @@ }, { "kind" : "externalParam", - "text" : "from" + "text" : "by" }, { "kind" : "text", @@ -38904,29 +40051,36 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ") " + "text" : ") -> " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(from:)", + "path" : "\/documentation\/euclid\/mesh\/scaled(by:)-90bab", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/scaled(by:)-90bab", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid11LineSegmentV4fromACs7Decoder_p_tKcfc" + "title" : "scaled(by:)", + "usr" : "s:6Euclid4MeshV6scaled2byAcA6VectorV_tF" }, { + "abstract" : [ + { + "text" : "Returns a transformed copy of the value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -38949,7 +40103,7 @@ }, { "kind" : "identifier", - "text" : "..." + "text" : "*" }, { "kind" : "text", @@ -38969,99 +40123,27 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", "text" : ") -> " }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SN", - "text" : "ClosedRange" - }, - { - "kind" : "text", - "text" : "<" - }, { "kind" : "typeIdentifier", "text" : "Self" - }, - { - "kind" : "text", - "text" : ">" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/'...(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/...(_:_:)", - "taskGroups" : [ - - ], - "title" : "...(_:_:)", - "usr" : "s:SLsE3zzzoiySNyxGx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" - }, - { - "abstract" : [ - { - "text" : "Returns the angle between this vector and the specified plane.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "angle" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "with" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/angle(with:)-9sfg1", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-9sfg1", + "path" : "\/documentation\/euclid\/mesh\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/*(_:_:)", "taskGroups" : [ ], - "title" : "angle(with:)", - "usr" : "s:6Euclid6VectorV5angle4withAA5AngleVAA5PlaneV_tF" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid4MeshV" }, { "availableLanguages" : [ @@ -39069,39 +40151,32 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Transformable-Implementations", + "path" : "\/documentation\/euclid\/vector\/additivearithmetic-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/AdditiveArithmetic-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/*=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)" ], "title" : "Operators" }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-3m9le", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-93ypi", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-1kdd7", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scale(by:)-vnel", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-19jpq", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/scaled(by:)-84xdd", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/translated(by:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero" ], - "title" : "Instance Methods" + "title" : "Type Properties" } ], - "title" : "Transformable Implementations" + "title" : "AdditiveArithmetic Implementations" }, { "abstract" : [ { - "text" : "Creates a new path by decoding from the given decoder.", + "text" : "Performs a spherical interpolation between two quaternions.", "type" : "text" } ], @@ -39111,48 +40186,58 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "slerp" }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "from" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7DecoderP", - "text" : "Decoder" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") " + "text" : ") -> " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(from:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(from:)", + "path" : "\/documentation\/euclid\/quaternion\/slerp(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/slerp(_:_:)", "taskGroups" : [ ], - "title" : "init(from:)", - "usr" : "s:6Euclid4PathV4fromACs7Decoder_p_tKcfc" + "title" : "slerp(_:_:)", + "usr" : "s:6Euclid10QuaternionV5slerpyA2C_SdtF" }, { "abstract" : [ { - "text" : "Create a color from RGB values and optional alpha component", + "text" : "Subtracts the quaternion rotation on the right from the one on the left.", "type" : "text" } ], @@ -39162,34 +40247,44 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "identifier", + "text" : "-=" }, { "kind" : "text", - "text" : ", " + "text" : " " + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "keyword", + "text" : "inout" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", @@ -39197,23 +40292,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid10QuaternionV", + "text" : "Quaternion" }, { "kind" : "text", "text" : ")" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/init(_:_:_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:_:_:)", + "path" : "\/documentation\/euclid\/quaternion\/-=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/-=(_:_:)", "taskGroups" : [ ], - "title" : "init(_:_:_:_:)", - "usr" : "s:6Euclid5ColorVyACSd_S3dtcfc" + "title" : "-=(_:_:)", + "usr" : "s:6Euclid10QuaternionV2seoiyyACz_ACtFZ" }, { "availableLanguages" : [ @@ -39221,39 +40316,22 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Transformable-Implementations", + "path" : "\/documentation\/euclid\/mesh\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Decodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/*=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-7073s", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotate(by:)-8lp0l", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-2pycj", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-3en6y", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-8sjrv", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/translated(by:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(from:)" ], - "title" : "Instance Methods" + "title" : "Initializers" } ], - "title" : "Transformable Implementations" + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "Linearly interpolate between two colors.", + "text" : "Creates a rotation around the Y axis.", "type" : "text" } ], @@ -39263,33 +40341,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "lerp" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "kind" : "identifier", + "text" : "yaw" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -39297,24 +40374,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/lerp(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/lerp(_:_:)", + "path" : "\/documentation\/euclid\/rotation\/yaw(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw(_:)", "taskGroups" : [ ], - "title" : "lerp(_:_:)", - "usr" : "s:6Euclid5ColorV4lerpyA2C_SdtF" + "title" : "yaw(_:)", + "usr" : "s:6Euclid8RotationV3yawyAcA5AngleVFZ" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -39332,7 +40409,7 @@ }, { "kind" : "identifier", - "text" : "translated" + "text" : "scaled" }, { "kind" : "text", @@ -39357,24 +40434,75 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VertexV", - "text" : "Vertex" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vertex\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)", + "path" : "\/documentation\/euclid\/pathpoint\/scaled(by:)-4wtbg", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/scaled(by:)-4wtbg", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid6VertexV10translated2byAcA6VectorV_tF" + "title" : "scaled(by:)", + "usr" : "s:6Euclid9PathPointV6scaled2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "A Boolean value that indicates whether the mesh is watertight, meaning that every edge is", + "type" : "text" + }, + { + "text" : " ", + "type" : "text" + }, + { + "text" : "attached to two polygons (or a multiple of two).", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "var" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "isWatertight" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/iswatertight", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/isWatertight", + "taskGroups" : [ + + ], + "title" : "isWatertight", + "usr" : "s:6Euclid4MeshV12isWatertightSbvp" + }, + { + "abstract" : [ + { + "text" : "Returns the componentwise sum of two vectors.", "type" : "text" } ], @@ -39382,6 +40510,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -39392,52 +40528,54 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "+" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/scale(by:)-89xwv", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scale(by:)-89xwv", + "path" : "\/documentation\/euclid\/vector\/+(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF" + "title" : "+(_:_:)", + "usr" : "s:6Euclid6VectorV1poiyA2C_ACtFZ" }, { "abstract" : [ { - "text" : "Creates a Euclid ", - "type" : "text" - }, - { - "code" : "Quaternion", - "type" : "codeVoice" - }, - { - "text" : " from a SceneKit quaternion.", + "text" : "Creates a offset transform.", "type" : "text" } ], @@ -39447,7 +40585,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "offset" }, { "kind" : "text", @@ -39455,28 +40609,42 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@SCNQuaternion", - "text" : "SCNQuaternion" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/init(_:)-b3v3", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:)-b3v3", + "path" : "\/documentation\/euclid\/transform\/offset(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/offset(_:)", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid10QuaternionVyACSo10SCNVector4Vcfc" + "title" : "offset(_:)", + "usr" : "s:6Euclid9TransformV6offsetyAcA6VectorVFZ" }, { "abstract" : [ { - "text" : "Creates a composite mesh from an array of submeshes.", + "text" : "Creates a bounds from a collection of ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounded", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " objects.", "type" : "text" } ], @@ -39490,40 +40658,40 @@ }, { "kind" : "text", - "text" : "(" + "text" : "<" }, { - "kind" : "externalParam", - "text" : "submeshes" + "kind" : "genericParameter", + "text" : "T" }, { "kind" : "text", - "text" : ": [" + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid6BoundsVyACxcSlRzAA7Bounded7ElementRpzlufc1TL_xmfp", + "text" : "T" }, { "kind" : "text", - "text" : "])" + "text" : ")" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/init(submeshes:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(submeshes:)", + "path" : "\/documentation\/euclid\/bounds\/init(_:)-1icmf", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:)-1icmf", "taskGroups" : [ ], - "title" : "init(submeshes:)", - "usr" : "s:6Euclid4MeshV9submeshesACSayACG_tcfc" + "title" : "init(_:)", + "usr" : "s:6Euclid6BoundsVyACxcSlRzAA7Bounded7ElementRpzlufc" }, { "abstract" : [ { - "text" : "Encodes this mesh into the given encoder.", + "text" : "Multiplies the angle by a numeric value.", "type" : "text" } ], @@ -39531,6 +40699,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -39541,48 +40717,57 @@ }, { "kind" : "identifier", - "text" : "encode" + "text" : "*=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "to" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:s7EncoderP", - "text" : "Encoder" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ") " + "text" : ", " }, { - "kind" : "keyword", - "text" : "throws" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/encode(to:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/encode(to:)", + "path" : "\/documentation\/euclid\/angle\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/*=(_:_:)", "taskGroups" : [ ], - "title" : "encode(to:)", - "usr" : "s:6Euclid4MeshV6encode2toys7Encoder_p_tKF" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid5AngleV2meoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "Computes the cross-product of this vector and another.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -39590,6 +40775,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -39600,7 +40793,11 @@ }, { "kind" : "identifier", - "text" : "cross" + "text" : "*" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -39608,8 +40805,16 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -39617,24 +40822,23 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/cross(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/cross(_:)", + "path" : "\/documentation\/euclid\/bounds\/*(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/*(_:_:)", "taskGroups" : [ ], - "title" : "cross(_:)", - "usr" : "s:6Euclid6VectorV5crossyA2CF" + "title" : "*(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE1moiyxx_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6BoundsV" }, { "abstract" : [ { - "text" : "Computes the dot-product of this vector and another.", + "text" : "Returns a rotated copy of the bounds.", "type" : "text" } ], @@ -39652,16 +40856,24 @@ }, { "kind" : "identifier", - "text" : "dot" + "text" : "rotated" }, { "kind" : "text", "text" : "(" }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -39669,45 +40881,21 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/dot(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/dot(_:)", + "path" : "\/documentation\/euclid\/bounds\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/rotated(by:)", "taskGroups" : [ ], - "title" : "dot(_:)", - "usr" : "s:6Euclid6VectorV3dotySdACF" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/color\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "rotated(by:)", + "usr" : "s:6Euclid6BoundsV7rotated2byAcA8RotationV_tF" }, { - "abstract" : [ - { - "text" : "Creates an extruded text model from an attributed string", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -39730,7 +40918,11 @@ }, { "kind" : "identifier", - "text" : "text" + "text" : "..<" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", @@ -39738,50 +40930,86 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "c:objc(cs)NSAttributedString", - "text" : "NSAttributedString" + "text" : "Self" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "width" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:s16PartialRangeUpToV", + "text" : "PartialRangeUpTo" }, { "kind" : "text", - "text" : ": " + "text" : "<" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", - "text" : "?, " + "text" : ">" + } + ], + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/linesegment\/'.._(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/.._(_:)", + "taskGroups" : [ + + ], + "title" : "..<(_:)", + "usr" : "s:SLsE3zzlopys16PartialRangeUpToVyxGxFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + }, + { + "abstract" : [ + { + "text" : "Computes the convex hull of a set of vertices.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { - "kind" : "externalParam", - "text" : "depth" + "kind" : "text", + "text" : " " + }, + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "identifier", + "text" : "convexHull" }, { "kind" : "text", - "text" : ", " + "text" : "<" + }, + { + "kind" : "genericParameter", + "text" : "T" + }, + { + "kind" : "text", + "text" : ">(" }, { "kind" : "externalParam", - "text" : "detail" + "text" : "of" }, { "kind" : "text", @@ -39789,8 +41017,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "preciseIdentifier" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VertexV7ElementRtzlFZ1TL_xmfp", + "text" : "T" }, { "kind" : "text", @@ -39821,18 +41049,18 @@ ], "kind" : "org.swift.docc.kind.typeMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/text(_:width:depth:detail:material:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/text(_:width:depth:detail:material:)", + "path" : "\/documentation\/euclid\/mesh\/convexhull(of:material:)-75on2", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/convexHull(of:material:)-75on2", "taskGroups" : [ ], - "title" : "text(_:width:depth:detail:material:)", - "usr" : "s:6Euclid4MeshV4text_5width5depth6detail8materialACSo18NSAttributedStringC_SdSgSdSis11AnyHashableVSgtFZ" + "title" : "convexHull(of:material:)", + "usr" : "s:6Euclid4MeshV10convexHull2of8materialACx_s11AnyHashableVSgtSTRzAA6VertexV7ElementRtzlFZ" }, { "abstract" : [ { - "text" : "The angle of rotation around the Y-axis.", + "text" : "Transform the value in place.", "type" : "text" } ], @@ -39842,7 +41070,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -39850,7 +41078,15 @@ }, { "kind" : "identifier", - "text" : "yaw" + "text" : "transform" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -39858,24 +41094,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/yaw", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/yaw", + "path" : "\/documentation\/euclid\/pathpoint\/transform(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/transform(by:)", "taskGroups" : [ ], - "title" : "yaw", - "usr" : "s:6Euclid8RotationV3yawAA5AngleVvp" + "title" : "transform(by:)", + "usr" : "s:6Euclid13TransformablePAAE9transform2byyAA9TransformV_tF::SYNTHESIZED::s:6Euclid9PathPointV" }, { "abstract" : [ { - "text" : "The points that make up the corners of the bounds.", + "text" : "Returns a Boolean value that indicates whether the two bounds intersect.", "type" : "text" } ], @@ -39885,7 +41125,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -39893,89 +41133,41 @@ }, { "kind" : "identifier", - "text" : "corners" + "text" : "intersects" }, { "kind" : "text", - "text" : ": [" + "text" : "(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid6BoundsV", + "text" : "Bounds" }, { "kind" : "text", - "text" : "]" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/corners", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/corners", - "taskGroups" : [ - - ], - "title" : "corners", - "usr" : "s:6Euclid6BoundsV7cornersSayAA6VectorVGvp" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/quaternion\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/Equatable-Implementations", - "taskGroups" : [ + "text" : ") -> " + }, { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/!=(_:_:)" - ], - "title" : "Operators" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "title" : "Equatable Implementations" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Transformable-Implementations", + "path" : "\/documentation\/euclid\/bounds\/intersects(_:)-95v17", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/intersects(_:)-95v17", "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/*=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-1azi6", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotate(by:)-2ix6y", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-677dp", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-758tv", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-6axqe", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/translated(by:)" - ], - "title" : "Instance Methods" - } + ], - "title" : "Transformable Implementations" + "title" : "intersects(_:)", + "usr" : "s:6Euclid6BoundsV10intersectsySbACF" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Computes the dot-product of this vector and another.", "type" : "text" } ], @@ -39993,20 +41185,12 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "dot" }, { "kind" : "text", "text" : "(" }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, { "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", @@ -40014,23 +41198,28 @@ }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/scale(by:)-mpk5", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/scale(by:)-mpk5", + "path" : "\/documentation\/euclid\/vector\/dot(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/dot(_:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "dot(_:)", + "usr" : "s:6Euclid6VectorV3dotySdACF" }, { "abstract" : [ { - "text" : "Texture is tube-wrapped.", + "text" : "A normalized direction vector pointing rightwards relative to the current rotation.", "type" : "text" } ], @@ -40040,7 +41229,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "var" }, { "kind" : "text", @@ -40048,23 +41237,32 @@ }, { "kind" : "identifier", - "text" : "tube" + "text" : "right" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/wrapmode\/tube", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/tube", + "path" : "\/documentation\/euclid\/rotation\/right", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/right", "taskGroups" : [ ], - "title" : "Mesh.WrapMode.tube", - "usr" : "s:6Euclid4MeshV8WrapModeO4tubeyA2EmF" + "title" : "right", + "usr" : "s:6Euclid8RotationV5rightAA6VectorVvp" }, { "abstract" : [ { - "text" : "Creates a color from a luminance value and optional alpha component.", + "text" : "Creates a line segment with a start and end point.", "type" : "text" } ], @@ -40078,67 +41276,28 @@ }, { "kind" : "text", - "text" : "(" + "text" : "?(" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "externalParam", + "text" : "start" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/color\/init(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:_:)", - "taskGroups" : [ - - ], - "title" : "init(_:_:)", - "usr" : "s:6Euclid5ColorVyACSd_Sdtcfc" - }, - { - "abstract" : [ - { - "text" : "Translate the value in place.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "translate" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { "kind" : "externalParam", - "text" : "by" + "text" : "end" }, { "kind" : "text", @@ -40154,20 +41313,20 @@ "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/translate(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/translate(by:)", + "path" : "\/documentation\/euclid\/linesegment\/init(start:end:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/init(start:end:)", "taskGroups" : [ ], - "title" : "translate(by:)", - "usr" : "s:6Euclid13TransformablePAAE9translate2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "init(start:end:)", + "usr" : "s:6Euclid11LineSegmentV5start3endACSgAA6VectorV_AHtcfc" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Creates a quaternion from raw component values.", "type" : "text" } ], @@ -40177,27 +41336,38 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "identifier", - "text" : "scale" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : "(" + "text" : ", " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ": " + "text" : ", " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ", " }, { "kind" : "typeIdentifier", @@ -40209,20 +41379,20 @@ "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/scale(by:)-55ayx", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scale(by:)-55ayx", + "path" : "\/documentation\/euclid\/quaternion\/init(_:_:_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Quaternion\/init(_:_:_:_:)", "taskGroups" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "init(_:_:_:_:)", + "usr" : "s:6Euclid10QuaternionVyACSd_S3dtcfc" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "The polygons that make up the mesh.", "type" : "text" } ], @@ -40232,7 +41402,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -40240,61 +41410,46 @@ }, { "kind" : "identifier", - "text" : "translated" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "polygons" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)", + "path" : "\/documentation\/euclid\/mesh\/polygons", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/polygons", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid11LineSegmentV10translated2byAcA6VectorV_tF" + "title" : "polygons", + "usr" : "s:6Euclid4MeshV8polygonsSayAA7PolygonVGvp" }, { + "abstract" : [ + { + "text" : "A distance or position in 3D space.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "func" + "text" : "struct" }, { "kind" : "text", @@ -40302,82 +41457,147 @@ }, { "kind" : "identifier", - "text" : "..<" + "text" : "Vector" + } + ], + "kind" : "org.swift.docc.kind.structure", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-228p6", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-4eop9", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5n3j", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-63ct7", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-6nlm", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-8b34m", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(size:)-nkyk" + ], + "title" : "Creating Vectors" }, { - "kind" : "text", - "text" : " " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/zero", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/one", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitX", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitY", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitZ" + ], + "title" : "Default Vectors" }, { - "kind" : "text", - "text" : "(" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/x", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/y", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/z", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/length", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lengthSquared", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isZero", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isOne" + ], + "title" : "Vector Properties" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/dot(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/cross(_:)" + ], + "title" : "Computing Vectors" }, { - "kind" : "text", - "text" : ", " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lerp(_:_:)" + ], + "title" : "Interpolating Vectors" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/normalized()", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/rotated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-350oy", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/scaled(by:)-356zr", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/transformed(by:)" + ], + "title" : "Transforming Vectors" }, { - "kind" : "text", - "text" : ") -> " + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-29paf", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/angle(with:)-9sfg1", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-3eglz", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/distance(from:)-5p7ko", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-817o2", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/project(onto:)-rksk" + ], + "title" : "Comparing Vectors" }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sn", - "text" : "Range" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/+=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-(_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/-=(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-48gl1", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*(_:_:)-5mcy5", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-3ur4e" + ], + "title" : "Operators" }, { - "kind" : "text", - "text" : "<" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/*=(_:_:)-9l46a", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/(_:_:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/\/=(_:_:)" + ], + "title" : "Operators" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-5s4mt", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-7r7et" + ], + "title" : "Initializers" }, { - "kind" : "text", - "text" : ">" - } - ], - "kind" : "org.swift.docc.kind.operator", - "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/'.._(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/.._(_:_:)", - "taskGroups" : [ - - ], - "title" : "..<(_:_:)", - "usr" : "s:SLsE3zzloiySnyxGx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Equatable-Implementations", - "taskGroups" : [ + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/isNormalized" + ], + "title" : "Instance Properties" + }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/!=(_:_:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/AdditiveArithmetic-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Comparable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Decodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Encodable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Equatable-Implementations", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Transformable-Implementations" ], - "title" : "Operators" + "title" : "Default Implementations" } ], - "title" : "Equatable Implementations" + "title" : "Vector", + "usr" : "s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Performs a spherical linear interpolation between two rotations.", + "text" : "An optional ", + "type" : "text" + }, + { + "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/Material-swift.typealias", + "isActive" : true, + "type" : "reference" + }, + { + "text" : " associated with the polygon.", "type" : "text" } ], @@ -40387,7 +41607,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -40395,47 +41615,39 @@ }, { "kind" : "identifier", - "text" : "slerp" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "material" }, { "kind" : "text", - "text" : ", " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "text" : "?" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/rotation\/slerp(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/slerp(_:_:)", + "path" : "\/documentation\/euclid\/polygon\/material-swift.property", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/material-swift.property", "taskGroups" : [ ], - "title" : "slerp(_:_:)", - "usr" : "s:6Euclid8RotationV5slerpyA2C_SdtF" + "title" : "material", + "usr" : "s:6Euclid7PolygonV8materials11AnyHashableVSgvp" }, { + "abstract" : [ + { + "text" : "Creates a new path by decoding from the given decoder.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -40450,24 +41662,7 @@ }, { "kind" : "externalParam", - "text" : "cgPath" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@CGPathRef", - "text" : "CGPath" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "detail" + "text" : "from" }, { "kind" : "text", @@ -40475,56 +41670,50 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "color" + "preciseIdentifier" : "s:s7DecoderP", + "text" : "Decoder" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "text" : ") " }, { - "kind" : "text", - "text" : "?)" + "kind" : "keyword", + "text" : "throws" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(cgpath:detail:color:)", - "platforms" : [ + "path" : "\/documentation\/euclid\/path\/init(from:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(from:)", + "taskGroups" : [ ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(cgPath:detail:color:)", + "title" : "init(from:)", + "usr" : "s:6Euclid4PathV4fromACs7Decoder_p_tKcfc" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/Equatable-Implementations", "taskGroups" : [ - + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/!=(_:_:)" + ], + "title" : "Operators" + } ], - "title" : "init(cgPath:detail:color:)", - "usr" : "s:6Euclid4PathV02cgB06detail5colorACSo9CGPathRefa_SiAA5ColorVSgtcfc" + "title" : "Equatable Implementations" }, { "abstract" : [ { - "text" : "Creates a Path from a ", - "type" : "text" - }, - { - "code" : "CGPath", - "type" : "codeVoice" - }, - { - "text" : ". The returned path may contain nested subpaths.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -40534,24 +41723,23 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@CGPathRef", - "text" : "CGPath" + "kind" : "identifier", + "text" : "rotated" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { "kind" : "externalParam", - "text" : "detail" + "text" : "by" }, { "kind" : "text", @@ -40559,40 +41747,27 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "color" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" - }, - { - "kind" : "text", - "text" : "?)" + "text" : "Self" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(_:detail:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(_:detail:color:)", + "path" : "\/documentation\/euclid\/transformable\/rotated(by:)-76uyz", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-76uyz", "taskGroups" : [ ], - "title" : "init(_:detail:color:)", - "usr" : "s:6Euclid4PathV_6detail5colorACSo9CGPathRefa_SiAA5ColorVSgtcfc" + "title" : "rotated(by:)", + "usr" : "s:6Euclid13TransformableP7rotated2byxAA8RotationV_tF" }, { "availableLanguages" : [ @@ -40651,18 +41826,18 @@ ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/!=(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/!=(_:_:)", + "path" : "\/documentation\/euclid\/vector\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/!=(_:_:)", "taskGroups" : [ ], "title" : "!=(_:_:)", - "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" }, { "abstract" : [ { - "text" : "Creates a circular arc.", + "text" : "Computes the point of intersection between a line and a plane.", "type" : "text" } ], @@ -40670,14 +41845,6 @@ "swift" ], "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, { "kind" : "keyword", "text" : "func" @@ -40688,7 +41855,7 @@ }, { "kind" : "identifier", - "text" : "arc" + "text" : "intersection" }, { "kind" : "text", @@ -40696,41 +41863,7 @@ }, { "kind" : "externalParam", - "text" : "angle" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "radius" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "segments" + "text" : "with" }, { "kind" : "text", @@ -40738,50 +41871,37 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" - }, - { - "kind" : "text", - "text" : "?, " - }, - { - "kind" : "externalParam", - "text" : "color" + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : "?) -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" + "text" : "?" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/arc(angle:radius:segments:color:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/arc(angle:radius:segments:color:)", + "path" : "\/documentation\/euclid\/plane\/intersection(with:)-79olr", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/intersection(with:)-79olr", "taskGroups" : [ ], - "title" : "arc(angle:radius:segments:color:)", - "usr" : "s:6Euclid4PathV3arc5angle6radius8segments5colorAcA5AngleV_SdSiSgAA5ColorVSgtFZ" + "title" : "intersection(with:)", + "usr" : "s:6Euclid5PlaneV12intersection4withAA6VectorVSgAA4LineV_tF" }, { "abstract" : [ { - "text" : "Returns a translated copy of the value.", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -40799,7 +41919,7 @@ }, { "kind" : "identifier", - "text" : "translated" + "text" : "rotated" }, { "kind" : "text", @@ -40815,8 +41935,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", @@ -40824,21 +41944,27 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV", + "text" : "Polygon" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/translated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/translated(by:)", + "path" : "\/documentation\/euclid\/polygon\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/rotated(by:)", "taskGroups" : [ ], - "title" : "translated(by:)", - "usr" : "s:6Euclid6VectorV10translated2byA2C_tF" + "title" : "rotated(by:)", + "usr" : "s:6Euclid7PolygonV7rotated2byAcA8RotationV_tF" }, { + "abstract" : [ + { + "text" : "Transform the value in place.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -40853,7 +41979,7 @@ }, { "kind" : "keyword", - "text" : "let" + "text" : "func" }, { "kind" : "text", @@ -40861,92 +41987,56 @@ }, { "kind" : "identifier", - "text" : "white" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" - } - ], - "kind" : "org.swift.docc.kind.typeProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/color\/white", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/white", - "taskGroups" : [ - - ], - "title" : "white", - "usr" : "s:6Euclid5ColorV5whiteACvpZ" - }, - { - "abstract" : [ - { - "text" : "Returns a scaled copy of the value.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" + "text" : "*=" }, { "kind" : "text", "text" : " " }, - { - "kind" : "identifier", - "text" : "scaled" - }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/scaled(by:)-29v7y", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scaled(by:)-29v7y", + "path" : "\/documentation\/euclid\/vertex\/*=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/*=(_:_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid5PlaneV6scaled2byAcA6VectorV_tF" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid13TransformablePAAE2meoiyyxz_AA9TransformVtFZ::SYNTHESIZED::s:6Euclid6VertexV" }, { "abstract" : [ { - "text" : "A surface normal vector, perpendicular to the plane.", + "text" : "Creates a plane from a point and surface normal.", "type" : "text" } ], @@ -40956,14 +42046,14 @@ "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?(" }, { - "kind" : "identifier", + "kind" : "externalParam", "text" : "normal" }, { @@ -40974,58 +42064,14 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/normal", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/normal", - "taskGroups" : [ - - ], - "title" : "normal", - "usr" : "s:6Euclid5PlaneV6normalAA6VectorVvp" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" - }, - { - "abstract" : [ - { - "text" : "The position of the path point.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "position" + "kind" : "externalParam", + "text" : "pointOnPlane" }, { "kind" : "text", @@ -41035,30 +42081,26 @@ "kind" : "typeIdentifier", "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/pathpoint\/position", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/position", + "path" : "\/documentation\/euclid\/plane\/init(normal:pointonplane:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(normal:pointOnPlane:)", "taskGroups" : [ ], - "title" : "position", - "usr" : "s:6Euclid9PathPointV8positionAA6VectorVvp" + "title" : "init(normal:pointOnPlane:)", + "usr" : "s:6Euclid5PlaneV6normal07pointOnB0ACSgAA6VectorV_AHtcfc" }, { "abstract" : [ { - "text" : "A vector of length ", - "type" : "text" - }, - { - "code" : "1", - "type" : "codeVoice" - }, - { - "text" : " along the X axis.", + "text" : "Creates a rotation from an axis and angle.", "type" : "text" } ], @@ -41068,23 +42110,32 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "?(" + }, + { + "kind" : "externalParam", + "text" : "axis" + }, + { + "kind" : "text", + "text" : ": " }, { - "kind" : "keyword", - "text" : "let" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" }, { "kind" : "text", - "text" : " " + "text" : ", " }, { - "kind" : "identifier", - "text" : "unitX" + "kind" : "externalParam", + "text" : "angle" }, { "kind" : "text", @@ -41092,27 +42143,25 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + }, + { + "kind" : "text", + "text" : ")" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/unitx", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/unitX", + "path" : "\/documentation\/euclid\/rotation\/init(axis:angle:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(axis:angle:)", "taskGroups" : [ ], - "title" : "unitX", - "usr" : "s:6Euclid6VectorV5unitXACvpZ" + "title" : "init(axis:angle:)", + "usr" : "s:6Euclid8RotationV4axis5angleACSgAA6VectorV_AA5AngleVtcfc" }, { - "abstract" : [ - { - "text" : "Creates an axis-aligned cubical mesh.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -41135,117 +42184,169 @@ }, { "kind" : "identifier", - "text" : "cube" + "text" : "!=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "center" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "text" : "Self" }, { "kind" : "text", - "text" : ", " + "text" : ") -> " }, { - "kind" : "externalParam", - "text" : "size" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.operator", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/!=(_:_:)", + "taskGroups" : [ + + ], + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5PlaneV" + }, + { + "abstract" : [ + { + "text" : "Curve or uncurve the point.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "kind" : "identifier", + "text" : "curved" }, { "kind" : "text", - "text" : ", " + "text" : "(" }, { - "kind" : "externalParam", - "text" : "faces" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" }, { "kind" : "text", - "text" : ": " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV5FacesO", - "text" : "Faces" + "preciseIdentifier" : "s:6Euclid9PathPointV", + "text" : "PathPoint" + } + ], + "kind" : "org.swift.docc.kind.instanceMethod", + "language" : "swift", + "path" : "\/documentation\/euclid\/pathpoint\/curved(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/curved(_:)", + "taskGroups" : [ + + ], + "title" : "curved(_:)", + "usr" : "s:6Euclid9PathPointV6curvedyACSbF" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ + { + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "wrapMode" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8WrapModeO", - "text" : "WrapMode" + "kind" : "identifier", + "text" : "!=" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { - "kind" : "externalParam", - "text" : "material" + "kind" : "text", + "text" : "(" + }, + { + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV8Materiala", - "text" : "Material" + "text" : "Self" }, { "kind" : "text", - "text" : "?) -> " + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/cube(center:size:faces:wrapmode:material:)-eado", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/cube(center:size:faces:wrapMode:material:)-eado", + "path" : "\/documentation\/euclid\/mesh\/wrapmode\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/WrapMode\/!=(_:_:)", "taskGroups" : [ ], - "title" : "cube(center:size:faces:wrapMode:material:)", - "usr" : "s:6Euclid4MeshV4cube6center4size5faces8wrapMode8materialAcA6VectorV_SdAC5FacesOAC04WrapH0Os11AnyHashableVSgtFZ" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid4MeshV8WrapModeO" }, { "abstract" : [ { - "text" : "Removes hairline cracks by inserting additional vertices without altering the shape.", + "text" : "The plane on which all vertices lie.", "type" : "text" } ], @@ -41255,7 +42356,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -41263,36 +42364,50 @@ }, { "kind" : "identifier", - "text" : "makeWatertight" + "text" : "plane" }, { "kind" : "text", - "text" : "() -> " + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:6Euclid5PlaneV", + "text" : "Plane" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/makewatertight()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/makeWatertight()", + "path" : "\/documentation\/euclid\/polygon\/plane", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/plane", "taskGroups" : [ ], - "title" : "makeWatertight()", - "usr" : "s:6Euclid4MeshV14makeWatertightACyF" + "title" : "plane", + "usr" : "s:6Euclid7PolygonV5planeAA5PlaneVvp" }, { + "abstract" : [ + { + "text" : "Returns the point where the specified line intersects this one.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "func" + }, + { + "kind" : "text", + "text" : " " + }, + { + "kind" : "identifier", + "text" : "intersection" }, { "kind" : "text", @@ -41300,7 +42415,7 @@ }, { "kind" : "externalParam", - "text" : "polygon" + "text" : "with" }, { "kind" : "text", @@ -41308,31 +42423,37 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid4LineV", + "text" : "Line" }, { "kind" : "text", - "text" : ")" + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" + }, + { + "kind" : "text", + "text" : "?" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/init(polygon:)", - "platforms" : [ - - ], - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(polygon:)", + "path" : "\/documentation\/euclid\/line\/intersection(with:)-2nysu", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-2nysu", "taskGroups" : [ ], - "title" : "init(polygon:)", - "usr" : "s:6Euclid4PathV7polygonAcA7PolygonV_tcfc" + "title" : "intersection(with:)", + "usr" : "s:6Euclid4LineV12intersection4withAA6VectorVSgAC_tF" }, { "abstract" : [ { - "text" : "Flip the direction of the line segment", + "text" : "Returns a rotated copy of the value.", "type" : "text" } ], @@ -41350,32 +42471,49 @@ }, { "kind" : "identifier", - "text" : "inverted" + "text" : "rotated" }, { "kind" : "text", - "text" : "() -> " + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" + }, + { + "kind" : "text", + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid11LineSegmentV", - "text" : "LineSegment" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/inverted()", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/inverted()", + "path" : "\/documentation\/euclid\/mesh\/rotated(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotated(by:)", "taskGroups" : [ ], - "title" : "inverted()", - "usr" : "s:6Euclid11LineSegmentV8invertedACyF" + "title" : "rotated(by:)", + "usr" : "s:6Euclid4MeshV7rotated2byAcA8RotationV_tF" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "Returns whether the leftmost angle has the lower value.", "type" : "text" } ], @@ -41383,6 +42521,14 @@ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -41393,24 +42539,29 @@ }, { "kind" : "identifier", - "text" : "rotated" + "text" : "<" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" }, { "kind" : "text", @@ -41418,19 +42569,19 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4MeshV", - "text" : "Mesh" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/rotated(by:)", + "path" : "\/documentation\/euclid\/angle\/_(_:_:)-1aqv9", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/_(_:_:)-1aqv9", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid4MeshV7rotated2byAcA8RotationV_tF" + "title" : "<(_:_:)", + "usr" : "s:6Euclid5AngleV1loiySbAC_ACtFZ" }, { "availableLanguages" : [ @@ -41438,39 +42589,22 @@ ], "kind" : "org.swift.docc.kind.collectionGroup", "language" : "swift", - "path" : "\/documentation\/euclid\/linesegment\/transformable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/Transformable-Implementations", + "path" : "\/documentation\/euclid\/rotation\/decodable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/Decodable-Implementations", "taskGroups" : [ { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*(_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/*=(_:_:)" - ], - "title" : "Operators" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-16elu", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotate(by:)-l48f", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-2v2ef", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scale(by:)-8v4ag", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-2lm8c", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/scaled(by:)-37r1v", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transform(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/transformed(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translate(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/translated(by:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/init(from:)" ], - "title" : "Instance Methods" + "title" : "Initializers" } ], - "title" : "Transformable Implementations" + "title" : "Decodable Implementations" }, { "abstract" : [ { - "text" : "A Boolean value that indicates whether the mesh includes texture coordinates.", + "text" : "Returns a transformed copy of the value.", "type" : "text" } ], @@ -41480,7 +42614,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "var" + "text" : "func" }, { "kind" : "text", @@ -41488,7 +42622,15 @@ }, { "kind" : "identifier", - "text" : "hasTexcoords" + "text" : "transformed" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "by" }, { "kind" : "text", @@ -41496,42 +42638,111 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" + }, + { + "kind" : "text", + "text" : ") -> " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" } ], - "kind" : "org.swift.docc.kind.instanceProperty", + "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/mesh\/hastexcoords", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasTexcoords", + "path" : "\/documentation\/euclid\/transform\/transformed(by:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/transformed(by:)", "taskGroups" : [ ], - "title" : "hasTexcoords", - "usr" : "s:6Euclid4MeshV12hasTexcoordsSbvp" + "title" : "transformed(by:)", + "usr" : "s:6Euclid9TransformV11transformed2byA2C_tF" }, { "availableLanguages" : [ "swift" ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/Equatable-Implementations", - "taskGroups" : [ + "fragments" : [ { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/!=(_:_:)" - ], - "title" : "Operators" + "kind" : "keyword", + "text" : "init" + }, + { + "kind" : "text", + "text" : "(" + }, + { + "kind" : "externalParam", + "text" : "cgPath" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@T@CGPathRef", + "text" : "CGPath" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "detail" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Si", + "text" : "Int" + }, + { + "kind" : "text", + "text" : ", " + }, + { + "kind" : "externalParam", + "text" : "color" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" + }, + { + "kind" : "text", + "text" : "?)" } ], - "title" : "Equatable Implementations" + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/path\/init(cgpath:detail:color:)", + "platforms" : [ + + ], + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/init(cgPath:detail:color:)", + "taskGroups" : [ + + ], + "title" : "init(cgPath:detail:color:)", + "usr" : "s:6Euclid4PathV02cgB06detail5colorACSo9CGPathRefa_SiAA5ColorVSgtcfc" }, { "abstract" : [ { - "text" : "Returns a rotated copy of the value.", + "text" : "An array containing the X, Y, and Z components of the vector.", "type" : "text" } ], @@ -41541,7 +42752,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "var" }, { "kind" : "text", @@ -41549,74 +42760,74 @@ }, { "kind" : "identifier", - "text" : "rotated" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" + "text" : "components" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" + "preciseIdentifier" : "s:Sd", + "text" : "Double" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "text" : "]" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/rotated(by:)-76uyz", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/rotated(by:)-76uyz", + "path" : "\/documentation\/euclid\/vector\/components", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/components", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid13TransformableP7rotated2byxAA8RotationV_tF" + "title" : "components", + "usr" : "s:6Euclid6VectorV10componentsSaySdGvp" }, { - "abstract" : [ + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/plane\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/Equatable-Implementations", + "taskGroups" : [ { - "text" : "Returns a transformed copy of the value.", - "type" : "text" + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/!=(_:_:)" + ], + "title" : "Operators" } ], + "title" : "Equatable Implementations" + }, + { "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "func" + "text" : "static" }, { "kind" : "text", "text" : " " }, { - "kind" : "identifier", - "text" : "transformed" + "kind" : "keyword", + "text" : "let" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "identifier", + "text" : "green" }, { "kind" : "text", @@ -41624,40 +42835,24 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid9TransformV", - "text" : "Transform" - }, - { - "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid5ColorV", + "text" : "Color" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.typeProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/transformed(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/transformed(by:)", + "path" : "\/documentation\/euclid\/color\/green", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/green", "taskGroups" : [ ], - "title" : "transformed(by:)", - "usr" : "s:6Euclid13TransformablePAAE11transformed2byxAA9TransformV_tF::SYNTHESIZED::s:6Euclid6BoundsV" + "title" : "green", + "usr" : "s:6Euclid5ColorV5greenACvpZ" }, { "abstract" : [ { - "text" : "Align extruded cross-sections with the X, Y or Z axis", - "type" : "text" - }, - { - "text" : " ", - "type" : "text" - }, - { - "text" : "(whichever is most perpendicular to the extrusion path).", + "text" : "A Boolean value that indicates whether the mesh includes vertex normals that differ from the face normal.", "type" : "text" } ], @@ -41667,7 +42862,7 @@ "fragments" : [ { "kind" : "keyword", - "text" : "case" + "text" : "var" }, { "kind" : "text", @@ -41675,23 +42870,32 @@ }, { "kind" : "identifier", - "text" : "axis" + "text" : "hasVertexNormals" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.enumerationCase", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/alignment\/axis", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/Alignment\/axis", + "path" : "\/documentation\/euclid\/mesh\/hasvertexnormals", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasVertexNormals", "taskGroups" : [ ], - "title" : "Path.Alignment.axis", - "usr" : "s:6Euclid4PathV9AlignmentO4axisyA2EmF" + "title" : "hasVertexNormals", + "usr" : "s:6Euclid4MeshV16hasVertexNormalsSbvp" }, { "abstract" : [ { - "text" : "Creates an array of glyph contours from a string and font you provide.", + "text" : "Angle representing a quarter rotation.", "type" : "text" } ], @@ -41709,7 +42913,7 @@ }, { "kind" : "keyword", - "text" : "func" + "text" : "let" }, { "kind" : "text", @@ -41717,93 +42921,100 @@ }, { "kind" : "identifier", - "text" : "text" + "text" : "halfPi" }, { "kind" : "text", - "text" : "(" + "text" : ": " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:SS", - "text" : "String" - }, - { - "kind" : "text", - "text" : ", " - }, + "preciseIdentifier" : "s:6Euclid5AngleV", + "text" : "Angle" + } + ], + "kind" : "org.swift.docc.kind.typeProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/angle\/halfpi", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/halfPi", + "taskGroups" : [ + + ], + "title" : "halfPi", + "usr" : "s:6Euclid5AngleV6halfPiACvpZ" + }, + { + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "externalParam", - "text" : "font" + "kind" : "keyword", + "text" : "static" }, { "kind" : "text", - "text" : ": " + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@CTFontRef", - "text" : "CTFont" + "kind" : "keyword", + "text" : "func" }, { "kind" : "text", - "text" : "?, " + "text" : " " }, { - "kind" : "externalParam", - "text" : "width" + "kind" : "identifier", + "text" : ">=" }, { "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : " " }, { "kind" : "text", - "text" : "?, " + "text" : "(" }, { - "kind" : "externalParam", - "text" : "detail" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Si", - "text" : "Int" + "text" : "Self" }, { "kind" : "text", - "text" : ") -> [" + "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid4PathV", - "text" : "Path" - }, - { - "kind" : "text", - "text" : "]" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.typeMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/path\/text(_:font:width:detail:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/text(_:font:width:detail:)", + "path" : "\/documentation\/euclid\/linesegment\/_=(_:_:)-5dvuy", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/LineSegment\/_=(_:_:)-5dvuy", "taskGroups" : [ ], - "title" : "text(_:font:width:detail:)", - "usr" : "s:6Euclid4PathV4text_4font5width6detailSayACGSS_So9CTFontRefaSgSdSgSitFZ" + "title" : ">=(_:_:)", + "usr" : "s:SLsE2geoiySbx_xtFZ::SYNTHESIZED::s:6Euclid11LineSegmentV" }, { + "abstract" : [ + { + "text" : "Multiplies the rotation angle by the specified value.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], @@ -41826,7 +43037,7 @@ }, { "kind" : "identifier", - "text" : "<=" + "text" : "*=" }, { "kind" : "text", @@ -41837,49 +43048,46 @@ "text" : "(" }, { - "kind" : "typeIdentifier", - "text" : "Self" + "kind" : "keyword", + "text" : "inout" }, { "kind" : "text", - "text" : ", " + "text" : " " }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:Sd", + "text" : "Double" + }, + { + "kind" : "text", + "text" : ")" } ], "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/_=(_:_:)-j6oq", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/_=(_:_:)-j6oq", + "path" : "\/documentation\/euclid\/rotation\/*=(_:_:)-7u9hf", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Rotation\/*=(_:_:)-7u9hf", "taskGroups" : [ ], - "title" : "<=(_:_:)", - "usr" : "s:SLsE2leoiySbx_xtFZ::SYNTHESIZED::s:6Euclid6VectorV" + "title" : "*=(_:_:)", + "usr" : "s:6Euclid8RotationV2meoiyyACz_SdtFZ" }, { "abstract" : [ { - "text" : "Creates a color from a CoreGraphics ", - "type" : "text" - }, - { - "code" : "CGColor", - "type" : "codeVoice" - }, - { - "text" : ".", + "text" : "Cropped and flattened version of path suitable for lathing around the Y axis.", "type" : "text" } ], @@ -41889,54 +43097,40 @@ "fragments" : [ { "kind" : "keyword", - "text" : "init" + "text" : "var" }, { "kind" : "text", - "text" : "(" + "text" : " " }, { - "kind" : "typeIdentifier", - "preciseIdentifier" : "c:@T@CGColorRef", - "text" : "CGColor" + "kind" : "identifier", + "text" : "latheProfile" }, { "kind" : "text", - "text" : ")" + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:6Euclid4PathV", + "text" : "Path" } ], - "kind" : "org.swift.docc.kind.initializer", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/init(_:)-25eby", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/init(_:)-25eby", + "path" : "\/documentation\/euclid\/path\/latheprofile", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/latheProfile", "taskGroups" : [ ], - "title" : "init(_:)", - "usr" : "s:6Euclid5ColorVyACSo10CGColorRefacfc" - }, - { - "availableLanguages" : [ - "swift" - ], - "kind" : "org.swift.docc.kind.collectionGroup", - "language" : "swift", - "path" : "\/documentation\/euclid\/transform\/equatable-implementations", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/Equatable-Implementations", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transform\/!=(_:_:)" - ], - "title" : "Operators" - } - ], - "title" : "Equatable Implementations" + "title" : "latheProfile", + "usr" : "s:6Euclid4PathV12latheProfileACvp" }, { "abstract" : [ { - "text" : "The angle is zero (or close to zero).", + "text" : "Returns the ordered array of polygon edges.", "type" : "text" } ], @@ -41954,32 +43148,36 @@ }, { "kind" : "identifier", - "text" : "isZero" + "text" : "orderedEdges" }, { "kind" : "text", - "text" : ": " + "text" : ": [" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid11LineSegmentV", + "text" : "LineSegment" + }, + { + "kind" : "text", + "text" : "]" } ], "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/iszero", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/isZero", + "path" : "\/documentation\/euclid\/polygon\/orderededges", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/orderedEdges", "taskGroups" : [ ], - "title" : "isZero", - "usr" : "s:6Euclid5AngleV6isZeroSbvp" + "title" : "orderedEdges", + "usr" : "s:6Euclid7PolygonV12orderedEdgesSayAA11LineSegmentVGvp" }, { "abstract" : [ { - "text" : "Returns the sum of two angles.", + "text" : "Creates a new vector from a CoreGraphics size.", "type" : "text" } ], @@ -41989,27 +43187,46 @@ "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "init" }, { "kind" : "text", - "text" : " " + "text" : "(" }, { - "kind" : "keyword", - "text" : "func" + "kind" : "typeIdentifier", + "preciseIdentifier" : "c:@S@CGSize", + "text" : "CGSize" }, { "kind" : "text", - "text" : " " - }, + "text" : ")" + } + ], + "kind" : "org.swift.docc.kind.initializer", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/init(_:)-6nlm", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/init(_:)-6nlm", + "taskGroups" : [ + + ], + "title" : "init(_:)", + "usr" : "s:6Euclid6VectorVyACSo6CGSizeVcfc" + }, + { + "abstract" : [ { - "kind" : "identifier", - "text" : "+" - }, + "text" : "Creates a path point from a vertex.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { - "kind" : "text", - "text" : " " + "kind" : "keyword", + "text" : "init" }, { "kind" : "text", @@ -42017,42 +43234,28 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5AngleV", - "text" : "Angle" + "text" : ")" } ], - "kind" : "org.swift.docc.kind.operator", + "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/angle\/+(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/+(_:_:)", + "path" : "\/documentation\/euclid\/pathpoint\/init(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/PathPoint\/init(_:)", "taskGroups" : [ ], - "title" : "+(_:_:)", - "usr" : "s:6Euclid5AngleV1poiyA2C_ACtFZ" + "title" : "init(_:)", + "usr" : "s:6Euclid9PathPointVyAcA6VertexVcfc" }, { "abstract" : [ { - "text" : "Creates a bounds from two points.", + "text" : "Creates a polygon from a set of vertex positions.", "type" : "text" } ], @@ -42066,41 +43269,57 @@ }, { "kind" : "text", - "text" : "(" + "text" : "?<" + }, + { + "kind" : "genericParameter", + "text" : "T" + }, + { + "kind" : "text", + "text" : ">(" }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV_8materialACSgx_s11AnyHashableVSgtcSTRzAA6VectorV7ElementRtzlufc1TL_xmfp", + "text" : "T" }, { "kind" : "text", "text" : ", " }, + { + "kind" : "externalParam", + "text" : "material" + }, + { + "kind" : "text", + "text" : ": " + }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" + "preciseIdentifier" : "s:6Euclid7PolygonV8Materiala", + "text" : "Material" }, { "kind" : "text", - "text" : ")" + "text" : "?)" } ], "kind" : "org.swift.docc.kind.initializer", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/init(_:_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/init(_:_:)", + "path" : "\/documentation\/euclid\/polygon\/init(_:material:)-8gsiw", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/init(_:material:)-8gsiw", "taskGroups" : [ ], - "title" : "init(_:_:)", - "usr" : "s:6Euclid6BoundsVyAcA6VectorV_AEtcfc" + "title" : "init(_:material:)", + "usr" : "s:6Euclid7PolygonV_8materialACSgx_s11AnyHashableVSgtcSTRzAA6VectorV7ElementRtzlufc" }, { "abstract" : [ { - "text" : "Returns a scaled copy of the value.", + "text" : "Rotate the value in place.", "type" : "text" } ], @@ -42118,7 +43337,7 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "rotate" }, { "kind" : "text", @@ -42134,45 +43353,99 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "preciseIdentifier" : "s:6Euclid8RotationV", + "text" : "Rotation" }, { "kind" : "text", - "text" : ") -> " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "text" : ")" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/scaled(by:)-69m6m", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scaled(by:)-69m6m", + "path" : "\/documentation\/euclid\/path\/rotate(by:)-3m9le", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Path\/rotate(by:)-3m9le", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid7PolygonV6scaled2byACSd_tF" + "title" : "rotate(by:)", + "usr" : "s:6Euclid13TransformablePAAE6rotate2byyAA8RotationV_tF::SYNTHESIZED::s:6Euclid4PathV" + }, + { + "availableLanguages" : [ + "swift" + ], + "kind" : "org.swift.docc.kind.collectionGroup", + "language" : "swift", + "path" : "\/documentation\/euclid\/vector\/equatable-implementations", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/Equatable-Implementations", + "taskGroups" : [ + { + "identifiers" : [ + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/!=(_:_:)" + ], + "title" : "Operators" + } + ], + "title" : "Equatable Implementations" }, { + "abstract" : [ + { + "text" : "A Boolean value that indicates whether the mesh includes texture coordinates.", + "type" : "text" + } + ], "availableLanguages" : [ "swift" ], "fragments" : [ { "kind" : "keyword", - "text" : "static" + "text" : "var" }, { "kind" : "text", "text" : " " }, + { + "kind" : "identifier", + "text" : "hasTexcoords" + }, + { + "kind" : "text", + "text" : ": " + }, + { + "kind" : "typeIdentifier", + "preciseIdentifier" : "s:Sb", + "text" : "Bool" + } + ], + "kind" : "org.swift.docc.kind.instanceProperty", + "language" : "swift", + "path" : "\/documentation\/euclid\/mesh\/hastexcoords", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/hasTexcoords", + "taskGroups" : [ + + ], + "title" : "hasTexcoords", + "usr" : "s:6Euclid4MeshV12hasTexcoordsSbvp" + }, + { + "abstract" : [ + { + "text" : "The center of the bounds. If the bounds is empty this will return the zero vector.", + "type" : "text" + } + ], + "availableLanguages" : [ + "swift" + ], + "fragments" : [ { "kind" : "keyword", - "text" : "let" + "text" : "var" }, { "kind" : "text", @@ -42180,7 +43453,7 @@ }, { "kind" : "identifier", - "text" : "green" + "text" : "center" }, { "kind" : "text", @@ -42188,31 +43461,33 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5ColorV", - "text" : "Color" + "preciseIdentifier" : "s:6Euclid6VectorV", + "text" : "Vector" } ], - "kind" : "org.swift.docc.kind.typeProperty", + "kind" : "org.swift.docc.kind.instanceProperty", "language" : "swift", - "path" : "\/documentation\/euclid\/color\/green", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Color\/green", + "path" : "\/documentation\/euclid\/bounds\/center", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/center", "taskGroups" : [ ], - "title" : "green", - "usr" : "s:6Euclid5ColorV5greenACvpZ" + "title" : "center", + "usr" : "s:6Euclid6BoundsV6centerAA6VectorVvp" }, { - "abstract" : [ - { - "text" : "Returns a scaled copy of the value.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], "fragments" : [ + { + "kind" : "keyword", + "text" : "static" + }, + { + "kind" : "text", + "text" : " " + }, { "kind" : "keyword", "text" : "func" @@ -42223,24 +43498,27 @@ }, { "kind" : "identifier", - "text" : "scaled" + "text" : "!=" + }, + { + "kind" : "text", + "text" : " " }, { "kind" : "text", "text" : "(" }, { - "kind" : "externalParam", - "text" : "by" + "kind" : "typeIdentifier", + "text" : "Self" }, { "kind" : "text", - "text" : ": " + "text" : ", " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" + "text" : "Self" }, { "kind" : "text", @@ -42248,18 +43526,19 @@ }, { "kind" : "typeIdentifier", - "text" : "Self" + "preciseIdentifier" : "s:Sb", + "text" : "Bool" } ], - "kind" : "org.swift.docc.kind.instanceMethod", + "kind" : "org.swift.docc.kind.operator", "language" : "swift", - "path" : "\/documentation\/euclid\/transformable\/scaled(by:)-5p6di", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Transformable\/scaled(by:)-5p6di", + "path" : "\/documentation\/euclid\/angle\/!=(_:_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Angle\/!=(_:_:)", "taskGroups" : [ ], - "title" : "scaled(by:)", - "usr" : "s:6Euclid13TransformableP6scaled2byxSd_tF" + "title" : "!=(_:_:)", + "usr" : "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:6Euclid5AngleV" }, { "abstract" : [ @@ -42455,8 +43734,13 @@ }, { "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-3drza", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materialLookup:)-7p5hd", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-22brv", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(_:materials:)-4k8gs", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(scnGeometry:materialLookup:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlData:materialLookup:)", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/init(stlString:)" ], "title" : "Initializers" }, @@ -42478,7 +43762,10 @@ { "identifiers" : [ "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/Alignment", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider" + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/RealityKitMaterialProvider", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/SCNMaterialProvider", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLColorProvider", + "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/STLMaterialProvider" ], "title" : "Type Aliases" }, @@ -42504,12 +43791,6 @@ "usr" : "s:6Euclid4MeshV" }, { - "abstract" : [ - { - "text" : "Merges this polygon with another, removing redundant vertices where possible.", - "type" : "text" - } - ], "availableLanguages" : [ "swift" ], @@ -42524,7 +43805,7 @@ }, { "kind" : "identifier", - "text" : "merge" + "text" : "xor" }, { "kind" : "text", @@ -42532,8 +43813,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" }, { "kind" : "text", @@ -42541,7 +43822,7 @@ }, { "kind" : "externalParam", - "text" : "ensureConvex" + "text" : "isCancelled" }, { "kind" : "text", @@ -42549,8 +43830,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sb", - "text" : "Bool" + "preciseIdentifier" : "s:6Euclid4MeshV19CancellationHandlera", + "text" : "CancellationHandler" }, { "kind" : "text", @@ -42558,342 +43839,27 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid7PolygonV", - "text" : "Polygon" - }, - { - "kind" : "text", - "text" : "?" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/merge(_:ensureconvex:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/merge(_:ensureConvex:)", - "taskGroups" : [ - - ], - "title" : "merge(_:ensureConvex:)", - "usr" : "s:6Euclid7PolygonV5merge_12ensureConvexACSgAC_SbtF" - }, - { - "abstract" : [ - { - "text" : "The square of the length of the vector. This is less expensive to compute than the length itself.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "var" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "lengthSquared" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - } - ], - "kind" : "org.swift.docc.kind.instanceProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/vector\/lengthsquared", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vector\/lengthSquared", - "taskGroups" : [ - - ], - "title" : "lengthSquared", - "usr" : "s:6Euclid6VectorV13lengthSquaredSdvp" - }, - { - "abstract" : [ - { - "text" : "Creates a plane from a point and surface normal.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "init" - }, - { - "kind" : "text", - "text" : "?(" - }, - { - "kind" : "externalParam", - "text" : "normal" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ", " - }, - { - "kind" : "externalParam", - "text" : "pointOnPlane" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6VectorV", - "text" : "Vector" - }, - { - "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.initializer", - "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/init(normal:pointonplane:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/init(normal:pointOnPlane:)", - "taskGroups" : [ - - ], - "title" : "init(normal:pointOnPlane:)", - "usr" : "s:6Euclid5PlaneV6normal07pointOnB0ACSgAA6VectorV_AHtcfc" - }, - { - "abstract" : [ - { - "text" : "Scale the value in place.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "scale" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:Sd", - "text" : "Double" - }, - { - "kind" : "text", - "text" : ")" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/scale(by:)-758tv", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/scale(by:)-758tv", - "taskGroups" : [ + "path" : "\/documentation\/euclid\/mesh\/xor(_:iscancelled:)-swift.method", + "platforms" : [ ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byySd_tF::SYNTHESIZED::s:6Euclid5PlaneV" - }, - { - "abstract" : [ - { - "text" : "An empty bounds.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "static" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "keyword", - "text" : "let" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "empty" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" - } - ], - "kind" : "org.swift.docc.kind.typeProperty", - "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/empty", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/empty", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/xor(_:isCancelled:)-swift.method", "taskGroups" : [ ], - "title" : "empty", - "usr" : "s:6Euclid6BoundsV5emptyACvpZ" - }, - { - "abstract" : [ - { - "text" : "A vertex represents a corner of a ", - "type" : "text" - }, - { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon", - "isActive" : true, - "type" : "reference" - }, - { - "text" : " or a point on the surface of a ", - "type" : "text" - }, - { - "identifier" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh", - "isActive" : true, - "type" : "reference" - }, - { - "text" : ".", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "struct" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "Vertex" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/vertex", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:_:_:_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-5517j", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(_:)-7go25" - ], - "title" : "Creating Vertices" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/position", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/normal", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/texcoord", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/color" - ], - "title" : "Vertex Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/inverted()", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/rotated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-1dtbr", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/translated(by:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/transformed(by:)" - ], - "title" : "Transforming Vertices" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/lerp(_:_:)" - ], - "title" : "Interpolating Vertices" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/encode(to:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/init(from:)" - ], - "title" : "Encoding and Decoding Vertices" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Equatable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/Transformable-Implementations" - ], - "title" : "Default Implementations" - } - ], - "title" : "Vertex", - "usr" : "s:6Euclid6VertexV" + "title" : "xor(_:isCancelled:)", + "usr" : "s:6Euclid4MeshV3xor_11isCancelledA2C_SbyXEtF" }, { "abstract" : [ { - "text" : "Scale the value in place.", + "text" : "Returns a scaled copy of the value.", "type" : "text" } ], @@ -42911,7 +43877,7 @@ }, { "kind" : "identifier", - "text" : "scale" + "text" : "scaled" }, { "kind" : "text", @@ -42930,151 +43896,30 @@ "preciseIdentifier" : "s:6Euclid6VectorV", "text" : "Vector" }, - { - "kind" : "text", - "text" : ")" - } - ], - "kind" : "org.swift.docc.kind.instanceMethod", - "language" : "swift", - "path" : "\/documentation\/euclid\/polygon\/scale(by:)-3en6y", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Polygon\/scale(by:)-3en6y", - "taskGroups" : [ - - ], - "title" : "scale(by:)", - "usr" : "s:6Euclid13TransformablePAAE5scale2byyAA6VectorV_tF::SYNTHESIZED::s:6Euclid7PolygonV" - }, - { - "abstract" : [ - { - "text" : "An infinite line in 3D space.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "struct" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "Line" - } - ], - "kind" : "org.swift.docc.kind.structure", - "language" : "swift", - "path" : "\/documentation\/euclid\/line", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line", - "taskGroups" : [ - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/init(origin:direction:)" - ], - "title" : "Creating Lines" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/origin", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/direction" - ], - "title" : "Line Properties" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/containsPoint(_:)", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-4o41", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/distance(from:)-77i61", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-2nysu", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersection(with:)-7s1sd", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/intersects(_:)" - ], - "title" : "Comparing Lines" - }, - { - "identifiers" : [ - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Decodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Encodable-Implementations", - "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Line\/Equatable-Implementations" - ], - "title" : "Default Implementations" - } - ], - "title" : "Line", - "usr" : "s:6Euclid4LineV" - }, - { - "abstract" : [ - { - "text" : "Returns a rotated copy of the value.", - "type" : "text" - } - ], - "availableLanguages" : [ - "swift" - ], - "fragments" : [ - { - "kind" : "keyword", - "text" : "func" - }, - { - "kind" : "text", - "text" : " " - }, - { - "kind" : "identifier", - "text" : "rotated" - }, - { - "kind" : "text", - "text" : "(" - }, - { - "kind" : "externalParam", - "text" : "by" - }, - { - "kind" : "text", - "text" : ": " - }, - { - "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid8RotationV", - "text" : "Rotation" - }, { "kind" : "text", "text" : ") -> " }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid5PlaneV", - "text" : "Plane" + "preciseIdentifier" : "s:6Euclid6VertexV", + "text" : "Vertex" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/plane\/rotated(by:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Plane\/rotated(by:)", + "path" : "\/documentation\/euclid\/vertex\/scaled(by:)-20sq4", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Vertex\/scaled(by:)-20sq4", "taskGroups" : [ ], - "title" : "rotated(by:)", - "usr" : "s:6Euclid5PlaneV7rotated2byAcA8RotationV_tF" + "title" : "scaled(by:)", + "usr" : "s:6Euclid6VertexV6scaled2byAcA6VectorV_tF" }, { "abstract" : [ { - "text" : "Creates a new bounds that contains both the specified bounds and this one.", + "text" : "Return a copy of the mesh with transformed texture coordinates.", "type" : "text" } ], @@ -43092,7 +43937,7 @@ }, { "kind" : "identifier", - "text" : "union" + "text" : "withTextureTransform" }, { "kind" : "text", @@ -43100,8 +43945,8 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:6Euclid9TransformV", + "text" : "Transform" }, { "kind" : "text", @@ -43109,18 +43954,18 @@ }, { "kind" : "typeIdentifier", - "preciseIdentifier" : "s:6Euclid6BoundsV", - "text" : "Bounds" + "preciseIdentifier" : "s:6Euclid4MeshV", + "text" : "Mesh" } ], "kind" : "org.swift.docc.kind.instanceMethod", "language" : "swift", - "path" : "\/documentation\/euclid\/bounds\/union(_:)", - "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Bounds\/union(_:)", + "path" : "\/documentation\/euclid\/mesh\/withtexturetransform(_:)", + "referenceURL" : "doc:\/\/com.charcoaldesign.Euclid\/documentation\/Euclid\/Mesh\/withTextureTransform(_:)", "taskGroups" : [ ], - "title" : "union(_:)", - "usr" : "s:6Euclid6BoundsV5unionyA2CF" + "title" : "withTextureTransform(_:)", + "usr" : "s:6Euclid4MeshV20withTextureTransformyAcA0E0VF" } ] \ No newline at end of file