Je suis en train de créer une ligne courbe entre deux entités en utilisant OpenLayers 2.10. J'ai peur d'avoir trouvé un bug, ou je ne comprends tout simplement pas ce que fait la géométrie de la courbe. Le OpenLayers docs say: "Une courbe est un point multipoint, dont les points sont supposés être connectés.A cette fin, nous fournissons une fonction 'getLength()', qui itère à travers les points, en additionnant les distances entre eux." OK, so far so good ...OpenLayers Curve Geometry ne fonctionne pas comme prévu
var curve = new OpenLayers.Feature.Vector(
new OpenLayers.Geometry.Curve([point1, point2, point3]), null, style
);
layer.addFeatures([curve]);
Si je remplace Curve
avec LineString
, LinearRing
ou Multipoint
, les caractéristiques sont rendus comme prévu. Mais quand j'utilise Curve
, précisément squat est rendu sur la carte. Pire encore, appeler la méthode getLength
de la géométrie «fonctionne», dans le sens où j'obtiens une réponse saine qui obtient des échelles avec la distance entre les points. Je ne sais pas si la réponse est correcte, mais OL a certainement créé une représentation interne de la courbe.
J'ai testé dans Chrome et Firefox sous Linux et Windows, et les résultats sont toujours les mêmes.
Je n'ai pas non plus réussi à trouver un seul exemple de la géométrie Curve. Si vous en avez un, ce serait extrêmement utile.
Notez que je asked about a similar question sur les lignes courbes sur StackOverflow, mais c'était sur la façon de générer du texte «incurvé» bien connu à partir de plusieurs segments de chaînes de lignes, généré sur le serveur.