本文整理汇总了Java中org.apache.harmony.awt.gl.Crossing.isInsideEvenOdd方法的典型用法代码示例。如果您正苦于以下问题:Java Crossing.isInsideEvenOdd方法的具体用法?Java Crossing.isInsideEvenOdd怎么用?Java Crossing.isInsideEvenOdd使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.harmony.awt.gl.Crossing
的用法示例。
在下文中一共展示了Crossing.isInsideEvenOdd方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isInside
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
/**
* Checks cross count according to path rule to define is it point inside shape or not.
* @param cross - the point cross count
* @return true if point is inside path, or false otherwise
*/
boolean isInside(int cross) {
if (rule == WIND_NON_ZERO) {
return Crossing.isInsideNonZero(cross);
}
return Crossing.isInsideEvenOdd(cross);
}
示例2: intersects
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean intersects(double x, double y, double width, double height) {
if ((width <= 0.0) || (height <= 0.0)) {
return false;
} else if (!getBounds2D().intersects(x, y, width, height)) {
return false;
}
int crossCount = Crossing.intersectShape(this, x, y, width, height);
return Crossing.isInsideEvenOdd(crossCount);
}
示例3: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double px, double py) {
return Crossing.isInsideEvenOdd(Crossing.crossShape(this, px, py));
}
示例4: intersects
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean intersects(double rx, double ry, double rw, double rh) {
int cross = Crossing.intersectShape(this, rx, ry, rw, rh);
return cross == Crossing.CROSSING || Crossing.isInsideEvenOdd(cross);
}
示例5: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double x, double y) {
return Crossing.isInsideEvenOdd(Crossing.crossShape(this, x, y));
}
示例6: intersects
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean intersects(double x, double y, double width, double height) {
int cross = Crossing.intersectShape(this, x, y, width, height);
return cross == Crossing.CROSSING || Crossing.isInsideEvenOdd(cross);
}
示例7: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double x, double y, double width, double height) {
int crossCount = Crossing.intersectPath(getPathIterator(null), x, y,
width, height);
return crossCount != Crossing.CROSSING &&
Crossing.isInsideEvenOdd(crossCount);
}
示例8: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double rx, double ry, double rw, double rh) {
int cross = Crossing.intersectShape(this, rx, ry, rw, rh);
return cross != Crossing.CROSSING && Crossing.isInsideEvenOdd(cross);
}
示例9: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double rx, double ry, double rw, double rh) {
int cross = Crossing.intersectShape(this, rx, ry, rw, rh);
return cross != Crossing.CROSSING && Crossing.isInsideEvenOdd(cross);
}
示例10: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double px, double py) {
return Crossing.isInsideEvenOdd(Crossing.crossShape(this, px, py));
}
示例11: containsExact
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
private int containsExact(double x, double y) {
PathIterator pi = getPathIterator(null);
int crossCount = Crossing.crossPath(pi, x, y);
if (Crossing.isInsideEvenOdd(crossCount)) {
return 1;
}
double[] segmentCoords = new double[6];
double[] resultPoints = new double[6];
int rule;
double curX = -1;
double curY = -1;
double moveX = -1;
double moveY = -1;
for (pi = getPathIterator(null); !pi.isDone(); pi.next()) {
rule = pi.currentSegment(segmentCoords);
switch (rule) {
case PathIterator.SEG_MOVETO:
moveX = curX = segmentCoords[0];
moveY = curY = segmentCoords[1];
break;
case PathIterator.SEG_LINETO:
if (GeometryUtil.intersectLines(curX, curY,
segmentCoords[0], segmentCoords[1], x, y, x, y,
resultPoints) != 0) {
return 0;
}
curX = segmentCoords[0];
curY = segmentCoords[1];
break;
case PathIterator.SEG_QUADTO:
if (GeometryUtil.intersectLineAndQuad(x, y, x, y,
curX, curY, segmentCoords[0], segmentCoords[1],
segmentCoords[2], segmentCoords[3],
resultPoints) > 0) {
return 0;
}
curX = segmentCoords[2];
curY = segmentCoords[3];
break;
case PathIterator.SEG_CUBICTO:
if (GeometryUtil.intersectLineAndCubic(x, y, x, y,
curX, curY, segmentCoords[0], segmentCoords[1],
segmentCoords[2], segmentCoords[3], segmentCoords[4],
segmentCoords[5], resultPoints) > 0) {
return 0;
}
curX = segmentCoords[4];
curY = segmentCoords[5];
break;
case PathIterator.SEG_CLOSE:
if (GeometryUtil.intersectLines(curX, curY, moveX, moveY,
x, y, x, y, resultPoints) != 0) {
return 0;
}
curX = moveX;
curY = moveY;
break;
}
}
return -1;
}
示例12: contains
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean contains(double x, double y, double width, double height) {
int crossCount = Crossing.intersectPath(getPathIterator(null), x, y, width, height);
return crossCount != Crossing.CROSSING && Crossing.isInsideEvenOdd(crossCount);
}
示例13: intersects
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
public boolean intersects(double rx, double ry, double rw, double rh) {
int cross = Crossing.intersectShape(this, rx, ry, rw, rh);
return cross == Crossing.CROSSING || Crossing.isInsideEvenOdd(cross);
}
示例14: isInside
import org.apache.harmony.awt.gl.Crossing; //导入方法依赖的package包/类
/**
* Checks the cross count (number of times a ray from the point crosses the
* shape's boundary) to determine whether the number of crossings
* corresponds to a point inside the shape or not (according to the shape's
* path rule).
*
* @param cross
* the point's cross count.
* @return true if the point is inside the path, or false otherwise.
*/
boolean isInside(int cross) {
if (rule == WIND_NON_ZERO) {
return Crossing.isInsideNonZero(cross);
}
return Crossing.isInsideEvenOdd(cross);
}