當前位置: 首頁>>代碼示例>>Java>>正文


Java MutableTransformer.setToIdentity方法代碼示例

本文整理匯總了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);
}
 
開發者ID:KeepTheBeats,項目名稱:alevin-svn2,代碼行數:39,代碼來源:LayerViewer.java

示例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);
}
 
開發者ID:liruixpc11,項目名稱:crucian,代碼行數:39,代碼來源:LayerViewer.java


注:本文中的edu.uci.ics.jung.visualization.transform.MutableTransformer.setToIdentity方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。