Up to date

This page is up to date for Godot `4.2`. If you still find outdated information, please open an issue.

# Geometry3D¶

## 方法¶

 Plane[] build_box_planes ( Vector3 extents ) Plane[] build_capsule_planes ( float radius, float height, int sides, int lats, Vector3.Axis axis=2 ) Plane[] build_cylinder_planes ( float radius, float height, int sides, Vector3.Axis axis=2 ) PackedVector3Array clip_polygon ( PackedVector3Array points, Plane plane ) PackedVector3Array Vector3 get_closest_point_to_segment ( Vector3 point, Vector3 s1, Vector3 s2 ) Vector3 PackedVector3Array Vector3 Variant ray_intersects_triangle ( Vector3 from, Vector3 dir, Vector3 a, Vector3 b, Vector3 c ) PackedVector3Array segment_intersects_convex ( Vector3 from, Vector3 to, Plane[] planes ) PackedVector3Array segment_intersects_cylinder ( Vector3 from, Vector3 to, float height, float radius ) PackedVector3Array segment_intersects_sphere ( Vector3 from, Vector3 to, Vector3 sphere_position, float sphere_radius ) Variant

## 方法说明¶

Plane[] build_box_planes ( Vector3 extents )

Plane[] build_capsule_planes ( float radius, float height, int sides, int lats, Vector3.Axis axis=2 )

Plane[] build_cylinder_planes ( float radius, float height, int sides, Vector3.Axis axis=2 )

PackedVector3Array clip_polygon ( PackedVector3Array points, Plane plane )

`points` 中的点所定义的多边形，裁剪该 `plane` 并返回该裁剪后的多边形的点。

PackedVector3Array compute_convex_mesh_points ( Plane[] planes )

Vector3 get_closest_point_to_segment ( Vector3 point, Vector3 s1, Vector3 s2 )

Vector3 get_closest_point_to_segment_uncapped ( Vector3 point, Vector3 s1, Vector3 s2 )

PackedVector3Array get_closest_points_between_segments ( Vector3 p1, Vector3 p2, Vector3 q1, Vector3 q2 )

Vector3 get_triangle_barycentric_coords ( Vector3 point, Vector3 a, Vector3 b, Vector3 c )

Variant ray_intersects_triangle ( Vector3 from, Vector3 dir, Vector3 a, Vector3 b, Vector3 c )

PackedVector3Array segment_intersects_convex ( Vector3 from, Vector3 to, Plane[] planes )

PackedVector3Array segment_intersects_cylinder ( Vector3 from, Vector3 to, float height, float radius )

PackedVector3Array segment_intersects_sphere ( Vector3 from, Vector3 to, Vector3 sphere_position, float sphere_radius )

Variant segment_intersects_triangle ( Vector3 from, Vector3 to, Vector3 a, Vector3 b, Vector3 c )