使用者の手引きおよび解説書

AsBinaryShape

AsBinaryShape は図形オブジェクトを引き数とし、BLOB を戻します。

構文

db2gse.AsBinaryShape(g db2gse.ST_Geometry)

戻りタイプ

BLOB(1m)

下記のコードの一部は、 AsBinaryShape 関数が SENSITIVE_AREAS 表のゾーン・ポリゴンを形状ポリゴンに変換する様子を示しています。 これらの形状ポリゴンは、アプリケーションの draw_polygon 関数に渡されて表示されます。

/* Create the SQL expression. */
strcpy(sqlstmt, "select db2gse.AsBinaryShape (zone) from SENSITIVE_AREAS
where db2gse.EnvelopesIntersect(zone, db2gse.PolyFromShape(cast(? as blob(1m)),
db2gse.coordref()..srid(0)))");
/* Prepare the SQL statement. */
SQLPrepare(hstmt, (UCHAR *)sqlstmt, SQL_NTS);
/* Set the pcbvalue1 length of the shape. */
pcbvalue1 = blob_len;
/* Bind the shape parameter */
SQLBindParameter (hstmt, 1, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_BLOB, blob_len,
0, shape, blob_len, &pcbvalue1);
/* Execute the query */
rc = SQLExecute (hstmt);
/* Assign the results of the query (the Zone polygons) to the
   fetched_binary variable. */
SQLBindCol (hstmt, 1, SQL_C_Binary, fetched_binary, 100000, &ind_blob);
/* Fetch each polygon within the display window and display it. */
while(SQL_SUCCESS == (rc = SQLFetch(hstmt)))
  draw_polygon(fetched_binary);


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]