View Issue Details

IDProjectCategoryView StatusLast Update
0030507Open CASCADEOCCT:Visualizationpublic2022-04-21 10:50
Reporterkgv Assigned Tobugmaster  
PrioritynormalSeverityfeature 
Status closedResolutionfixed 
Target Version7.4.0Fixed in Version7.4.0 
Summary0030507: Visualization - introduce AIS_ViewController
DescriptionCurrently V3d_View class provides methods for managing its Camera object (Graphic3d_Camera) for viewer manipulations (panning, zooming, rotating).
This implies also storing some transient state within the View itself (e.g. 3D point to rotate around).

It is desired to moving this functionality into dedicated object like V3d_CameraController, and:
- Extend precision (allow floating coordinates instead of integer shifts).
- Provide more scenarios (First Person view, Orbit rotation).
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot required

Relationships

parent of 0030853 closedbugmaster Open CASCADE Visualization, AIS_ViewController - fix 1 pixel Y shift while zooming 
parent of 0030900 closedbugmaster Open CASCADE Configuration - fix compilation using macOS SDK before 10.12 
parent of 0030939 closedbugmaster Open CASCADE Draw Harness, ViewerTest - AIS_ViewCube animation does not work on Linux and macOS 
parent of 0031056 closedapn Open CASCADE Samples - update glfw sample to use AIS_ViewController 
parent of 0031102 closedapn Open CASCADE Visualization, AIS_ViewController - AIS_DragAction_Stop is never emitted on mouse unclick 
parent of 0031518 closedbugmaster Open CASCADE Samples - update QtWidget samples to use AIS_ViewController 
parent of 0031519 closedbugmaster Open CASCADE Visualization, AIS_ViewController - add AIS_MouseGesture_ZoomWindow gesture 
parent of 0031621 closedbugmaster Open CASCADE Draw Harness - handle navigation keys 
parent of 0031622 closedbugmaster Open CASCADE Samples - update MFC Animation sample with proper frame updates 
parent of 0031521 closedbugmaster Open CASCADE Samples - update MFC ImportExport sample to use AIS_ViewController 
parent of 0031632 closedbugmaster Open CASCADE Draw Harness - handle 3d mouse Raw HID input on Windows 
parent of 0031620 closedkgv Open CASCADE Samples - update Android JNI sample to use AIS_ViewController 
parent of 0032220 closedkgv Open CASCADE Configuration, Aspect_VKeySet - eliminate name collision with X11 macros 
parent of 0032861 verifiedsshutina Open CASCADE Visualization, AIS_ViewController - dragging doesn't work with disabled View rotation 
parent of 0032879 newvpozdyayev Open CASCADE Visualization, AIS_ViewController - define separate gesture mappings for dragging 
has duplicate 0030352 closedbugmaster Community DRAW - Extending interface of ViewerTest_EventManager to process mouse button event 
related to 0030866 closedbugmaster Open CASCADE Visualization - remove map of AIS_Manipulator from ViewerText 
related to 0002618 closedbugmaster Community Visualization - choose better center of gravity for camera rotation operations 
related to 0028086 newbugmaster Open CASCADE Improve Usability of Draw 
related to 0024900 newvpozdyayev Open CASCADE Draw Harness - implement GUI Import/Export sample based on tcl/tk 
related to 0029030 newbugmaster Open CASCADE Samples - show hint for mouse controls of 3D viewer 
related to 0032938 closedbugmaster Community Visualization - Set view center manually 
Not all the children of this issue are yet resolved or closed.

Activities

git

2019-06-10 21:04

administrator   ~0084978

Branch CR30507 has been created by kgv.

SHA-1: f084080c3ff7e7441d67e6fef21a64e7a3fb5c25


Detailed log of new commits:

Author: kgv
Date: Mon Jun 10 21:03:41 2019 +0300

    0030507: Visualization - introduce AIS_ViewController

git

2019-06-11 11:09

administrator   ~0084984

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 683e723317a4ba27497b96bb5e60b7862aaad724

git

2019-06-11 11:17

administrator   ~0084985

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 6c731f60f9a40f15859cf15922a10d7d14166789

git

2019-06-11 12:32

administrator   ~0084986

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 6bb3539394ed1ee53b56ce442b73940253e3744f

git

2019-06-11 12:53

administrator   ~0084987

Branch CR30507 has been updated forcibly by kgv.

SHA-1: af40636006100468a6e4ebbf5613e8ffa4ec1137

git

2019-06-11 12:58

administrator   ~0084988

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 8fd799e1c9022963b3c4c8c428c4acd44afee6f7

git

2019-06-11 15:10

administrator   ~0084989

Branch CR30507 has been updated forcibly by kgv.

SHA-1: d15a27d64c35907f1cf4418289e137fa4d668c2b

git

2019-06-11 15:48

administrator   ~0084990

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 8688f295d97d503575197a073706ba20a6723a9a

git

2019-06-11 16:32

administrator   ~0084991

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 472f74dcff6e42242e8a845e8837e62ce450f51a

git

2019-06-11 17:14

administrator   ~0084992

Branch CR30507 has been updated forcibly by kgv.

SHA-1: cad40c2bcd9008c1eba11ceb9bb0700df24222c3

git

2019-06-11 17:29

administrator   ~0084994

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 50ef9ff5a8e30e943b6d9638c7ac306b5f060fe1

git

2019-06-11 17:32

administrator   ~0084995

Branch CR30507 has been updated forcibly by kgv.

SHA-1: a9b832d8e63478b854d8c9d23d5e08706c0bcf8d

git

2019-06-11 17:38

administrator   ~0084996

Branch CR30507 has been updated forcibly by kgv.

SHA-1: e093a846060e7421f80b727af7a54c13eb6f6c30

git

2019-06-11 17:43

administrator   ~0084997

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 22cbaa569c434a7c7aebd620c0103b8467c95f37

git

2019-06-12 10:42

administrator   ~0085000

Branch CR30507 has been updated forcibly by kgv.

SHA-1: c60064c68f71d0486e3fd054208613b05ce0d767

git

2019-06-12 11:01

administrator   ~0085001

Branch CR30507 has been updated forcibly by kgv.

SHA-1: d9db5c17216fceed3b053f2e0206e137b5aebfe9

git

2019-06-12 11:22

administrator   ~0085002

Branch CR30507 has been updated forcibly by kgv.

SHA-1: c4826b76f8b7e43bf81f9b5a19931b0aa37c0c3e

git

2019-06-12 11:54

administrator   ~0085003

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 0ad331631ee5f3f2b10054e2e1bfc5d36f2ea232

git

2019-06-12 12:53

administrator   ~0085004

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 97f240bedbaee6bf31b5c5040f66ac2d43d64b41

git

2019-06-12 13:59

administrator   ~0085005

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 418ff1938f1605712e72c4be3325d9151495b4e4

git

2019-06-12 14:04

administrator   ~0085006

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 0b5d1a13be2513348bd0fbc411c23307fff5a537

git

2019-06-12 14:05

administrator   ~0085007

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 7e49fc261a560d65ddb51ec3ca53e49b769973ee

git

2019-06-12 14:34

administrator   ~0085008

Branch CR30507 has been updated forcibly by kgv.

SHA-1: c74eb0e92e48aef8a1949bf8c6c59715e1a7e2f1

git

2019-06-12 14:51

administrator   ~0085009

Branch CR30507 has been updated forcibly by kgv.

SHA-1: b1b447ff9bebb19bff83274f6d37daa4d041c2bd

git

2019-06-12 15:40

administrator   ~0085010

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 1d9681fc4cf06318e434d383057787376bbaf4c5

git

2019-06-12 16:09

administrator   ~0085011

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 57d8cc411987df9c389b6409b5070c8d62b26b42

git

2019-06-12 16:28

administrator   ~0085012

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 2e747aaf64bd05befefee68a1f0543831edd8f75

git

2019-06-12 16:41

administrator   ~0085013

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 4bc9539b9544df53c1b016bf03fe02c4d1897298

git

2019-06-12 16:58

administrator   ~0085014

Branch CR30507 has been updated forcibly by kgv.

SHA-1: acb46f877486a717b3ff2f1fd8ea401f7a2328e7

git

2019-06-12 17:31

administrator   ~0085015

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 926f5f1a737b322ac7a8c18ec127ce5eca519838

git

2019-06-12 17:36

administrator   ~0085016

Branch CR30507 has been updated forcibly by kgv.

SHA-1: bdec324452ffd9999d1ba15cd0c2e6a4ea52b574

git

2019-06-12 17:45

administrator   ~0085017

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 623afc3489f00f12da3b3048da0b8b7130250219

git

2019-06-12 17:56

administrator   ~0085018

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 06203bcba461b4c495caabb8464a5e5b0660fa53

git

2019-06-12 18:46

administrator   ~0085019

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 9df354528a9ac28d95d6aa63494c613de4a0de89

kgv

2019-06-12 18:52

developer   ~0085020

Patch is ready for review.

http://jenkins-test-12.nnov.opencascade.com/view/CR30507-master-KGV/

git

2019-06-12 20:23

administrator   ~0085021

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 67caa4928fa3dcb0a0d007d6e5d8b681794152c8

git

2019-06-12 21:53

administrator   ~0085022

Branch CR30507 has been updated forcibly by kgv.

SHA-1: 1ba5817277cc323c1c0021fae8f2b4a0456ed7cb

git

2019-06-12 21:58

administrator   ~0085023

Branch CR30507 has been updated forcibly by kgv.

SHA-1: a886cee6e4707b16c366b09dad893f72d17a4aef

osa

2019-06-13 14:59

developer   ~0085031

Reviewed without remarks

bugmaster

2019-06-13 18:45

administrator   ~0085037

Combination -
OCCT branch : CR30507
master SHA - 67caa4928fa3dcb0a0d007d6e5d8b681794152c8
d67d4b811012eef8913d3c535c29654d0acf3c4c
Products branch : master SHA - 77ee1bd5095e6eb90974be94ecc6b503a187125a
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16189.180000000097 / 16201.260000000013 [-0.07%]
Products
Total CPU difference: 10476.820000000065 / 10471.040000000068 [+0.06%]
Windows-64-VC14:
OCCT
Total CPU difference: 17605.265625 / 17607.84375 [-0.01%]
Products
Total CPU difference: 12083.171875 / 12092.375 [-0.08%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2019-06-16 11:39

administrator   ~0085064

Branch CR30507 has been deleted by inv.

SHA-1: a886cee6e4707b16c366b09dad893f72d17a4aef

Related Changesets

occt: master 49582f9d

2019-06-10 18:03:41

kgv


Committer: bugmaster Details Diff
0030507: Visualization - introduce AIS_ViewController

ViewerTest_EventManager now inherits AIS_ViewController.
Platform-dependent user input handling within ViewerTest has been revised
to process events in common way through AIS_ViewController.
The mouse navigation has been changed, so that left mouse clicked
without modifers now rotates View.
The rubber-band selection can be activated via Alt+LeftMouseButton.
Selection is now done on mouse unclick and keyboard short-cuts take effect on unclick.

Aspect_Window::SetTitle() - added new method configuring Window title.
Introduced new types Aspect_Touch, Aspect_VKey, Aspect_ScrollDelta
for processing window events in platform-independent way.
Affected Issues
0030507
mod - src/AIS/AIS_InteractiveContext.cxx Diff File
mod - src/AIS/AIS_InteractiveContext.hxx Diff File
mod - src/AIS/AIS_InteractiveContext_1.cxx Diff File
add - src/AIS/AIS_MouseGesture.hxx Diff File
add - src/AIS/AIS_RotationMode.hxx Diff File
add - src/AIS/AIS_ViewController.cxx Diff File
add - src/AIS/AIS_ViewController.hxx Diff File
add - src/AIS/AIS_ViewInputBuffer.hxx Diff File
add - src/AIS/AIS_WalkDelta.hxx Diff File
mod - src/AIS/FILES Diff File
add - src/Aspect/Aspect_ScrollDelta.hxx Diff File
add - src/Aspect/Aspect_Touch.hxx Diff File
add - src/Aspect/Aspect_VKey.hxx Diff File
add - src/Aspect/Aspect_VKeyFlags.hxx Diff File
add - src/Aspect/Aspect_VKeySet.cxx Diff File
add - src/Aspect/Aspect_VKeySet.hxx Diff File
mod - src/Aspect/Aspect_Window.hxx Diff File
mod - src/Aspect/FILES Diff File
mod - src/Cocoa/Cocoa_Window.hxx Diff File
mod - src/Cocoa/Cocoa_Window.mm Diff File
mod - src/QABugs/QABugs_1.cxx Diff File
mod - src/V3d/V3d_View.cxx Diff File
mod - src/V3d/V3d_View.hxx Diff File
mod - src/ViewerTest/FILES Diff File
mod - src/ViewerTest/ViewerTest.cxx Diff File
mod - src/ViewerTest/ViewerTest_EventManager.cxx Diff File
mod - src/ViewerTest/ViewerTest_EventManager.hxx Diff File
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx Diff File
add - src/ViewerTest/ViewerTest_V3dView.cxx Diff File
add - src/ViewerTest/ViewerTest_V3dView.hxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands_1.mm Diff File
mod - src/WNT/WNT_Window.cxx Diff File
mod - src/WNT/WNT_Window.hxx Diff File
mod - src/Xw/Xw_Window.cxx Diff File
mod - src/Xw/Xw_Window.hxx Diff File
mod - tests/bugs/vis/bug26147 Diff File

Issue History

Date Modified Username Field Change
2019-02-21 09:37 kgv New Issue
2019-02-21 09:37 kgv Assigned To => kgv
2019-06-07 09:32 kgv Summary Visualization - introduce V3d_CameraController => Visualization - introduce AIS_ViewController
2019-06-10 21:04 git Note Added: 0084978
2019-06-11 11:09 git Note Added: 0084984
2019-06-11 11:17 git Note Added: 0084985
2019-06-11 12:32 git Note Added: 0084986
2019-06-11 12:53 git Note Added: 0084987
2019-06-11 12:58 git Note Added: 0084988
2019-06-11 15:10 git Note Added: 0084989
2019-06-11 15:48 git Note Added: 0084990
2019-06-11 16:32 git Note Added: 0084991
2019-06-11 17:14 git Note Added: 0084992
2019-06-11 17:29 git Note Added: 0084994
2019-06-11 17:32 git Note Added: 0084995
2019-06-11 17:38 git Note Added: 0084996
2019-06-11 17:43 git Note Added: 0084997
2019-06-12 10:42 git Note Added: 0085000
2019-06-12 11:01 git Note Added: 0085001
2019-06-12 11:22 git Note Added: 0085002
2019-06-12 11:54 git Note Added: 0085003
2019-06-12 12:53 git Note Added: 0085004
2019-06-12 13:59 git Note Added: 0085005
2019-06-12 14:04 git Note Added: 0085006
2019-06-12 14:05 git Note Added: 0085007
2019-06-12 14:34 git Note Added: 0085008
2019-06-12 14:51 git Note Added: 0085009
2019-06-12 15:40 git Note Added: 0085010
2019-06-12 16:09 git Note Added: 0085011
2019-06-12 16:28 git Note Added: 0085012
2019-06-12 16:41 git Note Added: 0085013
2019-06-12 16:58 git Note Added: 0085014
2019-06-12 17:31 git Note Added: 0085015
2019-06-12 17:36 git Note Added: 0085016
2019-06-12 17:45 git Note Added: 0085017
2019-06-12 17:56 git Note Added: 0085018
2019-06-12 18:46 git Note Added: 0085019
2019-06-12 18:52 kgv Note Added: 0085020
2019-06-12 18:52 kgv Assigned To kgv => osa
2019-06-12 18:52 kgv Status new => resolved
2019-06-12 20:23 git Note Added: 0085021
2019-06-12 21:53 git Note Added: 0085022
2019-06-12 21:58 git Note Added: 0085023
2019-06-13 14:59 osa Note Added: 0085031
2019-06-13 14:59 osa Assigned To osa => bugmaster
2019-06-13 14:59 osa Status resolved => reviewed
2019-06-13 18:43 bugmaster Test case number => Not required
2019-06-13 18:45 bugmaster Note Added: 0085037
2019-06-13 18:45 bugmaster Status reviewed => tested
2019-06-15 16:04 bugmaster Changeset attached => occt master 49582f9d
2019-06-15 16:04 bugmaster Status tested => verified
2019-06-15 16:04 bugmaster Resolution open => fixed
2019-06-16 11:39 git Note Added: 0085064
2019-07-26 06:03 kgv Relationship added parent of 0030853
2019-08-06 13:23 nds Relationship added related to 0030866
2019-08-09 17:37 nds Relationship added has duplicate 0030352
2019-08-15 09:37 kgv Relationship added parent of 0030900
2019-08-27 16:34 kgv Relationship added related to 0002618
2019-09-04 09:40 kgv Relationship added parent of 0030939
2019-10-10 17:12 kgv Relationship added parent of 0031056
2019-10-24 13:48 kgv Relationship added parent of 0031102
2020-04-23 23:33 kgv Relationship added parent of 0031518
2020-04-24 00:38 kgv Relationship added parent of 0031519
2020-06-20 16:21 kgv Relationship added parent of 0031621
2020-06-20 23:00 kgv Relationship added parent of 0031622
2020-06-25 22:36 kgv Relationship added related to 0028086
2020-06-25 22:38 kgv Relationship added related to 0024900
2020-06-25 22:42 kgv Relationship added parent of 0031521
2020-06-26 20:16 kgv Relationship added parent of 0031632
2020-09-22 21:46 kgv Relationship added parent of 0031620
2021-03-17 10:00 kgv Relationship added parent of 0032220
2021-09-20 10:21 kgv Relationship added related to 0029030
2022-03-17 20:03 kgv Relationship added parent of 0032861
2022-03-17 20:03 kgv Relationship added parent of 0032879
2022-04-21 10:50 kgv Relationship added related to 0032938