当前位置: 首页>>代码示例>>Java>>正文


Java MouseEvent.EVENT_MOUSE_CLICKED属性代码示例

本文整理汇总了Java中com.jogamp.newt.event.MouseEvent.EVENT_MOUSE_CLICKED属性的典型用法代码示例。如果您正苦于以下问题:Java MouseEvent.EVENT_MOUSE_CLICKED属性的具体用法?Java MouseEvent.EVENT_MOUSE_CLICKED怎么用?Java MouseEvent.EVENT_MOUSE_CLICKED使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在com.jogamp.newt.event.MouseEvent的用法示例。


在下文中一共展示了MouseEvent.EVENT_MOUSE_CLICKED属性的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: notifyEyeRay

@Override
public boolean notifyEyeRay(ClearGLVolumeRenderer pRenderer,
							MouseEvent pMouseEvent,
							EyeRay pEyeRay)
{
	if (!mMovable)
		return false;

	// System.out.println(pMouseEvent);

	final boolean lCorrectModifier = true; // pMouseEvent.isShiftDown();
	final boolean lCorrectMouseButton = pMouseEvent.getButton() == 1;
	final boolean lCorrectMouseEvent = (pMouseEvent.getEventType() == MouseEvent.EVENT_MOUSE_CLICKED || pMouseEvent.getEventType() == MouseEvent.EVENT_MOUSE_DRAGGED);

	if (!(lCorrectMouseButton && lCorrectMouseEvent && lCorrectModifier))
		return false;

	final float[] lX = new float[]
	{ x, y, z };

	final float[] lO2X = GLMatrix.clone(lX);
	GLMatrix.sub(lO2X, pEyeRay.org);

	final float lProjectionLength = GLMatrix.dot(	lO2X,
													pEyeRay.dir);
	final float[] lClosestPoint = GLMatrix.clone(pEyeRay.dir);
	GLMatrix.mult(lClosestPoint, lProjectionLength);
	GLMatrix.add(lClosestPoint, pEyeRay.org);

	final float mx = pMouseEvent.getX();
	final float my = pMouseEvent.getY();

	// System.out.format("MX=%g MY=%g \n", mx, my);

	final double lDistance = sqrt((mx - px) * (mx - px)
									+ (my - py)
									* (my - py));

	// final float[] lCP2X = GLMatrix.clone(lX);
	// GLMatrix.distance(lCP2X, lClosestPoint);
	// final float lDistanceToClosestPoint = GLMatrix.norm(lCP2X);

	/*System.out.println(pEyeRay);
	System.out.println(Arrays.toString(lClosestPoint));
	System.out.println("lDistanceToClosestPoint=" + lDistanceToClosestPoint);
	/**/

	if (lDistance < getDistanceThreshold())
	{
		x = clamp(lClosestPoint[0]);
		y = clamp(lClosestPoint[1]);
		z = clamp(lClosestPoint[2]);
		mHasChanged = true;
		return true;
	}

	return false;

}
 
开发者ID:ClearVolume,项目名称:ClearVolume,代码行数:59,代码来源:CursorOverlay.java

示例2: dispatchMouseEvent

/**
 *
 * @param e original Newt {@link MouseEvent}
 * @param glX x-position in OpenGL model space
 * @param glY y-position in OpenGL model space
 */
public final void dispatchMouseEvent(final MouseEvent e, final int glWinX, final int glWinY, final float[] objPos) {
    e.setAttachment(new PointerEventInfo(glWinX, glWinY, this, objPos));

    final short eventType = e.getEventType();
    if( 1 == e.getPointerCount() ) {
        switch( eventType ) {
            case MouseEvent.EVENT_MOUSE_CLICKED:
                toggle();
                break;
            case MouseEvent.EVENT_MOUSE_PRESSED:
                setPressed(true);
                break;
            case MouseEvent.EVENT_MOUSE_RELEASED:
                setPressed(false);
                break;
        }
    }

    for(int i = 0; !e.isConsumed() && i < mouseListeners.size(); i++ ) {
        final MouseGestureListener l = mouseListeners.get(i);
        switch( eventType ) {
            case MouseEvent.EVENT_MOUSE_CLICKED:
                l.mouseClicked(e);
                break;
            case MouseEvent.EVENT_MOUSE_ENTERED:
                l.mouseEntered(e);
                break;
            case MouseEvent.EVENT_MOUSE_EXITED:
                l.mouseExited(e);
                break;
            case MouseEvent.EVENT_MOUSE_PRESSED:
                l.mousePressed(e);
                break;
            case MouseEvent.EVENT_MOUSE_RELEASED:
                l.mouseReleased(e);
                break;
            case MouseEvent.EVENT_MOUSE_MOVED:
                l.mouseMoved(e);
                break;
            case MouseEvent.EVENT_MOUSE_DRAGGED:
                l.mouseDragged(e);
                break;
            case MouseEvent.EVENT_MOUSE_WHEEL_MOVED:
                l.mouseWheelMoved(e);
                break;
            default:
                throw new NativeWindowException("Unexpected mouse event type " + e.getEventType());
        }
    }
}
 
开发者ID:java-opengl-labs,项目名称:jogl-samples,代码行数:56,代码来源:UIShape.java


注:本文中的com.jogamp.newt.event.MouseEvent.EVENT_MOUSE_CLICKED属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。