From 77491d0a62454f22ebb44142d4e570735cbc6ad7 Mon Sep 17 00:00:00 2001 From: Ninni Pipping Date: Sat, 17 Jun 2023 11:01:05 +0200 Subject: [PATCH] Clarify the return value of `Curve2D.sample_baked_with_rotation` The return value is a broken `Transform2D`, this clarifies how to use it. --- doc/classes/Curve2D.xml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/doc/classes/Curve2D.xml b/doc/classes/Curve2D.xml index abf71c5754..59cf96b0e7 100644 --- a/doc/classes/Curve2D.xml +++ b/doc/classes/Curve2D.xml @@ -107,11 +107,16 @@ - Similar to [method sample_baked], but returns [Transform2D] that includes a rotation along the curve. Returns empty transform if length of the curve is [code]0[/code]. + Similar to [method sample_baked], but returns [Transform2D] that includes a rotation along the curve, with [member Transform2D.origin] as the point position, [member Transform2D.x] as the sideways vector, and [member Transform2D.y] as the forward vector. Returns an empty transform if the length of the curve is [code]0[/code]. [codeblock] - var transform = curve.sample_baked_with_rotation(offset) - position = transform.get_origin() - rotation = transform.get_rotation() + var baked = curve.sample_baked_with_rotation(offset) + # This will rotate and position the node with the up direction pointing along the curve. + position = baked.get_origin() + rotation = baked.get_rotation() + # Alternatively, not preserving scale. + transform = baked * Transform2D.FLIP_Y + # To match the rotation of PathFollow2D, not preserving scale. + transform = Transform2D(baked.y, baked.x, baked.origin) [/codeblock]