本文整理汇总了Java中edu.uci.ics.jung.visualization.transform.MutableTransformer.setToIdentity方法的典型用法代码示例。如果您正苦于以下问题:Java MutableTransformer.setToIdentity方法的具体用法?Java MutableTransformer.setToIdentity怎么用?Java MutableTransformer.setToIdentity使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类edu.uci.ics.jung.visualization.transform.MutableTransformer
的用法示例。
在下文中一共展示了MutableTransformer.setToIdentity方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: autoZoomViewer
import edu.uci.ics.jung.visualization.transform.MutableTransformer; //导入方法依赖的package包/类
public static void autoZoomViewer(VisualizationViewer<?, ?> vv,
LayerViewer<?, ?> home, Directions direction) {
if (vv == null || home == null)
return;
// reset transforms
MutableTransformer layoutTrans = vv.getRenderContext()
.getMultiLayerTransformer()
.getTransformer(edu.uci.ics.jung.visualization.Layer.LAYOUT);
layoutTrans.setToIdentity();
MutableTransformer viewTrans = vv.getRenderContext()
.getMultiLayerTransformer()
.getTransformer(edu.uci.ics.jung.visualization.Layer.VIEW);
viewTrans.setToIdentity();
Dimension dim = vv.getSize();
Rectangle2D.Double graphBounds = home.getGraphBoundsCache();
CrossoverScalingControl scaler = new CrossoverScalingControl();
// Scale using crossover scaler, so vertices will not grow
// larger than they are in original
double factor = Double.POSITIVE_INFINITY;
if (direction == Directions.HORIZONTAL || direction == Directions.BOTH)
factor = dim.getWidth() / graphBounds.width;
if (direction == Directions.VERTICAL || direction == Directions.BOTH
|| Double.isInfinite(factor))
factor = Math.min(factor, dim.getHeight() / graphBounds.height);
scaler.scale(vv, (float) factor, vv.getCenter());
// Translate center of graph to center of vv.
Point2D lvc = vv.getRenderContext().getMultiLayerTransformer()
.inverseTransform(vv.getCenter());
double dx = (lvc.getX() - graphBounds.getCenterX());
double dy = (lvc.getY() - graphBounds.getCenterY());
layoutTrans.translate(dx, dy);
}
示例2: autoZoomViewer
import edu.uci.ics.jung.visualization.transform.MutableTransformer; //导入方法依赖的package包/类
public static void autoZoomViewer(VisualizationViewer<?, ?> vv,
LayerViewer<?, ?> home, Directions direction) {
if (vv == null || home == null)
return;
// reset transforms
MutableTransformer layoutTrans = vv.getRenderContext()
.getMultiLayerTransformer()
.getTransformer(edu.uci.ics.jung.visualization.Layer.LAYOUT);
layoutTrans.setToIdentity();
MutableTransformer viewTrans = vv.getRenderContext()
.getMultiLayerTransformer()
.getTransformer(edu.uci.ics.jung.visualization.Layer.VIEW);
viewTrans.setToIdentity();
Dimension dim = vv.getSize();
Rectangle2D.Double graphBounds = home.getGraphBoundsCache();
CrossoverScalingControl scaler = new CrossoverScalingControl();
// Scale using crossover scaler, so vertices will not grow
// larger than they are in original
double factor = Double.POSITIVE_INFINITY;
if (direction == Directions.HORIZONTAL || direction == Directions.BOTH)
factor = dim.getWidth() / graphBounds.width;
if (direction == Directions.VERTICAL || direction == Directions.BOTH
|| Double.isInfinite(factor))
factor = Math.min(factor, dim.getHeight() / graphBounds.height);
scaler.scale(vv, (float) factor, vv.getCenter());
// Translate center of graph to center of vv.
Point2D lvc = vv.getRenderContext().getMultiLayerTransformer()
.inverseTransform(vv.getCenter());
double dx = (lvc.getX() - graphBounds.getCenterX());
double dy = (lvc.getY() - graphBounds.getCenterY());
layoutTrans.translate(dx, dy);
}