Skip to end of metadata
Go to start of metadata

Clash Service


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
    Resource: services/postprocess

    URLhttps://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


     POST
     Detects all the clashes in a project. Beware, that this will more time as they will be typically 100s of clashes in a model
    Headers
    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
    Content-Type: application/json
    
    JSON
    {
      "runAsync":"True",
      "postProcess":{
        "projectId":"0c9b514a-5b30-4f77-b0ff-2184d079fd30"
      }
    }
    Status
    Status: 200 OK
    
    JSON
    {
      "postProcess":{
        "projectId":"0c9b514a-5b30-4f77-b0ff-2184d079fd30"
      },
      "runAsync":false
    }

    Detect clashes between disciplines & objects/topologies
      Resource: clashdetection

      URLhttps://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)


       POST
       Detect clashes between disciplines & objects/topologies.
      Headers
      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
      Content-Type: application/json
      
      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
      Status: 201 Created
      
      JSON
      {
          "clashcount": 4
      }
      

      Calculate clashes in project using particular clash filter
        Resource: clashdetection/filters

        URLhttps://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.

        Headers
        Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
        Content-Type: application/json
        
        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
        Status: 201 Created
        
        JSON
        {
          "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

          GET

          Get all project clashes calculated using given filter.

          Headers
          Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
          Content-Type: application/json
          Status
          Status: 200 OK
          
          JSON
          {
            "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
            Resource: projects/<project_id>/clashfilters

            URLhttps://api-stage.bimplus.net/v2/<team_slug>/projects/<project_id>/clashfilters

            Examplehttps://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.
            An example template is specified in request json section.

            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.
            An example template is specified in request json section.

             POST
            Create a new clash filter in specified project
            Headers
            Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
            Content-Type: application/json
            
            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
            Status: 200 OK
            
            JSON
            {
              "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
              Resource: /projects/<project_id>/clashfilters

              URLhttps://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.
              When query parameter is set as :

              • true - api returns just custom clash filters for project
              • false - api returns just global clash filter for project

              GET

              Get all clash filters for a particular project.

              Headers
              Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
              Content-Type: application/json
              Status
              Status: 200 Ok
              
              JSON
              [{
                  "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

                GET

                Get details of all clash filters for a particular team

                Headers
                Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                Content-Type: application/json
                Status
                Status: 200 Ok
                
                JSON
                [
                  {
                    "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

                  GET

                  Get details of single clash filter for a particular team

                  Headers
                  Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                  Content-Type: application/json
                  Status
                  Status: 200 Ok
                  
                  JSON
                  {	
                  	"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
                    Resource: clashfilters/<clashfilter_id> 

                    URLhttps://api-stage.bimplus.net/v2/<team_slug>/clashfilters/<clashfilter_id>

                    Examplehttps://api-stage.bimplus.net/v2/bimplus/clashfilters/c9d5ca15-2561-4c58-85da-870a89242b87

                    JSON Structure: see Create a clash filter in project

                     PUT
                    Update the specified clash filter
                    Headers
                    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                    Content-Type: application/json
                    
                    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
                    Status: 200 OK
                    
                    JSON
                    {
                      "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> 

                      URLhttps://api-stage.bimplus.net/v2/<team_slug>/clashfilters/<clashfilter_id>

                      Examplehttps://api-stage.bimplus.net/v2/bimplus/clashfilters/c9d5ca15-2561-4c58-85da-870a89242b87

                       DELETE
                       Deletes a specified clash filter.
                      Headers
                      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                      Content-Type: application/json
                      
                      Status
                      Status: 200 OK
                      
                      • No labels