Ticket #631 (closed feature: fixed)

Opened 6 years ago

Last modified 6 years ago

curve features don't render (at least, not in FF)

Reported by: sderle Owned by:
Priority: minor Milestone: 2.4 Release
Component: Renderer Version:
Keywords: Cc:
State:

Description

test case attached

Attachments

vector-features.html Download (2.5 KB) - added by sderle 6 years ago.
curve rendering seems to be broken?
vector-features.2.html Download (2.4 KB) - added by crschmidt 6 years ago.
this one works
Picture 2.png Download (95.0 KB) - added by crschmidt 6 years ago.
screenshot
vector-features.html.patch Download (0.6 KB) - added by sderle 6 years ago.
right, but change these two lines and it stops working... curves are not obliged to be closed like linearRings
curve.patch Download (0.7 KB) - added by crschmidt 6 years ago.

Change History

Changed 6 years ago by sderle

curve rendering seems to be broken?

Changed 6 years ago by crschmidt

this one works

Changed 6 years ago by crschmidt

screenshot

Changed 6 years ago by sderle

right, but change these two lines and it stops working... curves are not obliged to be closed like linearRings

Changed 6 years ago by sderle

follow up: curves are implemented in SVG.pm using cubic Bézier paths of all things. the point list passed to the geometry constructor is actually meant to be a triplet of points, the first of which is the curve segment end point and the following two the Bézier path control points.

suffice it to say that this is completely incongruous w/r/t to rendering GIS data in OL, and totally at variance with the definition of "curve" given in the OGC Simple Features model, which we used as the guide for the structure of the OO relationships between Geometry classes.

I think that this feature should be seriously reconsidered. I guess there's no reason not to leave it in, except that then we'll have to support it. Another possibility is to change the implementation so that SVG and VML simply render curves as line strings (which is the only realistic interpretation under OGC SFS). Finally, we could remove support for curves from the vector stuff in OL, but I don't think I'm recommending this.

Changed 6 years ago by crschmidt

Changed 6 years ago by crschmidt

So, Geometry.Curve isn't actually what it's pretending to be. There's no reason to renderer it: LineString is a subclass which is renderable.

In the future, we should have a BezierCurve Geometry or some such, which has additional logic for doing the curve drawing magic.

In the meantime, the patch attached here will stop curves from rendering.

Changed 6 years ago by sderle

  • keywords commit added

what the heck, let's go ahead and commit this patch so we can move on

Changed 6 years ago by crschmidt

  • status changed from new to closed
  • resolution set to fixed

Okay. So now curves don't render. Sometime in the future, maybe drawCurve could get called in some other case, but not this one. let's all go home. (#619)

Changed 6 years ago by euzuro

  • keywords commit removed
Note: See TracTickets for help on using tickets.