Opened 16 years ago

Last modified 8 years ago

#31 new defect

NVIZ issues in GRASS6.x

Reported by: clerici Owned by: grass-dev@…
Priority: major Milestone: 6.4.6
Component: Tcl/Tk NVIZ Version: svn-develbranch6
Keywords: nviz Cc:
CPU: Unspecified Platform: Unspecified

Description

1) In the control panel the LOOK cancel button does not work (it works on 6.0)

2) In the control panel the LOOK RESET button does not reset twist (bug?)

3) In the Surface panel the masking doesn't have any effect on 'fine' surfaces but only on 'wire' surfaces and vectors maps.

4) In the Surface panel the emission parameter (in Surface Attribute) seems ineffective.

5) In the Surface panel the Transparency function has a strange behaviour with the 'constant' elevation surfaces. When a transparency value is assigned to the surface and the DRAW button is pressed, the surface is hidden by the other surfaces. Only by pressing the Draw Current button in the Surface panel the transparency is effective, but reduces progressively each time the button is pressed. If the DRAW button is pressed again the surface return to be hidden. For a check the elevation.dem and a surface at an elevation of 5,000 m can be used.

6) In the panel Vectors Lines/3D Polygons the Display Flat function seems ineffective.

7) The Vector points are not displayed on the surface, but seem suspended in the air above the surface, reproducing the surface morphology (the elevation difference seems to be a constant). Only if the surface is a plane at constant elevation the points are located on the surface (checked with archsites and bugsites on elevation.dem and on a surface at 5000 m). The problem doesn't exist in grass6.0.

Greetings

Change History (9)

in reply to:  description comment:1 by marisn, 16 years ago

Keywords: nviz added

Replying to clerici:

1) In the control panel the LOOK cancel button does not work (it works on 6.0)

Doesn't exist in svn-trunk anymore;

2) In the control panel the LOOK RESET button does not reset twist (bug?)

Fixed by r30082;

3) In the Surface panel the masking doesn't have any effect on 'fine' surfaces but only on 'wire' surfaces and vectors maps.

Can You, please, give a example?

4) In the Surface panel the emission parameter (in Surface Attribute) seems ineffective.

Confirming. I saw no difference in output while changing emission constant. Can somebody give an example how to test how emission works?

5) In the Surface panel the Transparency function has a strange behaviour with the 'constant' elevation surfaces. When a transparency value is assigned to the surface and the DRAW button is pressed, the surface is hidden by the other surfaces. Only by pressing the Draw Current button in the Surface panel the transparency is effective, but reduces progressively each time the button is pressed. If the DRAW button is pressed again the surface return to be hidden. For a check the elevation.dem and a surface at an elevation of 5,000 m can be used.

Please give an step-by-step instruction how to reproduce this.

6) In the panel Vectors Lines/3D Polygons the Display Flat function seems ineffective.

Confirming. 3D and 2D maps both don't react on "display flat" function.

comment:2 by clerici, 16 years ago

3) In the Surface panel the masking doesn't have any effect on 'fine' surfaces but only on 'wire' surfaces and vectors maps.

Example 1. Enter nviz and load 'elevation.dem' and 'streams' In the Surface panel press Draw mode and select Both (to display Wire and Fine surface); press Coarse Style and select Wire. Press Surface Attribute and select mask: mask not set. In the Change attribute panel press New Map and load the map 'fields'. Pressing Accept the wire and streams are deleted in the area were 'fields' has values different from null, but the Fine surface is not.

Example 2. Construction of a DEM with zero elevations: r.mapcalc "elev1000.dem=if(elevation.dem <= 1200,0,elevation.dem-1200)" Enter nviz and load 'elevation1000.dem' and 'streams' In the Surface panel press Draw mode and select Both (to display Wire and Fine surface); press Coarse Style and select Wire. In the Surface panel select Mask Zeros by: Elevation. Pressing Draw the wire and streams are deleted in the area were elev1000.dem has zero values, but the Fine surface is not.

5) In the Surface panel the Transparency function has a strange behaviour with the 'constant' elevation surfaces. When a transparency.........

Step-by-step procedure. Enter nviz and load 'elevation.dem'. In the Surface panel press New. In the Change Attribute panel press New Constant and enter a value of 3000. The new plane at constant elevation partially overly 'elevation.dem'. Press Surface attribute and select transparency: transparency not set. In the Change Attribute panel press New Constant and define the transparency value (130 for example), then Accept. a) Press DRAW: the surface is hidden under elevation.dem (and remain hidden even if you change the surfaces' orientation). b) Press Draw Current in the Surface panel: transparency is effective, but if you press DRAW or change the surfaces' orientation, the plane is hidden again by elevation.dem. c) Press Draw Current many times: the transparency reduces progressively, but the previously selected value of transparency (130) doesn't change. May be this is due to the redrawing of the same surface many times?

This seems to happen only with surfaces at constant elevation (I tried also with two planes, and the problem is the same). With 'elevation.dem' or 'elevation.dtet' transparency works fine.

comment:3 by martinl, 16 years ago

Component: defaultTcl

comment:4 by neteler, 16 years ago

Component: TclNVIZ

comment:5 by marisn, 15 years ago

CPU: Unspecified
Platform: Unspecified
Summary: NVIZ in GRASS6.2.3 (some problems)NVIZ issues in GRASS6.x

Status update:
3) Surface mask value still doesn't work with "fine" surface;
4) As I understood from ogsf code, constant will not work with emission. Changed GUI to reflect that (r34297);
5) Transparency is still a issue;
6) Vector point/line drawing with new panel layout is a mess. It should support following modes:
a) 3D vector (use Z from vector);
b) Flat (display on plane, Z is user defined);
c) Display on surface (Z is taken from surface);
d) Offset slider (Z in a;b;c is adjusted by offset value).

comment:6 by cmbarton, 15 years ago

1) In the control panel the LOOK cancel button does not work (it works on 6.0)

no longer applicable

2) In the control panel the LOOK RESET button does not reset twist (bug?)

fixed

3) In the Surface panel the masking doesn't have any effect on 'fine' surfaces but only on 'wire' surfaces and vectors maps.

AFAICT, this is an issue with the C or C++ code. I can't see how it can be fixed via TclTk

4) In the Surface panel the emission parameter (in Surface Attribute) seems ineffective.

Setting emissions from a map works fine. I can't find a way to clear it. It looks like it ought to be unset_att emi and/or set_att emi constant 0. But neither seems to have any effect. A bug in the C/C++ code?

5) In the Surface panel the Transparency function has a strange behaviour with the 'constant' elevation surfaces. When a transparency value is assigned to the surface and the DRAW button is pressed, the surface is hidden by the other surfaces. Only by pressing the Draw Current button in the Surface panel the transparency is effective, but reduces progressively each time the button is pressed. If the DRAW button is pressed again the surface return to be hidden. For a check the elevation.dem and a surface at an elevation of 5,000 m can be used.

I can't confirm this or say that it is fixed

6) In the panel Vectors Lines/3D Polygons the Display Flat function seems ineffective.

Seems like a C/C++ code problem. The calls in TclTk seem to be correct AFAICT

7) The Vector points are not displayed on the surface, but seem suspended in the air above the surface, reproducing the surface morphology (the elevation difference seems to be a constant). Only if the surface is a plane at constant elevation the points are located on the surface (checked with archsites and bugsites on elevation.dem and on a surface at 5000 m). The problem doesn't exist in grass6.0.

This seems fixed. Points are setting on the surface or slightly embedded in the surface.

comment:7 by marisn, 15 years ago

Version: 6.2.3svn-develbranch6

Seems like minor issues are fixed. Left over issues are complex ones and may be related to C bugs or improper C/TCL interaction.
Steps to reproduce 5:

nviz elevation=elevation.dem@PERMANENT
Add new raster surface as constant ("New constant"->enter value 3000), uncheck "use as color"
Click "DRAW CURRENT" -> new gray surface is displayed on top of elevation.dem surface (OK)
Change new constant surface transparency, set it to constant (i.e. 30)
Click "DRAW CURRENT" once -> new surface gets transparent (OK)
Click "DRAW CURRENT" for second time -> new surface is not transparent anymore (BUG)
Click "CLEAR" and then "DRAW" -> new surface is displayed below elevation.dem (BUG)
Click "CLEAR" and then "DRAW CURRENT" -> only new raster surface is displayed. elevation.dem is missing (WTF?)
Change view and then click "DRAW CURRENT" -> new surface is transparent and on top of elevation.dem(OK)

comment:8 by marisn, 14 years ago

Milestone: 6.4.06.4.1

Doesn't seem to make to 6.4.0.

comment:9 by neteler, 8 years ago

Milestone: 6.4.16.4.6
Note: See TracTickets for help on using tickets.