Hi,
I just detected some weird behaviour in IDLgrPolygon. I generated an
Object with this data:
arr = Transpose([[-1, 1,-1, 1,-1, 1,-1, 1], $
[-1,-1,-1,-1, 1, 1, 1, 1], $
[-1,-1, 1, 1,-1,-1, 1, 1]])
;vertex: 1 2 3 4 5 6 7 8
arr_colors = Transpose([[255,255, 0, 0,255,127, 0,127], $
[190, 0, 65,255, 0, 0,255,255], $
[ 0,190,255, 65, 0,255,255, 0]])
arr_polys = [[4, 0, 1, 3, 2], $ ; vertices 1243
[4, 0, 2, 6, 4], $ ; vertices 1375
[4, 2, 3, 7, 6], $ ; vertices 3487
[4, 1, 3, 7, 5], $ ; vertices 2486
[4, 0, 1, 5, 4], $ ; vertices 1265
[4, 4, 5, 7, 6]] ; vertices 5687
poly = OBJ_NEW('IDLgrPolygon', arr, polygons=arr_polys,
vert_color=arr_colors, SHADING=1)
which is a colored cube.
The onlinehelp to IDLgrPolygon sais:
POLYGONS (Get, Set)
[...] To ignore an entry in the POLYGONS array, set the vertex count,
n, to 0.
Fine - I set Element 25 (the first of the last line) from 4 to 0 an
looked forward to see an "open cube" beacuse the last polygon shouldn't
be drawn.
What I saw was an open cube ... and an error:
% OBJ_NEW: Error, invalid connectivity list detected (invalid final
polygon).
If I just leave the last (or any other) line away there's no error and
the result is, what I expeced, an open cube. But this can't be the
solution, because I want to interactively permit polygons being drawn.
My question is: Is this a bug ?
or: what did I wrong ?
Thanks,
Thomas
|