Swipe on a Element with TouchAction

The method below work for me.

public void SwipeRightToLeftOnElement(AndroidDriver androiddriver,MobileElement element)
{
//Right To Left
new TouchAction(androiddriver)
.press(PointOption.point(element.getRect().getX() + (element.getSize().width - 20),element.getRect().getY() + (element.getSize().height / 2)))
.waitAction(WaitOptions.waitOptions(Duration.ofMillis(3000)))
.moveTo(PointOption.point(element.getRect().getX(),element.getRect().getY() + (element.getSize().height / 2)))
.release().perform();
}
public void SwipeLeftToRightOnElement(AndroidDriver androiddriver,MobileElement element)
{
//Left To Right
new TouchAction(androiddriver)
.press(PointOption.point(element.getRect().getX(),element.getRect().getY() + (element.getSize().height / 2)))
.waitAction(WaitOptions.waitOptions(Duration.ofMillis(3000)))
.moveTo(PointOption.point(element.getRect().getX() + (element.getSize().width - 20),element.getRect().getY() + (element.getSize().height / 2)))
.release().perform();
}

public void SwipeDownToUpOnElementWithoutClosing(AndroidDriver androiddriver,MobileElement element)
{
//Down To Up
int intMiddleX = (int)(element.getRect().getX() + element.getSize().width/2);
int intUpperY = (int)(element.getRect().getY() + element.getSize().height * .9);
int intLowY = (int)(element.getRect().getY() + element.getSize().height * .1);
new TouchAction(androiddriver)
.press(PointOption.point(intMiddleX,intUpperY))
.waitAction(WaitOptions.waitOptions(Duration.ofMillis(1000)))
.moveTo(PointOption.point(intMiddleX,intLowY))
.release().perform();
}

public void SwipeUpToDownOnElement(AndroidDriver androiddriver,MobileElement element)
{
//Up To Down
int intMiddleX = (int)(element.getRect().getX() + element.getSize().width/2);
int intUpperY = (int)(element.getRect().getY() + element.getSize().height * .9);
int intLowY = (int)(element.getRect().getY() + element.getSize().height * .1);
new TouchAction(androiddriver)
.press(PointOption.point(intMiddleX,intLowY))
.waitAction(WaitOptions.waitOptions(Duration.ofMillis(1000)))
.moveTo(PointOption.point(intMiddleX,intUpperY))
.release().perform();
}

call this method where it is required .
public static void Move(IPerformsTouchActions driver, int startX, int startY, int endX, int endY)
{
ITouchAction touchAction = new TouchAction(driver)
.Press(startX, startY)
.Wait(500)
.MoveTo(endX, endY)
.Release();

        touchAction.Perform();
    }