Commit db4ee53b authored by Stephane LOUIS DIT PICARD's avatar Stephane LOUIS DIT PICARD
Browse files

fix: restore missing pose values (matrix/vector+quaternion/geodetic)

parent 11074371
Loading
Loading
Loading
Loading
+119 −228
Original line number Original line Diff line number Diff line
@@ -93,115 +93,6 @@
        example: 4JA1xVJSYKE47UM7RKDrfUcTXlJ0wxSQ
        example: 4JA1xVJSYKE47UM7RKDrfUcTXlJ0wxSQ
        description: A string representing the session ID associated with the AR session.
        description: A string representing the session ID associated with the AR session.


        Pose:
          description: An element representing the result of the pose estimation of an AR device, a Trackable or a WorldAnchor by the World Analysis
          type: object
          properties:
            uuid:
              description: UUID of the associated Anchor or Trackable
              type: string
              format: uuid
              example: "fa8bbe40-8052-11ec-a8a3-0242ac120002"
            estimationState:
              description: Extensible List of possible states of the pose estimation
              type: string
              enum: [OK, FAILURE]
              example: OK
            instructionInfo:
              description: A message detailing the context of the pose estimation
              type: string
              example: Lighting is toom dim
            timestamp:
              description: Capture time of the pose as number of milliseconds since unix epoch
              type: integer
              example : 1704812114841
            confidence: 
              description: A score representing the confidence concerning the accuracy of the pose estimated
              type: number
              example : 50.00
            mode:
              description: Mode representing the context of the Relocalization information (AR device to WorldAnchor/Trackable or WorldAnchor/Trackable to AR device)
              $ref: '#/components/schemas/Mode_WorldAnalysis'
            value:
              description: The pose value
              oneOf:
                - $ref: '#/components/schemas/MatrixPoseValue'
                - $ref: '#/components/schemas/VectorQuaternionPoseValue'
                - $ref: '#/components/schemas/GeodeticPoseValue'
              example:
                type: "MATRIX"
                transform: [ 1, 0, 0, 3,
                  0, 1, 0, 3,
                  0, 0, 1, 3,
                  0, 0, 0, 1 ]
            subscriptionUrl:
              description: The URL to use for subscription (if available), see [/pose/subscriptions]
              type: string
              example: "http://mywordanalysisserver.com/pose/subscriptions?target=fa8bbe40-8052-11ec-a8a3-0242ac120002"
            
        PoseValue:
          description: Base type to define the pose value
          type: object
          properties:
            type:
              description: Encoding type of the Pose
              type: string
              enum: [MATRIX, VECTOR_QUATERNION, GEODETIC]
        
        MatrixPoseValue:
          description: A pose value that is described with a 4*4 matrix
          allOf:     #inheritance
            - $ref: '#/components/schemas/PoseValue'
          properties:    
            transform: 
              description : Pose data
              $ref: '#/components/schemas/Transform3D'
            unit:
              description: Unit system of the pose
              $ref: '#/components/schemas/UnitSystem'

        VectorQuaternionPoseValue:
          description: A pose value that is described with a position and a rotation
          allOf:     #inheritance
              - $ref: '#/components/schemas/PoseValue'
          properties:
            position: 
              description : Pose Position
              $ref: '#/components/schemas/Vector3'
            rotation: 
              description : Pose Rotation
              $ref: '#/components/schemas/Quaternion'  
            unit:
              description: Unit system of the pose
              $ref: '#/components/schemas/UnitSystem'      

        GeodeticPoseValue:
          description : A pose value in a geodetic coordinate system
          allOf:     #inheritance
            - $ref: '#/components/schemas/PoseValue'
          properties:
            altitude: 
              type: number
              example: 70.0
            longitude:
              type: number
              example: 7.013579
            latitude: 
              type: number
              example: 43.57351
            rotation:  
              description: Pose Rotation
              $ref: '#/components/schemas/Quaternion'
            geodeticsystem:
              description: Associated geodetic system of the pose
              type: string
              example: "WGS84"
            rotationTarget:
                description: Coordinate system of the rotation
                type : string
                enum: [EASTUPSOUTH, WESTUPNORTH]
                example: EASTUPSOUTH
        
      Vector3:
      Vector3:
        description: A 3 coordinates vector
        description: A 3 coordinates vector
        type: array
        type: array
+207 −162
Original line number Original line Diff line number Diff line
@@ -450,7 +450,6 @@ components:
  #-------------------------------
  #-------------------------------
  schemas:
  schemas:
    
    

    Pose:
    Pose:
      description: An element representing the result of the pose estimation of an AR device, a Trackable or a WorldAnchor by the World Analysis
      description: An element representing the result of the pose estimation of an AR device, a Trackable or a WorldAnchor by the World Analysis
      type: object
      type: object
@@ -479,19 +478,23 @@ components:
          example : 50.00
          example : 50.00
        mode:
        mode:
          description: Mode representing the context of the Relocalization information (AR device to WorldAnchor/Trackable or WorldAnchor/Trackable to AR device)
          description: Mode representing the context of the Relocalization information (AR device to WorldAnchor/Trackable or WorldAnchor/Trackable to AR device)
            $ref: '../common/commonopenapi.yaml#/components/schemas/Mode_WorldAnalysis'
          $ref: '#/components/schemas/Mode_WorldAnalysis'
        value:
        value:
          description: The pose value
          description: The pose value
          oneOf:
          oneOf:
            - $ref: '#/components/schemas/MatrixPoseValue'
            - $ref: '#/components/schemas/MatrixPoseValue'
              - $ref: '../common/commonopenapi.yaml#/components/schemas/VectorQuaternionPoseValue'
            - $ref: '#/components/schemas/VectorQuaternionPoseValue'
              - $ref: '../common/commonopenapi.yaml#/components/schemas/GeodeticPoseValue'
            - $ref: '#/components/schemas/GeodeticPoseValue'
          example:
          example:
            type: "MATRIX"
            type: "MATRIX"
            transform: [ 1, 0, 0, 3,
            transform: [ 1, 0, 0, 3,
              0, 1, 0, 3,
              0, 1, 0, 3,
              0, 0, 1, 3,
              0, 0, 1, 3,
              0, 0, 0, 1 ]
              0, 0, 0, 1 ]
        subscriptionUrl:
          description: The URL to use for subscription (if available), see [/pose/subscriptions]
          type: string
          example: "http://mywordanalysisserver.com/pose/subscriptions?target=fa8bbe40-8052-11ec-a8a3-0242ac120002"
        
        
    PoseValue:
    PoseValue:
      description: Base type to define the pose value
      description: Base type to define the pose value
@@ -508,12 +511,54 @@ components:
        - $ref: '#/components/schemas/PoseValue'
        - $ref: '#/components/schemas/PoseValue'
      properties:    
      properties:    
        transform: 
        transform: 
            description : Pose data
          description : Transor data
          $ref: '../common/commonopenapi.yaml#/components/schemas/Transform3D'
          $ref: '../common/commonopenapi.yaml#/components/schemas/Transform3D'
        unit:
        unit:
          description: Unit system of the pose
          description: Unit system of the pose
          $ref: '../common/commonopenapi.yaml#/components/schemas/UnitSystem'
          $ref: '../common/commonopenapi.yaml#/components/schemas/UnitSystem'


    VectorQuaternionPoseValue:
      description: A pose value that is described with a position and a rotation
      allOf:     #inheritance
          - $ref: '#/components/schemas/PoseValue'
      properties:
        position: 
          description : Pose Position
          $ref: '../common/commonopenapi.yaml#/components/schemas/Vector3'
        rotation: 
          description : Pose Rotation
          $ref: '../common/commonopenapi.yaml#/components/schemas/Quaternion'  
        unit:
          description: Unit system of the pose
          $ref: '../common/commonopenapi.yaml#/components/schemas/UnitSystem'      

    GeodeticPoseValue:
      description : A pose value in a geodetic coordinate system
      allOf:     #inheritance
        - $ref: '#/components/schemas/PoseValue'
      properties:
        altitude: 
          type: number
          example: 70.0
        longitude:
          type: number
          example: 7.013579
        latitude: 
          type: number
          example: 43.57351
        rotation:  
          description: Pose Rotation
          $ref: '../common/commonopenapi.yaml#/components/schemas/Quaternion'
        geodeticsystem:
          description: Associated geodetic system of the pose
          type: string
          example: "WGS84"
        rotationTarget:
            description: Coordinate system of the rotation
            type : string
            enum: [EASTUPSOUTH, WESTUPNORTH]
            example: EASTUPSOUTH

    PoseConfiguration:
    PoseConfiguration:
      description: An object representing the framerate that the World Analysis needs to reach for a given Trackable Type
      description: An object representing the framerate that the World Analysis needs to reach for a given Trackable Type
      type: object
      type: object