kiwi-postgis  Version 0.1.0.0
AsX3D Class Reference
Inheritance diagram for AsX3D:
Collaboration diagram for AsX3D:

Public Member Functions

String operation (Geometry geom)
 
String getURI ()
 
Value evaluate (ValueFactory valueFactory, Value... args) throws ValueExprEvaluationException
 

Package Attributes

String header
 
String footer ="</Shape></Scene></X3D>"
 

Member Function Documentation

◆ evaluate()

Value evaluate ( ValueFactory  valueFactory,
Value...  args 
) throws ValueExprEvaluationException
inherited

References LiteralRegistry.getLiteral(), and GeometricStringExportFunction.operation().

16  {
17  if (args.length != 1) {
18  throw new ValueExprEvaluationException(getURI() + " requires exactly 1 arguments, got " + args.length);
19  }
20 
21  LiteralType l=LiteralRegistry.getLiteral(((Literal)args[0]).getDatatype().toString());
22  if(l instanceof VectorLiteral) {
23  Geometry geom=((VectorLiteral)l).read(args[0].stringValue());
24  String result = operation(geom);
25  return valueFactory.createLiteral(result);
26  }
27  throw new ValueExprEvaluationException("Argument given is not a geometry literal");
28 
29  }

◆ getURI()

String getURI ( )

References POSTGIS.ST_ASX3D.

34  {
35  // TODO Auto-generated method stub
36  return POSTGIS.ST_ASX3D.stringValue();
37  }

◆ operation()

String operation ( Geometry  geom)

References AsX3D.footer, and AsX3D.header.

12  {
13  StringBuilder builder=new StringBuilder();
14  builder.append("<IndexedFaceSet coordIndex=\"");
15  Integer index=0;
16  for(Coordinate coord:geom.getCoordinates()) {
17  builder.append(index.toString());
18  index++;
19  }
20  builder.append("</IndexedFaceSet>");
21  builder.append("<Coordinate point=\"");
22  for(Coordinate coord:geom.getCoordinates()) {
23  builder.append(coord.getX()+" "+coord.getY()+" "+coord.getZ()+" ");
24  }
25  builder.append("\"/>");
26  return header+builder.toString()+footer;
27  }
String footer
Definition: openrdf/query/algebra/evaluation/function/postgis/geometry/exporter/AsX3D.java:32
String header
Definition: openrdf/query/algebra/evaluation/function/postgis/geometry/exporter/AsX3D.java:29

Member Data Documentation

◆ footer

String footer ="</Shape></Scene></X3D>"
package

Referenced by AsX3D.operation().

◆ header

String header
package
Initial value:
="<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+
"<!DOCTYPE X3D PUBLIC \"ISO//Web3D//DTD X3D 3.2//EN\""+
"http://www.web3d.org/specifications/x3d-3.2.dtd\"><Scene><Shape>"

Referenced by AsX3D.operation().