java.awt.geom.AffineTransform.getDeterminant()方法的使用及代码示例

x33g5p2x  于2022-01-15 转载在 其他  
字(7.7k)|赞(0)|评价(0)|浏览(126)

本文整理了Java中java.awt.geom.AffineTransform.getDeterminant()方法的一些代码示例,展示了AffineTransform.getDeterminant()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AffineTransform.getDeterminant()方法的具体详情如下:
包路径:java.awt.geom.AffineTransform
类名称:AffineTransform
方法名:getDeterminant

AffineTransform.getDeterminant介绍

暂无

代码示例

代码示例来源:origin: apache/pdfbox

  1. /**
  2. * Calculated the subsampling frequency for a given PDImage based on the current transformation
  3. * and its calculated transform
  4. *
  5. * @param pdImage PDImage to be drawn
  6. * @param at Transform that will be applied to the image when drawing
  7. * @return The rounded-down ratio of image pixels to drawn pixels. Returned value will always be
  8. * >=1.
  9. */
  10. private int getSubsampling(PDImage pdImage, AffineTransform at)
  11. {
  12. // calculate subsampling according to the resulting image size
  13. double scale = Math.abs(at.getDeterminant() * xform.getDeterminant());
  14. int subsampling = (int) Math.floor(Math.sqrt(pdImage.getWidth() * pdImage.getHeight() / scale));
  15. if (subsampling > 8)
  16. {
  17. subsampling = 8;
  18. }
  19. if (subsampling < 1)
  20. {
  21. subsampling = 1;
  22. }
  23. if (subsampling > pdImage.getWidth() || subsampling > pdImage.getHeight())
  24. {
  25. // For very small images it is possible that the subsampling would imply 0 size.
  26. // To avoid problems, the subsampling is set to no less than the smallest dimension.
  27. subsampling = Math.min(pdImage.getWidth(), pdImage.getHeight());
  28. }
  29. return subsampling;
  30. }

代码示例来源:origin: lbalazscs/Pixelitor

  1. public int compare(ImageInstruction i1, ImageInstruction i2) {
  2. if(i1.isFirstFrame && i2.isFirstFrame==false)
  3. return 1;
  4. if(i2.isFirstFrame && i1.isFirstFrame==false)
  5. return -1;
  6. double d1 = i1.transform.getDeterminant();
  7. double d2 = i2.transform.getDeterminant();
  8. return Double.compare(d1, d2);
  9. // if(d1<d2) {
  10. // return -1;
  11. // }
  12. // return 1;
  13. }

代码示例来源:origin: net.sf.jung/jung-visualization

  1. /**
  2. * @return the transform's overall scale magnitude
  3. */
  4. public double getScale() {
  5. return Math.sqrt(transform.getDeterminant());
  6. }

代码示例来源:origin: bcdev/beam

  1. @Override
  2. public boolean validatePage() {
  3. try {
  4. return createTransform().getDeterminant() != 0.0;
  5. } catch (Exception ignore) {
  6. return false;
  7. }
  8. }

代码示例来源:origin: senbox-org/snap-desktop

  1. @Override
  2. public boolean validatePage() {
  3. try {
  4. return createTransform().getDeterminant() != 0.0;
  5. } catch (Exception ignore) {
  6. return false;
  7. }
  8. }

代码示例来源:origin: fr.avianey.apache-xmlgraphics/batik

  1. public void updateMatrix(AffineTransform at) {
  2. prevScale = (float)Math.sqrt(at.getDeterminant());
  3. prevTransX = (float)at.getTranslateX();
  4. prevTransY = (float)at.getTranslateY();
  5. }
  6. }

代码示例来源:origin: org.apache.xmlgraphics/batik-anim

  1. /**
  2. * <b>DOM</b>: Implements {@link SVGSVGElement#getCurrentView()}.
  3. */
  4. public float getCurrentScale() {
  5. AffineTransform scrnTrans = getSVGContext().getScreenTransform();
  6. if (scrnTrans != null) {
  7. return (float)Math.sqrt(scrnTrans.getDeterminant());
  8. }
  9. return 1;
  10. }

代码示例来源:origin: org.apache.xmlgraphics/batik-swing

  1. public void updateMatrix(AffineTransform at) {
  2. prevScale = (float)Math.sqrt(at.getDeterminant());
  3. prevTransX = (float)at.getTranslateX();
  4. prevTransY = (float)at.getTranslateY();
  5. }
  6. }

代码示例来源:origin: fr.avianey.apache-xmlgraphics/batik

  1. /**
  2. * <b>DOM</b>: Implements {@link SVGSVGElement#getCurrentView()}.
  3. */
  4. public float getCurrentScale() {
  5. AffineTransform scrnTrans = getSVGContext().getScreenTransform();
  6. if (scrnTrans != null) {
  7. return (float)Math.sqrt(scrnTrans.getDeterminant());
  8. }
  9. return 1;
  10. }

代码示例来源:origin: apache/batik

  1. public void updateMatrix(AffineTransform at) {
  2. prevScale = (float)Math.sqrt(at.getDeterminant());
  3. prevTransX = (float)at.getTranslateX();
  4. prevTransY = (float)at.getTranslateY();
  5. }
  6. }

代码示例来源:origin: apache/batik

  1. /**
  2. * <b>DOM</b>: Implements {@link SVGSVGElement#getCurrentView()}.
  3. */
  4. public float getCurrentScale() {
  5. AffineTransform scrnTrans = getSVGContext().getScreenTransform();
  6. if (scrnTrans != null) {
  7. return (float)Math.sqrt(scrnTrans.getDeterminant());
  8. }
  9. return 1;
  10. }

代码示例来源:origin: com.itextpdf/itextpdf

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke)stroke;
  5. float scale = (float)Math.sqrt(Math.abs(transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase() * scale);
  12. }

代码示例来源:origin: com.github.librepdf/openpdf

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke)stroke;
  5. float scale = (float)Math.sqrt(Math.abs(transform.getDeterminant()));
  6. float[] dash = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase() * scale);
  12. }

代码示例来源:origin: org.docx4j/xhtmlrenderer

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke)stroke;
  5. float scale = (float)Math.sqrt(Math.abs(_transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase() * scale);
  12. }

代码示例来源:origin: org.xhtmlrenderer/core-renderer

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke)stroke;
  5. float scale = (float)Math.sqrt(Math.abs(_transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase() * scale);
  12. }

代码示例来源:origin: com.google.code.maven-play-plugin.org.xhtmlrenderer/core-renderer

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke)stroke;
  5. float scale = (float)Math.sqrt(Math.abs(_transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase() * scale);
  12. }

代码示例来源:origin: es.gob.afirma/afirma-crypto-pdf-itext

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke)stroke;
  5. float scale = (float)Math.sqrt(Math.abs(transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase() * scale);
  12. }

代码示例来源:origin: danfickle/openhtmltopdf

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke) stroke;
  5. float scale = (float) Math.sqrt(Math.abs(_transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase()
  12. * scale);
  13. }

代码示例来源:origin: danfickle/openhtmltopdf

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke) stroke;
  5. float scale = (float) Math.sqrt(Math.abs(_transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase()
  12. * scale);
  13. }

代码示例来源:origin: org.xhtmlrenderer/flying-saucer-pdf-itext5

  1. private Stroke transformStroke(Stroke stroke) {
  2. if (!(stroke instanceof BasicStroke))
  3. return stroke;
  4. BasicStroke st = (BasicStroke) stroke;
  5. float scale = (float) Math.sqrt(Math.abs(_transform.getDeterminant()));
  6. float dash[] = st.getDashArray();
  7. if (dash != null) {
  8. for (int k = 0; k < dash.length; ++k)
  9. dash[k] *= scale;
  10. }
  11. return new BasicStroke(st.getLineWidth() * scale, st.getEndCap(), st.getLineJoin(), st.getMiterLimit(), dash, st.getDashPhase()
  12. * scale);
  13. }

相关文章