# Point boundary condition - hosted

**URL:** <https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533>\
**Category:** Developers\
**Tags:** dynamo\
**Created:** [May 3, 2019, 12:31pm UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533 "2019-05-03T12:31:34Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Damiano](https://avatars.discourse-cdn.com/v4/letter/d/ebca7d/32.png) [@Damiano](https://forum.dynamobim.com/u/Damiano)\
**Post date:** [May 3, 2019, 12:31pm UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533/1 "2019-05-03T12:31:35Z")

</div>

Hi there,  
A similar issue is been raised a while ago elsewhere in the forum, no solution founded, so i thought to summarize it here under developers, since it probably requires some python coding.

Using Dynamo, after selecting multiple analytical nodes (i.e. base of analytical columns) id like to be able to create hosted point boundary condition at those nodes (pinned).  
Something similar can be done using a node made available from steamnodes - unfortunately that only works for line boundary conditions.  
Below it’s my attempt to edit that python script but im definitely doing something wrong.  
I’m copying the script i’m trying to adapt from “steamnodes” (this is not the original but my attempt, ive only changed line 37: “a=doc.Create.NewPointBoundaryConditions(e,s,R,s,R,s,R,s,R,s,R,s,R)”

This is the link to the revitapidocs regarding point boundary conditions insted.  
[http://www.revitapidocs.com/2019/db4e68f0-d06c-8207-98fb-83e84b3cb2d1.htm](http://www.revitapidocs.com/2019/db4e68f0-d06c-8207-98fb-83e84b3cb2d1.htm).

Any help would be much appreciated

Damo

#python nodes in dynamo 1.0  
#proposed by Julien Benoit @jbenoit44  
#[http://aecuandme.wordpress.com/](http://aecuandme.wordpress.com/)  
import clr  
clr.AddReference(‘ProtoGeometry’)  
from Autodesk.DesignScript.Geometry import \*  
#Import ToDSType(bool) extension method  
clr.AddReference(“RevitNodes”)  
import Revit  
clr.ImportExtensions(Revit.Elements)  
#Import geometry conversion extension methods  
clr.ImportExtensions(Revit.GeometryConversion)  
#Import DocumentManager and TransactionManager  
clr.AddReference(“RevitServices”)  
import RevitServices  
from RevitServices.Persistence import DocumentManager  
from RevitServices.Transactions import TransactionManager  
from System.Collections.Generic import \*  
#Import RevitAPI  
clr.AddReference(“RevitAPI”)  
import Autodesk  
from Autodesk.Revit.DB import \*  
from System.Collections.Generic import \*

doc = DocumentManager.Instance.CurrentDBDocument

elt=UnwrapElement(IN[0])

R=float(IN[1])

bc=[]  
#Start Transaction  
TransactionManager.Instance.EnsureInTransaction(doc)

for e in elt:  
s=Autodesk.Revit.DB.Structure.TranslationRotationValue.Fixed  
a=doc.Create.NewPointBoundaryConditions(e,s,R,s,R,s,R,s,R,s,R,s,R)  
bc.append(a)

#End Transaction  
TransactionManager.Instance.TransactionTaskDone()

OUT =bc

 ![Capture%202](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/d/a/da0ea009526527d4e0e478d55b5d0702136c1ebb.png)

---

<div class="post-metadata">

**Author:** ![Arthur1](https://avatars.discourse-cdn.com/v4/letter/a/e274bd/32.png) [@Arthur1](https://forum.dynamobim.com/u/Arthur1)\
**Post date:** [August 6, 2019, 2:55pm UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533/2 "2019-08-06T14:55:59Z")

</div>

> [@Damiano](#):
>
> #Start Transaction  
> TransactionMana

Hi Damiano,

I was exactly looking for the same thing as you and I tried the same change as you did. I realised then that the first input of the API function for Point boundary need to be a “Reference” (and cannot be an “Element” as it could be for line boundary function). So I tried to change the first input into an element and it seems to work!

(I used it for Analytical Isolated Foundation though, not for Analytical Columns but I guess it should work as well)

However I still have no idea what a “Reference” is and if someone could help me explaining what it is exactly it would be great 🙂

Thanks,

Arthur

```
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
# Import ToDSType(bool) extension method
clr.AddReference("RevitNodes")
import Revit
clr.ImportExtensions(Revit.Elements)
# Import geometry conversion extension methods
clr.ImportExtensions(Revit.GeometryConversion)
# Import DocumentManager and TransactionManager
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
from System.Collections.Generic import *
# Import RevitAPI
clr.AddReference("RevitAPI")
import Autodesk
from Autodesk.Revit.DB import *
from System.Collections.Generic import *

doc = DocumentManager.Instance.CurrentDBDocument

elt=UnwrapElement(IN[0])
R=float(IN[1])

bc = []

# Start Transaction
TransactionManager.Instance.EnsureInTransaction(doc)

for e in elt:
	ref = Autodesk.Revit.DB.Reference(e)
	s=Autodesk.Revit.DB.Structure.TranslationRotationValue.Fixed
	a=doc.Create.NewPointBoundaryConditions(ref,s,R,s,R,s,R,s,R,s,R,s,R)
	bc.append(a)

# End Transaction
TransactionManager.Instance.TransactionTaskDone()

OUT = bc

```

---

<div class="post-metadata">

**Author:** ![Damiano](https://avatars.discourse-cdn.com/v4/letter/d/ebca7d/32.png) [@Damiano](https://forum.dynamobim.com/u/Damiano)\
**Post date:** [August 8, 2019, 1:12pm UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533/3 "2019-08-08T13:12:03Z")

</div>

Thanks for your reply!

---

<div class="post-metadata">

**Author:** ![LukasF](https://avatars.discourse-cdn.com/v4/letter/l/57b2e6/32.png) [@LukasF](https://forum.dynamobim.com/u/LukasF)\
**Post date:** [August 21, 2019, 6:58pm UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533/4 "2019-08-21T18:58:39Z")

</div>

Arthur1

Thanks for the provided solution.  
However when i try to use the code i always get an error saying:

Parameter name: Boundary Condition is already created on the selected reference. It is not allow to duplicate Boundary Conditions.

Even though i have not specified any boundary conditions on the nodes.  
Do es anyone happen to know what the problem could be here? Thanks for your answers!

---

<div class="post-metadata">

**Author:** ![Arthur1](https://avatars.discourse-cdn.com/v4/letter/a/e274bd/32.png) [@Arthur1](https://forum.dynamobim.com/u/Arthur1)\
**Post date:** [September 2, 2019, 1:14pm UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533/5 "2019-09-02T13:14:19Z")

</div>

Hi @LukasF ,

As far as I know, this happens only when there already is a boundary condition at the selected reference points in input. Therefore you cannot run this script twice in a row and you need to check there aren’t boundary condition already applied to the point you re looking at.

Make sure your visibility setting (VV) allows boundary conditions in the current view  
You can also make a small script to delete all boundary condition before running this one

Hope I answered your question 🙂

Arthur

---

<div class="post-metadata">

**Author:** ![josef.radi](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/josef.radi/32/56685_2.png) [@josef.radi](https://forum.dynamobim.com/u/josef.radi)\
**Post date:** [March 20, 2020, 8:05am UTC](https://forum.dynamobim.com/t/point-boundary-condition-hosted/35533/6 "2020-03-20T08:05:45Z")

</div>

Hello guys,

I have the same Problem as @LukasF !  
There is no Boundary condition placed and still it retreaves this message.  
What is the reason that it gives this message although there is no boundary condition placed?  
I am using the Point Condition Script from @Arthur1.

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/9/b/9ba4e47a0ccea2b52c0948dccfcedd5d68759939.png)  
 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/6/6/66d2a1e5cd59808d4eb8ec9422b56054281f7791.png)

Same problem on other post:

> [@Point boundary condition on analytical column node](https://forum.dynamobim.com/t/point-boundary-condition-on-analytical-column-node/46088):
>
> Hello, I have a problem with adding point boundary condition to analytical column node, I have Python script: import clr clr.AddReference('ProtoGeometry') from Autodesk.DesignScript.Geometry import \* # Import ToDSType(bool) extension method clr.AddReference("RevitNodes") import Revit clr.ImportExtensions(Revit.Elements) # Import geometry conversion extension methods clr.ImportExtensions(Revit.GeometryConversion) # Import DocumentManager and TransactionManager clr.AddReference("RevitServices") …

Any help would be appreciated.  
Thank you!
