本文整理了Java中java.awt.geom.AffineTransform.getScaleX()
方法的一些代码示例,展示了AffineTransform.getScaleX()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AffineTransform.getScaleX()
方法的具体详情如下:
包路径:java.awt.geom.AffineTransform
类名称:AffineTransform
方法名:getScaleX
暂无
代码示例来源:origin: libgdx/libgdx
public final void addNotify () {
super.addNotify();
AffineTransform transform = getGraphicsConfiguration().getDefaultTransform();
scaleX = (float)transform.getScaleX();
scaleY = (float)transform.getScaleY();
if (SharedLibraryLoader.isMac) {
EventQueue.invokeLater(new Runnable() {
public void run () {
create();
}
});
} else
create();
}
代码示例来源:origin: geoserver/geoserver
writer.setValue(Double.toString(atx.getScaleX()));
writer.endNode();
writer.startNode("scaleY");
writer.setValue(Double.toString(atx.getScaleY()));
writer.endNode();
writer.startNode("shearX");
writer.setValue(Double.toString(atx.getShearX()));
writer.endNode();
writer.startNode("shearY");
writer.setValue(Double.toString(atx.getShearY()));
writer.endNode();
writer.startNode("translateX");
writer.setValue(Double.toString(atx.getTranslateX()));
writer.endNode();
writer.startNode("translateY");
writer.setValue(Double.toString(atx.getTranslateY()));
writer.endNode();
writer.endNode();
代码示例来源:origin: geotools/geotools
/**
* Returns the magnitude of scale factor <var>x</var> by cancelling the effect of eventual flip
* and rotation. This factor is calculated by <IMG
* src="{@docRoot}/org/geotools/display/canvas/doc-files/scaleX0.png">.
*/
public static double getScaleX0(final AffineTransform tr) {
final double scale = tr.getScaleX();
final double shear = tr.getShearX();
if (shear == 0) return Math.abs(scale); // Optimization for a very common case.
if (scale == 0) return Math.abs(shear); // Not as common as above, but still common enough.
return Math.hypot(scale, shear);
}
代码示例来源:origin: geoserver/geoserver
AffineTransform aTX = (AffineTransform) geometry.getGridToCRS();
writer.write("<geoTransform>");
writer.write("<scaleX>" + aTX.getScaleX() + "</scaleX>\n");
writer.write("<scaleY>" + aTX.getScaleY() + "</scaleY>\n");
writer.write("<shearX>" + aTX.getShearX() + "</shearX>\n");
writer.write("<shearY>" + aTX.getShearY() + "</shearY>\n");
writer.write("<translateX>" + aTX.getTranslateX() + "</translateX>\n");
writer.write("<translateY>" + aTX.getTranslateY() + "</translateY>\n");
writer.write("</geoTransform>\n");
代码示例来源:origin: libgdx/libgdx
public final void addNotify () {
super.addNotify();
AffineTransform transform = getGraphicsConfiguration().getDefaultTransform();
scaleX = (float)transform.getScaleX();
scaleY = (float)transform.getScaleY();
if (SharedLibraryLoader.isMac) {
EventQueue.invokeLater(new Runnable() {
public void run () {
create();
}
});
} else
create();
}
代码示例来源:origin: apache/pdfbox
/**
* Creates a matrix with the same elements as the given AffineTransform.
* @param at
*/
public Matrix(AffineTransform at)
{
single = new float[DEFAULT_SINGLE.length];
System.arraycopy(DEFAULT_SINGLE, 0, single, 0, DEFAULT_SINGLE.length);
single[0] = (float)at.getScaleX();
single[1] = (float)at.getShearY();
single[3] = (float)at.getShearX();
single[4] = (float)at.getScaleY();
single[6] = (float)at.getTranslateX();
single[7] = (float)at.getTranslateY();
}
代码示例来源:origin: libgdx/libgdx
float scaleX = (float)transform.getScaleX(), scaleY = (float)transform.getScaleY();
Dimension size = new Dimension(Math.round(config.width / scaleX), Math.round(config.height / scaleY));
getContentPane().setPreferredSize(size);
代码示例来源:origin: geotools/geotools
/**
* Sets this matrix to the specified affine transform.
*
* @since 2.3
*/
public void setMatrix(final AffineTransform transform) {
mat.a11 = transform.getScaleX();
mat.a12 = transform.getShearX();
mat.a13 = transform.getTranslateX();
mat.a21 = transform.getShearY();
mat.a22 = transform.getScaleY();
mat.a23 = transform.getTranslateY();
mat.a31 = 0;
mat.a32 = 0;
mat.a33 = 1;
}
代码示例来源:origin: libgdx/libgdx
float scaleX = (float)transform.getScaleX(), scaleY = (float)transform.getScaleY();
Dimension size = new Dimension(Math.round(config.width / scaleX), Math.round(config.height / scaleY));
getContentPane().setPreferredSize(size);
代码示例来源:origin: geotools/geotools
/**
* Returns {@code true} if this matrix is equals to the specified affine transform.
*
* @since 2.3
*/
public boolean equalsAffine(final AffineTransform transform) {
return mat.a11 == transform.getScaleX()
&& mat.a12 == transform.getShearX()
&& mat.a13 == transform.getTranslateX()
&& mat.a21 == transform.getShearY()
&& mat.a22 == transform.getScaleY()
&& mat.a23 == transform.getTranslateY()
&& mat.a31 == 0
&& mat.a32 == 0
&& mat.a33 == 1;
}
代码示例来源:origin: apache/pdfbox
private void addImage(Image img)
{
// for JDK9; see explanation in PagePane
AffineTransform tx = GraphicsEnvironment.getLocalGraphicsEnvironment().
getDefaultScreenDevice().getDefaultConfiguration().getDefaultTransform();
label.setSize((int) Math.ceil(img.getWidth(null) / tx.getScaleX()),
(int) Math.ceil(img.getHeight(null) / tx.getScaleY()));
label.setIcon(new HighResolutionImageIcon(img, label.getWidth(), label.getHeight()));
label.revalidate();
}
代码示例来源:origin: apache/pdfbox
/**
* Set the values of the matrix from the AffineTransform.
*
* @param af The transform to get the values from.
* @deprecated Use the {@link #Matrix(AffineTransform)} constructor instead.
*/
@Deprecated
public void setFromAffineTransform( AffineTransform af )
{
single[0] = (float)af.getScaleX();
single[1] = (float)af.getShearY();
single[3] = (float)af.getShearX();
single[4] = (float)af.getScaleY();
single[6] = (float)af.getTranslateX();
single[7] = (float)af.getTranslateY();
}
代码示例来源:origin: apache/pdfbox
@Override
protected void done()
{
try
{
BufferedImage image = get();
// We cannot use "label.setIcon(new ImageIcon(get()))" here
// because of blurry upscaling in JDK9. Instead, the label is now created with
// a smaller size than the image to compensate that the
// image is scaled up with some screen configurations (e.g. 125% on windows).
// See PDFBOX-3665 for more sample code and discussion.
label.setSize((int) Math.ceil(image.getWidth() / defaultTransform.getScaleX()),
(int) Math.ceil(image.getHeight() / defaultTransform.getScaleY()));
label.setIcon(new HighResolutionImageIcon(image, label.getWidth(), label.getHeight()));
label.setText(null);
}
catch (InterruptedException | ExecutionException e)
{
label.setText(e.getMessage());
throw new RuntimeException(e);
}
}
}
代码示例来源:origin: geotools/geotools
/** Gets the derivative of this transform at a point. */
@Override
public Matrix derivative(final Point2D point) {
final AffineTransform tr = new AffineTransform();
getAffineTransform(point.getX(), point.getY(), tr);
return new Matrix2(
tr.getScaleX(), tr.getShearX(),
tr.getShearY(), tr.getScaleY());
}
代码示例来源:origin: apache/pdfbox
boolean isScaledUp = pdImage.getWidth() < Math.round(at.getScaleX()) ||
pdImage.getHeight() < Math.round(at.getScaleY());
代码示例来源:origin: geotools/geotools
/**
* @param ls
* @param at
* @param generalize
* @param maxDistance
*/
public void init(LineString ls, AffineTransform at, boolean generalize, float maxDistance) {
if (at == null) at = new AffineTransform();
_init(ls, at, generalize, maxDistance);
xScale =
(float)
Math.sqrt(
(at.getScaleX() * at.getScaleX())
+ (at.getShearX() * at.getShearX()));
yScale =
(float)
Math.sqrt(
(at.getScaleY() * at.getScaleY())
+ (at.getShearY() * at.getShearY()));
}
代码示例来源:origin: apache/pdfbox
float offsetY = page.getCropBox().getLowerLeftY();
float zoomScale = zoomMenu.getPageZoomScale();
float x = e.getX() / zoomScale * (float) defaultTransform.getScaleX();
float y = e.getY() / zoomScale * (float) defaultTransform.getScaleY();
int x1, y1;
switch ((RotationMenu.getRotationDegrees() + page.getRotation()) % 360)
代码示例来源:origin: geotools/geotools
/**
* Constructs a 3×3 matrix from the specified affine transform.
*
* @param transform The matrix to copy.
*/
public GeneralMatrix(final AffineTransform transform) {
mat =
new DMatrixRMaj(
3,
3,
true,
new double[] {
transform.getScaleX(),
transform.getShearX(),
transform.getTranslateX(),
transform.getShearY(),
transform.getScaleY(),
transform.getTranslateY(),
0,
0,
1
});
assert isAffine() : this;
}
代码示例来源:origin: geotools/geotools
Rectangle2D rect = tp.getAnchorRect();
AffineTransform at = graphics.getTransform();
double width = rect.getWidth() * at.getScaleX();
double height = rect.getHeight() * at.getScaleY();
Rectangle2D scaledRect = new Rectangle2D.Double(0, 0, width, height);
paint = new TexturePaint(image, scaledRect);
代码示例来源:origin: geotools/geotools
/**
* Checks whether the matrix coefficients are close to whole numbers. If this is the case, these
* coefficients will be rounded up to the nearest whole numbers. This rounding up is useful, for
* example, for speeding up image displays. Above all, it is efficient when we know that a
* matrix has a chance of being close to the similarity matrix.
*
* @param tr The matrix to round. Rounding will be applied in place.
* @param tolerance The maximal departure from integers in order to allow rounding. It is
* typically a small number like {@code 1E-6}.
* @since 2.3.1
*/
public static void round(final AffineTransform tr, final double tolerance) {
double r;
final double m00, m01, m10, m11;
if (Math.abs((m00 = Math.rint(r = tr.getScaleX())) - r) <= tolerance
&& Math.abs((m01 = Math.rint(r = tr.getShearX())) - r) <= tolerance
&& Math.abs((m11 = Math.rint(r = tr.getScaleY())) - r) <= tolerance
&& Math.abs((m10 = Math.rint(r = tr.getShearY())) - r) <= tolerance) {
if ((m00 != 0 || m01 != 0) && (m10 != 0 || m11 != 0)) {
double m02 = Math.rint(r = tr.getTranslateX());
if (!(Math.abs(m02 - r) <= tolerance)) m02 = r;
double m12 = Math.rint(r = tr.getTranslateY());
if (!(Math.abs(m12 - r) <= tolerance)) m12 = r;
tr.setTransform(m00, m10, m01, m11, m02, m12);
}
}
}
}
内容来源于网络,如有侵权,请联系作者删除!