JAL-3541 selectively merged build.gradle and gradle.properties
[jalview.git] / srcjar / fr / orsay / lri / varna / models / rna / VARNAPoint.java
diff --git a/srcjar/fr/orsay/lri/varna/models/rna/VARNAPoint.java b/srcjar/fr/orsay/lri/varna/models/rna/VARNAPoint.java
new file mode 100644 (file)
index 0000000..8929642
--- /dev/null
@@ -0,0 +1,74 @@
+package fr.orsay.lri.varna.models.rna;
+
+import java.awt.geom.Point2D;
+import java.awt.geom.Point2D.Double;
+import java.io.Serializable;
+
+import javax.xml.transform.sax.TransformerHandler;
+
+import org.xml.sax.SAXException;
+import org.xml.sax.helpers.AttributesImpl;
+
+public class VARNAPoint implements Serializable {
+
+       private static final long serialVersionUID = 8815373295131046029L;
+       
+       public double x = 0.0;
+       public double y = 0.0;
+       
+       public void toXML(TransformerHandler hd) throws SAXException
+       {
+               toXML(hd,"");
+       }       
+       
+
+       public static String XML_ELEMENT_NAME = "p";
+       public static String XML_VAR_ROLE_NAME = "r";
+       public static String XML_VAR_X_NAME = "x";
+       public static String XML_VAR_Y_NAME = "y";
+
+       public void toXML(TransformerHandler hd, String role) throws SAXException
+       {
+               AttributesImpl atts = new AttributesImpl();
+               if (!role.equals(""))
+               {
+                       atts.addAttribute("","",XML_VAR_ROLE_NAME,"CDATA",""+role);
+               }
+               atts.addAttribute("","",XML_VAR_X_NAME,"CDATA",""+x);
+               atts.addAttribute("","",XML_VAR_Y_NAME,"CDATA",""+y);
+               hd.startElement("","",XML_ELEMENT_NAME,atts);
+               hd.endElement("","",XML_ELEMENT_NAME);
+       }       
+
+       public VARNAPoint()
+       { this(0.0,0.0); }
+       
+       public VARNAPoint(double px, double py)
+    {
+       x = px; y = py;
+    }
+    public VARNAPoint(Point2D.Double p)
+    {
+       this(p.x,p.y);
+    }
+    public double getX()
+    {
+       return x;
+    }
+    
+    public double getY()
+    {
+       return y;
+    }
+    
+    public Point2D.Double toPoint2D()
+    {
+       return new Point2D.Double(x,y);
+    }
+    
+    public String toString()
+    {
+       return "("+x+","+y+")" ;
+    }
+}