Skip to content

Commit a855452

Browse files
committed
remove collisionSmoothingRadius for Capsule
1 parent 73c00ef commit a855452

File tree

3 files changed

+11
-17
lines changed

3 files changed

+11
-17
lines changed

src/Composition/supportPoints.jl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ function supportPoint(obj::Composition.Object3D, e::SVector{3,Float64})
2020
return Modia3D.supportPoint_Cone(obj.shape, obj.r_abs, obj.R_abs, e, collisionSmoothingRadius)
2121
elseif shapeKind == Modia3D.CapsuleKind
2222
#capsule::Modia3D.Capsule = obj.shape
23-
return Modia3D.supportPoint_Capsule(obj.shape, obj.r_abs, obj.R_abs, e, collisionSmoothingRadius)
23+
return Modia3D.supportPoint_Capsule(obj.shape, obj.r_abs, obj.R_abs, e)
2424
elseif shapeKind == Modia3D.BeamKind
2525
#beam::Modia3D.Beam = obj.shape
2626
return Modia3D.supportPoint_Beam(obj.shape, obj.r_abs, obj.R_abs, e, collisionSmoothingRadius)
@@ -96,12 +96,12 @@ function boundingBox!(obj::Composition.Object3D, AABB::Basics.BoundingBox; tight
9696
zmax = Modia3D.supportPoint_i_Cone(cone, obj.r_abs[3], SVector(obj.R_abs[:,3]), +1, collisionSmoothingRadius)
9797
elseif shapeKind == Modia3D.CapsuleKind
9898
capsule::Modia3D.Capsule = obj.shape
99-
xmin = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[1], SVector(obj.R_abs[:,1]), -1, collisionSmoothingRadius)
100-
xmax = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[1], SVector(obj.R_abs[:,1]), +1, collisionSmoothingRadius)
101-
ymin = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[2], SVector(obj.R_abs[:,2]), -1, collisionSmoothingRadius)
102-
ymax = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[2], SVector(obj.R_abs[:,2]), +1, collisionSmoothingRadius)
103-
zmin = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[3], SVector(obj.R_abs[:,3]), -1, collisionSmoothingRadius)
104-
zmax = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[3], SVector(obj.R_abs[:,3]), +1, collisionSmoothingRadius)
99+
xmin = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[1], SVector(obj.R_abs[:,1]), -1)
100+
xmax = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[1], SVector(obj.R_abs[:,1]), +1)
101+
ymin = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[2], SVector(obj.R_abs[:,2]), -1)
102+
ymax = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[2], SVector(obj.R_abs[:,2]), +1)
103+
zmin = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[3], SVector(obj.R_abs[:,3]), -1)
104+
zmax = Modia3D.supportPoint_i_Capsule(capsule, obj.r_abs[3], SVector(obj.R_abs[:,3]), +1)
105105
elseif shapeKind == Modia3D.BeamKind
106106
beam::Modia3D.Beam = obj.shape
107107
xmin = Modia3D.supportPoint_i_Beam(beam, obj.r_abs[1], SVector(obj.R_abs[:,1]), -1, collisionSmoothingRadius)

src/Shapes/boundingBoxes.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ that is the most extreme in direction of unit vector `e`.
2626
@inline supportPoint_Cone(shape::Cone, r_abs::SVector{3,Float64}, R_abs::SMatrix{3,3,Float64,9}, e::SVector{3,Float64}, collisionSmoothingRadius::Float64) =
2727
r_abs + R_abs'*supportPoint_abs_Cone(shape, R_abs*e) + e*collisionSmoothingRadius
2828

29-
@inline supportPoint_Capsule(shape::Capsule, r_abs::SVector{3,Float64}, R_abs::SMatrix{3,3,Float64,9}, e::SVector{3,Float64}, collisionSmoothingRadius::Float64) =
30-
r_abs + R_abs'*supportPoint_abs_Capsule(shape, R_abs*e) + e*collisionSmoothingRadius
29+
@inline supportPoint_Capsule(shape::Capsule, r_abs::SVector{3,Float64}, R_abs::SMatrix{3,3,Float64,9}, e::SVector{3,Float64}) =
30+
r_abs + R_abs'*supportPoint_abs_Capsule(shape, R_abs*e)
3131

3232
@inline supportPoint_Beam(shape::Beam, r_abs::SVector{3,Float64}, R_abs::SMatrix{3,3,Float64,9}, e::SVector{3,Float64}, collisionSmoothingRadius::Float64) =
3333
r_abs + R_abs'*supportPoint_abs_Beam(shape, R_abs*e) + e*collisionSmoothingRadius
@@ -248,8 +248,8 @@ Returns the *Axis Aligned Bounding Box* of solid `shape` in argument `AABB`.
248248
@inline supportPoint_i_Cone(shape::Cone, r_absi::Float64, R_absi::SVector{3,Float64}, isign::Int, collisionSmoothingRadius) =
249249
r_absi + R_absi'*supportPoint_abs_Cone(shape, isign*R_absi) + isign*collisionSmoothingRadius
250250

251-
@inline supportPoint_i_Capsule(shape::Capsule, r_absi::Float64, R_absi::SVector{3,Float64}, isign::Int, collisionSmoothingRadius) =
252-
r_absi + R_absi'*supportPoint_abs_Capsule(shape, isign*R_absi) + isign*collisionSmoothingRadius
251+
@inline supportPoint_i_Capsule(shape::Capsule, r_absi::Float64, R_absi::SVector{3,Float64}, isign::Int) =
252+
r_absi + R_absi'*supportPoint_abs_Capsule(shape, isign*R_absi)
253253
#
254254
@inline supportPoint_i_Beam(shape::Beam, r_absi::Float64, R_absi::SVector{3,Float64}, isign::Int, collisionSmoothingRadius) =
255255
r_absi + R_absi'*supportPoint_abs_Beam(shape, isign*R_absi) + isign*collisionSmoothingRadius

src/Shapes/setCollisionSmoothingRadius.jl

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,6 @@ function setCollisionSmoothingRadius(shape::Cone, collisionSmoothingRadius)
2525
return collisionSmoothingRadius2
2626
end
2727

28-
function setCollisionSmoothingRadius(shape::Capsule, collisionSmoothingRadius)
29-
@assert(collisionSmoothingRadius >= 0.0)
30-
collisionSmoothingRadius2 = min(collisionSmoothingRadius, 0.1*min(shape.diameter, shape.length)) # at most 10% of the smallest edge length
31-
return collisionSmoothingRadius2
32-
end
33-
3428
function setCollisionSmoothingRadius(shape::Beam, collisionSmoothingRadius)
3529
@assert(collisionSmoothingRadius >= 0.0)
3630
collisionSmoothingRadius2 = min(collisionSmoothingRadius, 0.1*min(shape.length, shape.width, shape.thickness)) # at most 10% of the smallest edge length

0 commit comments

Comments
 (0)