本文整理汇总了Java中ch.fhnw.util.math.Vec3.scale方法的典型用法代码示例。如果您正苦于以下问题:Java Vec3.scale方法的具体用法?Java Vec3.scale怎么用?Java Vec3.scale使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ch.fhnw.util.math.Vec3
的用法示例。
在下文中一共展示了Vec3.scale方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createInnerRectangle
import ch.fhnw.util.math.Vec3; //导入方法依赖的package包/类
private static Polygon createInnerRectangle(Polygon outer) {
Vec3 v = outer.getV().scale(outer.getExtentV());
Vec3 v0 = outer.get(0);
Vec3 v1 = outer.get(1);
float d0 = outer.get(-1).subtract(v0).dot(v1.subtract(v0));
float d1 = outer.get(2).subtract(v1).dot(v0.subtract(v1));
if (d0 > 0)
v0 = outer.getVertexOnEdge(0, 0.15f);
if (d1 > 0)
v1 = outer.getVertexOnEdge(0, 0.85f);
for (float scale = 1; scale > 0; scale -= 0.1f) {
Vec3 d = v.scale(scale);
Vec3 v2 = v1.add(d);
Vec3 v3 = v0.add(d);
if (outer.project(v2) != null && outer.project(v3) != null)
return new Polygon(v0, v1, v2, v3);
}
return null;
}
示例2: Line
import ch.fhnw.util.math.Vec3; //导入方法依赖的package包/类
/**
* Create line from two given points. Origin is calculated as point closest
* to zero.
*/
public Line(Vec3 p1, Vec3 p2) {
Vec3 delta = p2.subtract(p1);
float length = delta.length();
if (length == 0.0) {
throw new IllegalArgumentException();
}
direction = delta.scale(1 / length);
origin = p1.add(direction.scale(-p1.dot(delta) / length));
}
示例3: getCenter
import ch.fhnw.util.math.Vec3; //导入方法依赖的package包/类
private static Vec3 getCenter(List<Polygon> plan) {
Vec3 v = Vec3.ZERO;
for (Polygon p : plan)
v = v.add(p.getCenter());
v = v.scale(1.0f / plan.size());
return v;
}