First of all, hi everyone! I'm new here and hope that this is the right way to 
post bug reports. Otherwise, please inform me how to do it.
Now, I installed octclip to find intersections between polygons and found an 
odd behaviour when sections of different polygons follow the same line. Also, 
Strange results are returned when a section "touches" a point in the other 
polygon. 
The problem is that the result in the first example should be one polygon and 
that the result in the second example should be a polygon without the duplicate 
point [2.4 2.4].
I thank you for updating the package or advising me if I think wrong on how the 
functionality should be.


Two example codes are shown below so that you can rerun the script yourselves:
1. Sections of different polygons follow the same line:
% This is a script to generate a polygon and plot it in a figure and find 
intersectionpolygons(1).p = [ 2.2 2.2;             3.4 3.4;        6.3 3.4;     
   5.3 2.8;        3.3 2.4];
polygons(2).p = [ 1.2 2.2;           3.4 3.4;        5.3 3.4;        5.3 2.8;   
           4.4 2.3;          3.3 1.7]+5;
polygons(2).p = polygons(2).p + [1*ones(size(polygons(2).p,1),1) 
0*ones(size(polygons(2).p,1),1)];
plot(polygons(1).p(:,1),polygons(1).p(:,2),'*-');hold onplot(polygons(1).p([end 
1],1),polygons(1).p([end 1],2),'*-');

plot(polygons(2).p(:,1),polygons(2).p(:,2),'*-.k');plot(polygons(2).p([end 
1],1),polygons(2).p([end 1],2),'*:k');hold off
[X,Y,nPol,nInt,nPert] = _oc_polybool(polygons(2).p,polygons(1).p,'AND');
fprintf('runPolygonShowNonIntersecting.m\n')fprintf('Numbers of polygons found: 
%i\n',nPol)






2. A section "touches" a point in the other polygon:
% This is a script to generate a polygon and plot it in a figure and find 
intersection
polygons(1).p = [ 2.2 2.2;           3.4 3.4;        6.3 3.4;        5.3 2.8;   
     3.3 2.4];
polygons(2).p = [ 1.2 2.2;           3.4 3.4;        5.3 3.4;        5.3 2.8;   
           4.4 2.3;          3.3 1.7]+0.2;
polygons(2).p = polygons(2).p + [1*ones(size(polygons(2).p,1),1) 
0*ones(size(polygons(2).p,1),1)];
plot(polygons(1).p(:,1),polygons(1).p(:,2),'*-');hold onplot(polygons(1).p([end 
1],1),polygons(1).p([end 1],2),'*-');

plot(polygons(2).p(:,1),polygons(2).p(:,2),'*-.k');plot(polygons(2).p([end 
1],1),polygons(2).p([end 1],2),'*:k');hold off
[X,Y,nPol,nInt,nPert] = _oc_polybool(polygons(2).p,polygons(1).p,'AND');
fprintf('runPolygonShowNonIntersecting.m\n')fprintf('Numbers of polygons found: 
%i\n',nPol)                                       
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure 
contains a definitive record of customers, application performance, 
security threats, fraudulent activity, and more. Splunk takes this 
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Octave-dev mailing list
Octave-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/octave-dev

Reply via email to