Sep' 2122, 2006 - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Sep' 2122, 2006

Description:

Peter Laulund, National Survey and Cadastre, Denmark. FME ... FLYT.FMI *.ffs. fme.exe. FME and TCL 4. Structure of Mapping File Complex. Build by modules ... – PowerPoint PPT presentation

Number of Views:52
Avg rating:3.0/5.0
Slides: 13
Provided by: downloa8
Category:
Tags: fmi | sep

less

Transcript and Presenter's Notes

Title: Sep' 2122, 2006


1
v
Sep. 21-22, 2006
FME Worldwide User Conference - Vancouver
Tcl and Mapping Files Best Practices Peter
Laulund, National Survey and Cadastre, Denmark
2
Agenda
  • Tcl plays a big role in my mapping files. It is
    used for
  • batch processing
  • dynamically writing part of the mapping file
  • processing the features
  • and pre and post processing the data.
  • In this presentation I will discuss different
    aspects of how I structure a mapping file, with
    special focus on TCL. 

3
Demo Mapping File Structure
4
Structure of Mapping File Complex
  • Build by modules
  • Placed in a common structure
  • Metadata in tables
  • Transformation attributes with common prefix
    ex. kms_
  • kms_feature_type, kms_feature_code

5
Different Levels of Tcl in FME
fmeObjects tcl
fme.exe script.tcl
FME_BEGIN/END_TCL
INCLUDE script
Tcl2 source Tcl2( proc )
6
Command Line
  • Syntaks - Fme.exe script.tcl
  • Used for batch processing and chaining together
    more than one process together

proc spilflyt global header fil
lappend cmd fme.exe MAIN.FME --Modul FLYT
.. lappend cmd --from
FME_GetAttribute from lappend cmd --to
FME_GetAttribute to eval exec
cmd 2gt NUL eval exec fmeview.exe /ownffs
gsParth2Appspil/fil
7
INCLUDE .. script
  • Used to initiate the mapping file
  • putting in MACRO ltnamegt ltvaluegt pairs
  • Lookup tables
  • _DEF lines
  • INCLUDING Factorys or modules

INCLUDE switch -- (Modul)
\
SPIL puts "MACRO SourceFormat
TEXTLINE" \ INIT
puts "MACRO DestFormat FFS"
\ FLYT puts "MACRO
SourceFormat FFS"
\ puts "MACRO
DestFormat FFS"
8
Tcl2 and _at_Tcl()
  • Work on the feature and dataset level
  • Has a global namespace

Tcl2 set gsParth2App (mf_root)
\ set
gx0 (x0) set gy0 (y0) set gdxy (dxy)
\ source
(FME_MF_DIR_UNIX)/TCL/(Modul).TCL
proc inittilpasBrik id variable
brikPos FME_Execute Bounds xmin xmax ymin
ymax FME_Execute Offset expr
brikPos(id,x) - FME_GetAttribute xmax
expr
brikPos(id,y) - FME_GetAttribute ymin
FME_UnsetAttributes xmin xmax ymin ymax
skak_font fme_text_size fme_text_string
9
Tcl
10
FME_BEGIN/END_TCL
  • Used to pre- and post-processing the translation
  • creating directorys and copying documentation to
    dataset
  • zipping the dataset
  • emailing
  • copying the data to a FTP server
  • logging the translation to a database or file

11
Conclusion
  • Tcl works on many levels in the mapping file
  • It gives a dynamic dimension to mapping files
  • You can manipulate both attributes and geometry
  • The global namespace means that Tcl is more than
    just a new function
  • It can integrate FME with other programs

12
Links
  • http//wiki.tcl.tk/
  • Wiki about tcl and tk with many examples
  • http//jamesthornton.com/tcl/8.4.2/
  • tcl and tk documentation
Write a Comment
User Comments (0)
About PowerShow.com