本文整理匯總了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);
}