Author: kono
Date: 2009-06-26 20:04:40 -0700 (Fri, 26 Jun 2009)
New Revision: 17140

Added:
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShapeGroup.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PViewObject.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ShapeManager.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNodeView.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Abstract2DObjectShape.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Rectangle.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/ShapeFactory.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/visualproperty/ShapeVisualProperty.java
Modified:
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShape.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PEdgeView.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingVisualLexicon.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/AbstractObjectShape.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Cube.java
Log:
Start designing mechanism to handle shape and super shapes (group).

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShape.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShape.java
  2009-06-27 00:13:32 UTC (rev 17139)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShape.java
  2009-06-27 03:04:40 UTC (rev 17140)
@@ -1,6 +1,6 @@
 package org.cytoscape.view.presentation.processing;
 
-import java.awt.Color;
+import java.awt.Paint;
 
 /**
  * 
@@ -33,8 +33,8 @@
        public void setZ(final float z);
        public void setLocation(float x, float y, float z);
        
-       public Color getColor();
-       public void setColor(Color color);
+       public Paint getPaint();
+       public void setPaint(Paint paint);
        
        public void setOpacity(float alpha);
        public float getOpacity();

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShapeGroup.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShapeGroup.java
                             (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ObjectShapeGroup.java
     2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,12 @@
+package org.cytoscape.view.presentation.processing;
+
+import java.util.List;
+
+public interface ObjectShapeGroup {
+       
+       public List<ObjectShape> getMembers();
+       public void addMember(ObjectShape shape);
+       
+       public void draw();
+
+}

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PEdgeView.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PEdgeView.java
    2009-06-27 00:13:32 UTC (rev 17139)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PEdgeView.java
    2009-06-27 03:04:40 UTC (rev 17140)
@@ -1,12 +1,17 @@
 package org.cytoscape.view.presentation.processing;
 
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.view.model.View;
 
+
 /**
  * Node View rendered by Processing engine
  * 
  * @author kono
  *
  */
-public interface PEdgeView {
+public interface PEdgeView extends PViewObject {
+       
+       public View<CyEdge> getViewModel();
 
 }

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
    2009-06-27 00:13:32 UTC (rev 17139)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
    2009-06-27 03:04:40 UTC (rev 17140)
@@ -3,8 +3,9 @@
 import org.cytoscape.model.CyNode;
 import org.cytoscape.view.model.View;
 
-public interface PNodeView extends ObjectShape {
+public interface PNodeView extends PViewObject {
        
+       
        /**
         * return the backend view model for this node presentation.
         * This is immutable.

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PViewObject.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PViewObject.java
                          (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PViewObject.java
  2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,7 @@
+package org.cytoscape.view.presentation.processing;
+
+public interface PViewObject {
+       
+       public ObjectShape getShape();
+
+}

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ShapeManager.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ShapeManager.java
                         (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/ShapeManager.java
 2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,13 @@
+package org.cytoscape.view.presentation.processing;
+
+import java.util.Set;
+
+public interface ShapeManager {
+       
+       public Set<ObjectShape> getAllShapes();
+       
+       public Set<ObjectShape> getNodeShapes();
+       
+       public Set<ObjectShape> getEdgeShapes();
+
+}

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNodeView.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNodeView.java
                          (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNodeView.java
  2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,29 @@
+package org.cytoscape.view.presentation.processing.internal;
+
+import org.cytoscape.model.CyNode;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.presentation.processing.ObjectShape;
+import org.cytoscape.view.presentation.processing.PNodeView;
+import org.cytoscape.view.presentation.processing.PickableObject;
+
+public class ProcessingNodeView implements PNodeView, PickableObject {
+
+       private ObjectShape shape;
+       
+       
+       public View<CyNode> getViewModel() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       public ObjectShape getShape() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       public void pick(float x, float y) {
+               // TODO Auto-generated method stub
+               
+       }
+
+}

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingVisualLexicon.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingVisualLexicon.java
     2009-06-27 00:13:32 UTC (rev 17139)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingVisualLexicon.java
     2009-06-27 03:04:40 UTC (rev 17140)
@@ -1,7 +1,18 @@
 package org.cytoscape.view.presentation.processing.internal;
 
+import static org.cytoscape.model.GraphObject.NODE;
+
+import org.cytoscape.view.model.VisualProperty;
+import org.cytoscape.view.presentation.processing.ObjectShape;
+import org.cytoscape.view.presentation.processing.internal.shape.Rectangle;
+import 
org.cytoscape.view.presentation.processing.visualproperty.ShapeVisualProperty;
 import org.cytoscape.view.presentation.property.ThreeDVisualLexicon;
 
 public class ProcessingVisualLexicon extends ThreeDVisualLexicon {
+       
+       private static final ObjectShape DEFAULT_SHAPE = new Rectangle(0, 0, 
null);
+       
+       public static final VisualProperty<? extends ObjectShape> NODE_SHAPE = 
new ShapeVisualProperty(
+                       NODE, null, "NODE_SHAPE", "Node Shape");
 
 }

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Abstract2DObjectShape.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Abstract2DObjectShape.java
                         (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Abstract2DObjectShape.java
 2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,17 @@
+package org.cytoscape.view.presentation.processing.internal.shape;
+
+import processing.core.PApplet;
+
+public abstract class Abstract2DObjectShape extends AbstractObjectShape {
+       
+       protected float borderWidth;
+
+       public Abstract2DObjectShape(float x, float y, PApplet parent) {
+               super(x, y, 0, parent);
+       }
+
+       public float getDepth() {
+               return 0f;
+       }
+
+}

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/AbstractObjectShape.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/AbstractObjectShape.java
   2009-06-27 00:13:32 UTC (rev 17139)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/AbstractObjectShape.java
   2009-06-27 03:04:40 UTC (rev 17140)
@@ -1,6 +1,6 @@
 package org.cytoscape.view.presentation.processing.internal.shape;
 
-import java.awt.Color;
+import java.awt.Paint;
 
 import org.cytoscape.view.presentation.processing.ObjectShape;
 import org.cytoscape.view.presentation.processing.PickableObject;
@@ -9,37 +9,51 @@
 
 public abstract class AbstractObjectShape implements ObjectShape, 
PickableObject {
        
-       protected PApplet p;
+       // Parent component, which is the Processing canvas.
+       protected final PApplet p;
        
-       protected float width;
-       protected float height;
-       protected float depth;
+       // Human readable name of this shape.  This is mandatory and immutable.
+       protected String displayName;
        
+       // Dimension of this object
+       protected float width, height, depth;
+       
+       // Location
        protected float x, y, z;
        
+       // Selection status
        protected boolean picked;
        
-       protected Color basicColor;
+       // Basic Paint of this object.  Will be used if texture is not 
available.
+       protected Paint basicPaint;
        
+       // Opacity of this shape.
+       protected float opacity;
+       
        public AbstractObjectShape(PApplet parent) {
+               this(0, 0, 0, parent);
+       }
+       
+       public AbstractObjectShape(float x, float y, float z, PApplet parent) {
                this.p = parent;
+               this.x = x;
+               this.y = y;
+               this.z = z;
        }
 
        public abstract void draw();
 
-       public Color getColor() {
+       public Paint getPaint() {
                // TODO Auto-generated method stub
                return null;
        }
 
        public float getDepth() {
-               // TODO Auto-generated method stub
-               return 0;
+               return depth;
        }
 
        public String getDisplayName() {
-               // TODO Auto-generated method stub
-               return null;
+               return displayName;
        }
 
        public float getHeight() {
@@ -58,18 +72,15 @@
        }
 
        public float getX() {
-               // TODO Auto-generated method stub
-               return 0;
+               return x;
        }
 
        public float getY() {
-               // TODO Auto-generated method stub
-               return 0;
+               return y;
        }
 
        public float getZ() {
-               // TODO Auto-generated method stub
-               return 0;
+               return z;
        }
 
        public void rotate(float angle) {
@@ -82,9 +93,7 @@
                
        }
 
-       public void setColor(Color color) {
-               // TODO Auto-generated method stub
-               
+       public void setPaint(Paint paint) {             
        }
 
        public void setDepth(float depth) {
@@ -118,26 +127,19 @@
        }
 
        public void setX(float x) {
-               // TODO Auto-generated method stub
-               
+               this.x = x;
        }
 
        public void setY(float y) {
-               // TODO Auto-generated method stub
-               
+               this.y = y;
        }
 
        public void setZ(float z) {
-               // TODO Auto-generated method stub
-               
+               this.z = z;
        }
 
        public void pick(float x, float y) {
                // TODO Auto-generated method stub
                
        }
-
-
-
-       
 }

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Cube.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Cube.java
  2009-06-27 00:13:32 UTC (rev 17139)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Cube.java
  2009-06-27 03:04:40 UTC (rev 17140)
@@ -16,7 +16,7 @@
        public void draw() {
 
                p.beginShape(PApplet.QUADS);
-               p.texture(texture);
+               //p.texture(texture);
 
                // +Z "front" face
                p.vertex(-1, -1, 1, 0, 0);

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Rectangle.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Rectangle.java
                             (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/Rectangle.java
     2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,19 @@
+package org.cytoscape.view.presentation.processing.internal.shape;
+
+import processing.core.PApplet;
+
+public class Rectangle extends Abstract2DObjectShape {
+       
+       private static final String RECTANGLE = "rectangle";
+       
+       public Rectangle(float x, float y, PApplet p) {
+               super(x, y, p);
+               this.displayName = RECTANGLE;
+       }
+
+       @Override
+       public void draw() {
+               
+       }
+
+}

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/ShapeFactory.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/ShapeFactory.java
                          (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/shape/ShapeFactory.java
  2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,34 @@
+package org.cytoscape.view.presentation.processing.internal.shape;
+
+import org.cytoscape.model.CyNode;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.presentation.processing.PNodeView;
+
+import processing.core.PApplet;
+
+import static org.cytoscape.view.presentation.property.ThreeDVisualLexicon.*;
+
+public class ShapeFactory {
+       
+       private final PApplet p;
+       
+       public ShapeFactory(PApplet p) {
+               this.p = p;
+       }
+       
+       public PNodeView getNodeShape(View<CyNode> view) {
+               
+               
+               
+               /*
+                * Parse view info
+                */
+               final Number x = view.getVisualProperty(NODE_X_LOCATION);
+               final Number y = view.getVisualProperty(NODE_Y_LOCATION);
+               final Number z = view.getVisualProperty(NODE_Z_LOCATION);
+               
+               
+               return null;
+       }
+
+}

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/visualproperty/ShapeVisualProperty.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/visualproperty/ShapeVisualProperty.java
                           (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/visualproperty/ShapeVisualProperty.java
   2009-06-27 03:04:40 UTC (rev 17140)
@@ -0,0 +1,24 @@
+package org.cytoscape.view.presentation.processing.visualproperty;
+
+import org.cytoscape.view.model.AbstractVisualProperty;
+import org.cytoscape.view.presentation.processing.ObjectShape;
+
+public class ShapeVisualProperty extends AbstractVisualProperty<ObjectShape> {
+
+       public ShapeVisualProperty(String ot, ObjectShape shape, String id,
+                       String name) {
+               super(ot, shape, id, name);
+               // TODO Auto-generated constructor stub
+       }
+
+       public String getSerializableString(ObjectShape value) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       public ObjectShape parseSerializableString(String value) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+}


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to