diff options
Diffstat (limited to 'doc/classes/Curve3D.xml')
-rw-r--r-- | doc/classes/Curve3D.xml | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/doc/classes/Curve3D.xml b/doc/classes/Curve3D.xml index c012e2794e..1355c74faf 100644 --- a/doc/classes/Curve3D.xml +++ b/doc/classes/Curve3D.xml @@ -56,12 +56,22 @@ Returns the cache of tilts as a [RealArray]. </description> </method> + <method name="get_baked_up_vectors" qualifiers="const"> + <return type="PoolVector3Array"> + </return> + <description> + Returns the cache of up vectors as a [PoolVector3Array]. + If [member up_vector_enabled] is [code]false[/code], the cache will be empty. + </description> + </method> <method name="get_closest_offset" qualifiers="const"> <return type="float"> </return> <argument index="0" name="to_point" type="Vector3"> </argument> <description> + Returns the closest offset to [code]to_point[/code]. This offset is meant to be used in one of the interpolate_baked* methods. + [code]to_point[/code] must be in this curve's local space. </description> </method> <method name="get_closest_point" qualifiers="const"> @@ -70,6 +80,8 @@ <argument index="0" name="to_point" type="Vector3"> </argument> <description> + Returns the closest point (in curve's local space) to [code]to_point[/code]. + [code]to_point[/code] must be in this curve's local space. </description> </method> <method name="get_point_count" qualifiers="const"> @@ -140,6 +152,19 @@ Cubic interpolation tends to follow the curves better, but linear is faster (and often, precise enough). </description> </method> + <method name="interpolate_baked_up_vector" qualifiers="const"> + <return type="Vector3"> + </return> + <argument index="0" name="offset" type="float"> + </argument> + <argument index="1" name="apply_tilt" type="bool" default="false"> + </argument> + <description> + Returns an up vector within the curve at position [code]offset[/code], where [code]offset[/code] is measured as a distance in 3D units along the curve. + To do that, it finds the two cached up vectors where the [code]offset[/code] lies between, then interpolates the values. If [code]apply_tilt[/code] is [code]true[/code], an interpolated tilt is applied to the interpolated up vector. + If the curve has no up vectors, the function sends an error to the console, and returns (0, 1, 0). + </description> + </method> <method name="interpolatef" qualifiers="const"> <return type="Vector3"> </return> @@ -200,7 +225,7 @@ </argument> <description> Sets the tilt angle in radians for the point "idx". If the index is out of bounds, the function sends an error to the console. - The tilt controls the rotation along the look-at axis an object traveling the path would have. In the case of a curve controlling a [PathFollow], this tilt is an offset over the natural tilt the PathFollow calculates. + The tilt controls the rotation along the look-at axis an object traveling the path would have. In the case of a curve controlling a [PathFollow] or [OrientedPathFollow], this tilt is an offset over the natural tilt the [PathFollow] or [OrientedPathFollow] calculates. </description> </method> <method name="tessellate" qualifiers="const"> @@ -222,6 +247,9 @@ <member name="bake_interval" type="float" setter="set_bake_interval" getter="get_bake_interval"> The distance in meters between two adjacent cached points. Changing it forces the cache to be recomputed the next time the [method get_baked_points] or [method get_baked_length] function is called. The smaller the distance, the more points in the cache and the more memory it will consume, so use with care. </member> + <member name="up_vector_enabled" type="bool" setter="set_up_vector_enabled" getter="is_up_vector_enabled"> + If [code]true[/code], the curve will bake up vectors used for orientation. See [OrientedPathFollow]. Changing it forces the cache to be recomputed. + </member> </members> <constants> </constants> |