#4815: list_plot3d is broken (segfaults, zero division errors)
----------------------+-----------------------------------------------------
Reporter: was | Owner: was
Type: defect | Status: new
Priority: major | Milestone: sage-3.3
Component: graphics | Keywords:
----------------------+-----------------------------------------------------
In sage-3.2.1 the following segfaults. Fortunately, in sage-3.2.2.alpha2
it gives only a traceback (as given below):
{{{
sage: sage: X = list_plot3d([(1,1,1), (1,2,3), (1,2,5), (1,1,1)])
sage: sage: X.show(viewer='tachyon')
---------------------------------------------------------------------------
ZeroDivisionError Traceback (most recent call
last)
/Users/was/build/sage-3.2.2.alpha2/<ipython console> in <module>()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/base.so in sage.plot.plot3d.base.Graphics3d.show
(sage/plot/plot3d/base.c:8436)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/base.so in
sage.plot.plot3d.base.Graphics3d._prepare_for_tachyon
(sage/plot/plot3d/base.c:5912)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/base.so in
sage.plot.plot3d.base.Graphics3d._box_for_aspect_ratio
(sage/plot/plot3d/base.c:6124)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/base.so in
sage.plot.plot3d.base.Graphics3d._safe_bounding_box
(sage/plot/plot3d/base.c:2743)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/parametric_surface.so in
sage.plot.plot3d.parametric_surface.ParametricSurface.bounding_box
(sage/plot/plot3d/parametric_surface.c:2133)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/parametric_surface.so in
sage.plot.plot3d.parametric_surface.ParametricSurface.triangulate
(sage/plot/plot3d/parametric_surface.c:2612)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/parametric_surface.so in
sage.plot.plot3d.parametric_surface.triangulate
(sage/plot/plot3d/parametric_surface.c:2551)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/parametric_surface.so in
sage.plot.plot3d.parametric_surface.ParametricSurface.eval_grid
(sage/plot/plot3d/parametric_surface.c:4108)()
/Users/was/build/sage-3.2.2.alpha2/local/lib/python2.5/site-
packages/sage/plot/plot3d/list_plot3d.pyc in g(x, y)
210 from parametric_surface import ParametricSurface
211 def g(x,y):
--> 212 i=round( (x-xmin)/(xmax-xmin)*(num_points-1) )
213 j=round( (y-ymin)/(ymax-ymin)*(num_points-1) )
214 z=vals[int(j),int(i)]
ZeroDivisionError: float division
}}}
list_plot3d is supposed to work on *any* input, so this is a bug.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4815>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of
Reinventing the Wheel
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---