Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ui] Add and improve multiple UI tools for Photometric stereo #2444

Open
wants to merge 58 commits into
base: dev/qt6.6
Choose a base branch
from

Commits on Oct 3, 2024

  1. Configuration menu
    Copy the full SHA
    4cfc72b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b66635e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6ff43cc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e6c3948 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    47dfee4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5cedce1 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    364ae61 View commit details
    Browse the repository at this point in the history
  8. [qt6] Use JS functions format to declare explicit parameters in slots

    This fixes all the "Injection of parameters into signal handlers
    is deprecated. Use JavaScript functions with formal parameters instead."
    warnings.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    e85630c View commit details
    Browse the repository at this point in the history
  9. [qt6] Update versions for all the imported modules

    Qt3D.Extras cannot be updated to 2.6 yet, otherwise there are errors.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    56938b1 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    a224d17 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    02e86c3 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    b143173 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    063921f View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    3ecea41 View commit details
    Browse the repository at this point in the history
  15. [qt6][Materials] Use correct graphics API and update SH shaders

    With Qt6, OpenGL is not used directly anymore, and we thus must use
    the RHI backend, set to version 1.0.
    
    The SphericalHarmonics shaders, which were previously written in OpenGL,
    need to be updated accordingly.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    0006884 View commit details
    Browse the repository at this point in the history
  16. [qt6][components] Update Scene3DHelper and TrackballController

    Call the `QGeometry` objects from the correct module, and initialize
    correctly the Camera object upon the construction of the
    TrackballController object.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    2984bb4 View commit details
    Browse the repository at this point in the history
  17. [qt6][Viewer3D] MediaLibrary: Fix loading medias from attributes

    Additionally harmonize comments and explicitly declare parameters
    for slots that need them.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    2c5bdd4 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    5417e9d View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    fec5c8d View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    71e56a5 View commit details
    Browse the repository at this point in the history
  21. [qt6][Viewer3D] Remove PointSize render state

    `PointSize` is not supported by RHI.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    917f1ad View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    2e26373 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    dcdfe46 View commit details
    Browse the repository at this point in the history
  24. [qt6][Viewer] Viewer2D: Trigger auto-fit() on correct events

    The fit must be automatically triggered when the size of the image
    changes. In case the image size remains the same but the orientation tag
    is updated, this means that the displayed size of the image has changed
    (with the orientation taken into account, the width and height might end
    up being inverted), so the fit should also be triggered.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    cf9bb4b View commit details
    Browse the repository at this point in the history
  25. [qt6][Viewer3D] Disable wireframe mode

    Disable and hide the wireframe mode as the shaders need to be updated
    for RHI.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    d6ca9bb View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    ce36d51 View commit details
    Browse the repository at this point in the history
  27. [qt6][core] Don't store SignalInstance in dict for node computations

    When converting the `StatusData` to a dictionary, only data attributes
    should be stored in said dictionary. With Qt6, the `objectNameChanged`
    signal, of type `SignalInstance`, is added to the dictionary. It needs
    to be removed manually as it is not JSON-serializable. Otherwise,
    the nodes cannot be computed anymore.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    750c587 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    35b974d View commit details
    Browse the repository at this point in the history
  29. [qt6][Viewer3D] Use DiffuseMapMaterial for texture display

    Replace `DiffuseSpecularMaterial`, which does not seem to support
    correctly textures anymore, with `DiffuseMapMaterial`.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    5917168 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    cf88fbe View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    8a65041 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    1ad53da View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    b0f70b5 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    88002ba View commit details
    Browse the repository at this point in the history
  35. [qt6][qml] Remove QtQuick.Window imports

    `QtQuick.Window` does not exist anymore with Qt6. QQuickWindow is now
    directly part of the QtQuick module.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    9d36bc6 View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    0d8f766 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    89c6279 View commit details
    Browse the repository at this point in the history
  38. [qt6][Viewer] SequencePlayer: Fix null accesses

    When the SequencePlayer isn't available (when QtAliceVision has not been
    loaded), the `viewer` element is null. All accesses to properties of this
    object should thus be prevented.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    af2f5f1 View commit details
    Browse the repository at this point in the history
  39. [qt6][qml] Push Application on the stack before loading the project

    This prevents crashes when the project is done loading but
    `Application` is not yet ready.
    cbentejac committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    6a73bf8 View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    f45e9c5 View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    44ea158 View commit details
    Browse the repository at this point in the history

Commits on Oct 8, 2024

  1. [components] Edge: Remove use of deprecated functions

    QMouseEvent::x() and QMouseEvent::y() have been marked as deprecated and
    should be replaced with QMouseEvent::position().x() and
    QMouseEvent::position().y().
    cbentejac committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    15a18fc View commit details
    Browse the repository at this point in the history
  2. [GraphEditor] Edge: Set curve scale after initializing EdgeMouseArea

    The curve scale of the mouse area for an edge used to be defined when
    initializing the `EdgeMouseArea` for that edge. Setting it triggers a
    chain of event that allow the mouse area to be active, thus correctly
    detecting when it is being hovered or clicked on.
    
    With Qt6, these events unfolded before the `EdgeMouseArea` had finished
    initializing, which then caused it to not be active until the edge's
    shape was modified (and the chain of events triggered again). It is now
    set once the component has been created, so all the events can happen
    in an environment where they are taken into account.
    cbentejac committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    7c7495b View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2024

  1. [qt6][GraphEditor] Fix connections to ListAttribute pins

    The callbacks of `childrenRepeater` (which was used to "fill"
    `ListAttributes` with children) were not correctly set. Their prototypes
    were missing the `index` argument, meaning that instead of being
    provided with the child attribute that was added or deleted,
    they were provided with its index in the model.
    
    The added children attributes were also instatiated as empty attribute
    pins that were still visible, thus increasing indirectly the spacing of
    the initial pin.
    cbentejac committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    f889e18 View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2024

  1. Configuration menu
    Copy the full SHA
    94b415e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d8751ea View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0df7b96 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    80ffc59 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ed41b8d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5c6a217 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    de76f6d View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a884989 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    039b40e View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    0ed29c6 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    0125fb6 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    ae77fb9 View commit details
    Browse the repository at this point in the history
  13. [ui] Viewer3D: Use directional light & add light controller

    Use a single light entity instead of one per camera.
    Use directional light instead of point light.
    Add camera relative directional light controller.
    gregoire-dl authored and cbentejac committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    97bcbda View commit details
    Browse the repository at this point in the history
  14. [ui] Viewer3D: Fix wrong camera up vector initialization

    Default camera up should be accurate and consistent with camera view center.
    Default camera up vector is not refresh or checked when default camera view center is set.
    gregoire-dl authored and cbentejac committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    68ee345 View commit details
    Browse the repository at this point in the history