[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Geometry pkg Octave bug

From: PhilipNienhuis
Subject: RE: Geometry pkg Octave bug
Date: Fri, 14 Jun 2019 15:42:30 -0500 (CDT)


1. please do not top-post, answer below the message

2. for my answer, see below

Rodrigo Eguíluz wrote
> Dear Juan Pablo and others,
> Thanks for the quick answer. I apologize for not using the maintainers
> mailing list. I will in the future.
> I have attached small script with the set of XY points of the 2 polygons
> and how  clipPolygon is being called. At the current timestep, these 2
> polygons are not intersecting as you will see, but that has not caused
> this error in the past.
> [cid:image001.png@01D52214.38763960]
> Answering your question about the OS, I am using Windows 10.
> Once again, thank you.
> Regards,
> Rodrigo
> -----Original Message-----
> From: Juan Pablo Carbajal [mailto:

> ajuanpi+dev@

> ]
> Sent: Thursday, June 13, 2019 08:52
> To: Rodrigo Eguíluz <

> REguiluz@

> >; Maintainers GNU Octave <

> octave-maintainers@

> >; Philip Nienhuis <

> pr.nienhuis@

> >
> Subject: Re: Geometry pkg Octave bug

When I run it in a self-compiled Octave-5.1.1, I get:

>> [outpol , ~] = clipPolygon(jet,Rotora,1)
error: zeros: conversion of 2.5 to int64_t value failed
error: called from
    __dbl2int64__ at line 40 column 8
    clipPolygon_clipper at line 96 column 29
    clipPolygon at line 93 column 15

and that is a bug I fixed quite a while ago. Since then no new geometry
package has been released, so I wonder how you can get any meaningful

In a self-compiled octave-6.0.0 from early June, using development versions
of the geometry and matgeom packages, I get:

>> help clipPolygon
'clipPolygon' is a function from the file

CLIPPOLYGON Clip a polygon with a rectangular box

   POLY2 = clipPolygon(POLY, BOX);
   POLY is [Nx2] array of points
   BOX has the form: [XMIN XMAX YMIN YMAX].
   Returns the polygon created by the itnersection of the polygon POLY and
   the bounding box BOX.

   Note: Works only for convex polygons at the moment.

so it turns out that the clipPolygon I wrote as wrapper for the geometry
package is shadowed by a primitive one in the matgeom package.
To access that shadowed one I did
pkg unload geometry
pkg load geometry, an then:

>> [outpol , ~] = clipPolygon(jet,Rotora,1)
outpol = [](0x2)


>> [outpol , ~] = clipPolygon_clipper(jet,Rotora,1)
outpol = [](0x2)

which is the correct result, 

>> [outpol , ~] = clipPolygon_mrf(jet,Rotora,1)
error: out of memory or dimension too large for Octave's index type
error: called from
    clipPolygon_mrf at line 104 column 16

which implies the mrf method doesn't get built properly or is incompatible
with Octave-6.0.0.

That's as far as I have time right now.

@JuanPi  I suppose the issues are:
- matgeom now shadows functions in the geometry package with quite inferior
- the mrf polygon clipping functions doesn't work.


Sent from: http://octave.1599824.n4.nabble.com/Octave-Maintainers-f1638794.html

reply via email to

[Prev in Thread] Current Thread [Next in Thread]