Please enable JavaScript to view this site.

Version:

NodeList findFeaturesByPoint(String version, String featureClassName, String searchExpression, String x, String y, String searchDistance)

Description

Queries a list of ArcGIS Object Identifiers (OBJECTID) from a feature class table, with the searchExpression condition and a spatial filter defined by a buffered Point (x,y).

Parameter

Value

version

Fully qualified name of the version (e.g. SDE.DEFAULT).

featureClassName

Name of the feature class table. The table name will be qualified by the user name configured in ags.sde.tableowner.

searchExpression

Conditional expression for the query. Can be an empty string.

x

X-coordinate of point.

y

Y-coordinate of point.

searchDistance

If this value is > 0 a buffer polygon with distance=searchDistance is created around the point. The spatial search is executed for the buffer polygon with the esriSpatialRelIntersects relationship.

If this value is empty or = 0 the spatial search is executed for the point with the esriSpatialRelWithin relationship.

Return value

The returned value is a NodeList with ArcGIS Object Identifiers (OBJECTID). If the query has no results, an empty NodeList is returned.

The NodeList contains Text type nodes.

Example:

1.Search in polygon feature class FCL_E_PLANT_AREA with unbuffered point as spatial filter:
<xsl:for-each select="utiapi:findFeaturesByPoint('SDE.DEFAULT','FCL_E_PLANT_AREA','','23425.640','21791.577','')">
  <result><xsl:value-of select="." /></result>
</xsl:for-each>

2.Search in FCL_E_INSTALLATION point feature class with a buffered point as a spatial filter:
<xsl:for-each select="utiapi:findFeaturesByPoint('SDE.DEFAULT','FCL_E_INSTALLATION','ACLASS_ID=3001','23425.640','21791.577','10.0')">
  <result><xsl:value-of select="." /></result>
</xsl:for-each>

 

NodeList findFeaturesByFeature(String version, String inputFeatureClassName, String inputObjectId, String searchExpression, String esriSpatialRelation, String searchDistance, String outputFeatureClassName)

Description

Queries a list of ArcGIS Object Identifiers (OBJECTID) from the feature class table specified by outputFeatureClassName, based on the provided searchExpression condition and a spatial filter defined by a feature with OBJECTID=inputObjectId in the inputFeatureClassName.

Parameter

Value

version

Fully qualified name of the version (e.g. SDE.DEFAULT).

inputFeatureClassName

Name of the feature class table from which the feature is used for the spatial query. The table name will be qualified by the user name configured in ags.sde.tableowner.

inputObjectId

ArcGIS Object Identifier (OBJECTID) of the feature that is used for the spatial query.

searchExpression

Conditional expression for the query. Can be an empty string.

esriSpatialRelation

Esri Relationship for the spatial query. Following values are supported:

1 = esriSpatialRelIntersects

2 = esriSpatialRelEnvelopeIntersects

3 = esriSpatialRelIndexIntersects

4 = esriSpatialRelTouches

5 = esriSpatialRelOverlaps

6 = esriSpatialRelCrosses

7 = esriSpatialRelWithin

8 = esriSpatialRelContains

searchDistance

If this value is > 0, around the input feature a buffer polygon with distance=searchDistance is created. 

If this value is empty or equals 0, the spatial search is performed using the geometry of the input feature.

outputFeatureClassName

Name of the feature class table on which the spatial query is executed.

Return value

The returned value is a NodeList containing ArcGIS Object Identifiers (OBJECTID). If the query have no results, an empty NodeList is returned. The nodes within the NodeList are of type Text.

Example:

1.Search in polygon feature class FCL_E_PLANT_AREA with unbuffered point feature from FCL_E_INSTALLATION as spatial filter:
<xsl:for-each select="utiapi:findFeaturesByFeature('SDE.DEFAULT','FCL_E_INSTALLATION','28','','7','','FCL_E_PLANT_AREA')">
  <result><xsl:value-of select="." /></result>
</xsl:for-each>

2.Search in polygon feature class FCL_E_PLANT_AREA with buffered point feature from FCL_E_INSTALLATION as spatial filter:
<xsl:for-each select="utiapi:findFeaturesByFeature('SDE.DEFAULT','FCL_E_INSTALLATION','28','','7','0.2','FCL_E_PLANT_AREA')">   <result><xsl:value-of select="." /></result>
</xsl:for-each>

 

NodeList getCoordsFromFeature(String version, String featureClassName, String searchField, String searchValue)

Description

Queries a list of coordinates from a feature class table based on the searchField=searchValue condition. This function supports Point, Polyline, or Polygon features.

 

Parameter

Value

version

Fully qualified name of the version (e.g. SDE.DEFAULT).

featureClassName

Name of the feature class table. The table name will be qualified by the user name configured in ags.sde.tableowner. The feature class must be of type Point, Polyline or Polygon.

searchField

Field name of the query expression.

searchValue

Value of the query expression.

Return value

NodeList with alternating entries of X and Y coordinates. In the returned list, X coordinates have odd indices (starting with 1), while Y coordinates have even indices (starting with 2). If the query has no result an empty NodeList is returned. The NodeList contains Text type nodes.

Example:

1.Search in the FCL_E_PLANT_AREA polygon feature class with an unbuffered point as spatial filter:
<xsl:for-each select="utiapi:findFeaturesByPoint('SDE.DEFAULT','FCL_E_PLANT_AREA','','23425.640','21791.577','')">
  <result><xsl:value-of select="." /></result>
</xsl:for-each>

2.Search in the FCL_E_INSTALLATION point feature class with a buffered point as spatial filter:
<xsl:for-each select="utiapi:findFeaturesByPoint('SDE.DEFAULT','FCL_E_INSTALLATION','ACLASS_ID=3001','23425.640','21791.577','10.0')">
  <result><xsl:value-of select="." /></result>
</xsl:for-each>

 

nodelist getcentroidofpolygon(string version, string polygonfeatureclassname, string polygonobjectid)

Description

Queries the X/Y coordinate of the centroid point of a polygon feature.

Parameter

Value

version

Fully qualified name of the version (e.g. SDE.DEFAULT).

polygonFeatureClassName

Name of the feature class table. The table name will be qualified by the user name configured in ags.sde.tableowner. The feature class must be of type Polygon.

polygonObjectId

ArcGIS Object Identifier (OBJECTID) of the polygon feature for which the centroid point should be calculated.

Return value

The function returns a NodeList containing the X and Y coordinates of the centroid point. The X coordinate has index 1 in the list, while the Y coordinate has index 2. If the query does not produce any results, an empty NodeList is returned. The NodeList contains Text type nodes.

Example:

<xsl:variable name="CENTROID" select="utiapi:getCentroidOfPolygon('SDE.DEFAULT','FCL_E_PLANT_AREA','3')" />
<xml>
  <result>
     <X><xsl:value-of select="$CENTROID[1]" /></X>
     <Y><xsl:value-of select="$CENTROID[2]" /></Y>
  </result>  
</xml>

 

NodeList calculateConvexHull(NodeList coordinateList)

Description

Calculates the convex hull for a set of points.

Parameter

Value

coordinateList

NodeList containing the X/Y coordinates of the points for which the convex hull should be calculated. The NodeList must contain the X and Y coordinates alternatly as nodes of type Text.

Return value

The function returns a NodeList containing alternating entries of X and Y coordinates of the convex hull. X coordinates have odd indices (starting with 1), while Y coordinates have even indices (starting with 2). If the query does not have any results, an empty NodeList is returned. The nodes within the NodeList are of Text type.

Example:

Input XML

<xml>
  <point>
     <x>23425.640</x>
     <y>21791.577</y>
  </point>
  <point>
     <x>23435.640</x>
     <y>21791.577</y>
  </point>
  <point>
     <x>23425.640</x>
     <y>21781.577</y>
  </point>
  <point>
     <x>23420.640</x>
     <y>21786.577</y>
  </point>
</xml>

 

XSLT Transformation

<xsl:template match="/">
  <xsl:variable name="CONVEXHULL" select="utiapi:calculateConvexHull(//point/*[self::x or self::y])" />
  <xml>
     <result>
        <xsl:for-each select="$CONVEXHULL">
           <xsl:choose>
              <xsl:when test="(position() mod 2) = 1">
                 <X>
                    <xsl:value-of select="." />
                 </X>
              </xsl:when>
              <xsl:otherwise>
                 <Y>
                    <xsl:value-of select="." />
                 </Y>
              </xsl:otherwise>
           </xsl:choose>
        </xsl:for-each>
     </result>
  </xml>
</xsl:template>

 

NodeList getPointEnvelope(String x, String y, String distance)

Description

Calculates an envelope for a point.

Parameter

Value

x

X point coordinate. 

y

Y point coordinate. 

distance

Distance from the point to the edges of the surrounding envelope.

Return value

The function returns a NodeList containing alternating entries of X and Y coordinates of the envelope. X coordinates have odd indices (starting with 1), while Y coordinates have even indices (starting with 2). If the query does not have any results, an empty NodeList is returned. The nodes within the NodeList are of Text type.

Example:

<xsl:variable name="CENTROID" select="utiapi:getCentroidOfPolygon('SDE.DEFAULT','FCL_E_PLANT_AREA','3')" />
<xml>
  <result>
     <X><xsl:value-of select="$CENTROID[1]" /></X>
     <Y><xsl:value-of select="$CENTROID[2]" /></Y>
  </result>  
</xml>

 

NodeList getLineEnvelope(String x1, String y1, String x2, String y2, String distance)

© 2024 VertiGIS GmbH. All Rights Reserved. | Privacy Center | Imprint
Documentation Version 10.0 (fa3b2a93)