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


Java PBounds.getY方法代码示例

本文整理汇总了Java中org.piccolo2d.util.PBounds.getY方法的典型用法代码示例。如果您正苦于以下问题:Java PBounds.getY方法的具体用法?Java PBounds.getY怎么用?Java PBounds.getY使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.piccolo2d.util.PBounds的用法示例。


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

示例1: fullPaint

import org.piccolo2d.util.PBounds; //导入方法依赖的package包/类
/**
 * Overrides the camera's full paint method to do the fast rendering when
 * possible.
 * 
 * @param paintContext Paint Contex in which the painting is done
 */
public void fullPaint(final PPaintContext paintContext) {
    if (imageAnimate) {
        final PBounds fRef = getFullBoundsReference();
        final PBounds viewBounds = getViewBounds();
        final double scale = getFullBoundsReference().getWidth() / imageAnimateBounds.getWidth();
        final double xOffset = (viewBounds.getX() - imageAnimateBounds.getX()) * scale;
        final double yOffset = (viewBounds.getY() - imageAnimateBounds.getY()) * scale;
        final double scaleW = viewBounds.getWidth() * scale;
        final double scaleH = viewBounds.getHeight() * scale;
        paintContext.getGraphics().drawImage(paintBuffer, 0, 0, (int) Math.ceil(fRef.getWidth()),
                (int) Math.ceil(fRef.getHeight()), (int) Math.floor(xOffset), (int) Math.floor(yOffset),
                (int) Math.ceil(xOffset + scaleW), (int) Math.ceil(yOffset + scaleH), null);
    }
    else {
        super.fullPaint(paintContext);
    }
}
 
开发者ID:piccolo2d,项目名称:piccolo2d.java,代码行数:24,代码来源:PCacheCamera.java

示例2: setViewPosition

import org.piccolo2d.util.PBounds; //导入方法依赖的package包/类
/**
 * We do the same thing we did in getViewPosition above to flip the
 * document-window position relationship
 * 
 * @param x The new x position
 * @param y The new y position
 */
public void setViewPosition(final double x, final double y) {
    if (camera == null)
        return;

    // If a scroll is in progress - we ignore new scrolls - if we
    // didn't, since the scrollbars depend on the camera location
    // we can end up with an infinite loop
    if (scrollInProgress)
        return;

    scrollInProgress = true;

    // Get the union of all the layers' bounds
    final PBounds layerBounds = new PBounds();
    final List layers = camera.getLayersReference();
    for (final Iterator i = layers.iterator(); i.hasNext();) {
        final PLayer layer = (PLayer) i.next();
        layerBounds.add(layer.getFullBoundsReference());
    }

    final PAffineTransform at = camera.getViewTransform();
    at.transform(layerBounds, layerBounds);

    // Union the camera view bounds
    final PBounds viewBounds = camera.getBoundsReference();
    layerBounds.add(viewBounds);

    // Now find the new view position in view coordinates -
    // This is basically the distance from the lower right
    // corner of the window to the upper left corner of the
    // document
    // We then measure the offset from the lower right corner
    // of the document
    final Point2D newPoint = new Point2D.Double(layerBounds.getX() + layerBounds.getWidth()
            - (x + viewBounds.getWidth()), layerBounds.getY() + layerBounds.getHeight()
            - (y + viewBounds.getHeight()));

    // Now transform the new view position into global coords
    camera.localToView(newPoint);

    // Compute the new matrix values to put the camera at the
    // correct location
    final double newX = -(at.getScaleX() * newPoint.getX() + at.getShearX() * newPoint.getY());
    final double newY = -(at.getShearY() * newPoint.getX() + at.getScaleY() * newPoint.getY());

    at.setTransform(at.getScaleX(), at.getShearY(), at.getShearX(), at.getScaleY(), newX, newY);

    // Now actually set the camera's transform
    camera.setViewTransform(at);
    scrollInProgress = false;
}
 
开发者ID:piccolo2d,项目名称:piccolo2d.java,代码行数:59,代码来源:PrintExample.java

示例3: setViewPosition

import org.piccolo2d.util.PBounds; //导入方法依赖的package包/类
/**
 * We do the same thing we did in getViewPosition above to flip the
 * document-window position relationship
 * 
 * @param x The new x position
 * @param y The new y position
 */
public void setViewPosition(final double x, final double y) {
    if (camera == null)
        return;

    // If a scroll is in progress - we ignore new scrolls - if we
    // didn't, since the scrollbars depend on the camera
    // location we can end up with an infinite loop
    if (scrollInProgress)
        return;

    scrollInProgress = true;

    // Get the union of all the layers' bounds
    final PBounds layerBounds = new PBounds();
    final java.util.List layers = camera.getLayersReference();
    for (final Iterator i = layers.iterator(); i.hasNext();) {
        final PLayer layer = (PLayer) i.next();
        layerBounds.add(layer.getFullBoundsReference());
    }

    final PAffineTransform at = camera.getViewTransform();
    at.transform(layerBounds, layerBounds);

    // Union the camera view bounds
    final PBounds viewBounds = camera.getBoundsReference();
    layerBounds.add(viewBounds);

    // Now find the new view position in view coordinates -
    // This is basically the distance from the lower right
    // corner of the window to the upper left corner of the
    // document. We then measure the offset from the lower right corner
    // of the document
    final Point2D newPoint = new Point2D.Double(layerBounds.getX() + layerBounds.getWidth()
            - (x + viewBounds.getWidth()), layerBounds.getY() + layerBounds.getHeight()
            - (y + viewBounds.getHeight()));

    // Now transform the new view position into global coords
    camera.localToView(newPoint);

    // Compute the new matrix values to put the camera at the
    // correct location
    final double newX = -(at.getScaleX() * newPoint.getX() + at.getShearX() * newPoint.getY());
    final double newY = -(at.getShearY() * newPoint.getX() + at.getScaleY() * newPoint.getY());

    at.setTransform(at.getScaleX(), at.getShearY(), at.getShearX(), at.getScaleY(), newX, newY);

    // Now actually set the camera's transform
    camera.setViewTransform(at);
    scrollInProgress = false;
}
 
开发者ID:piccolo2d,项目名称:piccolo2d.java,代码行数:58,代码来源:ScrollingExample.java

示例4: setViewPosition

import org.piccolo2d.util.PBounds; //导入方法依赖的package包/类
/**
 * Set the view position in a manner consistent with standardized scrolling.
 * 
 * @param x The new x position
 * @param y The new y position
 */
public void setViewPosition(final double x, final double y) {
    // Bail out if scrollInProgress because we can end up with an infinite
    // loop since the scrollbars depend on the camera location
    if (camera == null || scrollInProgress) {
        return;
    }

    scrollInProgress = true;

    // Get the union of all the layers' bounds
    final PBounds layerBounds = new PBounds();
    final List layers = camera.getLayersReference();
    for (final Iterator i = layers.iterator(); i.hasNext();) {
        final PLayer layer = (PLayer) i.next();
        layerBounds.add(layer.getFullBoundsReference());
    }

    final PAffineTransform at = camera.getViewTransform();
    at.transform(layerBounds, layerBounds);

    // Union the camera bounds
    final PBounds viewBounds = camera.getBoundsReference();
    layerBounds.add(viewBounds);

    // Now find the new view position in view coordinates
    final Point2D newPoint = new Point2D.Double(layerBounds.getX() + x, layerBounds.getY() + y);

    // Now transform the new view position into global coords
    camera.localToView(newPoint);

    // Compute the new matrix values to put the camera at the
    // correct location
    final double newX = -(at.getScaleX() * newPoint.getX() + at.getShearX() * newPoint.getY());
    final double newY = -(at.getShearY() * newPoint.getX() + at.getScaleY() * newPoint.getY());

    at.setTransform(at.getScaleX(), at.getShearY(), at.getShearX(), at.getScaleY(), newX, newY);

    // Now actually set the camera's transform
    camera.setViewTransform(at);
    scrollInProgress = false;
}
 
开发者ID:piccolo2d,项目名称:piccolo2d.java,代码行数:48,代码来源:PDefaultScrollDirector.java


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