I did some additional research.
The capture below shows the coordinates of IfcTextLiteralWithExtent#75793, a child element of IfcAnnotation#76112, in FME.
The coordinates are (13.539999999976, 24.1600000126, 0), which is incorrect.
​
I also dumped the same element in ifcOpenShell.
The following is an excerpt of only the important parts.
Â
(IfcAnnotation#76112): obj_place=(0.0, 0.0, 2.7), GlobalId=0OL3LCjon8C8eMGVs718Tk, Name=None, Description=None, ObjectType=None
 ...
 ObjectPlacement(IfcLocalPlacement#75786):Â
  PlacementRelTo(IfcLocalPlacement#35064):Â
   PlacementRelTo(IfcLocalPlacement#432):Â
    PlacementRelTo(IfcLocalPlacement#115): PlacementRelTo=None
     RelativePlacement(IfcAxis2Placement3D#114):Â
      Location(IfcCartesianPoint#112): Coordinates=(0.0, 0.0, 0.0)
      Axis(IfcDirection#110): DirectionRatios=(0.0, 0.0, 1.0)
      RefDirection(IfcDirection#108): DirectionRatios=(1.0, 0.0, 0.0)
    RelativePlacement(IfcAxis2Placement3D#431):Â
     Location(IfcCartesianPoint#429): Coordinates=(0.0, 0.0, 0.0)
     Axis(IfcDirection#427): DirectionRatios=(0.0, 0.0, 1.0)
     RefDirection(IfcDirection#425): DirectionRatios=(1.0, 0.0, 0.0)
   RelativePlacement(IfcAxis2Placement3D#35063):Â
    Location(IfcCartesianPoint#35061): Coordinates=(0.0, 0.0, 2.7)
    Axis(IfcDirection#35059): DirectionRatios=(0.0, 0.0, 1.0)
    RefDirection(IfcDirection#35057): DirectionRatios=(1.0, 0.0, 0.0)
  RelativePlacement(IfcAxis2Placement3D#75785):Â
   Location(IfcCartesianPoint#75783): Coordinates=(0.0, 0.0, 0.0)
   Axis(IfcDirection#75781): DirectionRatios=(0.0, 0.0, 1.0)
   RefDirection(IfcDirection#75779): DirectionRatios=(1.0, 0.0, 0.0)
 Representation(IfcProductDefinitionShape#76109): Name=None, Description=None
  RepresentationÂ0](IfcShapeRepresentation#76107): RepresentationIdentifier=Annotation, RepresentationType=Annotation2D
   ContextOfItems(IfcGeometricRepresentationSubContext#15265): ContextIdentifier=Annotation, ContextType=Plan, CoordinateSpaceDimension=None, Precision=None, WorldCoordinateSystem=None, TrueNorth=None, TargetScale=0.01, TargetView=PLAN_VIEW, UserDefinedTargetView=None
    ParentContext(IfcGeometricRepresentationContext#374): ContextIdentifier=None, ContextType=Plan, CoordinateSpaceDimension=3, Precision=1e-05
     WorldCoordinateSystem(IfcAxis2Placement3D#371):Â
      Location(IfcCartesianPoint#369): Coordinates=(0.0, 0.0, 0.0)
      Axis(IfcDirection#367): DirectionRatios=(0.0, 0.0, 1.0)
      RefDirection(IfcDirection#365): DirectionRatios=(1.0, 0.0, 0.0)
     TrueNorth(IfcDirection#372): DirectionRatios=(0.766044443119, 0.642787609687)
   ItemD0](IfcTextLiteralWithExtent#75793): Literal=50, Path=LEFT, BoxAlignment=bottom-left
    Placement(IfcAxis2Placement2D#75792):Â
     Location(IfcCartesianPoint#75790): Coordinates=(13.5399999976, 10.620000015)
     RefDirection(IfcDirection#75788): DirectionRatios=(0.0, 1.0)
    Extent(IfcPlanarExtent#75787): SizeInX=0.549829, SizeInY=0.4
Â
The coordinates are (13.53999999976, 10.620000015, 2.7), which seem to be the correct coordinates.
Â
By the way, when the x and y of the correct coordinates are added together they match the incorrect y coordinates in FME.
(13.539999999976Â +Â 10.620000015Â =Â 24.1600000126)
Â
Is there some bug that causes the IfcCartesianPoint's x and y to add up under certain circumstances?
Â
I did some additional research.
The capture below shows the coordinates of IfcTextLiteralWithExtent#75793, a child element of IfcAnnotation#76112, in FME.
The coordinates are (13.539999999976, 24.1600000126, 0), which is incorrect.
​
I also dumped the same element in ifcOpenShell.
The following is an excerpt of only the important parts.
Â
(IfcAnnotation#76112): obj_place=(0.0, 0.0, 2.7), GlobalId=0OL3LCjon8C8eMGVs718Tk, Name=None, Description=None, ObjectType=None
 ...
 ObjectPlacement(IfcLocalPlacement#75786):Â
  PlacementRelTo(IfcLocalPlacement#35064):Â
   PlacementRelTo(IfcLocalPlacement#432):Â
    PlacementRelTo(IfcLocalPlacement#115): PlacementRelTo=None
     RelativePlacement(IfcAxis2Placement3D#114):Â
      Location(IfcCartesianPoint#112): Coordinates=(0.0, 0.0, 0.0)
      Axis(IfcDirection#110): DirectionRatios=(0.0, 0.0, 1.0)
      RefDirection(IfcDirection#108): DirectionRatios=(1.0, 0.0, 0.0)
    RelativePlacement(IfcAxis2Placement3D#431):Â
     Location(IfcCartesianPoint#429): Coordinates=(0.0, 0.0, 0.0)
     Axis(IfcDirection#427): DirectionRatios=(0.0, 0.0, 1.0)
     RefDirection(IfcDirection#425): DirectionRatios=(1.0, 0.0, 0.0)
   RelativePlacement(IfcAxis2Placement3D#35063):Â
    Location(IfcCartesianPoint#35061): Coordinates=(0.0, 0.0, 2.7)
    Axis(IfcDirection#35059): DirectionRatios=(0.0, 0.0, 1.0)
    RefDirection(IfcDirection#35057): DirectionRatios=(1.0, 0.0, 0.0)
  RelativePlacement(IfcAxis2Placement3D#75785):Â
   Location(IfcCartesianPoint#75783): Coordinates=(0.0, 0.0, 0.0)
   Axis(IfcDirection#75781): DirectionRatios=(0.0, 0.0, 1.0)
   RefDirection(IfcDirection#75779): DirectionRatios=(1.0, 0.0, 0.0)
 Representation(IfcProductDefinitionShape#76109): Name=None, Description=None
  RepresentationÂ0](IfcShapeRepresentation#76107): RepresentationIdentifier=Annotation, RepresentationType=Annotation2D
   ContextOfItems(IfcGeometricRepresentationSubContext#15265): ContextIdentifier=Annotation, ContextType=Plan, CoordinateSpaceDimension=None, Precision=None, WorldCoordinateSystem=None, TrueNorth=None, TargetScale=0.01, TargetView=PLAN_VIEW, UserDefinedTargetView=None
    ParentContext(IfcGeometricRepresentationContext#374): ContextIdentifier=None, ContextType=Plan, CoordinateSpaceDimension=3, Precision=1e-05
     WorldCoordinateSystem(IfcAxis2Placement3D#371):Â
      Location(IfcCartesianPoint#369): Coordinates=(0.0, 0.0, 0.0)
      Axis(IfcDirection#367): DirectionRatios=(0.0, 0.0, 1.0)
      RefDirection(IfcDirection#365): DirectionRatios=(1.0, 0.0, 0.0)
     TrueNorth(IfcDirection#372): DirectionRatios=(0.766044443119, 0.642787609687)
   ItemD0](IfcTextLiteralWithExtent#75793): Literal=50, Path=LEFT, BoxAlignment=bottom-left
    Placement(IfcAxis2Placement2D#75792):Â
     Location(IfcCartesianPoint#75790): Coordinates=(13.5399999976, 10.620000015)
     RefDirection(IfcDirection#75788): DirectionRatios=(0.0, 1.0)
    Extent(IfcPlanarExtent#75787): SizeInX=0.549829, SizeInY=0.4
Â
The coordinates are (13.53999999976, 10.620000015, 2.7), which seem to be the correct coordinates.
Â
By the way, when the x and y of the correct coordinates are added together they match the incorrect y coordinates in FME.
(13.539999999976Â +Â 10.620000015Â =Â 24.1600000126)
Â
Is there some bug that causes the IfcCartesianPoint's x and y to add up under certain circumstances?
Â
Hi @rhikos​,
Thank you very much for this information. I have created a problem report for our development team (FMEENGINE-76579) and expect this to be a quick fix. We will notify you when the fix is available in beta.
Hi @rhikos​,
I'm pleased to share that the issue @daveatsafe​ had filed has been resolved, and annotations should now be placed in the correct location. The fix can be found in the official release build: FME 2022.2 build 22790 and higher from our downloads page here: safe.com/downloads
Â
While checking this out, our QA team has identified a separate problem with reading this same dataset where it comes through with some incorrect geometries in 3D view. We are tracking this issue internally as (FMEENGINE-76696) and we can update here when it has been addressed too.
I have confirmed that annotations are placed in the correct location in build 22790. Thanks for the quick fix!