# Node 3D Portrayal Service (extended) ![](figures/home.jpg) This is a 3D Portrayal Service implementation that is compatible with [3D Tiles](https://github.com/CesiumGS/3d-tiles) and [i3s](https://github.com/Esri/i3s-spec) specifications. ## Installing The service is implemented using [Node js](https://nodejs.org/en/). Install the dependencies with the `npm install` command. For the moment there is no bundler. Place the contents of the repository on your server with Node.js installed and run the "start" script with npm. `npm run start` If your server has a process manager installed, then configure accordingly. ## Usage You can change the port in `congig.js`, default port is 9000. You access the service with the `/service/v1x` endpoint and then provide additional query parameters: * getScene: `{host}:{port}/service/v1x?` * getScene query parameters: `service=3DPS` `&acceptversions=1.0` `&request=getScene` `&boundingbox=lon_1,lat_1,lon_2,lat_2` `&cullingvolume=vec3_plane1_normal,plane1_distance` (x6) `&camera=vec3_position,vec3_direction` `&frustum=near_offset,top_offset,right_offset` `&drawingbuffer=buffer_width,buffer_height` `&time=time_of_request` `&intersect=true` \* when vec3 is prefixed in a query parameter it should be replaced by three comma separated actual values, e.g. x,y,z \* when the intersect parameter is true it will return nodes which intersect with the requested bounding box When the query parameters are not valid an xml exception is returned.