本文整理汇总了Java中com.jme3.math.FastMath.floor方法的典型用法代码示例。如果您正苦于以下问题:Java FastMath.floor方法的具体用法?Java FastMath.floor怎么用?Java FastMath.floor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.jme3.math.FastMath
的用法示例。
在下文中一共展示了FastMath.floor方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addCircleFault
import com.jme3.math.FastMath; //导入方法依赖的package包/类
protected void addCircleFault(float[][] tempBuffer, Random random, float faultHeight, float range) {
float radius = random.nextFloat() * (maxRadius - minRadius) + minRadius;
int intRadius = (int) FastMath.floor(radius);
// Allox circle center to be out of map if not by more than radius.
// Unlucky cases will put them in the far corner, with the circle
// entirely outside heightmap
int x = random.nextInt(size + 2 * intRadius) - intRadius;
int y = random.nextInt(size + 2 * intRadius) - intRadius;
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
float dist;
if (i != x || j != y) {
int dx = i - x;
int dy = j - y;
float dmag = FastMath.sqrt(FastMath.sqr(dx) + FastMath.sqr(dy));
float rx = x + dx / dmag * radius;
float ry = y + dy / dmag * radius;
dist = FastMath.sign(dmag - radius)
* FastMath.sqrt(FastMath.sqr(i - rx) + FastMath.sqr(j - ry));
} else {
dist = 0;
}
tempBuffer[i][j] += calcHeight(dist, random, faultHeight, range);
}
}
}
示例2: getCell
import com.jme3.math.FastMath; //导入方法依赖的package包/类
public Vector3f getCell(Vector3f location) {
final Vector3f v = location.clone().divideLocal(this.getLocalScale().mult(this.quadSize)).add(0.5f, 0, 0.5f);
return new Vector3f(FastMath.floor(v.x), 0, FastMath.floor(v.z));
}