public void GetCylinderProperties_WhenShapeIsBox_HeightIsDeviantDimension( [Values(0f, 1f, 2f, 3f)] float sizeX, [Values(0f, 1f, 2f, 3f)] float sizeY, [Values(0f, 1f, 2f, 3f)] float sizeZ ) { var size = new float3(sizeX, sizeY, sizeZ); m_Shape.SetBox(0f, size, quaternion.identity); m_Shape.GetCylinderProperties(out var center, out var height, out var radius, out quaternion orientation); var heightAxis = size.GetDeviantAxis(); Assert.That(height, Is.EqualTo(size[heightAxis])); }
public void GetCylinderProperties_WhenShapeIsBox_RadiusIsHalfMaxHomogenousDimension( [Values(0f, 1f, 2f, 3f)] float sizeX, [Values(0f, 1f, 2f, 3f)] float sizeY, [Values(0f, 1f, 2f, 3f)] float sizeZ ) { var size = new float3(sizeX, sizeY, sizeZ); m_Shape.SetBox(0f, size, quaternion.identity); m_Shape.GetCylinderProperties(out var center, out var height, out var radius, out quaternion orientation); var heightAxis = size.GetDeviantAxis(); var expectedRadius = 0.5f * math.cmax(heightAxis == 0 ? size.yz : heightAxis == 1 ? size.xz : size.xy); Assert.That(radius, Is.EqualTo(expectedRadius)); }
public void GetCylinderProperties_WhenShapeIsBox_HeightIsDeviantDimension( [Values(0f, 1f, 2f, 3f)] float sizeX, [Values(0f, 1f, 2f, 3f)] float sizeY, [Values(0f, 1f, 2f, 3f)] float sizeZ ) { var size = new float3(sizeX, sizeY, sizeZ); m_Shape.SetBox(new BoxGeometry { Size = size, Orientation = quaternion.identity }); var cylinder = m_Shape.GetCylinderProperties(); var heightAxis = size.GetDeviantAxis(); Assert.That(cylinder.Height, Is.EqualTo(size[heightAxis])); }