Question

Problem with predefined bounds

  • 5 September 2013
  • 4 replies
  • 6 views

Badge
Hi,

 

 

I am trying to convert a dwg-file to MapInfo tab and setting the coordinate system at startup.

 

In FME 2011 and 2012 this works fine, but in 2013 I get this error message:

 

 

Some objects were written outside of the file's predefined bounds.

These objects may have invalid coordinates when the file is reopened.

Predefined bounds: (85000,6292000)-(212000,6670000)

 

I know that the coordinates are out of bounds, and thats the way I want it.

 

But it works fine in 2011 and 2012, no error message.

 

Is there a some new functionallity in 2013 that checks for bounds?

 

 

Is there a way to get around this?

 

I have tried setting the bounds in the fmw-file and then it works fine, but setting the bounds very stretched will reduce the accuracy, and I dont want that.

 

 

Any suggestions? 

 

 

Best regards

 

Hans

4 replies

Userlevel 4
Hej Hans,

 

 

does FME stop execution when it encounters these out-of-bounds features, or is it possible just a warning?

 

 

If it stops, you could easily filter out those features before the writer using:
  • a creator that creates a rectangle equal to the bounds box
  • a clipper with the recangle to the Clipper port and all your features to the Clippee port
Send only the features from the Inside port to your writer.

 

 

For info on whether / how this has changed in FME 2013, I suggest you contact Safe directly.

 

 

David
Badge
Thanx for fast reply David,

 

 

But there is no wrong with the features outside the box, I want to have all features in to the writer.

 

And since this has worked just fine in earlier versions, then I will contact Safe for info on changes in FME 2013.

 

 

Best regards

 

Hans
Hi Hans,

 

 

have you had any luck on getting this issue solved? I have exactly the same problem so if you have received an answer to this, please write it down here.

 

 

It seems like the writer does not care about the bounds given as parameters and uses some default values instead. This is when i use a generic writer and pass it to a mapinfo writer.

 

 

/ Roger
Badge
Hi Roger,

 

 

I e-mailed Safe Support about this problem and got this reply (see below), which helped me solve the problem, hope it will work for you too.

 

 

Best regards

 

Hans

 

 

 

Please, take a look at your <FME HOME>/Reproject/Esceptions folder. You will find mapinfo.db file there. The file contains mappings between FME coordinate system names and MapInfo coordinate system definitions. For SWEREF-99-12-00 the mapping/definition is:

 

# "SWEREF 99 12 00\\p3007", 8, 33, 7, 12.00, 0, 1, 150000, 0

 

MAPINFO|SWEREF_99_12_00|8,33,m,12.00,0,1,150000,0

 

in FME 2011 build 6533 and

 

# "SWEREF 99 12 00\\p3007", 8, 33, 7, 12.00, 0, 1, 150000, 0

 

# Bounds derived from EPSG Registry

 

# "No trailing zeros" exception added to allow TAB reading since datum 33

 

# defeats parameter matching.  Still need unmangled primary to make sure we can

 

# match MIF strings.

 

MAPINFO|SWEREF-99-12-00|2008,33,m,12.00,0,1,150000,0,85000,6292000,212000,6670000

 

MAPINFO|SWEREF-99-12-00|8,33,m,12.00,0,1,150000,0

 

MAPINFO|SWEREF-99-12-00|8,33,m,12,0,1,150000,0

 

in FME 2013 build 13515.

 

 

As you notice, in FME 2011 the SWEREF-99-12-00 bounds were not defined. In FME 2013 the bounds are defined as (85000, 6292000) (212000, 6670000). It also says that the bounds derived from EPSG Registry.

 

 

When you try to output your data using FME 2013, you get

 

Some objects were written outside of the file's predefined bounds.

 

These objects may have invalid coordinates when the file is reopened.

 

Predefined bounds: (85000,6292000)-(212000,6670000)

 

error message. This happens because your actual data bounds are (267767.132136607, 6223263.28743559) (274557.392342683, 6230508.60323206), i.e. the whole dataset is completely out of the coordinate system bounds.

 

 

As a solution I would suggest editing mapinfo.db file (commenting SWEREF-99-12-00 definition with bounds to have only no bounds definition left).

 

Please, comment the definition with bounds and leave the definition without bounds commented. Your mapinfo.db file should look this way:

 

 

# "SWEREF 99 12 00\\p3007", 8, 33, 7, 12.00, 0, 1, 150000, 0

 

# Bounds derived from EPSG Registry

 

# "No trailing zeros" exception added to allow TAB reading since datum 33

 

# defeats parameter matching.  Still need unmangled primary to make sure we can

 

# match MIF strings.

 

#MAPINFO|SWEREF-99-12-00|2008,33,m,12.00,0,1,150000,0,85000,6292000,212000,6670000

 

MAPINFO|SWEREF-99-12-00|8,33,m,12.00,0,1,150000,0

 

MAPINFO|SWEREF-99-12-00|8,33,m,12,0,1,150000,0

 

Reply