Issue 102956 - difficult to select series in 3D charts
Summary: difficult to select series in 3D charts
Status: CLOSED FIXED
Alias: None
Product: General
Classification: Code
Component: chart (show other issues)
Version: 3.3.0 or older (OOo)
Hardware: PC All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: wolframgarten
QA Contact: issues@graphics
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2009-06-19 18:30 UTC by pmike
Modified: 2017-05-20 11:42 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
sample (43.70 KB, application/vnd.oasis.opendocument.spreadsheet)
2009-06-19 18:31 UTC, pmike
no flags Details
another example (34.49 KB, application/vnd.oasis.opendocument.spreadsheet)
2009-07-23 13:16 UTC, IngridvdM
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description pmike 2009-06-19 18:30:57 UTC
Open sample file, double clink on chart, try to select series (3D cylinders).
It is possible only if clicking on bottom or left _edge_ of each cylinder.

Since issue 93663 claimed as fixed in 3.1, then its a regression
Comment 1 pmike 2009-06-19 18:31:43 UTC
Created attachment 63097 [details]
sample
Comment 2 helenrussian 2009-06-19 18:54:24 UTC
Confirm on Linux (OOo 3.1).
Comment 3 IngridvdM 2009-06-22 16:30:53 UTC
Confirmed on windows also. It seems that the fix of issue 93663 was not
complete. Set regression flag as this has worked properly with OOo 3.0.
Comment 4 IngridvdM 2009-07-23 13:16:43 UTC
Created attachment 63699 [details]
another example
Comment 5 IngridvdM 2009-07-23 13:25:08 UTC
@aw, the method getAllHit3DObjectsSortedFrontToBack() does not return the
correct result under all circumstances. I've attached another example
'another-3D-select-example.ods were it fails. A click on the right side of the
red boxes should select the red series, but it doesn't. Please have a look. Thanks!
Comment 6 Armin Le Grand 2009-07-29 17:58:51 UTC
AW: Problem found (afer some debugging, poooh). The helper
getAllHit3DObjectsSortedFrontToBack uses a
drawinglayer::processor3d::CutFindProcessor which processes the primitives from
a single 3D object and checks for cuts with the given ray. Those sequences of
primitives can (and do) contain 3D transformations themselves, e.g. the local 3D
transformation of a 3D object. These are processed by entering that transformed
sub-geometry by adapting the ray and the used transformations. When a cut
between ray and a 3D plane of the object geometry is found, the result is
remembered. At this point i had forgotten to back-transform the result relative
to entered 3D transformations; thus, the results were in different 3D coordinate
systems as soon as a 3D object uses it's local 3D transform. When keeping track
of the current entered 3D transforms and back-transforming the results to all
use the 3d coordinate system the processor has started with, all works well.
Added change, checked, works well. Also added to process all cuts (e.g. when a
closed object has two cuts with the ray, the first OR the second may be the
frontmost one; this can be decided after all results are back-transformned to
camera coordinates, not before).
Comment 7 Armin Le Grand 2009-07-29 18:01:21 UTC
AW: checked, commited, done.
Comment 8 Armin Le Grand 2009-08-04 17:03:05 UTC
AW: Checked in test version, okay.
Comment 9 Armin Le Grand 2009-08-06 13:47:58 UTC
AW->WG: Please review. IHA may help, but description is pretty clear.
Comment 10 wolframgarten 2009-08-10 09:03:00 UTC
Verified in CWS.