[OpenLayers-Commits] r4196 - sandbox/tschaub/feature/lib/OpenLayers/Handler

commits at openlayers.org commits at openlayers.org
Fri Sep 7 18:06:43 EDT 2007


Author: tschaub
Date: 2007-09-07 18:06:40 -0400 (Fri, 07 Sep 2007)
New Revision: 4196

Modified:
   sandbox/tschaub/feature/lib/OpenLayers/Handler/RegularPolygon.js
Log:
the createGeometry method needs to set this.angle

Modified: sandbox/tschaub/feature/lib/OpenLayers/Handler/RegularPolygon.js
===================================================================
--- sandbox/tschaub/feature/lib/OpenLayers/Handler/RegularPolygon.js	2007-09-07 21:57:43 UTC (rev 4195)
+++ sandbox/tschaub/feature/lib/OpenLayers/Handler/RegularPolygon.js	2007-09-07 22:06:40 UTC (rev 4196)
@@ -252,8 +252,13 @@
      *     changes.
      */
     createGeometry: function() {
-        this.feature.geometry = 
-          OpenLayers.Geometry.Polygon.createRegularPolygon(this.origin, this.radius, this.sides, this.snapAngle);
+        this.angle = Math.PI * ((1/this.sides) - (1/2));
+        if(this.snapAngle) {
+            this.angle += this.snapAngle * (Math.PI / 180);
+        }
+        this.feature.geometry = OpenLayers.Geometry.Polygon.createRegularPolygon(
+            this.origin, this.radius, this.sides, this.snapAngle
+        );
     },
     
     /**
@@ -289,7 +294,7 @@
         var alpha = Math.atan2(point.y - this.origin.y,
                                point.x - this.origin.x);
         if(this.snapAngle && (this.snapToggle && !evt[this.snapToggle])) {
-            var snapAngleRad = this.snapAngle / 180 * Math.PI;
+            var snapAngleRad = (Math.PI / 180) * this.snapAngle;
             this.angle = Math.round(alpha / snapAngleRad) * snapAngleRad;
         } else {
             this.angle = alpha;



More information about the Commits mailing list