MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0031448Community[OCCT] OCCT:Visualizationpublic2020-03-20 06:352020-03-25 12:49
ReporterVico Liang 
Assigned Tokgv 
PrioritynormalSeverityblock 
StatusnewResolutionopen 
PlatformiosOSOS Version
Product Version 
Target Version[OCCT] 7.5.0*Fixed in Version 
Summary0031448: AIS_Manipulator doesn't work on ios
DescriptionAIS_Manipulator can't be selected or operated on IOS platform. Its presetation does not match its selection.It seems the selection sensitives are two times offset from the presentaion.Please see the picture attached.

It can be reproduced with simulator or real device.

The build is from source of occt main branch with xcode 10.3, cmake.
TagsNo tags attached.
Test case number
Attached Filespng file icon ais-manipulator-selection-issue.png (12,320 bytes) 2020-03-20 06:35
? file icon Cocoa_Window.mm (18,636 bytes) 2020-03-25 12:45

- Relationships

-  Notes
(0091063)
Vico Liang (developer)
2020-03-20 08:23
edited on: 2020-03-20 10:40

This can be generallized to Transformation Persistence selection issue.I checked that this issue just occur on ios, it works on Mac, windows, Android.

(0091078)
kgv (developer)
2020-03-20 12:15

> it works on Mac
Are you sure? Have you tested this on Retina display?
(0091079)
Vico Liang (developer)
2020-03-20 12:44

>Are you sure? Have you tested this on Retina display?
I'm sure that it works on Mac Virtual Machine (WMWare Mac OS 10.14.6) hosted on Windows 10.
(0091177)
kgv (developer)
2020-03-22 20:38

Current implementation of Transformation Persistence knows nothing about virtual resolution used in macOS/iOS APIs. So that when actual rendering resolution is twice/trice larger than virtual resolution of mouse movement events, they do mismatch. This is not an issue for picking normal objects, as their sizes are independent from rendering resolution.

To workaround this limitation, you have to provide (convert) mouse movement events to AIS_InteractiveContext::MoveTo() in real rendering resolution, and implement Aspect_Window::Size() returning rendering resolution (Cocoa_Window currently does not).
(0091183)
Vico Liang (developer)
2020-03-23 04:16

Thanks for looking into this issue.It's awsome that you find the root cause.Hope this get fixed soon.
(0091237)
Vico Liang (developer)
2020-03-25 12:49

I have uploaded the update file Cocoa_Window.mm. The function Cocoa_Window::Size() and Cocoa_Window::Position() update accordingly.Is there any other codes need to be updated?

- Issue History
Date Modified Username Field Change
2020-03-20 06:35 Vico Liang New Issue
2020-03-20 06:35 Vico Liang Assigned To => kgv
2020-03-20 06:35 Vico Liang File Added: ais-manipulator-selection-issue.png
2020-03-20 08:23 Vico Liang Note Added: 0091063
2020-03-20 10:39 Vico Liang Note Edited: 0091063 View Revisions
2020-03-20 10:40 Vico Liang Note Edited: 0091063 View Revisions
2020-03-20 11:03 kgv Relationship added related to 0030902
2020-03-20 12:15 kgv Note Added: 0091078
2020-03-20 12:44 Vico Liang Note Added: 0091079
2020-03-22 20:38 kgv Note Added: 0091177
2020-03-23 04:16 Vico Liang Note Added: 0091183
2020-03-25 12:45 Vico Liang File Added: Cocoa_Window.mm
2020-03-25 12:49 Vico Liang Note Added: 0091237


Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker