File: ST_TransScale.xml

package info (click to toggle)
virtuoso-opensource 7.2.5.1%2Bdfsg1-0.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 285,240 kB
  • sloc: ansic: 641,220; sql: 490,413; xml: 269,570; java: 83,893; javascript: 79,900; cpp: 36,927; sh: 31,653; cs: 25,702; php: 12,690; yacc: 10,227; lex: 7,601; makefile: 7,129; jsp: 4,523; awk: 1,697; perl: 1,013; ruby: 1,003; python: 326
file content (119 lines) | stat: -rw-r--r-- 6,764 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--

  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
  project.

  Copyright (C) 1998-2018 OpenLink Software

  This project is free software; you can redistribute it and/or modify it
  under the terms of the GNU General Public License as published by the
  Free Software Foundation; only version 2 of the License, dated June 1991.

  This program is distributed in the hope that it will be useful, but
  WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  General Public License for more details.

  You should have received a copy of the GNU General Public License along
  with this program; if not, write to the Free Software Foundation, Inc.,
  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

  $
-->
<refentry id="fn_ST_TransScale">
  <refmeta>
    <refentrytitle>ST_TransScale</refentrytitle>
    <refmiscinfo>geo</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>ST_TransScale</refname>
    <refpurpose>returns a copy of a shape with all coordinates shifted by the provided dX, dY and then
    	multiplied by Xfactor and Yfactor.</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <funcsynopsis id="fsyn_ST_TransScale">
      <funcprototype id="fproto_ST_TransScale">
        <funcdef><function>ST_TransScale</function></funcdef>
	        <paramdef>in <parameter>shape</parameter> any</paramdef>
	        <paramdef>in <parameter>dX</parameter> any</paramdef>
	        <paramdef>in <parameter>dY</parameter> any</paramdef>
	        <paramdef>in <parameter>Xfactor</parameter> any</paramdef>
	        <paramdef>in <parameter>Yfactor</parameter> any</paramdef>
      </funcprototype>
    </funcsynopsis>
  </refsynopsisdiv>
  <refsect1 id="desc_ST_TransScale">
    <title>Description</title>
    <para>returns a copy of a shape with all coordinates shifted by the provided dX, dY and then multiplied by Xfactor and Yfactor.
    	Different values for Xfactor and Yfactor will result in distorted arcs.</para>
  </refsect1>
  <refsect1 id="params_ST_TransScale">
    <title>Parameters</title>
    <refsect2><title>shape</title><para>Geometry.</para></refsect2>
    <refsect2><title>dX</title><para>X coordinate.</para></refsect2>
    <refsect2><title>dY</title><para>Y coordinate.</para></refsect2>
    <refsect2><title>Xfactor</title><para>X value to multiple by.</para></refsect2>
    <refsect2><title>Yfactor</title><para>Y value to multiple by.</para></refsect2>
  </refsect1>
  <refsect1 id="ret_ST_TransScale"><title>Return Types</title>
    <para>Returns any.</para>
  </refsect1>
  <refsect1 id="examples_ST_TransScale">
    <title>Examples</title>
    <example id="ex_ST_TransScale"><title>Simple Use</title>
      <screen><![CDATA[
SQL> DB.DBA.TTLP ('
<point2d>               <shape> "POINT(1 3)"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<point4d>               <shape> "POINTZM(0 1 2 3)"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<box1>                  <shape> "BOX(0 0, 2 3)"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<linestring>            <shape> "LINESTRING(10 21, 12 23, 10 25)"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<polygon1>              <shape> "POLYGON((1 3,2 4,1 5,0 4,1 3))"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<polygon2>              <shape> "POLYGON((1.5 3.5,2.5 4.5,1.5 5.5,0.5 4.5,1.5 3.5))"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<polygon3>              <shape> "POLYGON((1 3,2 4,1 5,0 4,1 3),(1 3.5,1.5 4,1 4.5,0.5 4,1 3.5))"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<multipolygon>          <shape> "MULTIPOLYGON(((1 3,2 4,1 5,0 4,1 3)),((1 2,2 1,1 0,0 1,1 2)))"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
<collection>            <shape> "GEOMETRYCOLLECTION(POINT(0 0),MULTILINESTRING((1 5,0 1,4 0,5 4),(1 5,1 0,4 0,4 5)),MULTIPOLYGON(((1 3,2 4,1 5,0 4,1 3)),((1 2,2 1,1 0,0 1,1 2))))"^^<http://www.openlinksw.com/schemas/virtrdf#Geometry> .
', 'http://geo-api-demo/', 'http://geo-api-demo/', 0)

SQL> SPARQL
SELECT ?s, bif:ST_TransScale(?o, 0.1, 0.2, 0.1, 0.1)
FROM <http://geo-api-demo/>
WHERE
  {
    ?s ?p ?o
  }
ORDER BY ASC(str(?s))
s                                                                                 callret-1
VARCHAR                                                                           VARCHAR
_______________________________________________________________________________

http://geo-api-demo/box1          BOX2D(0.010 0.020,0.210 0.320)
http://geo-api-demo/collection    GEOMETRYCOLLECTION(POINT(0.010 0.020),MULTILINESTRING((0.110 0.520,0.010 0.120,0.410 0.020,0.510 0.420),(0.110 0.520,0.110 0.020,0.410 0.020,0.410 0.520)),MULTIPOLYGON(((0.110 0.320,0.010 0.420,0.110 0.520,0.210 0.420,0.110 0.320)),((0.110 0.220,0.010 0.120,0.110 0.020,0.210 0.120,0.110 0.220))))
http://geo-api-demo/linestring    LINESTRING(1.010 2.120,1.210 2.320,1.010 2.520)
http://geo-api-demo/multipolygon  MULTIPOLYGON(((0.110 0.320,0.010 0.420,0.110 0.520,0.210 0.420,0.110 0.320)),((0.110 0.220,0.010 0.120,0.110 0.020,0.210 0.120,0.110 0.220)))
http://geo-api-demo/point2d       POINT(0.11 0.32)
http://geo-api-demo/point4d       POINTZM(0.010 0.120 2.0 3.0)
http://geo-api-demo/polygon1      POLYGON((0.110 0.320,0.010 0.420,0.110 0.520,0.210 0.420,0.110 0.320))
http://geo-api-demo/polygon2      POLYGON((0.160 0.370,0.060 0.470,0.160 0.570,0.260 0.470,0.160 0.370))
http://geo-api-demo/polygon3      POLYGON((0.110 0.320,0.010 0.420,0.110 0.520,0.210 0.420,0.110 0.320),(0.110 0.370,0.060 0.420,0.110 0.470,0.160 0.420,0.110 0.370))

]]>
</screen>
    </example>
  </refsect1>
  <refsect1 id="seealso_ST_TransScale">
    <title>See Also</title>
    <para><link linkend="fn_st_x"><function>ST_X()</function></link></para>
    <para><link linkend="fn_st_y"><function>ST_Y()</function></link></para>
    <para><link linkend="fn_ST_Z"><function>ST_Z()</function></link></para>
    <para><link linkend="fn_ST_M"><function>ST_M()</function></link></para>
    <para><link linkend="fn_ST_XMin"><function>ST_XMin()</function></link></para>
    <para><link linkend="fn_ST_XMax"><function>ST_XMax()</function></link></para>
    <para><link linkend="fn_ST_YMin"><function>ST_YMin()</function></link></para>
    <para><link linkend="fn_ST_YMax"><function>ST_YMax()</function></link></para>
    <para><link linkend="fn_ST_ZMin"><function>ST_ZMin()</function></link></para>
    <para><link linkend="fn_ST_ZMax"><function>ST_ZMax()</function></link></para>
    <para><link linkend="fn_ST_MMin"><function>ST_MMin()</function></link></para>
    <para><link linkend="fn_ST_MMax"><function>ST_MMax()</function></link></para>
  </refsect1>
</refentry>