Java sin sin(int f)

Here you can find the source of sin(int f)

Description

sin

License

Artistic License

Declaration

public static int sin(int f) 

Method Source Code

//package com.java2s;
/*//w ww  .  j av a 2  s.c  o  m
    
 FP version 3.1
    
 Copyright (c) 2004 Andre de Leiradella <leiradella@bigfoot.com>
    
 This program is licensed under the Artistic License.
    
 See http://www.opensource.org/licenses/artistic-license.html for details.
    
 Uses parts or ideas from FPMath. FPMath is copyright (c) 2001 Beartronics and
 is authored by Henry Minsky.
 http://bearlib.sourceforge.net/
    
 Uses parts or ideas from oMathFP. oMathFP is copyright (c) 2004 Dan Carter.
 http://orbisstudios.com/
    
 */

public class Main {
    public static int sin(int f) {
        boolean neg;
        f = (f % 411774);
        if (neg = f < 0)
            f = -f;
        if (f < 102943) {
            ;
        } else if (f < 205887) {
            f = (205887 - f);
        } else if (f < 308830) {
            f = (f - 205887);
            neg = !neg;
        } else {
            f = (411774 - f);
            neg = !neg;
        }
        int g = ((int) ((((long) f) * ((long) f)) >> 16));
        g = ((int) ((((long) f)
                * (65536 + ((((long) g) * (((((long) g) * ((long) 498)) >> 16) - 10881)) >> 16))) >> 16));
        return neg ? -g : g;
    }
}

Related

  1. sin(float angle)
  2. sin(float angle)
  3. sin(float n)
  4. sin(int angle)
  5. sin(int angle)
  6. sin(int i)
  7. sin(Number x)
  8. sin(Short a)
  9. sin5(float x)