Clash Service
- Detect all the clashes in a project
- Detect clashes between disciplines & objects/topologies
- Calculate clashes in project using particular clash filter
- Get all clashes for given project and clash filter
- Create an clash filter in the project
- Get all clash filters for a project
- Get all clash filters for a team
- Get details of single clash filter
- Update the clash filter
- Delete the clash filter
Clash Service
Clashes could be detected in a project by calling this service. The person who uploaded the model which contains the clash will get a notification along with the clash count after the clash process is completed. This process will be called during model import in the future.
Detect all the clashes in a project
URL: https://api-stage.bimplus.net/v2/<team_slug>/services/postprocess
Example:https://api-stage.bimplus.net/v2/bimplus/services/postprocess
JSON Structure:
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
runAsync |
mandatory |
bool |
True sets the clash process to run asynchronously |
postProcess |
mandatory |
object |
It runs as a windows service in the server |
projectId |
mandatory |
string |
Id of the project |
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "runAsync":"True", "postProcess":{ "projectId":"0c9b514a-5b30-4f77-b0ff-2184d079fd30" } }
Status: 200 OK
{ "postProcess":{ "projectId":"0c9b514a-5b30-4f77-b0ff-2184d079fd30" }, "runAsync":false }
Detect clashes between disciplines & objects/topologies
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashdetection
Example:https://api-stage.bimplus.net/v2/bimplus/clashdetection
JSON Structure:
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
layerid1 |
mandatory |
string(guid) |
Layer/discipline id |
layerid2 |
mandatory |
string(guid) |
Layer/discipline id |
tolerancex |
optional |
int |
Id of the project |
tolerancey | optional | int | Tolerance in x direction(mm) |
objectsid | mandatory | JSON Array | Tolerance in y direction(mm) |
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "layerid1": "0F106AF0-A919-44c5-B211-15BD5EF620B6", "layerid2": "0F106AF0-A919-44c5-B211-15BD5EF620B6", "tolerancex": "15", "tolerancey": "25", "objectsid": [ "a3105304-a785-4dff-b114-a57b665248f6", "f7fbde41-1c46-4c10-81cb-c97f16c9d16a", "aaf238a1-4a40-4185-991e-7673d82b040c" ] }
Status: 201 Created
{ "clashcount": 4 }
Calculate clashes in project using particular clash filter
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashdetection/filters
Example:https://api-stage.bimplus.net/v2/bimplus/clashdetection/filters
JSON Structure:
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
filterid | mandatory | guid | ID of clash filter |
projectid | mandatory | guid | Project ID |
tolerancex | optional | double | Tolerance by clash detection in x-direction. |
tolerancey | optional | double | Tolerance by clash detection in y-direction. |
tolerancez | optional | double | Tolerance by clash detection in z-direction. |
boxsize | optional | double | Size of visual clash element. |
renew | optional | boolean | Defines faith of previously calculated clashes. If false - clashes will be updated, if true - all clashes will be deleted and new ones will be calculated. Default value is false. |
POST
Calculates, updates or recalculates ( see "renew" property ) clashes for a project, using the clash filter provided in the request json. Tolerances and boxsize are optional, if not set then the default values of the given filter will be used.
Remark: If there is only one tolerance value present - tolerancex - this value is used for all three tolerances.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "filterid": "d76a6719-d858-45d1-a8e9-929efc58a356", "projectid": "738a1a0a-d5e4-4639-b450-996dc5cd7e67", "tolerancex": "0.01", "tolerancex": "0.01", "tolerancex": "0.01", "boxsize": "0.4", "renew": "false" }
Status: 201 Created
{ "creator": { "id": "69b270be-8102-4a27-a335-ee9e579acb87", "email": "testB@test.net" }, "createdat": "2016-02-15T13:18:28.32+01:00", "status": "DONE", "tolerancex": 1.0, "boxsize": 0.4, "open": [ { "id": "620ec33c-8686-40de-a670-3de5195fed42", "elements": [ "42c0c745-3dfa-4a47-9d86-0576bb37880a", "40393b5d-6ab9-4f81-8599-c46e69216a9c" ], "element1": { "id": "e3bdf005-58ea-4087-b2e1-367564fe06f6", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "7d2f969a-0c86-4521-be7c-7cf48bb0e610", "type": "Element", "name": "<Unnamed Element>" }, "nr": 1, "volume": 22.969524192034 }, { "id": "0dfa47b8-0efb-4c57-8859-ef90b4ad6453", "elements": [ "15461bb3-9994-4e54-8411-f94437e81e21", "36a5af0f-bef8-478f-bc2f-0b0e567260e2" ], "element1": { "id": "4eeeb292-3672-483e-94e5-0da5bb65a1a1", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "eeca2016-4fdf-4966-9143-ce94ad4b972c", "type": "Element", "name": "<Unnamed Element>" }, "nr": 3, "volume": 0.055550000000000009 } ], "unresolved": [ { "id": "ad2bddc6-1a5d-4a0b-b815-042cec0198a5", "elements": [ "75757fc1-ba76-4f64-ab29-7f5e2d85cfd1", "6edb8bc0-9417-4072-a375-98c11c692357" ], "element1": { "id": "19be02c9-2080-4f54-a545-154cc22b8628", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "f3c9162d-7b4a-4eba-a86f-72404be65445", "type": "Element", "name": "<Unnamed Element>" }, "nr": 2, "volume": 3.4398162022732786 }, { "id": "8f8c8720-2324-41d7-a669-d8cefb9328ff", "elements": [ "68813fe9-ea07-41c0-9a94-5990c4bedee6", "9fe08223-f723-4293-b484-4b45d02a09b7" ], "element1": { "id": "d520d19d-3235-4eb d-934f-1dc47af9f96e", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "e9a14ac4-6ee7-414a-aaf0-44cd72a68191", "type": "Element", "name": "<Unnamed Element>" }, "nr": 4, "volume": 0.64799999999999991 } ], "resolved": [ ] }
Get all clashes for given project and clash filter
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashdetection/projects/<project_id>/filters
GET
Get all project clashes calculated using given filter.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK
{ "creator": { "id": "69b270be-8102-4a27-a335-ee9e579acb87", "email": "testB@test.net" }, "createdat": "2016-02-15T13:18:28.32+01:00", "status": "DONE", "tolerancex": 1.0, "boxsize": 0.4, "open": [ { "id": "620ec33c-8686-40de-a670-3de5195fed42", "elements": [ "42c0c745-3dfa-4a47-9d86-0576bb37880a", "40393b5d-6ab9-4f81-8599-c46e69216a9c" ], "element1": { "id": "e3bdf005-58ea-4087-b2e1-367564fe06f6", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "7d2f969a-0c86-4521-be7c-7cf48bb0e610", "type": "Element", "name": "<Unnamed Element>" }, "nr": 1, "volume": 22.969524192034 }, { "id": "0dfa47b8-0efb-4c57-8859-ef90b4ad6453", "elements": [ "15461bb3-9994-4e54-8411-f94437e81e21", "36a5af0f-bef8-478f-bc2f-0b0e567260e2" ], "element1": { "id": "4eeeb292-3672-483e-94e5-0da5bb65a1a1", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "eeca2016-4fdf-4966-9143-ce94ad4b972c", "type": "Element", "name": "<Unnamed Element>" }, "nr": 3, "volume": 0.055550000000000009 } ], "unresolved": [ { "id": "ad2bddc6-1a5d-4a0b-b815-042cec0198a5", "elements": [ "75757fc1-ba76-4f64-ab29-7f5e2d85cfd1", "6edb8bc0-9417-4072-a375-98c11c692357" ], "element1": { "id": "19be02c9-2080-4f54-a545-154cc22b8628", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "f3c9162d-7b4a-4eba-a86f-72404be65445", "type": "Element", "name": "<Unnamed Element>" }, "nr": 2, "volume": 3.4398162022732786 }, { "id": "8f8c8720-2324-41d7-a669-d8cefb9328ff", "elements": [ "68813fe9-ea07-41c0-9a94-5990c4bedee6", "9fe08223-f723-4293-b484-4b45d02a09b7" ], "element1": { "id": "d520d19d-3235-4eb d-934f-1dc47af9f96e", "type": "Element", "name": "<Unnamed Element>" }, "element2": { "id": "e9a14ac4-6ee7-414a-aaf0-44cd72a68191", "type": "Element", "name": "<Unnamed Element>" }, "nr": 4, "volume": 0.64799999999999991 } ], "resolved": [ ] }
Create an clash filter in the project
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/clashfilters
Example: https://api-stage.bimplus.net/v2/bimplus/projects/48f5f0e5-4979-4c4f-b28a-fbba01d13181/clashfilters
JSON Structure : clash filter
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
name | optional | string | Custom table name |
description | optional | string | Custom table description |
id | will be ignored | string(guid) | The id of the custom table. Will be taken from request url. |
tolerancex | optional | double | Tolerance by clash detection in x-direction. |
tolerancey | optional | double | Tolerance by clash detection in y-direction. |
tolerancez | optional | double | Tolerance by clash detection in z-direction. |
boxsize | optional | double | Size of visual clash element. |
definitions | madatory | JSON Array | Array of two clash filter definition objects for a clash filter. |
JSON Structure : clash filter definition
Name |
Mandatory / Optional |
Type |
Description |
---|---|---|---|
name | optional | string | Name of the filter |
filterid | madatory | string(guid) | The id of the filter |
selectionid | optional | string(guid) | The id of the selection |
definition | madatory | string | The definition of a filter |
selection | optional | object | Object of the selection |
boxsize | optional | double | Size of visual clash element. |
definitions | madatory | JSON Array | Array of two clash filter definition objects for a clash filter. |
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "name":"TEST", "description":"test", "tolerancex":0.01, "boxsize":0.4, "definitions":[{ "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "selectionId":"8541a1c5-2551-4587-8fd9-ec8b59372bcd" }, { "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6" } ] }
Status: 200 OK
{ "name":"TEST", "description":"test", "tolerancex":0.01, "boxsize":0.4, "definitions":[{ "name":"Filter1", "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "selectionid":"8541a1c5-2551-4587-8fd9-ec8b59372bcd", "id":"c9d5ca15-2561-4c58-85da-870a89242b87" }, { "name":"Filter2", "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "id":"c9d5ca15-2561-4c58-85da-870a89242b87" } ], "id":"c9d5ca15-2561-4c58-85da-870a89242b87" }
Get all clash filters for a project
URL: https://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/clashfilters
Example:https://api-stage.bimplus.net/v2/bimplus/projects/48f5f0e5-4979-4c4f-b28a-fbba01d13181/clashfilters
Optional query parameters
Name | Type | Default value | Description |
---|---|---|---|
customfilter | boolean | true | When this query parameter is not set api returns global and custom clash filters for projects.
|
GET
Get all clash filters for a particular project.
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 Ok
[{ "name":"Reinforcement", "description":"Clashes between reinforcement objects.", "tolerancex":0.002, "boxsize":0.05, "id":"a9971843-0418-4ac4-a392-1bf5043fb562" }, { "name":"TEST", "description":"test", "tolerancex":0.01, "boxsize":0.4, "id":"c9d5ca15-2561-4c58-85da-870a89242b87" } ... ]
Get all clash filters for a team
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashdetection/filters
Example:https://api-stage.bimplus.net/v2/bimplus/clashdetection/filters
GET
Get details of all clash filters for a particular team
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 Ok
[ { "name": "Shell", "description": "Clashes of all main building elements objects. For example walls, floors, roof, stairs, openings, columns...with each other.", "tolerancex": 0.01, "boxsize": 0.4, "id": "d76a6719-d858-45d1-a8e9-929efc58a356" }, { "name": "Window/Door", "description": "Clashes of all doors/windows objects with all building elements objects.", "tolerancex": 0.01, "boxsize": 0.4, "id": "ffc6ab25-b3a9-1ecd-95be-35b5e7475fad" } , ... ]
Get details of single clash filter
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashdetection/filters/<filter_id>
Example:https://api-stage.bimplus.net/v2/bimplus/clashdetection/filters/c9d5ca15-2561-4c58-85da-870a89242b87
GET
Get details of single clash filter for a particular team
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 Ok
{ "name": "Test", "description": "test", "tolerancex": 0.01, "boxsize": 0.4, "definitions": [{ "name": "Filter1", "filterid": "0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition": "[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "selectionid": "8541a1c5-2551-4587-8fd9-ec8b59372bcd", "selection": { "id": "8541a1c5-2551-4587-8fd9-ec8b59372bcd", "projectid": "2191084f-dd8f-407c-b47d-f1f4c9256ddc", "divisionid": "00000000-0000-0000-0000-000000000000", "revisionnr": null, "type": "RevisionElements", "elements": null, "revisionelements": [{ "objectId": "e2c7c0e8-8524-445d-8f55-98fbd515271f", "revisionNr": 1 }, { "objectId": "e2c7c0e8-8524-445d-8f55-98fbd515271f", "revisionNr": 1 } ], "topology": null, "filter": null, "structure": null, "topologystructure": null }, "id": "c9d5ca15-2561-4c58-85da-870a89242b87" }, { "name": "Filter2", "filterid": "0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition": "[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "id": "c9d5ca15-2561-4c58-85da-870a89242b87" } ], "id": "c9d5ca15-2561-4c58-85da-870a89242b87" }
Update the clash filter
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashfilters/<clashfilter_id>
Example: https://api-stage.bimplus.net/v2/bimplus/clashfilters/c9d5ca15-2561-4c58-85da-870a89242b87
JSON Structure: see Create a clash filter in project
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
{ "name":"TEST", "description":"test", "tolerancex":0.01, "boxsize":0.4, "definitions":[{ "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "selectionId":"8541a1c5-2551-4587-8fd9-ec8b59372bcd" }, { "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6" } ] }
Status: 200 OK
{ "name":"TEST", "description":"test", "tolerancex":0.01, "boxsize":0.4, "definitions":[{ "name":"Filter1", "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "selectionid":"8541a1c5-2551-4587-8fd9-ec8b59372bcd", "id":"c9d5ca15-2561-4c58-85da-870a89242b87" }, { "name":"Filter2", "filterid":"0c39a1c5-2551-4587-8fd9-ec8b59372bcd", "definition":"[I]0F106AF0-A919-44C5-B211-15BD5EF620B6", "id":"c9d5ca15-2561-4c58-85da-870a89242b87" } ], "id":"c9d5ca15-2561-4c58-85da-870a89242b87" }
Delete the clash filter
Resource: clashfilters/<clashfilter_id>
URL: https://api-stage.bimplus.net/v2/<team_slug>/clashfilters/<clashfilter_id>
Example: https://api-stage.bimplus.net/v2/bimplus/clashfilters/c9d5ca15-2561-4c58-85da-870a89242b87
Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088 Content-Type: application/json
Status: 200 OK