TABLE OF CONTENTS


PACKAGE/TOOLS [ Modules ]

[ Top ] [ Modules ]

NAME

    TOOLS - A collection of common functions used by other packages and object types.

DESCRIPTION

    A package that publishes a collection of common functions used by other packages and object types.

AUTHOR

    Simon Greener

HISTORY

    Simon Greener - Jan 2017 - Original coding.

COPYRIGHT

    (c) 2005-2018 by TheSpatialDBAdvisor/Simon Greener

TOOLS/Generate_Series [ Functions ]

[ Top ] [ TOOLS ] [ Functions ]

NAME

    Generate_Series -- Function that generates a series of numbers mimicking PostGIS's function with the same name

SYNOPSIS

    Function generate_series(p_start pls_integer,
                             p_end   pls_integer,
                             p_step  pls_integer
             )
      Return &&INSTALL_SCHEMA..T_IntValues Pipelined;

EXAMPLE

    with data as (
      select sdo_geometry('LINESTRING(0 0,10 0,10 5,10 10,5 10,5 5)',null) as line
        from dual
    )
    select t.IntValue as point_id,
           v.x,
           v.y
      from data a,
           table(tools.generate_series(1,sdo_util.GetNumVertices(a.line),1)) t,
           table(sdo_util.getvertices(a.line)) v
     where v.id =t.intValue;

      POINT_ID          X          Y
    ---------- ---------- ----------
             1          0          0
             2         10          0
             3         10          5
             4         10         10
             5          5         10
             6          5          5

     6 rows selected

INPUTS

   p_start (Integer) - Starting value
   p_end   (Integer) - Ending value.
   p_step  (Integer) - The step value of the increment between start and end
 RETURN
   Array of Integers (T_IntValues)

AUTHOR

     Simon Greener

HISTORY

     Simon Greener - Jan 2008 - Original coding.

COPYRIGHT

     (c) 2008-2018 by TheSpatialDBAdvisor/Simon Greener

TOOLS/ST_DB_Version [ Functions ]

[ Top ] [ TOOLS ] [ Functions ]

NAME

    ST_DB_Version -- Returns Database Version and sub version.

SYNOPSIS

    Static Function ST_DB_Version
             Return Number Determinisitc

DESCRIPTION

    This function return database version which is useful when handling Oracle functions that only appear in certain versions

RESULT

    Database Version (NUMBER) - eg 11.2 Database(12.1)

EXAMPLE

    select T_GEOMETRY.ST_DB_Version() as database_version
      from DUAL;

    DATABASE_VERSION
    ----------------
    11.2

AUTHOR

    Simon Greener

HISTORY

    Simon Greener - May 2016 - Original coding.

COPYRIGHT

    (c) 2012-2018 by TheSpatialDBAdvisor/Simon Greener

TOOLS/ST_GetSridType [ Functions ]

[ Top ] [ TOOLS ] [ Functions ]

NAME

    ST_GetSridType - Determines ref sys kind of provided p_srid

SYNOPSIS

    Function ST_GetSridType(p_srid IN Integer)
      Return VarChar2 Deterministic;

DESCRIPTION

    Given a null p_srid this function returns PLANAR.
    The the p_srid is not null the function checks the Mdsys.Sdo_Coord_Ref_System table's coord_ref_sys_kind column, mapping its values as follows:
      COMPOUND     ==> PLANAR,
      ENGINEERING  ==> PLANAR,
      GEOGENTRIC   ==> GEOGRAPHIC,
      GEOGRAPHIC2D ==> GEOGRAPHIC,
      GEOGRAPHIC3D ==> GEOGRAPHIC,
      PROJECTED    ==> PLANAR,
      VERTICAL     ==> GEOGRAPHIC,

INPUTS

    p_srid (integer) - Returns PLANAR or GEOGRAPHIC
  NOTE
    Used mainly in determinining type of arithmetic to be used when calculating distances etc

EXAMPLE

    select distinct f.sridType
      from (select Tools.ST_GetSridType(a.srid) as SridType
              from cs_srs a
             order by DBMS_RANDOM.VALUE
           ) f
     where rownum < 100;

    SRIDTYPE
    ----------
    PLANAR
    GEOGRAPHIC

AUTHOR

     Simon Greener

HISTORY

     Simon Greener - Jan 2011 - Original coding.

COPYRIGHT

     (c) 2008-2018 by TheSpatialDBAdvisor/Simon Greener

TOOLS/ST_isLocator [ Methods ]

[ Top ] [ TOOLS ] [ Methods ]

NAME

    ST_isLocator -- Makes best effort to osee if database is a locator databases.

SYNOPSIS

    Function ST_isLocator
      Return INTEGER Deterministic,

DESCRIPTION

    A method that attempts to determine if the host database is a Locator database or has Spatial objects.

RESULT

    BOOLEAN (INTEGER) -- 1 Is Locator else 0 (Spatial)

EXAMPLE

    select T_GEOMETRY.ST_isLocator() as isLocator
      from dual;

    ISLOCATOR
    ---------
    0

AUTHOR

    Simon Greener

HISTORY

    Simon Greener - Jan 2016 - Original coding.

COPYRIGHT

    (c) 2012-2017 by TheSpatialDBAdvisor/Simon Greener

TOOLS/TokenAggregator [ Functions ]

[ Top ] [ TOOLS ] [ Functions ]

NAME

    TokenAggregator - A string aggregator.

SYNOPSIS

    Function TokenAggregator(p_tokenSet  IN &&INSTALL_SCHEMA..T_Tokens,
                             p_delimiter IN VarChar2 DEFAULT ',')
      Return VarChar2 Deterministic;

DESCRIPTION

    Takes a set of strings an aggregates/appends them using supplied separator

INPUTS

    p_tokenSet  (T_Tokens) - The strings to be aggregated.
    p_separator (varchar2) - The character that is placed between each token string.
  NOTE
    Requires t_Tokens Object Type to exist.

EXAMPLE

    with data as (
      select t.ID, T.TOKEN, T.sEPARATOR
        from table(TOOLS.Tokenizer('LINESTRING(0 0,10 0,10 5,10 10,5 10,5 5)',',()')) t
    )
    select TOOLS.TokenAggregator(tokens,',') AS result
      from (select CAST(COLLECT(codesys.T_Token(l.id,l.token,l.separator)) AS T_Tokens) as tokens
              from data l
          ) f;

RESULT

    ----------------------------------------
    LINESTRING(0 0,10 0,10 5,10 10,5 10,5 5)

AUTHOR

     Simon Greener

HISTORY

     Simon Greener - Jan 2011 - Original coding.

COPYRIGHT

     (c) 2008-2018 by TheSpatialDBAdvisor/Simon Greener

TOOLS/Tokenizer [ Functions ]

[ Top ] [ TOOLS ] [ Functions ]

NAME

    Tokenizer - Splits any string into tokens and separators.

SYNOPSIS

    Function Tokenizer (
                  p_string     varchar2,
               OR p_string     varchar2, 
                  p_separators varchar2 default ' '
             )
      Return T_Tokens Pipelined

     Where T_Tokens is array of T_Token:
       id        integer,
       token     varchar2(30000),
       separator varchar2(30000)
     )

DESCRIPTION

    Supplied a string and a list of separators this function returns resultant tokens as a table collection.
    Function returns both the token and the separator.
    Returned table collection contains a unique identifier to ensure tokens and separators are always correctly ordered.

INPUTS

    p_string     (varchar 30000) - Any non-null string.
    p_separators (varchar 30000) - List of separators eg '(),'

RESULT

    Table (Array) of T_TOKEN:
      id        (integer)       - Unique identifier for each row starting with first token/separator found.
      token     (varchar 30000) - Token between separators
      separator (varchar 30000) - Separator between tokens.

EXAMPLE

    select t.id, t.token, t.separator
      from table(TOOLS.Tokenizer('LINESTRING(0 0,10 0,10 5,10 10,5 10,5 5)',',()')) t

    ID TOKEN      SEPARATOR
    -- ---------- ---------
     1 LINESTRING         (
     2 0 0                ,
     3 10 0               ,
     4 10 5               ,
     5 10 10              ,
     6 5 10               ,
     7 5 5                )

     7 rows selected

AUTHOR

    Simon Greener

HISTORY

    Simon Greener - Jan 2008 - Original coding.

COPYRIGHT

    (c) 2008-2018 by TheSpatialDBAdvisor/Simon Greener