[OpenLayers-Dev] vector labels - almost there!
Zer
hcan at hotmail.com
Wed Jul 2 10:34:53 EDT 2008
Hello,
After some more investigation, I found out that I had to add the changes in
these files too. And now it works almost fine! There is oe issue regarding
removing of vectors. I call the destroyFeatures() function on a vector
layer. The vetctor objects are removed from the map, but the labels are are
not removed. Does anyone know what, and where, to add in the code to destroy
them?
Thanks,
-Z
sandbox/camptocamp/text/lib/OpenLayers/Geometry/Point.js
r5614 r7005
173 173
174 174 /**
175 * APIMethod: getCentroid
176 *
177 * Returns:
178 * {<OpenLayers.Geometry.Point>} The centroid of the collection
179 */
180 getCentroid: function() {
181 return new OpenLayers.Geometry.Point(this.x, this.y);
182 },
183
184 /**
175 185 * APIMethod: intersects
176 186 * Determine if the input geometry intersects this one.
sandbox/camptocamp/text/lib/OpenLayers/Geometry/LinearRing.js
r5673 r7005
197 197 }
198 198 return area;
199 },
200
201 /**
202 * APIMethod: getCentroid
203 *
204 * Returns:
205 * {<OpenLayers.Geometry.Point>} The centroid of the collection
206 */
207 getCentroid: function() {
208 if ( this.components && (this.components.length > 2)) {
209 var sumX = 0.0;
210 var sumY = 0.0;
211 for (var i = 0; i < this.components.length - 1; i++) {
212 var b = this.components[i];
213 var c = this.components[i+1];
214 sumX += (b.x + c.x) * (b.x * c.y - c.x * b.y);
215 sumY += (b.y + c.y) * (b.x * c.y - c.x * b.y);
216 }
217 var x = sumX / (6 * Math.abs(this.getArea()));
218 var y = sumY / (6 * Math.abs(this.getArea()));
219 }
220 return new OpenLayers.Geometry.Point(x, y);
199 221 },
200 222
#
#
sandbox/camptocamp/text/lib/OpenLayers/Geometry/Collection.js
r5614 r7005
231 231 return area;
232 232 },
233
234 /**
235 * APIMethod: getCentroid
236 *
237 * Returns:
238 * {<OpenLayers.Geometry.Point>} The centroid of the collection
239 */
240 getCentroid: function() {
241 var centroid = this.components[0].getCentroid();
242 return centroid;
243 },
233 244
234 245 /**
Arnd Wippermann wrote:
>
> Hi,
>
> i would also like to display labels on a map. I have tried using
> OpenLayers.Popup to do this. It seems to work. The labels could be moved
> after creating, but after zooming the position will new calculated to
> default values via OpenLayers.Popup. I have no idea, how to prevent this.
>
> http://gis.ibbeck.de/ginfo/apps/OLExamples/OL26/examples/labels.html
> http://gis.ibbeck.de/ginfo/apps/OLExamples/OL26/examples/labels.html
>
> Arnd Wippermann
> http://gis.ibbeck.de/ginfo
>
--
View this message in context: http://www.nabble.com/vector-labels-tp16589123p18238904.html
Sent from the OpenLayers Dev mailing list archive at Nabble.com.
More information about the Dev
mailing list