Author: bobtarling
Date: 2010-07-19 17:32:57-0700
New Revision: 18538

Added:
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigGravityPoly.java
Modified:
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigAction.java

Log:
Improve connections points for polygons

Modified: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigAction.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigAction.java?view=diff&pathrev=18538&r1=18537&r2=18538
==============================================================================
--- 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigAction.java
  (original)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigAction.java
  2010-07-19 17:32:57-0700
@@ -55,11 +55,10 @@
             xs[3] = X0 + WIDTH - HEIGHT / 2; ys[3] = Y0 + HEIGHT;
             xs[4] = X0;                      ys[4] = Y0 + HEIGHT;
             xs[5] = X0;                      ys[5] = Y0;
-            final FigPoly polyFig = new FigPoly();
-            polyFig.setXs(xs);
-            polyFig.setYs(ys);
             final Polygon p = new Polygon(xs, ys, 6);
-            polyFig.setPolygon(p);
+            final FigGravityPoly polyFig = new FigGravityPoly(p);
+//            final FigPoly polyFig = new FigPoly();
+//            polyFig.setPolygon(p);
             return polyFig;
         } else if (Model.getFacade().isAAcceptEventAction(getOwner())) {
             final int[] xs = new int[6];
@@ -71,11 +70,10 @@
             xs[3] = X0;              ys[3] = Y0 + HEIGHT;
             xs[4] = X0 + HEIGHT / 2; ys[4] = Y0 + HEIGHT / 2;
             xs[5] = X0;              ys[5] = Y0;
-            final FigPoly polyFig = new FigPoly();
-            polyFig.setXs(xs);
-            polyFig.setYs(ys);
             final Polygon p = new Polygon(xs, ys, 6);
-            polyFig.setPolygon(p);
+            final FigGravityPoly polyFig = new FigGravityPoly(p);
+//            final FigPoly polyFig = new FigPoly();
+//            polyFig.setPolygon(p);
             return polyFig;
         } else {
             return new FigRRect(X0, Y0, WIDTH, HEIGHT, LINE_COLOR, FILL_COLOR);

Added: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigGravityPoly.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigGravityPoly.java?view=markup&pathrev=18538
==============================================================================
--- (empty file)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigGravityPoly.java
     2010-07-19 17:32:57-0700
@@ -0,0 +1,43 @@
+/* $Id: $
+ *****************************************************************************
+ * Copyright (c) 2009 Contributors - see below
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Bob Tarling
+ *****************************************************************************
+ */
+
+package org.argouml.activity2.diagram;
+
+import java.awt.Point;
+import java.awt.Polygon;
+import java.util.List;
+
+import org.tigris.gef.base.Geometry;
+import org.tigris.gef.presentation.FigPoly;
+
+/**
+ * A FigPoly to which 
+ * @author Bob Tarling
+ *
+ */
+public class FigGravityPoly extends FigPoly {
+    
+    FigGravityPoly(Polygon p) {
+        super();
+        setPolygon(p);
+    }
+
+    @Override
+    public Point getClosestPoint(Point anotherPt) {
+        return Geometry.ptClosestTo(getXs(), getYs(), getYs().length, 
anotherPt);
+    }
+
+    public List getGravityPoints() {
+        return null;
+    }
+}

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2635445

To unsubscribe from this discussion, e-mail: 
[[email protected]].

Reply via email to