Skip to content

GeoProjection: Fix the handling of left handed Unreal location values#9590

Open
berndgassmann wants to merge 1 commit intocarla-simulator:ue4-devfrom
Motor-Ai:mai/fix_geo_projection
Open

GeoProjection: Fix the handling of left handed Unreal location values#9590
berndgassmann wants to merge 1 commit intocarla-simulator:ue4-devfrom
Motor-Ai:mai/fix_geo_projection

Conversation

@berndgassmann
Copy link
Contributor

@berndgassmann berndgassmann commented Mar 16, 2026

Use a helper class LocationRightHanded to allow the implemenation of the GeoProjections to perform their projections in a right handed coordinate frame.

The explicit handling using LocationRightHanded revealed error in OffsetTransform: result Location is now transformed back to Unreal coordinates and Rotation is fixed.

Allow OpenDRIVE offsets for any type of projection

Fix UniversalTransverseMercatorParams::operator!=()

This fix should contain the fixes which #9552 tried to tackle by using a more general solution. Especially this solution only applies the left-handed/right-handed conversion to the carla::geom::Location values, because all offset values provided by the OpenDRIVE map itself have to be considered to be in right-handed notation.

Description

Fixes #9530
Fixes #9389
And implements #9552 in a more complete manner.

Where has this been tested?

  • Platform(s): ... Ubunut 24.04
  • Python version(s): ...3.12.
  • Unreal Engine version(s): ... 4.26

Possible Drawbacks


This change is Reviewable

Use a helper class LocationRightHanded to allow the implemenation of the
GeoProjections to perform their projections in a right handed coordinate
frame.

The explicit handling using LocationRightHanded revealed error in
OffsetTransform: result Location is now transformed back to Unreal
coordinates and Rotation is fixed.

Allow OpenDRIVE offsets for any type of projection

Fix UniversalTransverseMercatorParams::operator!=()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant