Merge pull request #2041 from borglab/update-rot3

Update Rot3 doc
release/4.3a0
Frank Dellaert 2025-03-10 10:32:57 -04:00 committed by GitHub
commit 4085d3a64e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 28 additions and 47 deletions

View File

@ -26,7 +26,7 @@
{ {
"cell_type": "markdown", "cell_type": "markdown",
"source": [ "source": [
"A `gtsam.Rot3` represents a rotation in 3D space. It can be manipulated and presented as a rotation matrix, a quaternion, roll-pitch-yaw angles (Euler angles), or as an axis-angle combination. It models a 3D rotation in the [Special Orthogonal Group $\\text{SO}(3)$](https://en.wikipedia.org/wiki/SO(3)), which is a [Lie group](https://en.wikipedia.org/wiki/Lie_group)." "A `gtsam.Rot3` represents an orientation or attitude in 3D space. It can be manipulated and presented as a rotation matrix $ R \\in \\mathbb{R}^{3 \\times 3} $, a unit quaternion, roll-pitch-yaw (Euler) angles $ (\\phi, \\theta, \\psi) $, or as an axis-angle representation $ (\\hat{\\omega}, \\theta) $ with $ \\hat{\\omega} \\in \\mathbb{R}^3 $ and $ \\theta \\in \\mathbb{R} $. It models a 3D orientation as both a manifold in $ \\mathcal{SO}(3) $ and as a Lie group in $ \\text{SO}(3) $. Internally, it is stored as a $ 3 \\times 3 $ rotation matrix but can be configured to use quaternions at build time for efficiency."
], ],
"metadata": { "metadata": {
"id": "YqaxPKyloJG_" "id": "YqaxPKyloJG_"
@ -43,30 +43,11 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 1, "execution_count": null,
"metadata": { "metadata": {
"colab": { "id": "HyXPOMakoDkY"
"base_uri": "https://localhost:8080/"
},
"id": "HyXPOMakoDkY",
"outputId": "665a19a8-4265-4d54-bc43-b5f4df9b62c8"
}, },
"outputs": [ "outputs": [],
{
"output_type": "stream",
"name": "stdout",
"text": [
"Collecting gtsam\n",
" Downloading gtsam-4.2-cp311-cp311-manylinux2014_x86_64.whl.metadata (7.6 kB)\n",
"Requirement already satisfied: numpy>=1.11.0 in /usr/local/lib/python3.11/dist-packages (from gtsam) (1.26.4)\n",
"Requirement already satisfied: pyparsing>=2.4.2 in /usr/local/lib/python3.11/dist-packages (from gtsam) (3.2.1)\n",
"Downloading gtsam-4.2-cp311-cp311-manylinux2014_x86_64.whl (22.4 MB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m22.4/22.4 MB\u001b[0m \u001b[31m10.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hInstalling collected packages: gtsam\n",
"Successfully installed gtsam-4.2\n"
]
}
],
"source": [ "source": [
"%pip install gtsam" "%pip install gtsam"
] ]
@ -81,7 +62,7 @@
"metadata": { "metadata": {
"id": "_fWy46Mepoxh" "id": "_fWy46Mepoxh"
}, },
"execution_count": 2, "execution_count": null,
"outputs": [] "outputs": []
}, },
{ {
@ -96,7 +77,7 @@
{ {
"cell_type": "markdown", "cell_type": "markdown",
"source": [ "source": [
"A `Rot3` can be initialized in many different ways, which are detailed in this section. Note that printing a `Rot3` displays its 3x3 rotation matrix representation, which in general is a 3x3 matrix where the columns are unit vectors that define a coordinate frame." "A `Rot3` can be initialized in many different ways, which are detailed in this section. Note that printing a `Rot3` displays its 3x3 rotation matrix representation, which in general is a 3x3 matrix where the columns are unit vectors that define the orientation's coordinate frame."
], ],
"metadata": { "metadata": {
"id": "RrJ5ZEdhqJPU" "id": "RrJ5ZEdhqJPU"
@ -148,7 +129,7 @@
"id": "mj8X-wIdq6GR", "id": "mj8X-wIdq6GR",
"outputId": "48a6921d-df39-4fd8-aaf8-76d4bcdb70b1" "outputId": "48a6921d-df39-4fd8-aaf8-76d4bcdb70b1"
}, },
"execution_count": 3, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -220,7 +201,7 @@
"id": "GcAB8GtVaLjK", "id": "GcAB8GtVaLjK",
"outputId": "b9e701cd-6a3f-4171-a518-158a2f7b60fd" "outputId": "b9e701cd-6a3f-4171-a518-158a2f7b60fd"
}, },
"execution_count": 4, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -277,7 +258,7 @@
"id": "w-qh5dX6VWAW", "id": "w-qh5dX6VWAW",
"outputId": "8fe29ae6-eb47-4460-c27b-3acd8ee5e5bf" "outputId": "8fe29ae6-eb47-4460-c27b-3acd8ee5e5bf"
}, },
"execution_count": 5, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -354,7 +335,7 @@
"id": "bGEMGXkpYT9t", "id": "bGEMGXkpYT9t",
"outputId": "31655b9f-045f-4b51-dff2-42de4382427f" "outputId": "31655b9f-045f-4b51-dff2-42de4382427f"
}, },
"execution_count": 6, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -412,7 +393,7 @@
"id": "uO9hb2RBaG3g", "id": "uO9hb2RBaG3g",
"outputId": "5409ef2e-3651-439b-af9f-6ed7888aa9d5" "outputId": "5409ef2e-3651-439b-af9f-6ed7888aa9d5"
}, },
"execution_count": 7, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -451,7 +432,7 @@
"id": "M_OOSKgAaqhF", "id": "M_OOSKgAaqhF",
"outputId": "cbb875b7-9204-4a90-c225-dbea46718c6f" "outputId": "cbb875b7-9204-4a90-c225-dbea46718c6f"
}, },
"execution_count": 8, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -491,7 +472,7 @@
"id": "NUgeRQzIcqYp", "id": "NUgeRQzIcqYp",
"outputId": "8c189748-267b-4c25-e0cf-4eed8721bc4a" "outputId": "8c189748-267b-4c25-e0cf-4eed8721bc4a"
}, },
"execution_count": 9, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -537,7 +518,7 @@
"id": "EFMbwiTKfLfJ", "id": "EFMbwiTKfLfJ",
"outputId": "72bf7784-6a8c-4052-c444-d85d6d9014e7" "outputId": "72bf7784-6a8c-4052-c444-d85d6d9014e7"
}, },
"execution_count": 10, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -610,7 +591,7 @@
"id": "zbNPBHiwDAE2", "id": "zbNPBHiwDAE2",
"outputId": "716f9db1-f7c7-4418-f7c7-5c6bae0b6a2c" "outputId": "716f9db1-f7c7-4418-f7c7-5c6bae0b6a2c"
}, },
"execution_count": 11, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -683,7 +664,7 @@
"id": "rtbkHyp3GgWx", "id": "rtbkHyp3GgWx",
"outputId": "43b1178c-39d3-4df2-face-9e8cef162cdd" "outputId": "43b1178c-39d3-4df2-face-9e8cef162cdd"
}, },
"execution_count": 12, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -723,7 +704,7 @@
"id": "MYiKxq4vItz3", "id": "MYiKxq4vItz3",
"outputId": "e8f8fdd0-c539-476f-f233-2f78f98ca671" "outputId": "e8f8fdd0-c539-476f-f233-2f78f98ca671"
}, },
"execution_count": 13, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -767,7 +748,7 @@
"id": "y45qZPivHkRR", "id": "y45qZPivHkRR",
"outputId": "e2320424-004f-47bf-e844-bf04df63a916" "outputId": "e2320424-004f-47bf-e844-bf04df63a916"
}, },
"execution_count": 14, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -818,7 +799,7 @@
"id": "axvFPtxYdGru", "id": "axvFPtxYdGru",
"outputId": "977f9582-5b23-43c7-a6f5-a7bfce6d5cea" "outputId": "977f9582-5b23-43c7-a6f5-a7bfce6d5cea"
}, },
"execution_count": 15, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -859,7 +840,7 @@
"id": "ffVBzuOhGugd", "id": "ffVBzuOhGugd",
"outputId": "ff207bed-850c-422a-d9a6-a0b59e801989" "outputId": "ff207bed-850c-422a-d9a6-a0b59e801989"
}, },
"execution_count": 16, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -903,7 +884,7 @@
"id": "4zXJJ77FdLBB", "id": "4zXJJ77FdLBB",
"outputId": "c5875121-0d97-475c-8669-93b92ac37c1b" "outputId": "c5875121-0d97-475c-8669-93b92ac37c1b"
}, },
"execution_count": 17, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -947,7 +928,7 @@
"id": "_qGyDV15dgmU", "id": "_qGyDV15dgmU",
"outputId": "be748925-3425-41c7-b06b-57ab87955699" "outputId": "be748925-3425-41c7-b06b-57ab87955699"
}, },
"execution_count": 18, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -985,7 +966,7 @@
"id": "SchtjDIPfXtb", "id": "SchtjDIPfXtb",
"outputId": "7d199a1e-b9a7-4775-81e7-9c1328012b89" "outputId": "7d199a1e-b9a7-4775-81e7-9c1328012b89"
}, },
"execution_count": 19, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -1026,7 +1007,7 @@
"id": "ysQSPxuwfnen", "id": "ysQSPxuwfnen",
"outputId": "4a7d8404-fc2a-46ca-ba18-236fd417382b" "outputId": "4a7d8404-fc2a-46ca-ba18-236fd417382b"
}, },
"execution_count": 20, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -1125,7 +1106,7 @@
}, },
"outputId": "e0c75e07-2b6d-4f84-a90d-f1cceb3ad9fa" "outputId": "e0c75e07-2b6d-4f84-a90d-f1cceb3ad9fa"
}, },
"execution_count": 25, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -1227,7 +1208,7 @@
"id": "0V2oQQ0lxS2-", "id": "0V2oQQ0lxS2-",
"outputId": "62b40acb-799e-4a91-dacd-c9e0266665c3" "outputId": "62b40acb-799e-4a91-dacd-c9e0266665c3"
}, },
"execution_count": 26, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -1257,7 +1238,7 @@
"id": "-kTgSGJS06EC", "id": "-kTgSGJS06EC",
"outputId": "97051c49-284e-4ee8-d806-53f0d842fc31" "outputId": "97051c49-284e-4ee8-d806-53f0d842fc31"
}, },
"execution_count": 27, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",
@ -1312,7 +1293,7 @@
"id": "m6ku7L_768Ta", "id": "m6ku7L_768Ta",
"outputId": "8cb6fe04-6759-4cd9-8145-42f4fc2a72dd" "outputId": "8cb6fe04-6759-4cd9-8145-42f4fc2a72dd"
}, },
"execution_count": 28, "execution_count": null,
"outputs": [ "outputs": [
{ {
"output_type": "stream", "output_type": "stream",