Enum rubullet::GeometricVisualShape [−][src]
pub enum GeometricVisualShape { Sphere { radius: f64, }, Box { half_extents: Vector3<f64>, }, Capsule { radius: f64, length: f64, }, Cylinder { radius: f64, length: f64, }, Plane { plane_normal: Vector3<f64>, }, MeshFile { filename: PathBuf, mesh_scaling: Option<Vector3<f64>>, }, Mesh { mesh_scaling: Option<Vector3<f64>>, vertices: Vec<[f64; 3]>, indices: Vec<i32>, uvs: Option<Vec<[f64; 2]>>, normals: Option<Vec<[f64; 3]>>, }, }
Expand description
Visual shapes to put into the create_visual_shape method together with VisualShapeOptions
Variants
A Sphere determined by the radius in meter
Show fields
Fields of Sphere
radius: f64
radius in meter
A Cuboid
Show fields
Like a cylinder but with a half sphere on each end. The total length of a capsule is length + 2 * radius.
Show fields
A Cylinder
A flat Plane. Note that you cannot use a Plane VisualShape in combination with a non Plane CollisionShape. Also it seems like the visual plane is determined by the collision plane and thus cannot be adapted through the normal of the visual.
Loads a .obj (Wavefront) file. Will create convex hulls for each object.
Show fields
Create your own mesh.
Show fields
Fields of Mesh
mesh_scaling: Option<Vector3<f64>>
Scaling of the Mesh. Use [1.;3] for normal scaling.
vertices: Vec<[f64; 3]>
list of [x,y,z] coordinates.
indices: Vec<i32>
triangle indices, should be a multiple of 3
uvs: Option<Vec<[f64; 2]>>
uv texture coordinates for vertices. Use change_visual_shape to choose the texture image. The number of uvs should be equal to number of vertices
normals: Option<Vec<[f64; 3]>>
vertex normals, number should be equal to number of vertices.
Auto Trait Implementations
impl RefUnwindSafe for GeometricVisualShape
impl Send for GeometricVisualShape
impl Sync for GeometricVisualShape
impl Unpin for GeometricVisualShape
impl UnwindSafe for GeometricVisualShape
Blanket Implementations
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
pub fn vzip(self) -> V